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
    no guardar ficheros de backup
  • syntax on
    Activa la sintaxis coloreada según el tipo de fichero de texto.
  • set showmatch
    muestra las coincidencias en los resultados de la búsqueda
  • set ignorecase
    búsqueda sin importar mayúsculas y minúsculas
  • set incsearch
    para ver los primeros resultados de la búsqueda mientras la estás escribiendo
  • set expandtab
    cambia los tabs por espacios
  • set ts=4
    un tab son 4 espacios
  • set autoindent
    Auto indenta, es decir, cuando se pulsa intro se pone el cursor debajo del principio de la línea de arriba.
  • set number
    muestra el número de línea, útil para edición de código.

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
    activa el corrector ortográfico, por defecto está el idioma inglés.
  • set spelllang=es,en
    escoge el idioma español e inglés para el corrector ortográfico, se pueden poner más idiomas separados por comas.
  • 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
    para saber los nombres de los schemes que hay disponibles (evidentemente solo se puede ejecutar dentor del VIM).
  • colorscheme nombre
    activa los colores del scheme 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
    pone una línea horizontal en la posición del cursor.
  • set cursorcolumn
    pone una columna en la posición del cursor.
  • highlight CursorLine guibg=lightblue ctermbg=lightgray
    cambia el color de la línea del cursor.

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.

Retro

Lugares

Redes

Sistemas

Varios