Zsh-新行后不能执行退格

Zsh-新行后不能执行退格,zsh,zshrc,Zsh,Zshrc,我正在使用zsh(不是我的zsh)。后退按钮起作用,但它只在同一行上起作用。如果我有一个新行(比如如果我点击向上箭头并返回最后一个命令),后退按钮将不会转到前一行 我正在使用vim键绑定。有没有办法解决这个问题 bindkey -v bindkey '^R' history-incremental-search-backward bindkey "^[[A" history-search-backward bindkey -v '^?' backward-delete-char 不清楚你说的“

我正在使用zsh(不是我的zsh)。后退按钮起作用,但它只在同一行上起作用。如果我有一个新行(比如如果我点击向上箭头并返回最后一个命令),后退按钮将不会转到前一行

我正在使用vim键绑定。有没有办法解决这个问题

bindkey -v
bindkey '^R' history-incremental-search-backward
bindkey "^[[A" history-search-backward
bindkey -v '^?' backward-delete-char

不清楚你说的“后退”按钮是什么意思。您正在显示Ctrl-R、向上光标和Ctrl-?。Ctrl-?可以通过退格或删除生成,具体取决于您的终端

在最后一个绑定中,您使用
-v
选项试图实现什么?您已经选择了vi模式。要在vi命令模式keymap中绑定密钥,请使用
-a

所以你可能想要的是:

bindkey -a '^?' backward-delete-char
在行首停止退格与实际vi行为一致。Vim的行为更类似于以下内容:

bindkey -a '^?' backward-char