Configuração do Vim para tipos de arquivos específicos

3

Estou tendo dificuldades em usar o .vimrc para aplicar configurações específicas com base no tipo de arquivo. Seguindo a sugestão de autocmd FileType aqui , tentei aplicar uma configuração baseada no tipo de arquivo. Aqui está o que eu tenho no meu .vimrc:

autocmd FileType tex call Tex_config()
  function Tex_config()
    let g:LatexBox_viewer = 'skim'
    let g:LatexBox_latexmk_options = '-pvc'
    let g:tex_flavor = "latex"
    setlocal spell spelllang=en_ca
  endfunction

Eu posso chamar a função Tex_config () com: debug Tex_config: Vim felizmente envia a função. Então, tudo parece que deveria funcionar.

Mas, quando emito :set filetype=tex , algo estranho acontece: a verificação ortográfica é desativada. E quando eu emito :set filetype=foo , a verificação ortográfica é ativada. Apenas o inverso do que espero que aconteça a partir deste trecho de configuração!

Qualquer ajuda seria muito apreciada. Aqui está o vimrc completo (função em 44-50). Obrigado.

Atualização: Outra parte do quebra-cabeça: quando eu carrego um arquivo TeX, as preferências são lidas sem nenhum problema. O problema surge em :set filetype=tex .

    
por CuriousYogurt 25.04.2011 / 20:15

1 resposta

1

Depois de comparar seu .vimrc com o meu, parece que a principal diferença é que todos os meus comandos de função terminam com um estrondo assim:

function! ExtPrefFunction()
   " Preferences here
endfunction
autocmd Filetype ext call ExtPrefFunction()

Honestamente, não sei por que eles são assim, mas meu trabalho. Além disso, você faz isso:

if &filetype == "ext"
    " Preferences here
endif

... mas isso só é registrado quando você abre o arquivo pela primeira vez para edição, não a qualquer momento em que o indicador do tipo de arquivo é alterado.

    
por 25.04.2011 / 20:18

Tags