我已经将我的 vim 编辑器(我使用 MacVim)设置为在失去焦点时自动保存文件:
autocmd FocusLost * silent! wall
我还使用这个自动命令自动从 python 文件中删除尾随空格:
autocmd BufWritePre *.py :%s/\s\+$//e
当我手动保存文件时(通过键入 :w 或通过按 ⌘s),此自动命令完美运行,但未执行(即空白是未剥离)当我切换到另一个应用程序并且缓冲区被自动写入时。
如何修改这些自动命令,使它们协同工作?
最佳答案
您需要将 FocusLost 自动命令更改为:
autocmd FocusLost * nested silent! wall
有关详细信息,请参阅 :h autocmd-nested
。
关于Vim:保存 FocusLost 并执行自动命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8574387/