如何在 vi-command 和 vi-insert 模式下设置 Readline 键绑定

如何在 vi-command 和 vi-insert 模式下设置 Readline 键绑定

要在 vi 模式下使用 Emacs transpose-words 功能,我有以下 .inputrc:

$if mode=vi
  bind Control-b: transpose-words
$endif

不幸的是它只能在“插入”模式下工作。让它在“插入”和“命令”模式下工作的技巧是什么?

我尝试使用设置键盘映射 vi 命令在文件中,但没有任何效果。

$if mode=vi
  set keymap vi-command
  bind Control-b: transpose-words
$endif

答案1

“bind”关键字不应出现在 inputrc 中。以下 inputrc 按预期工作。 Ctrl-B 在插入模式和命令模式下转置单词:

set editing-mode vi
$if mode=vi
  set keymap vi-command
  Control-b: transpose-words
  set keymap vi-insert
  Control-b: transpose-words
$endif

相关内容