我正在使用zsh
中vi-mode
。
当我进入正常模式ESC然后回到插入模式(例如使用i,a或s)时,行编辑器会“保护”字符前面的行部分,当我重新进入插入模式时.
我通过重新绑定它为退格字符修复了它
bindkey "^?" backward-delete-char
Run Code Online (Sandbox Code Playgroud)
但是仍然有其他类似的绑定^W
不能开箱即用(可能是因为它们绑定到vi-*
)。
如果我理解正确,这种行为对于vi
.
有没有办法让zle
行为像vim
而不必重新绑定这么多键?
AFAICT,唯一有问题的小部件是:
vi-backward-delete-char
vi-kill-line
vi-backward-kill-word
Run Code Online (Sandbox Code Playgroud)
所以你可以做
zle -A kill-whole-line vi-kill-line
zle -A backward-kill-word vi-backward-kill-word
zle -A backward-delete-char vi-backward-delete-char
Run Code Online (Sandbox Code Playgroud)