Vim:使用Ctrl-P和Ctrl-N进行命令行grep-like搜索

Bim*_*oZX 4 vim

基本上,我不想完全使用我的箭头键.

但要实现这一点,Ctrl-P需要在命令行中具有与我的向上箭头键相同的功能.

例如,我输入

:so
Run Code Online (Sandbox Code Playgroud)

然后我按下Up,它就像这样

:source $MYVIMRC
Run Code Online (Sandbox Code Playgroud)

但是当我按下Ctrl-P时,它只会进入最后执行的命令

:h camelcasemotion
Run Code Online (Sandbox Code Playgroud)

谁能帮我这个?非常感谢.

Chr*_*sen 5

在命令模式下,<Up>会"移动到历史记录中与之前输入的字符串匹配的上一个命令".

在命令模式下, CTRL-P有两个功能.

  • 在具有多种可能性的Tab完成之后,它"显示先前的匹配值".
    将其视为后退Tab.大多数终端不区分Tab和Shift-Tab,但它和CTRL-P在Vim的GUI版本中是相同的映射.
  • 如果没有前面的Tab完成,它会"移动到历史记录中的上一个命令"(不试图匹配到目前为止输入的文本).

如果您真的想要,可以将CTRL-P重新映射为与<Up>相同:

:cmap <C-P> <Up>
Run Code Online (Sandbox Code Playgroud)

您可能还想重新映射CTRL-N:

:cmap <C-N> <Down>
Run Code Online (Sandbox Code Playgroud)