Digamos que eu tenha algumas centenas de re-mapeamentos personalizados iab
para Java e outras centenas de re-mapeamentos para Haskell, então eu gostaria de dividi-los em arquivos diferentes para torná-lo mais gerenciável. O que estou procurando é criar algo parecido com isto:
~/.
├── .vimrc
└── .vim
└── custom
├── java.vim
└── haskell.vim
Onde .vimrc pode parecer algo como
import java
import haskell
É possível fazer algo assim, ou estou apenas complicando demais as coisas? Eu acho que o que estou tentando obter é o que se faz no LaTeX com o \input
comando ...
~/.vim/after/ftplugin/$language.vim
?after/ftplugin
?~/.vim/after/ftplugin/java.vim
, ele será executado automaticamente sempre que você abrir umjava
arquivo. Este parece ser o que você deseja.Respostas:
Você está procurando por plugins. Esse é o propósito deles.
E não se esqueça de definir seus mapeamentos, configurações, abreviações, comandos, ... como locais. Caso contrário, eles parasitarão outros buffers uma vez carregados.
Aqui estão algumas respostas mais completas:
fonte
Sim, o comando vim que você está procurando é
:source
ou:runtime
retirá-losruntimepath
.Por exemplo, você pode fazer isso no seu
.vimrc
:presumindo que
~/.vim
esteja no seuruntimepath
(que é por padrão).Você também pode soltar seus scripts no
~/.vim/plugin
diretório; consulte write-plugin nos documentos. O Vim executa automaticamente todos os scripts no diretório do plugin.fonte
custom
, que não é exatamente plugins, mas arquivos que poderiam estar lá.vimrc
?