Readline

“set keymap vi”實際上是做什麼的?

  • December 5, 2018

為了努力 vim-theme Readline,我看到有兩個

set editing-mode vi
set keymap vi

我相信我了解editing-mode vi提供不同的 VIM 鍵盤映射以進行編輯和插入文本等的功能。

do 與什麼set keymap vi並列set editing-mode vi?我能從中得到什麼額外的好處?


有很多非常糟糕的過於復雜的答案。我不關心 emacs 的事情(以任何方式),未記錄但與記錄命令相同的命令,我的預設值是什麼(我顯然正在嘗試更改它們)。

它等價於和別名,set keymap vi-command用於在 vi 命令模式下開始定義自定義鍵綁定。

所以,在你的~/.inputrc你可以像這樣使用它:

set keymap vi-command
# or set keymap vi (or, for that matter: set keymap vi-move)
# these are for vi-command mode
"\e[A": history-search-backward
"\e[B": history-search-forward

另一個有效選項(設置editing-mode為之後vikeymap vi-insert用於剩餘的模態產品。

“set keymap vi”實際上是做什麼的?

標記開始鍵定義列表的點,這些鍵定義僅適用於命名的鍵映射。

鍵盤映射名稱可以是

合法的鍵映射名稱集是 emacs、emacs-standard、emacs-meta、emacs-ctlx、vi、vi-move、vi-command 和 vi-insert。vi 等價於 vi 命令;emacs 等效於 emacs 標準。

vi、vi-move 和 vi-command 模式似乎是相同的名稱。

因此,從.inputrc文件中出現鍵映射的點開始,直到啟動不同的鍵映射(或更改模式(vi 和 emacs)),鍵設置應用啟動鍵映射命令中命名的鍵映射。

引用自:https://unix.stackexchange.com/questions/485817