在 VIM 中,我能找出我刚刚输入的键吗?

在 VIM 中,我能找出我刚刚输入的键吗?

有时我会使用 VIM,然后会发生一些事情,但我不知道是什么原因或我输入了什么。有没有办法列出最近输入的一些键,甚至更好的是,找出它们触发了什么操作?

答案1

Vim有一个您可以滥用的选项,但在运行-W时它将不起作用。Vim

-w {脚本输出}

您输入的所有字符都会记录在文件 {scriptout} 中,直到您退出 Vim。如果您想创建一个脚本文件以用于“vim -s”或“:source!”,这将非常有用。如果 {scriptout} 文件存在,则会附加字符。

-W {脚本输出}

类似于 -w,但是会覆盖现有文件。

Vim使用别名进行呼叫

vim -W /tmp/vimlog-$(id -un)

让你检查less /tmp/vimlog-$(id -un)cat -v /tmp/vimlog-$(id -un)字面上地退出后输入的内容Vim

答案2

首先确保 vim 能记住所有历史记录。这将历史记录设置为 1000 条命令并搜索:

:set history=1000

如果您输入所查找内容的开头,则可以使用键 滚动浏览历史记录 - 这适用于命令和搜索。

例如,如果你搜索过中国然后古巴然后乍得然后塞浦路斯

您可以输入/c并按几次。您会发现它显示/cyprus然后(被跳过/cuba,因为它不是以/china/ChadC)。

其他命令:

  • :history列出整个历史记录。
  • :his列出命令历史记录。
  • :his /列出搜索历史记录。

答案3

您可以将其添加到您的 .vimrc 中:

set showcmd

它会在状态栏中显示您正在输入的命令。虽然这不会给您提供历史记录,但这是我所知道的最接近的解决方案。

但是如果你谈论的是ex命令,Gareth 的答案是正确的

相关内容