当我的 esc 键不起作用时,如何向 vim 发送 ESC 信号?

当我的 esc 键不起作用时,如何向 vim 发送 ESC 信号?

Esc当我想从插入模式返回交互模式时,我遇到了按键问题。是否存在另一个用于解除插入模式的键?

答案1

Ctrl-[将与物理密钥相同的字符发送到终端Esc。一般来说,后者只是前者的捷径。

答案2

你可以尝试Ctrl-C这对我有用,并且在我看来比 更容易ESC。但是我不确定它是否默认启用。

答案3

如果您希望能够使用单个键,作为纯 *nix 解决方案(没有 Vim 映射),您可以将另一个键定义为Esc.就像 Emacs 用户重新映射CapsLockCtrl某些 Vim 用户(包括我)重新映射CapsLockEsc.这适用于任何使用 X11 的 *nix。

使用xev -event keyboard(然后按CapsLock)获取该CapsLock键的键码(对我来说是键码 66)。然后您可以使用xmodmap重新映射密钥:

xmodmap -e 'remove Lock = Caps_Lock' -e 'keycode 66 = Escape'

要在登录时获取此信息,您可以添加表达式xmodmap~/.Xmodmap如下所示:

remove Lock = Caps_Lock
keycode 66 = Escape

尽管对于第二部分 YMMV,因为并非所有显示管理器都运行~/.Xmodmap.您可能需要添加xmodmap .Xmodmap其中.xinitrc一些。

答案4

当您按下以下命令时,终端模拟器也会发送 ESC 代码:

  • Ctrl+[
  • Ctrl+3我喜欢这个,因为你只能用一只手按下它。
  • Alt后跟任何其他键。例如Alt+ hjkl将退出插入模式并同时移动光标。

相关内容