El lenguaje de Vim

Este es uno de los capítulos del tutorial Vim, un editor atemporal. Encontrarás los enlaces a todos los de capítulos, al final de este artículo.

Hasta el momento has visto la sintaxis de Vim. Como moverte por el editor y como añadir y modificar texto. Sin embargo, lo que has visto no son mas que atajos de teclado, combinación de teclas y otras operaciones similares. Pero vamos a ir un poco mas allá. ¿Que pensarías si te digo que tienes que tratar con Vim como si le hablaras? Si, para relacionarte con Vim, tienes que utilizar su propio lenguaje, el lenguaje de Vim. Y es que el lenguaje de Vim cuenta con sus verbos, nombres y adverbios, como verás en este nuevo capítulo del tutorial sobre Vim

El lenguaje de Vim

El lenguaje de Vim

Como cualquier otro lenguaje, el lenguaje de Vim tiene sus verbos, nombre y adverbios, tal y como he mencionado en la introducción. A continuación, encontrarás cada uno de los elementos del lenguaje de Vim, y posteriormente las construcciones gramaticales.

Verbos

Así, y esto ya te lo fui indicando en el capítulo anterior, en Vim, tienes los siguientes verbos, que son los que indican las acciones que vas a realizar,

  • d para borrar. Indicarte que además de borrar, lo copia. De esta forma, te ahorras un paso.
  • c te permite cambiar. Realmente el efecto es el de borrar, y volver al modo insertar. De esta te ahorras pulsar una tecla. Al fin y al cabo, el objetivo es ser eficiente.
  • y es el verbo que utilizarás para copiar.
  • > introduce una sangría

Acciones instantáneas

Además de los verbos, en el lenguaje de Vim, existen una serie de acciones instantáneas. Me refiero a acciones que no se pueden combinar ni formar frases con ellas, como verás que se puede hacer con los verbos anteriores. Sin embargo, estas acciones instantáneas tienen su interés, en tanto en cuanto, te permiten realizar pequeñas operaciones, como por ejemplo, borrar un carácter o reemplazarlo. Estas acciones, son las siguientes,

  • x lo utilizarás para borrar el carácter que se encuentra bajo el cursor.
  • r te permite reemplazar un carácter por otro
  • s borras el carácter sobre el que se encuentra el cursor y cambias al modo insertar.

Así, básicamente la diferencia entre r y s, es que mientras que el primero cambia el carácter y se mantienen en el modo normal, en el segundo, al realizar el cambio pasas al modo insertar.

Modificadores

Los modificadores preceden a los nombres. Son los que te van a permitir describir como vas a actuar. Con el verbo indicas lo que vas a hacer, mientras que con el modificador como lo vas a llevar a cabo.

  • i dentro del objeto.
  • a alrededor. La diferencia con el anterior, es que este incluye los espacios que rodean el objeto.
  • un número cualquier número
  • t realiza una búsqueda y para justo antes del primer hallazgo
  • f igual que en el anterior, pero en este caso se detiene en el hallazgo

La diferencia entre i y a, es que el primero no incluye espacios y el segundo no. Así si estás entre dos palabras, por ejemplo, y utilizas diw solo borrará el espacio, mientras que si utilizas daw borrarás la siguiente palabra. Puedes probarlo con En un lugar de la Mancha». Si sitúas el cursor entre de* y la y utilizas diw borrará el espacio, mientras que si utilizas daw borrará el espacio y la.

Si no utilizas los modificadores, el comportamiento de la acción se entiende desde el punto que te encuentras. Mientras que si utilizas el modificador será agnóstico del punto en el que te encuentres. Así,

  • dw borrará desde el punto que te encuentres en la palabra hasta el final de la misma.
  • diw borrará la palabra completa
  • daw hará lo mismo que en los casos anteriores, es decir, borrará la palabra completa, pero también los espacios que la rodean. «casa en fincas»

Nombres

