在 Terminal.app 中,选项+箭头键不再按单词移动

问题描述 投票:0回答:2

对此进行了一些研究,我知道选项+左箭头和选项+右箭头默认情况下不会在OS X终端应用程序中按单词移动。但我的却做到了,直到大约一周前。

唯一改变的是 oh-my-zsh 更新了。我看到它有

bindkey "^[[1;5C" forward-word bindkey "^[[1;5D" backward-word

已定义,但我不知道这些键是什么。 GitHub 最后一次记录的文件更改是在 24 天前,并且与这些密钥无关,因此这必须早于最新更新。

我还尝试了“首选项”>“设置”>“键盘”下的“使用选项作为元键”选项。当我点击选项+左箭头和选项+右箭头时,只会打印

[D

[C

macos terminal zsh oh-my-zsh
2个回答
18
投票
解决问题的一种方法是:

  • Terminal.app > preferences > Settings > Keyboard
    中有一个按键->操作列表。
  • 在该列表中找到或添加
  • option cursor left
    option cursor right
     并将其值分别设置为 
    \033b
    \033f
  • 退出并重新启动 Terminal.app

0
投票
Mac 系统红杉 15.1

就我而言,在终端(和 Vscode IDE 集成终端)中,仅

Left Option + Left/Right arrow

 按单词移动,而 
Left Control + Left/Right arrow
 插入丑陋的 
;5D
;5C

这是解决这个问题的

Karabiner规则

{ "description": "Change 'Control + Left/Right' to 'Option + Left/Right'", "manipulators": [ { "from": { "key_code": "left_arrow", "modifiers": { "mandatory": ["left_control"], "optional": ["any"] } }, "to": [ { "key_code": "left_arrow", "modifiers": ["left_option"] } ], "type": "basic" }, { "from": { "key_code": "right_arrow", "modifiers": { "mandatory": ["left_control"], "optional": ["any"] } }, "to": [ { "key_code": "right_arrow", "modifiers": ["left_option"] } ], "type": "basic" } ] }
您可以在 Karabiner UI 中添加此规则,如下所示:

Karabiner settings

© www.soinside.com 2019 - 2024. All rights reserved.