vim - 为 vim 命令行添加导航键绑定(bind)

标签 vim command-line keyboard-navigation

也许我没有使用正确的术语,但我正在努力寻找一种方法来添加一些键绑定(bind)以在 vim 中导航命令行时使用。

一个示例是以下命令:
:e /really/long/path/that/I/dont/want/to/reenter
并意识到我实际上想要 :tabe而不是制表符,或者输入一个长的正则表达式模式并在其中发现一个错字。

显然像 ^ 这样的东西, 0b只会作为字符输入,所以我想做的是为命令映射添加一些 emacs 绑定(bind),例如 <C-a>移动到行首,<C-e>移动到行尾,其他一些在单词之间移动(至少那些不与其他有用的绑定(bind)冲突的)。

这可能吗?

最佳答案

正如其他人所提到的,您的特定键绑定(bind)已经存在:

  • Ctrl-b 带你到命令行的开头,
  • Ctrl-e 将您带到命令行的末尾。

  • 为了获得完整的命令行编辑体验,您可以将 vim 命令行转换为可编辑的命令缓冲区来解决此类问题,而不是使用新的键绑定(bind)。

    在命令行中键入时,按 Ctrl-f 进入命令行缓冲区。您将处于正常模式,可以浏览和编辑命令行,以及与命令历史记录中的先前命令交互和编辑。

    在您的示例中,一旦在命令行缓冲区中,您可以简单地使用 0itab改变etabe .

    在此缓冲区中按 Enter 以执行光标所在的命令,然后 Ctrl-c 将退出命令行缓冲区,将您放回命令行。

    关于vim - 为 vim 命令行添加导航键绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11090808/

    相关文章:

    vim - 显示打开文件列表的 Tmux/Vim 插件

    python - 只有 py 文件时隐藏控制台(没有 pyw)[ANKI 附加组件]

    python - 使用命令行脚本打包 python 程序

    javascript - 通过键盘导航聚焦 input[type=file] 时显示浏览器的 ‘select file’ 对话框

    .net - 在 WPF 中设置 Tab 键顺序

    vim - 如何更改 Vim 全方位补全中使用/检测到的符号的边界?

    vim - 是否可以在当前未打开的文件中设置全局标记?

    r - 使用 Vim-R-plugin 更改 vim 中的 R 缩进样式

    powershell - 有没有一种方法可以从命令行使用 “Regenerate Feature files”进行SpecFlow测试?

    javascript - 使用 jQuery 进行上/下/左/右键盘导航?