[英]Vim: Combining autocmd?
我需要在vim中執行邏輯和兩個autocmd事件。 基本上,當FileType為tex時,該命令必須在InsertLeave上運行。 看起來這應該工作(在.vimrc中):
autocmd FileType tex :autocmd InsertLeave :w
但事實並非如此。 嵌套選項似乎也沒有幫助,即使手冊指出它應該。
它易於做邏輯或:
autocmd BufEnter,BufLeave ...
做邏輯AND一定不是太難。
我對@Eevee的答案進行了修正:要使自動命令僅適用於一個緩沖區,你應該使用
augroup TexAutoWrite
autocmd FileType tex :autocmd! TexAutoWrite InsertLeave <buffer> :update
augroup END
,見`:h autocmd-buflocal。
InsertLeave仍然需要一個參數。
這對我有用:
autocmd FileType tex :autocmd InsertLeave * :w
請注意,如果稍后在同一緩沖區中編輯非tex
文件,則此行為將保留。 我不知道是否有一個簡單的方法編輯任何東西,但某種類型的文件時將其刪除。
您可以使用autocmnd的pattern選項。
autocmd InsertLeave *.tex w
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.