O Vim não fornece todos os comandos no grupo de comando automático

1

Eu tenho um grupo de comando automático do vim que se parece com isso:

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

No entanto, só posso usar um dos comandos da lista quando abro um arquivo vimwiki:

au! FileType vimwiki iabbrev ccc {{{ ><cr>    $ <cr>}}}<esc>kllllli

Hoje, tentei ver o que estava disponível, digitando este comando:

:au FileType vimwiki

Quando o fiz, vi isto:

:au FileType vimwiki
--- Auto-Commands ---
filetypedetect_wiki  FileType
    vimwiki   iabbrev ccc {{{ ><cr>    $ <cr>}}}<esc>kllllli

Isso confirma minhas suspeitas de que apenas um autocommand está sendo carregado. Mas por que esse é o caso? Existe um personagem engraçado que está quebrando o grupo?

    
por Tom Purl 08.08.2012 / 23:18

1 resposta

1

au! deletes são definidos como autocmds, então não acho que você queira isso ao definir seus comandos. Tente remover o ponto de exclamação de tudo, exceto o primeiro, por isso parece algo assim:

augroup filetypedetect_wiki
    au!
    au FileType vimwiki iabbrev cfo %% TODO {{{1<esc>hhhhhhhhveh
    au FileType vimwiki iabbrev cfc %% TODO }}}1<esc>hhhhhhhhveh
    
por 09.08.2012 / 05:18

Tags