如中所述这问题,你不能在 bash 的 vi 模式下使用 vim 的 ci" (或 ci'、ci{、ci< 等)功能,因为这个功能来自 vim,而不是原始的 vi。但是,有没有办法添加如果有的话,我一直在使用这个功能,并且在命令行上使用它会非常有用。
答案1
不,这需要 Bash 本身的扩展。由于它总是提到“vi 编辑”(而不是 Vim),因此这种情况不太可能发生。想象一下用户会请求的所有其他不错的 Vim 功能:-)
但是如果您使用的set -o vi
是 Bash,$EDITOR
或者$VISUAL
设置为我们可爱的 Vim,您可以通过 编辑新的 Vim 实例中的当前命令行Esc V。
如果您还想要一个“插入模式”快捷方式(例如:help c_CTRL-F
在 Vim 中打开命令行窗口),您可以将以下内容放入您的~/.inputrc
:
$if Bash
# Ctrl-F Invoke the editor on the current command line.
# Like c_CTRL-F in Vim.
# Related: fc does the same for the _previous_ command.
Control-f: edit-and-execute-command
$endif