25 de julio de 2016

Edición rápida con VIM

VIM es un editor de texto que está enfocado en hacer nuestro trabajo una tarea altamente productiva, usando un mínimo de recursos. VIM promueve el concepto de localizar todas sus funciones (o tareas) de rápido acceso en el teclado, sin usar ratón, minimizando los movimientos de los dedos.

VIM es muy similar VI, y esta disponible por defecto en la mayoría de las distribuciones Linux. Todo lo expresado en este artículo también será válido para VI.

VIM trabaja en modo texto, en consecuencia podemos operar con él desde la terminal, especialmente útil cuando trabajamos con máquinas remotas. Para editar un archivo con VIM debemos ejecutar desde consola el comando:

vim nombre_de_archivo

Moverse dentro del archivo con VIM

Moviéndonos caracter a caracter

El comando anterior abrirá el archivo y prodemos movernos dentro de él usando las teclas hjkl:

  • h: Mueve el cursor un caracter a la izquierda.
  • j: Mueve el cursor una línea hacia abajo.
  • k: Mueve el cursor una línea hacia arriba.
  • l: Mueve el cursor un caracter a la derecha.

No debemos usar las teclas de fechas del teclado, pues nos provocan movimiento ineficientes de la mano, incluso en algunos equipos con los computadores Mac no funcionarán.

Moviéndonos palabra a palabra

Si necesitamos desplazamientos mayores, por ejemplo, en vez de movernos caracter a caracter deseamos movernos por palabra:

  • w: Posiciona el cursor al principio de la siguiente palabra.
  • e: Posiciona el cursor al final de la siguiente palabra.
  • b: Posiciona el cursor al principio de la palabra anterior.

Si deseamos irnos al principio de la línea usamos 0 y para el final de la línea $.

Moviéndonos párrafo a párrafo

Para moverse párrafo a párrafo en VIM, empleamos los caracteres:

  • {: Posiciona el cursor al inicio del párrafo.
  • }: Posiciona el cursos al final del párrafo.

Cuando editamos texto en VIM o VI, podemos crear nuevos párrafos con la tecla Enter. Si no deseamos crear un párrafo, pero si una separación visual del texto, usamos Shift + Enter.

Moviéndose dentro del archivo

Cuando necesitamos desplazarnos más allá de los párrafos, VIM nos provee esas funciones usando los caracteres:

  • Ctrl + F (Combinación de Teclas): Avanza el cursor una página hacia adelante.
  • Ctrl + B (Combinación de Teclas): Avanza el cursor una página hacia atras.
  • G: Posiciona el cursor al final del archivo.
  • 1G: Posiciona el cursor al inicio del archivo.

Editando el archivo dentro de VIM

En VIM no se emplean las teclas de desplazamiento, por ejemplo <-, ni la tecla Supr.

Cortar, Copiar y Pegar palabra:

  • dw: Corta desde la posición actual del cursor hasta el final de la palabra.
  • yw: Copia desde la posición actual del cursor hasta el final de la palabra.
  • p: Para pegar.

Cortar, Copiar y Pegar líneas:

  • ndd: Donde n es el número de líneas a cortar.
  • nyy: Donde n es el número de líneas a pegar.
  • p: Para pegar.

Eliminando caracterés, palabras o párrafos:

  • x: Borrar un caracter.
  • dw: Borrar una palabra.
  • dd: Borra la línea entera.
  • D: Borra la línea a la derecha del cursor.
  • ndd: Borrar n líneas consecutivas.
  • 1,.d: Borrar las líneas desde el inicio del archivo hasta donde se encuentra posicionado el cursor.
  • .,$-15d: Borrar las líneas desde la posición actual del curso hasta llegar a las últimas 15 líneas del archivo.

Deshacer:

  • u: Deshacer el último cambio efectuado.
  • Ctrl + R (Combinación de Teclas): Para rehacer.

Buscar y reemplazar:

  • s/textoActual/textoNuevo: Reemplaza el ‘textoActual’ con el ‘textoNuevo’, en la línea donde se encuentra posicionado el cursor.

  • s/textoActual/textoNuevo/g: Reemplaza el ‘textoActual’ con el ‘textoNuevo’.

Para entrar en el modo edición se usa la letra i, para salir de él se usa la tecla Esc desde donde podemos grabar el archivo con los caracteres :w y salir de VIM con :q!.

Conclusiones

El conocer este editor de texto es múy útil cuando necesitamos administrar sistemas basados en Unix, que nos entrega gran potencia en la edición de textos. Distinto a opciones menos poderosas como el editor nano que encontramos en Linux.

En este artículo, hemos visto sólo una parte infima de las posibilidades de VIM, pero nos será útil para iniciarnos en VIM.

Referencias

Interactivo tutorial de VIM, muy buen recurso para aprender practicando: http://www.openvim.com/.
Homepage del editor VIM: http://www.vim.org/.
Homepage del editor VI: https://sites.google.com/a/bostic.com/keithbostic/vi/.
Historia del editor de textos VI: https://es.wikipedia.org/wiki/Vi.