在vim中编辑时,太多的inotify事件
发布时间:2020-12-16 01:16:14 所属栏目:安全 来源:网络整理
导读:我正在尝试使用inotifywait来监视特定文件夹并在需要时重新编译.问题是我正在大量使用 vim,当我在 vim中编辑时,任何修改过的文件实际上都会触发一些“冗余”事件,例如: :wsass/somefolder/ CREATE 4913sass/somefolder/ CREATE somesass/somefolder/ MODIFY
我正在尝试使用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中多余事件的问题? 顺便说一句,我的.vimrc中的目录和backupdir不在受监视的文件夹中. UPD:This link explains为什么事情会发生如何发生,但我仍然不知道如何解决这个问题.好吧,当然我可以忽略4913包含字符串,但即使对于试图使用inotify来编译SASS的人来说,这太过愚蠢))) UPD:VIM版本是7.3.429
如果您想在编辑文件后触发操作(例如重新编译代码),通常需要查看IN_CLOSE_WRITE事件并忽略其他所有事件.
您绝对不希望监视IN_MODIFY事件,因为正如您所发现的那样,在编辑文件时可能会多次触发它们. 所以: inotifywait -e close_write ... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |