如何在vim中从redo(dot)中排除命令窗口的变化?

时间:2014-02-17 19:32:37

标签: vim

我总是使用命令窗口而不是命令提示符。

我通过地图

这样做
nnoremap : q:i

问题是:对命令缓冲区所做的更改然后在重做寄存器中 (我不确定这是否是正确的术语,请求纠正我。)

E.g。每当我:w<cr>保存文件时,下一个问题点都会插入w

我可以以某种方式忘记在命令窗口中关闭的可重命令命令吗?

2 个答案:

答案 0 :(得分:1)

不幸的是,这是使用命令窗口的副作用:当您使用“真正的”Vim命令编辑命令时,这些命令自然也会被存储用于重做。由于暂时无法暂停录制命令,您可能需要使用此副作用,或者切换到使用命令行执行大多数Ex命令。

答案 1 :(得分:1)

我认为这可以使用CmdwinEnter&amp; CmdwinLeave事件(记住命令窗口中“。”命令要重复的命令,并在命令窗口中重置该值)。

不幸的是,我发现没有办法以编程方式设置“最后一个命令要重复'的值。”

所以,根据我的理解,目前没有办法做到这一点。