如果文件未更改,请勿在写入时触摸文件


15

有时:w,我在阅读某些内容时会心不在type地打字。这会导致文件的修改时间发生更改,有时会导致我的构建系统不必要地重建项目的大部分内容。

如果我尝试写入文件并且未更改,是否可以将vim设置为不执行任何操作?

Answers:


15

扩展@ lcd047的答案,可以cabbrev用来修改w

:cabbrev w <c-r>=(getcmdtype()==':' && getcmdpos()==1 ? 'up' : 'w')<CR>

当您键入内容时,:w您会注意到:up当您按回车键时它将被替换。


14

不是直接(即,:w不能更改其行为),但是您可以学习使用:up代替:w。它正是您想要的。


3
让我补充一点:我使用一个喜欢的键盘映射进行保存,并且我绑定了它,:update而不是:write获得原始海报要求。
Giovanni Maggiorani 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.