我需要在vim中执行逻辑和两个autocmd事件。基本上,当FileType为tex时,该命令必须在InsertLeave上运行。似乎这应该工作(在.vimrc中):
autocmd FileType tex :autocmd InsertLeave :w
但事实并非如此。嵌套选项似乎也无济于事,即使手册中指出了这一点也是如此。
进行逻辑或运算很容易:
autocmd BufEnter,BufLeave ...
进行逻辑“与”操作不必太难。
最佳答案
我对@Eevee答案有一个更正:为了使自动命令仅对一个缓冲区起作用,您应该使用
augroup TexAutoWrite
autocmd FileType tex :autocmd! TexAutoWrite InsertLeave <buffer> :update
augroup END
,请参见`:h autocmd-buflocal。
关于vim - Vim:结合autocmd吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1313171/