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 鍵可能是 option 或 escape,具體取決於您的終端程式)。

答案3

您可以在終端首選項中映射Option-Left/Right ArrowEsc- b/f。這些將與 bash(預設 shell)和任何具有 Emacs 相容鍵綁定的程式一起使用。

終端機 > 首選項 > 設定 > [設定檔] > 鍵盤

點選加號按鈕新增映射:

鍵:遊標向左
修飾符:選項
操作:將字串傳送至 shell
字串:\033b

(按 Esc 鍵輸入“\033”。)

然後再增加另一個「遊標向右」到「\033f」的對應。

從 Mac OS X Lion 10.7 開始,終端機的預設鍵盤映射包含這兩個條目,因此無需執行此操作。

相關內容