vim

Unas características de Vim para usuarios avanzados

Vim (y sus fork) actualmente, tiene una gran base de usuarios, así como muchos ajustes y mejoras disponibles públicamente para su descarga gratuita. Una de sus principales ventajas como editor es que puedes usarlo en cualquier lugar una vez que hayas aprendido los comandos básicos de los bloques que te podrían ser útiles. A pesar de usar Vim (bueno ahora neovim, uno de sus forks) durante varios años, todavía encuentro cosas que me sorprenden.

Tratare de contarte sobre un subconjunto pequeño de algunas características, que podrían serte de utilidad en tus incursiones por vim, mejorando tu flujo de trabajo.

  • Trabajar con varios archivos

Cuando trabajo en un proyecto, a menudo me encuentro usando varios archivos. Afortunadamente, Vim te permite tener varios archivos abiertos en diferentes pestañas. Para iniciar este comportamiento, usa el modo comando (:comando_a ejecutar), y lanza:

Este comando habilita el modo de expansión de pestañas para facilitar la búsqueda de archivos. Además, el historial está habilitado y se puede acceder presionando la flecha hacia arriba. Puedes usar los juegos de teclas (desde modo normal), para moverte entre estas pestañas:

  • Block mode

Aquí hay una manera rápida y fácil de comentar un bloque completo. Dado el archivo de muestra a continuación:

1 esto es una prueba
2 esto es una prueba
3 esto es una prueba
4 esto es una prueba
5 esto es una prueba
6 esto es una prueba
7 esto es una prueba

Coloque el cursor al comienzo de la línea 1 y presione CTRL+V. En la parte inferior de la ventana, verá aparecer las palabras VISUAL BLOCK. Ahora use la flecha hacia abajo o la tecla j para moverse al principio de la última línea. El primer carácter de cada línea está resaltado. Presiona shift+i, seguido de la almohadilla #, después ESC. y se hizo la magia, delante de todos los primeros caracteres se aparece la almohadilla, volviéndose el bloque comentarios.

La operación inversa para descomentar el bloque funciona de manera similar. Coloca el cursor al comienzo de la línea 1. Presiona CTRL+V. Nuevamente, las palabras VISUAL BLOCK aparecen en la parte inferior de la ventana. Repita la operación anterior, usando la flecha hacia abajo o j para mover el cursor al principio de la última línea, resaltando los caracteres de comentario, seguido de la tecla x (los eliminara), mientras si fuera shift +d, borra todo el bloque comentario.

  • Aumentar o disminuir números

Otra tarea frecuente es ajustar un bloque de código o una lista en un archivo de texto para incrementar números. En lugar de editar manualmente cada línea con algo como cW, simplemente coloque el cursor sobre el número y use uno de los siguientes:

  • Uso de macros

Otra tarea común. Para este ejemplo, cree una lista del 1 al 20. Sí, sé que hay miles de formas de hacer esto fuera de Vim, pero se trata de Vim y sus accesos directos. Supongamos un archivo que contiene el numero 1, teniendo el cursor sobre este, y en modo normal, seleccionamos las teclas qayyp (que grabará una macro en el registro a y copiará la línea 1), luego CTRL+A, que incrementará la línea 2. Si te ubicas sobre el numero 2 y repetimos, pues insertaría un numero 3, a continuación.

Aquí puedes ver la sintaxis básica de una macro de Vim:

Puedes utilizar cualquier letra minúscula (a-z) para almacenar las macros. Una vez guardada una macro en uno de los registros disponibles, puedes ejecutarla cada vez que quieras mediante:

Supongamos que tienes el siguiente texto y quieres poner en mayúsculas todo el texto de todas las líneas:

hola
las
macros
de
vim
son
geniales

Con el cursor situado al comienzo de la línea con el texto «hola», ejecuta: qa0gU$jq

Donde:

Para volver a ejecutar la macro cada vez que lo necesites, ejecuta @a. Como en la mayoría de comandos de Vim, puedes pasarle como argumento un número a las macros. Por ejemplo, puedes ejecutar 3@a para ejecutar la macro a tres veces. Puedes ejecutar 3@@ para ejecutar la última macro ejecutada tres veces.

Finalmente, aquí hay algunos comandos adicionales útiles para ahorrar tiempo:

ga: imprime el valor ASCII del carácter debajo del cursor (también se muestra en octal y hexadecimal).
gi: muévase a la última inserción que hizo e ingrese al modo Insertar.
gv — Inicia el modo visual y usa la selección anterior realizada.
gI — Comience a insertar al principio de la línea sin importar cuáles sean los primeros caracteres.

Conclusion

Vim es poderoso y está disponible para todas las plataformas principales. Si bien muchos usuarios de Linux se vuelven complacientes después de aprender los conceptos básicos, existen muchas oportunidades para ahorrar tiempo integradas directamente en la aplicación. Así que sigue excplorando esta aplicacion que nos une. Que esta entrada te sirva de inspiracion para mejorar tus habilidades y tu flujo de trabajo, usando vim(neovim). Hasta otra entrada lector. Buenas vibras.

Happy Hacking!

Deja un comentario