El editor Vi en Linux

¿Qué es vi o vim (vi mejorado)?

Vi fue uno de los editores de referencia el Unix. Puesto que Linux nació como clon de Unix, uno de los programas que vino que él fue este editor de texto. Bram Moolenar lo fue mejorando en su Amiga al no convencerle los clones que existían por entonces para esta computadora y lo amplió con más opciones. De allí salió ViM (Vi iMproved).

Pantalla de inicio del editor de texto ViM
Pantalla de inicio del editor de texto ViM

Como podemos suponer ViM es compatible con los comandos que se utilizan en Vi añadiendo algunas características adicionales como:

  • Resaltado de sintaxis.
  • Grabación y reproducción de macros.
  • Multinivel de deshacer/rehacer.
  • Multiventana.
  • Navegación por pestañas.

En este artículo voy a mostrar algunas de estas características y comandos más usados de este editor.

Los modos en el editor Vi

El editor Vi (como ViM) tiene dos modos de funcionamiento: modo edición y modo comando. A estos podríamos añadirle el modo línea.

Modo comando

Al iniciar el editor Vi este lo hace en modo comando. Para llegar a este modo en cualquier otro momento lo haremos pulsando la tecla ESC. Cualquier letra presionada en este modo no se envía al fichero editado, sino que se interpreta como comando. El modo comando permite navegar a través del fichero, ejecutar búsquedas o borrar, copiar y pegar texto.

Alguna de las acciones que se pueden realizar en este modo son:

  • $ Ir al principio de la línea
  • ^ Ir al final de la línea
  • k Mover el cursor una línea arriba
  • j Mover el cursor una línea abajo
  • h Mover el cursor un carácter a la izquierda
  • l Mover el cursor un carácter a la derecha
  • w Mover el cursor al principio de la siguiente palabra o signo de puntuación.
  • b Mover el cursos al principio de la palabra o signo de puntuación anterior
  • x Borra el caracter sobre el que está el cursor
  • D Borra desde la posición del cursor al final de la línea
  • dd borra la línea completa sobre la que está el cursor. Para borrar 5 líneas ejecutaríamos 5dd
  • dw borra la palabra sobre la que está el cursor. Para borrar 2 palabras 2dw
  • u Deshacer
  • Ctrl-r Rehacer

Observa que todos los comandos que se ejecutan con una letra esta es en minúscula, ya que el sistema es sensible a mayúsculas y minúsculas. Por ejemplo si presionamos J (mayúscula) lo que hariamos sería unir dos líneas juntas.

Pensarás que para qué sirven estos comandos si ya disponemos en nuestros teclados de las flechas de dirección, la tecla de inicio y la de fin así como la combinación de estas con la tecla Control; pues esto es así porque en los inicios estas teclas no existían. Además, si aprendes a usarlas comprobarás que puede ser mucho más rápido al no tener que desplazar nuestra mano hacia un extremo del teclado.

Modo insertar

El modo insertar es el modo en el que escribimos nuestro texto en el editor Vi. Se puede entrar en él de cuatro formas distintas:

  • i Empiezas a escribir desde la posición actual del cursor
  • I Empiezas a escribir desde el principio de la línea donde se encuentra el cursor
  • a Empiezas a escribir añadiendo el texto a partir de la posición actual del cursor
  • A Empiezas a escribir a partir del final de la línea en que se encuentra el cursor
  • Para salir del modo de inserción hay que pulsar la tecla ESC

Modo línea

En el modo línea se entra desde el modo comando y pulsando los dos puntos (:). En este modo es donde se introducen comandos que no depende de la posición del cursor: guardar el documento, salir sin guardar, posicionar el cursor en una determinada posición, buscar y reemplazar…

Aquí podemos ver algunos de estos comandos:

  • :w Salvar los cambios
  • :q! salir sin salvar los cambios
  • :wq! Salvar los cambios y salir
  • :x Lo mismo que :wq!
  • :n Posiciona el cursor en la línea n. :7 coloca el cursor en la séptima linea del documento
  • :$ Posiciona el cursor en la última línea del documento
  • :set nu Activa la numeración de líneas. Con :set nonu lo desactivamos de nuevo
  • :help Una completa ayuda de ViM

Para ejecutar cada uno de estos comandos es necesario pulsar la tecla Enter después de introducirlo. Para alguno tenemos alternativas más rápidas. Por ejemplo, para ir a la última línea podemos presionar G desde el modo comando en vez de :$ Enter

Resumen

Vim (o Vi) es un editor muy potente y con muchísimas más opciones de las explicadas aquí. Con estas opciones tienes ya por dónde empezar lo básico. Pero si lo encuentras interesante revisa la completísima ayuda que viene con él y verás lo increíble que puede llegar a ser utilizarlo como tu editor de texto preferido.

En su sitio web oficial podéis encontrar más información, descargaros el editor para Unix, DOS y Windows e incluso para Amiga, OS/2, Mac, IOS (para iPhone y iPad) o Android (en Play Store «Vim Touch»).

También te puede interesar ...

Send this to a friend