我可以看到Ctrl+左/右跳转到行首/行尾。如何将此更改为Cmd+左/右箭头?
当前回答
老式的emacs绑定仍然可以在iterm2和os x终端中工作:
首选项->配置文件->键(配置文件中的子选项卡)
设置左/右选项<kbd> </kbd>键作为+Esc(类似于os x终端)
这应该启用alt-f和alt-b逐字移动单词。(ctrl-a和ctrl-e仍然正常工作)
如果设置为元,这些旧的绑定将工作,而一些iterm2绑定不可用。
其他回答
只是为了帮助那些有同样问题的人,特别是使用Zsh shell和iTerm 2。原来Zsh不能正确地读取/etc/inputrc,因此无法理解您通过首选项设置的任何键绑定!
为了解决这个问题,你需要在你的.zshrc文件中添加一些键绑定,比如:
# key bindings
bindkey "\e[1~" beginning-of-line
bindkey "\e[4~" end-of-line
注意上面例子中“e”前面的反斜杠,链接的文章没有显示它们,所以在添加绑定时将它们添加到.zshrc文件中。
详见https://aaronaddleman.com/articles/hexcodes-and-iterm/
您可以使用XXD -psd来获取密钥十六进制代码。
为了方便任何想要在iTerm2中转到行末或行首的人快速参考,请参阅上面的链接 http://hackaddict.blogspot.com/2007/07/skip-to-next-or-previous-word-in-iterm.html 注意到在iTerm2中:
Ctrl+A,跳转到行开始,而 Ctrl+E,跳转到行尾。
Bind -p将显示shell中绑定转义键的列表,这可能有助于为您提供更多的想法/搜索词。
在iTerm2中添加以下配置文件快捷键
FOR | ACTION | SEND |
---|---|---|
⌘ ← | "SEND HEX CODE" | 0x01 |
⌘ → | "SEND HEX CODE" | 0x05 |
⌥ ← | "SEND ESC SEQ" | b |
⌥ → | "SEND ESC SEQ" | f |
这里有一个视觉给那些需要它的人