Perfiles en VIM🔗

Es posible mantener perfiles de tal manera que uno pueda separar extensiones y preferencias de usuario mediante el uso de la variable de entorno VIMINIT, así como de configurar las siguientes variables dentro de VIM: runtimepath, viminfo, undodir, backupdir y directory.

Por ejemplo, las siguientes carpetas son perfiles: $HOME/.config/vim/profiles/perfil1 y $HOME/.config/vim/profiles/perfil2. En cada una de ellas existe el archivo init.vim con el siguiente contenido, según el perfil:

" runtime path
let rtp=&runtimepath
set runtimepath=~/.config/vim/profiles/perfil1
let &runtimepath.=','.rtp.',~/.config/vim/profiles/perfil1/after'
" info file
set viminfo+=n~/.config/vim/profiles/perfil1/viminfo
" undo directory
set undodir=~/.config/vim/profiles/perfil1/undodir//
" backup directory
set backupdir=~/.config/vim/profiles/perfil1/backup//
" swap directory
set directory=~/.config/vim/profiles/perfil1/swap//

La ejecución de VIM de acuerdo al perfil sería:

[nihilipster@localhost:~]$ export VIMINIT="source $HOME/.config/vim/profiles/perfil1/init.vim"
[nihilipster@localhost:~]$ vim

Plugin

En caso de hacer uso de algún plugin manager (vim-plug, Vundle, pathogen, Vim8’s packages, etc) será necesario configurarlo para indicar la ubicación de los plugins dentro del perfil usado.

Fuentes🔗