gpt4 book ai didi

vim - 在vim中编辑时,初始化事件太多

转载 作者:行者123 更新时间:2023-12-04 06:23:49 25 4
gpt4 key购买 nike

我正在尝试使用inotifywait监视特定文件夹并在需要时重新编译。问题是我正在大量使用vim,而当我在vim中进行编辑时,任何修改过的文件实际上都会触发一些“冗余”事件,例如:

:w
sass/somefolder/ CREATE 4913
sass/somefolder/ CREATE some
sass/somefolder/ MODIFY some

我花了一些时间才意识到 inotifywait实际上一切正常-我尝试使用 nano,并且一切都按预期工作,仅触发了“MODIFY”,并且只有一次。

我试图编辑Emacs(仅出于测试目的,请不要轻易判断我),Emacs也存在问题-每次按Ctrl-X + Ctrl + S MODIFY都会触发3次。

问题是我该如何解决vim中多余事件的问题?

顺便说一句,我的 directory中的 backupdir.vimrc不在受监视的文件夹中。

UPD: This link explains为什么实际情况是如何发生的,但是我仍然不知道如何解决此问题。好吧,我当然可以忽略包含字符串的4913,但这对于那些试图使用inotify来编译SASS的人来说也太笨拙了。

UPD:VIM版本为7.3.429

最佳答案

如果要在编辑文件后触发操作(例如重新编译代码),通常需要查看IN_CLOSE_WRITE事件,而忽略其他所有内容。

您绝对不想监视IN_MODIFY事件,因为您已经发现,在编辑文件时可能会多次触发它们。

所以:

inotifywait -e close_write ...

关于vim - 在vim中编辑时,初始化事件太多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10300835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com