我有一个vim自动命令组,如下所示:
augroup filetypedetect_wiki au! au! FileType vimwiki iabbrev cfo %% TODO {{{1<esc>hhhhhhhhveh au! FileType vimwiki iabbrev cfc %% TODO }}}1<esc>hhhhhhhhveh au! FileType vimwiki :set foldmethod=marker au! FileType vimwiki :set spell " Insert a comment block au! FileType vimwiki iabbrev ccc {{{ ><cr> $ <cr>}}}<esc>kllllli "===Wiki markup macros au! FileType vimwiwki :nnoremap <leader>h1 ^i= <esc>A =<esc>^ au! FileType vimwiwki imap <leader>h1 <esc>^i= <esc>A =<esc>^ au! FileType vimwiwki nnoremap <leader>h2 ^i== <esc>A ==<esc>^ au! FileType vimwiwki imap <leader>h2 <esc>^i== <esc>A ==<esc>^ au! FileType vimwiwki nnoremap <leader>h3 ^i=== <esc>A ===<esc>^ au! FileType vimwiwki imap <leader>h3 <esc>^i=== <esc>A ===<esc>^ au! FileType vimwiwki nnoremap <leader>h4 ^i==== <esc>A ====<esc>^ au! FileType vimwiwki imap <leader>h4 <esc>^i==== <esc>A ====<esc>^ au! FileType vimwiwki nnoremap <leader>h5 ^i===== <esc>A =====<esc>^ au! FileType vimwiwki imap <leader>h5 <esc>^i===== <esc>A =====<esc>^ au! FileType vimwiwki nnoremap <leader>h6 ^i====== <esc>A ======<esc>^ au! FileType vimwiwki imap <leader>h6 <esc>^i====== <esc>A ======<esc>^ au! FileType vimwiwki nnoremap <leader>wm bi[[<esc>A]]<esc> au! FileType vimwiwki imap <leader>h6 <esc>bi[[<esc>A]]<esc> augroup END
但是,当我打开一个vimwiki文件时,我只能使用列表中的一个命令:
au! FileType vimwiki iabbrev ccc {{{ ><cr> $ <cr>}}}<esc>kllllli
今天,我试图通过input这个命令来看看有什么可用的:
:au FileType vimwiki
当我这样做的时候,我看到了这个:
:au FileType vimwiki --- Auto-Commands --- filetypedetect_wiki FileType vimwiki iabbrev ccc {{{ ><cr> $ <cr>}}}<esc>kllllli
所以这证实了我怀疑只有一个自动命令正在被加载。 但是为什么呢? 有没有一个有趣的人物打破了这个团体?
au! 删除是定义autocmds,所以我不认为你需要这个时候定义你的命令。 尝试从除第一个以外的所有内容中删除感叹号,所以它看起来像这样:
augroup filetypedetect_wiki au! au FileType vimwiki iabbrev cfo %% TODO {{{1<esc>hhhhhhhhveh au FileType vimwiki iabbrev cfc %% TODO }}}1<esc>hhhhhhhhveh