Eu tenho um plug-in no &runtimepath/ftplugin/c.vimqual define todas as minhas opções preferidas para arquivos c. No entanto, eu também gostaria de usar as mesmas configurações para cpparquivos. Eu poderia simplesmente copiar as configurações, mas isso parece redundante. Existe uma maneira de carregar um ftplugin para mais de um tipo de arquivo?
O ftplugin padrão ( /usr/share/vim/vim74/ftplugin/cpp.vimno meu sistema) já deve fazer isso:
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Behaves just like C
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim
runtimedeve ser relativo ao runtimepath:
Pode haver vários {file}argumentos, separados por espaços. Cada um {file}é pesquisado no primeiro diretório de 'runtimepath', depois no segundo diretório, etc.
Se eu criar um ~/.vim/ftplugin/c.vim, isso também será executado para arquivos C ++ sem fazer nada!
Se você não tiver esse arquivo na sua versão do Vim, poderá criar um novo ~/.vim/ftplugin/cpp.vimarquivo com a runtime!instrução
Ou, se você estiver em um sistema UNIX-y, poderá usar um link simbólico:
Dentro do cpp.vim, coloque:
<sfile>
expande para o arquivo de origem atualmente e:h
significa o cabeçalho dele.fonte
:runtime! ftplugin/css*.vim ftplugin/css/*.vim
seria uma solução melhor.