Personalización (.vimrc)

( desarrollo / vim )

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:

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.

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.

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:

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.

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.

Modificado el 10 de octubre de 2011
Creado el 2 de noviembre de 2010
   

Compartiendo conocimiento desde 1995 - I.M.D. I.M.D.