Mac ;9D 和 ;9C 来自 alt-left 和 alt-right

Mac ;9D 和 ;9C 来自 alt-left 和 alt-right

我非常习惯使用 alt-left 转到前一个单词(如果你使用 vim,那就是‘b’)并使用 alt-right 转到下一个单词的开头。

然而在 Mac 终端 (iterm 和 iterm2) 上,我分别得到了 ;9D 和 ;9C。我可以使用 fn+left 转到行首,但我仍然觉得这很不方便。

任何想法如何解决这一问题?

答案1

如果你正在使用bashshell,请将以下内容添加到你的~/.inputrc

"\e[1;9C": forward-word
"\e[1;9D": backward-word

Ctrl-XCtrl-R或者重新启动 shell 以应用更改。


笔记:上面的一部分转义序列,特别是1,我必须根据 Xterm 的用途来猜测。

答案2

在 OS X Lion 的终端中,此操作可按预期工作。否则,您可以尝试 Mb 和 Mf(Meta 键可能是选项或退出,具体取决于您的终端程序)。

答案3

您可以在终端偏好设置中将Option-映射Left/Right ArrowEsc- b/f。这些将与 bash(默认 shell)以及任何具有与 Emacs 兼容的键绑定的程序一起使用。

终端 > 首选项 > 设置 > [配置文件] > 键盘

单击加号按钮添加新映射:

键:光标左移
修饰符:选项
操作:将字符串发送到 shell
字符串:\033b

(按 Esc 键输入“\033”。)

然后将“光标右移”的另一个映射添加到“\033f”。

从 Mac OS X Lion 10.7 开始,终端的默认键盘映射包含这两个条目,因此无需这样做。

相关内容