vi/vim中调出命令历史

用 vi/vim 的时候,总是会误把命令历史调出来。原来是把 :q 打成了 q:

在 Vim 里,q: 不是退出命令,而是打开命令行窗口(command-line window)。这个窗口会列出之前输入过的 Ex 命令,例如 :w:q:set number 等。它本质上是一个可以编辑的命令历史列表。

常用方式如下:

  • q::打开 : 命令历史窗口。
  • q/:打开 / 搜索历史窗口。
  • q?:打开 ? 搜索历史窗口。
  • 在窗口中用普通模式移动到某条历史命令,按 Enter 执行。
  • Ctrl-C:q 或关闭窗口即可退出命令历史窗口。

如果只是想在命令行里找回上一条命令,不一定要打开命令历史窗口。输入 : 后,可以用方向键或 Ctrl-PCtrl-N 在历史命令之间切换:

:

然后按:

Ctrl-P  上一条命令
Ctrl-N  下一条命令

所以,误按 q: 时不用紧张,这不是 Vim 卡住了,只是进入了命令历史窗口。退出窗口后重新输入 :q 即可。

Leave a Reply