Suponha que você tenha uma .vimrc
configuração longa . Minha configuração tinha mais de 400 linhas antes de dividi-la em módulos. Decidi dividi-lo nos seguintes arquivos:
`vimrc`: main, loads the rest of config files
`vimrc.bundles`: plug-ins
`vimrc.augroups`: *MIME*-based config (e.g. key bindings for *Ruby* / *Rails*)
`vimrc.writing`: setup for distractless environment
Todos eles são mantidos ~/dotfiles/
. Você também pode encontrá-los em minha conta do GitHub .
Depois a mudança .vimrc
tem 290 linhas, o que é um pouco melhor. Como você deve saber, por padrão, o Vim procura a configuração nos seguintes dotfiles :
~/.vimrc
~/.vim/vimrc
Até ontem mantive 4 links simbólicos :
`.vimrc` --> `~/dotfiles/vimrc`
`.vimrc.bundles` --> `~/dotfiles/vimrc.bundles`
`.vimrc.augroups` --> `~/dotfiles/vimrc.augroups`
`.vimrc.writing` --> `~/dotfiles/vimrc.writing`
Se você quiser compartilhar a configuração entre o vanilla Vim , gVim , MacVim ou neovim , etc., não é muito utilizável. Por exemplo, o neovim procura a configuração em ~/.config/nvim/init.vim
.
Como mantenho toda a configuração no ~/dotfiles
diretório, pensei que seria melhor ‘delegar’ apenas um arquivo principal ( vimrc
) que carregaria o restante dos arquivos. Isso é o que eu terminei:
`~/.vimrc` --> `~/dotfiles/vimrc`
`~/.gvimrc` --> `~/dotfiles/vimrc`
`~/.whatevervimrc` --> `~/dotfiles/vimrc`
`~/.config/nvim/init.vim` --> `~/dotfiles/vimrc`
É assim que ~/dotfiles/vimrc
carrega o resto dos arquivos de configuração:
" define paths in global variables
let g:dotfilesPath = '~/dotfiles/'
let g:vimrcBundles = g:dotfilesPath . 'vimrc.bundles'
let g:vimrcAugroups = g:dotfilesPath . 'vimrc.augroups'
let g:vimrcWriting = g:dotfilesPath . 'vimrc.writing'
" load files
exe 'source ' g:vimrcBundles
exe 'source ' g:vimrcAugroups
exe 'source ' g:vimrcWriting
Acredito que deve ser uma maneira melhor de carregar / gerenciar esses arquivos, mas por
enquanto é outra pequena vitória e dá conta do recado.