在 bash(4.3.11(1)-release)中,我希望能够直接从emacs
键盘映射更改为vi-command
键盘映射。
使用show-mode-in-prompt on
,我的前缀字符应该从 更改@
为:
。
如果我使用该vi-movement-mode
命令,提示符将保持为@
。
如果我使用该vi-editing-mode
命令,提示符将更改为+
指示我正在使用vi-insert
键盘映射,而不是所需的 target vi-command
。
如何通过绑定从键盘映射更改为键盘emacs
映射?vi-command
答案1
以下.inputrc
几行允许Meta / Alt+在和模式E之间切换。emacs
vi-insert
j同时哞哞k将带你进入vi-command
模式。
set show-mode-in-prompt on
set keymap emacs
"\ee": vi-editing-mode
"jk": "\eejk"
"kj": "\eejk"
set keymap vi-insert
"\ee": emacs-editing-mode
"jk": vi-movement-mode
"kj": vi-movement-mode
set keymap vi-command
"\ee": emacs-editing-mode
注意:唯一带有“kj”的英文单词是“blackjack”,没有单词包含“jk”)
注意:在v4.3.11(1) 中,如果您在bash
to 下添加绑定以尝试直接切换到键盘映射,则提示不会更新(如果您有 ),因此需要此解决方法。keymap emacs
vi-movement-mode
vi-command
show-mode-in-prompt on