我非常习惯使用 alt-left 转到前一个单词(如果你使用 vim,那就是‘b’)并使用 alt-right 转到下一个单词的开头。
然而在 Mac 终端 (iterm 和 iterm2) 上,我分别得到了 ;9D 和 ;9C。我可以使用 fn+left 转到行首,但我仍然觉得这很不方便。
任何想法如何解决这一问题?
答案1
如果你正在使用bash
shell,请将以下内容添加到你的~/.inputrc
:
"\e[1;9C": forward-word
"\e[1;9D": backward-word
按Ctrl-X,Ctrl-R或者重新启动 shell 以应用更改。
笔记:上面的一部分转义序列,特别是1
,我必须根据 Xterm 的用途来猜测。
答案2
在 OS X Lion 的终端中,此操作可按预期工作。否则,您可以尝试 Mb 和 Mf(Meta 键可能是选项或退出,具体取决于您的终端程序)。
答案3
您可以在终端偏好设置中将Option-映射Left/Right Arrow到Esc- b/f。这些将与 bash(默认 shell)以及任何具有与 Emacs 兼容的键绑定的程序一起使用。
终端 > 首选项 > 设置 > [配置文件] > 键盘
单击加号按钮添加新映射:
键:光标左移
修饰符:选项
操作:将字符串发送到 shell
字符串:\033b
(按 Esc 键输入“\033”。)
然后将“光标右移”的另一个映射添加到“\033f”。
从 Mac OS X Lion 10.7 开始,终端的默认键盘映射包含这两个条目,因此无需这样做。