有时我会使用 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
/Chad
C)。
其他命令:
:history
列出整个历史记录。:his
列出命令历史记录。:his /
列出搜索历史记录。
答案3
您可以将其添加到您的 .vimrc 中:
set showcmd
它会在状态栏中显示您正在输入的命令。虽然这不会给您提供历史记录,但这是我所知道的最接近的解决方案。
但是如果你谈论的是ex
命令,Gareth 的答案是正确的