5. Editor vim

vi es un clásico editor en ambientes tipo UNIX que introducimos con un extracto de [AALinux].

Para editar un texto (digamos ma.txt) con el editor vi, teclee desde un intérprete de comandos:

$ vi ma.txt

vi es un editor con dos modos: edición y comandos. En el modo de edición el texto que ingrese será agregado al documento, en modo de comandos las teclas que oprima pueden representar algún comando de vi. Cuando comience a editar un texto estará en modo para dar comandos. El comando para salir es : seguido de q y ENTER (con ese comando saldrá si no ha hecho cambios al archivo o los cambios ya están salvados, para salir ignorando cambios :q! seguido de ENTER).

Puede insertar texto (pasar a modo edición) con varias teclas:

i

Inserta texto antes del caracter sobre el que está el cursor.

a

Inserta texto después del caracter sobre el que está el cursor.

I

Inserta texto al comienzo de la línea en la que está el cursor.

A

Inserta texto al final de la línea en la que está el cursor.

o

Abre espacio para una nueva línea después de la línea en la que está el cursor y permite insertar texto en la nueva línea.

O

Análogo al anterior, pero abre espacio en la línea anterior.

Para pasar de modo edición a modo de comandos se emplea la tecla ESC, para desplazarse sobre el archivo puede emplear las flechas, PgUp, PgDn o bien para mantener los dedos mejor posicionados en el teclado puede emplear las teclas h, j, k y l. Para ir a una línea específica puede emplear : seguido del número de línea y ENTER; para ir al final de la línea en la que está el cursor $, para ir al comienzo 0. Para buscar un texto / seguido del texto que desea buscar y ENTER. Después de hacer cambios puede salvarlos con :w o para salvar y salir puede emplear ZZ. Para ejecutar un comando del intérprete de comandos puede emplear :! seguido del comando y ENTER (e.g :!ls).

5.1. vim

En su sistema puede haber diversas versiones de vi, recomendamos vim que ofrece extensa ayuda y cuenta con varias extensiones, por ejemplo:

Digrafos

Útil para producir caracteres del español, si el teclado o la configuración del mismo no lo permiten. Presione Control-K y después una secuencia de dos teclas de acuerdo al caracter, e.g 'a produce á, n? produce ñ, u: produce ü, !I produce ¡, ?I produce ¿. Pueden verse otros caracteres con el comando :digraphs.

Resaltado de sintaxis

Permite ver con colores que resaltan la sintaxis de algunos tipos de archivos (por ejemplo fuentes de DocBook, C, LaTeX). Se activa con :syntax enable. Para que se vean los colores de este editor, asegúrese de que su variable de ambiente TERM tenga el valor de una terminal que soporte color, por ejemplo las terminales gráficas soportan xterm-color y desde consolas tipo texto por ejemplo VT220. Vea como establecer la variable TERM en cada inicio de sesión en Sección 4, “Personalización”.

Indentación automática

Permite indentar automáticamente diversos tipos de archivos como XML, C, LaTeX, XSLT. Se activa con :filetype indent on. Para modificar tal indentación pueden establecerse variables de vim, bien en la sesión abierta, bien en ~/.vimrc o bien en cada archivo. Para fijar una configuración particular que se tome al editar cierto archivo, basta agregar al comienzo una línea (puede ser un comentario en el caso de lenguajes de programación) como:

/* vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker: */
		

Numeración de líneas

Pueden verse el número de cada línea con :set number y esta característica se deshabilita con :set nonumber.

Archivo de configuración

Cada usuario puede tener sus propias configuraciones en el archivo ~/.vimrc, que consta de líneas con comandos o comentarios. Los comandos no deben iniciar con ':' y los comentarios se colocan en líneas completas o al final de una línea iniciando con comillas. Por ejemplo:

" Este es un ejemplo de archivo de configuración para vim
syntax enable
filetype on
filetype plugin on
filetype indent on
	

Puede resultar instructivo que copie y examine un archivo de ejemplo distribuido con vim así:

$ cp /usr/local/share/vim/vim63/vimrc_example.vim ~/.vimrc
		

Sesión de vim

5.2. Lecturas recomendadas

Puede aprender sobre vim y su configuración en el manual de este programa que se consulta presionando la tecla F1. Esta documentación también está disponible en Internet en: http://vimdoc.sourceforge.net/htmldoc/usr_toc.html