是否有一个命令可以显示正常模式下的最后一个命令?
假设我不小心击中了随机键,得到了一些意想不到的结果。我当然可以撤消它,但我能透露按下了什么键以及它是如何解释的吗?
点击冒号(:
),然后使用向上箭头开始返回以前的命令。您也可以使用向上/向下箭头在列表中移动。
q:
将显示Vim中的命令历史记录q/
将显示搜索历史
而且必须重要的是,:q
将退出该模式。
最后一个命令的文本存储在.
寄存器中。您可以通过查看所有寄存器:display。不幸的是,它没有说明启动正常命令的原因。
要查看 另一个功能是保存undo缓冲区:wundoundo.bin,但undo缓冲是二进制的。 但这些都不能回答你的问题。我很好奇能不能做到。:
(命令模式)中的命令,您可以使用:hist或q:
输入冒号:
,然后ctrl+p
显示上一个命令,即在vim命令历史中向后移动。CCD_ 9向前移动。
如果你习惯于使用命令行,并且不喜欢将键盘手的位置更改为使用箭头键,这将非常方便。
很难知道。你可以玩变量:
v:operator
v:count (and v:prevcount)
v:register
但是您无法完全获得发出的最后一个正常模式命令。
但是,如果你想系统地记录你在Vim中键入的所有内容,你可以启动vim -W ~/.vim-last-scriptout
(Windows版本:vim -W "%HOMEPATH%Vim.last-scriptout
)。你可以在UNIX机器上的shell中对它进行别名。每一个密钥或控制密钥都将被记录到该文件中。请注意,如果您碰巧使用gvim
或vim -g
(GUI),您可能会遇到此错误。
如果要重播此文件,可以使用命令行中的:source!
(带感叹号)或-s
选项。
在Windows上,我在Commander程序(FreeCommander)中将gvimportable.exe -W gvim_directorylast_scriptout
设置为默认编辑器。这样,我就可以永远记住我键入的内容,并在另一个文件上重复一系列命令。当然,我还有另一个打开Vim和播放脚本的快捷方式。
请注意,该文件可能只有在Vim退出时才被写入,因此您必须丢失会话才能知道自己做了什么。