Los nombres no son mas que objetos en tu texto, letras, palabras, frases, párrafos, etiquetas o bloques. Así, en Vim, tienes los siguientes nombres,

  • l indica una letra
  • w lo utilizarás para palabras
  • b se refiere también a palabras, pero en este caso a las palabras precedentes.
  • s ó ) para frases
  • p ó } en el caso de párrafos
  • t indica que te refieres a una etiqueta (como en el caso de HTML ó XML)
  • " lo utilizarás para una frase entre comillas dobles
  • ' en este caso se refiere a comillas simples

Nombres y movimientos

¿A que me refiero con nombres y movimientos? Con nombre me refiero a objetos propiamente dichos. Objetos como puede ser una palabra, una frase, un párrafo, lo que hay entre comillas. Al final, se trata de todo aquello que está relacionado con los modificadores a e i.

En el caso de que no lleve esos dos modificadores, o bien que utilice los modificadores de búsqueda, como son f y t, son movimientos. Aunque para los efectos el comportamiento es el mismo.

Así, en lo que ser refiere a movimientos, a continuación tienes algunos,

  • dw borra hasta la siguiente palabra
  • dt, borra hasta la siguiente coma
  • de borra hasta el final de la palabra en la que te encuentras
  • d2e borra hasta el final de la siguiente palabra
  • dj borra una línea hacia abajo
  • dt) borra hasta el siguiente paréntesis
  • d/la borra hasta la primera aparición de la

Por el contrario, cuando te quieres refererir a objetos de texto,

  • iw, aw es una palabra con las connotaciones indicadas anteriormente, en lo que se refiere a i y a.
  • is, as indica una frase
  • ip, ap se refiere al párrafo
  • i), a) se refiere a lo que está contenido entre paréntesis. Lo mismo valdría para i] e i}. Igualmente, también valdría para sus parejas i(, i[ e i{.
  • i', a' en este caso a lo que está entre comillas simples. Y lo mismo valdría para las comillas dobles y para las comillas inclinadas.
  • it, at se refiere a las etiquetas o tag de html o xml

A por las construcciones gramaticales

Ahora que ya conoces los nombres y los verbos, ha llegado el momento de comenzar a crear tus propias construcciones gramaticales, atendiendo a la siguiente estructura,

<numero><verbo><nombre/movimiento>
  • d2l borra dos caracteres
  • d2w borra dos palabras. A partir de aquí, y atendiendo a los modificadores, puedes utilizar d2aw ó d2iw, dependiendo del objetivo que quieras conseguir. Ten en cuenta, que si estás en mitad de una palabra y utilizas d2w, borrarás parte de esa palabra y la siguiente.
  • yip copia el párrafo actual
  • cis borra la frase en la que te encuentras y pasa al modo insertar
  • ct, borra el texto desde donde te encuentras hasta la siguiente coma, sin incluir la coma, y pasa al modo insertar. Si quieres incluir la coma tendrías que utilizar cf,
  • ct. borra el texto desde donde te encuentres hasta el punto, sin incluir el punto, y pasa al mode insertar.
  • di" borra lo que se encuentra entre comillas. Mientras que da", borra no solo lo que se encuentra entre comillas sino también las propias comillas.
  • di] borra lo que se encuentre entre corchetes
  • dT, borra hasta la anterior coma en la frase, sin borrar la coma. Si quisieras borrar también la coma dF,.

Pero, ten en cuenta que estas construcciones gramaticales son repetibles. La verdadera magía de Vim es la composición. Así, puedes enteneder los operadores como verbos, los números como adjetivos, y los movimientos o nombres como objetos.

Algunos consejos sobre el lenguaje de Vim

  • .
  • iw mejor que w. Es decir objetos de texto, mejor que movimientos. Esto es así, porque en el caso de que tengas que repetir una operación, la puedes repetir con mayor exactitud en el caso de que utilices objetos, y no movimientos. Repitibilidad.
  • intenta utilizar el mínimo número de pulsaciones posibles haciendo uso de las diferentes herramientas que has visto, básicamente, conjugar verbos y articular frases.
  • tienes que pensar que el principal objetivo de Vim, no es tanto escribir, sino editar texto.
  • no trates de memorizar todos los comandos, simplemente conjuga.

Más información,

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *