Domanda
ho bisogno di fare i due eventi autocmd logici e di in vim. Fondamentalmente, il comando deve funzionare su un InsertLeave quando il FileType è tex. Sembra che questo dovrebbe funzionare (in un Vimrc):
autocmd FileType tex :autocmd InsertLeave :w
Ma non è così. L'opzione nidificato non sembra aiutare entrambi, anche se il manuale indica che dovrebbe.
La sua facile per fare un logico-O:
autocmd BufEnter,BufLeave ...
non deve essere troppo difficile da fare un logico-E.
Soluzione
Ho una correzione a @Eevee risposta: per far funzionare autocomando per un solo tampone, è necessario utilizzare
augroup TexAutoWrite
autocmd FileType tex :autocmd! TexAutoWrite InsertLeave <buffer> :update
augroup END
, vedere `:. H autocmd-buflocal
Altri suggerimenti
InsertLeave ha ancora bisogno di un parametro.
Questo funziona per me:
autocmd FileType tex :autocmd InsertLeave * :w
Si noti che questo comportamento rimarrà se in seguito si modifica un file non tex
nello stesso tampone. Non sono sicuro se c'è un modo semplice per rimuoverlo quando si modifica qualcosa di ma di un certo tipo di file.
È possibile utilizzare l'opzione modello del autocmnd.
autocmd InsertLeave *.tex w