我将如何映射jj
到Esc
zsh 中?
我正在尝试重新创建我在 vim 中设置的键映射,我已jj
映射到该映射ESC
,以便每当我双击 时j
,它都会将 an 发送<Esc>
到 vim - 让我可以更方便地进入正常模式。
我已经尝试过bindkey 'jj' ^[
,也正准备尝试bindkey 'jj' ^[[
,但我怀疑它是否有效。我还检查了 zsh 在正常模式下提供的命令列表,但没有看到任何包含normal
或 的内容escape
。
笔记^[
我的文件中的字符 是~/.zshrc
实际的硬编码转义符;不仅仅是字符^
和[
。
答案1
您需要-s
绑定实际的字符串而不是小部件:
bindkey -s jj '\e'
尽管您可能想映射jj
到vi-cmd-mode
此处的小部件:
bindkey jj vi-cmd-mode
(请注意,这是针对插入模式下的绑定,而不是正常/命令模式下的绑定)