ALT+箭头在 zsh 和 iTerm2 中的单词之间移动

ALT+箭头在 zsh 和 iTerm2 中的单词之间移动

我登录到其中一个托管提供商的服务器上,发现 ALT + 左 和 ALT + 右 在 GNU Screen 的 shell 提示符中在单词之间移动。

我需要配置什么样的键绑定,以及在哪里可以获得在 iTerm2 中运行的本地 OS X zsh 的这种行为?

答案1

我在这里找到了解决方案:https://coderwall.com/p/h6yfda。将复制其中最重要的部分,以防链接断开。

  1. 转到“首选项”、“配置文件”、“密钥”。
  2. 将左 ⌥ 键设置为转义字符。
  3. 找到 ⌥ ← 的当前快捷键或创建一个新的快捷键,使用以下设置:
    • 键盘快捷键:⌥←
    • 动作:发送转义序列
    • Esc+:b
  4. 重复 ⌥→ 键盘快捷键并进行以下设置:
    • 键盘快捷键:⌥→
    • 动作:发送转义序列
    • Esc+:f

答案2

为了让 iTerm2 的命令行导航对我来说更直观,对我来说最有效的方法是(我是一个没有在命令行下长大的年轻人,但我花了很多时间在文本编辑器和 IDE 上):

  • 进入“首选项”->“个人资料”->“密钥”
  • 在键映射列表下,有一个用于添加/删除或加载预设的框(组合框)
  • Natural Text Editing在预设下拉菜单中选择选项。

这会将编辑器的键默认为更标准的排列,而无需我单独修改每个选项。

答案3

您正在寻找关键字backward-wordforward-word。因此,如果您所在的 shell 无法使用键绑定,请尝试bindkey -L | grep backward-word检查它们是否已配置。有关此内容的更多信息,请参阅韓國(1)

您可以通过输入以下命令来手动设置键绑定:

bindkey ' Ctrl+ v Alt+ Right' 前向词

bindkey ' Ctrl+ v Alt+ Left' 反向单词

我在键绑定方面也遇到了一些麻烦,问题几乎总是 Option/Alt 键发送的内容与预期的 Meta/Escape 不同。

答案4

为补充loganjones16 的回答,以下是自然文本编辑菜单项:

自然文本编辑菜单项

相关内容