VIM: Personalización (.vimrc)
El fichero de configuración del VIM es .vimrc que se puede colocar de forma global (ejecutar dentro de VIM :echo $VIM para saber donde está ubicado) y localmente en la home del usuario. En este fichero podemos personalizar el aspecto y funcionamiento del VIM. Las siguientes opciones se pueden poner en el fichero .vimrc una por línea o ejecutadas dentor del VIM en modo comando (pulsando antes ':').
Opciones útiles:
set nobackup
syntax on
set showmatch
set ignorecase
set incsearch
set expandtab
set ts=4
set autoindent
set number
Corrector ortográfico:
Desde la versión 7 el propio VIM incluye un corrector ortográfico (ya no es necesario usar el spell de Unix ni nada parecido). En caso de que necesitemos algún lenguaje extra (por defecto solo viene inglés) podemos mira en ftp://ftp.vim.org/pub/vim/runtime/spell y copiarlos en el directorio spell donde esté instalado el VIM.
set spell
set spelllang=es,en
set spellsuggest=X
muestra X sugerencias, por defecto son 5.Cuando VIM encuentra una palabra mal la marca (por defecto) en texto blanco con fondo negro. Si nos colocamos encima y pulsamos z= (estando en modo normal) nos sacará un listado de sugerencias de palabras.
Cambiando los colores (scheme):
Los schemes no solo cambian los colores de fondo y texto si no que cambian los colores de los errores, avisos, regla, etc, etc.
:colorscheme
colorscheme nombre
Línea de estado personalizada:
Por defecto VIM tiene una línea de estado muy pobre pero se puede personalizar por completo y hacerla muy útil con diversa información. Para activar y personalizar la línea de estado ejecutamos:
set statusline formato
donde "formato" es lo que queremos que muestre. Para saber todas las posibles opciones (y hay muchas) podemos ejecutar desde el VIM :help 'statusline'. Un ejemplo podría ser:
set statusline=%F%m%r%h%w\ [%{&ff}]\ [%Y]\ [HEX=\%02.2B]\ [X=%04l\ Y=%03v]\ [LEN=%L]
Visual cursor:
Aunque es muy bonito y en alguna ocasión muy útil, por lo general es algo incordio y ralentiza el scroll por lo que no es aconsejable usarlo.
set cursorline
set cursorcolumn
highlight CursorLine guibg=lightblue ctermbg=lightgray
Continuar editando donde lo dejamos:
Con esto conseguimos que cuando volvamos a editar un fichero el cursor aparezca donde lo dejamos al salir, con lo cual no ayudará mucho al no tener que buscar donde estábamos.
function! PositionCursorFromViminfo() if !(bufname("%") =~ '\(COMMIT_EDITMSG\)') && line("'\"") > 1 && line("'\"") exe "normal! g`\"" endif endfunction :au BufReadPost * call PositionCursorFromViminfo()
viminfo:
Vim usa el fichero viminfo (por lo general ~/.viminfo) para guardar información de la sesión anterior entre otras cosas.
Para cambiar el nombre del fichero y ubicación del mismo podemos usar el comando:
set viminfo=n/CAMINO/FICHERO
donde CAMINO es el PATH donde se va a guadar y FICHERO es el nombre fichero a usar (es conveniente mantener el mismo nombre). La "n" después del signo igual (=) indica que lo que va a continuación es el CAMINO y FICHERO a usar.