当在 octave 命令行上敲击键盘时,我有时会发现各种 readline 快捷键停止工作,例如C-a
只需C-e
插入^A
和^E
。
我花了一段时间才意识到这是因为我不小心切换到了 vi 编辑模式,而且确实有一个toggle-editing-mode
( C-M-j
) 记录在旧版八度音阶手册。
我的问题是,如何返回 emacs 模式?我找不到任何地方列出的快捷方式。
答案1
经过大量的网络搜索和操作后~/.inputrc
,我意外地发现C-e
在vi 命令模式确实起到了作用并执行了emacs-editing-mode
。这将在这篇文章但是就 bash 而言,它们必须以某种方式相关,但我无法通过查看八度音程源来找到它们之间的关系。
知道要寻找什么还使我能够找到一种通过以下方式更改此绑定的方法~/.inputrc
:
$if mode=emacs
set keymap vi
"\e\C-j": emacs-editing-mode
"\C-x\C-r": re-read-init-file
set keymap emacs
$endif
不管怎样,似乎我应该阅读readline.info
,也许还应该阅读history.info
。
编辑
C-M-j
除默认的 之外,还添加了vi 绑定以切换回 emacs C-e
。还添加了 vi 绑定以重新读取~/.inputrc
。