Guía Para Principiantes De Vim

comandos vim basicos guia facil

¿Alguna vez quisiste aprender Vim, pero no estabas seguro de cómo empezar? No hay problema. Te tenemos cubierto! Esta será la primera de una serie de cuatro partes (posiblemente más larga) que cubre cómo usar Vim y dónde comenzar a usar el mejor editor de texto del mundo.

Tenga en cuenta que este es un artículo explícito para principiantes nuevos en Vim. Si ha estado usando Vim por un tiempo, todo esto debería parecerle completamente familiar, y podría preguntarse por qué algunos temas no están cubiertos. Paciencia. Llegaremos a todo a su debido tiempo, ¡pero hay mucho que cubrir!

¿Qué Es Vim Y Por Qué Lo Quiero?

Vim es el editor de elección para muchos desarrolladores y usuarios avanzados. Es un editor de texto «modal» basado en el editor vi escrito por Bill Joy en la década de 1970 para una versión de UNIX. Hereda las asociaciones de teclas de vi, pero también agrega una gran cantidad de funcionalidades y extensibilidad que faltan en el vi original.

¿Qué diablos queremos decir con modal ? Cuando utiliza la mayoría de los procesadores de texto y editores de texto, las teclas alfanuméricas (es decir, de la a la z, de la 1 a la 9) solo se usan para ingresar esos caracteres a menos que sean modificados por una tecla de control. En Vim, el modo en que se encuentra el editor determina si las teclas alfanuméricas ingresarán esos caracteres o moverán el cursor por el documento.

Por ejemplo, muchos editores de texto y procesadores de texto requieren que use el mouse para hacer clic en un elemento de menú o icono, o use la combinación de teclas de acceso rápido Ctrl-s, para guardar un archivo.

En Vim, puede guardar un archivo sin que sus manos salgan del teclado y, a veces, sin siquiera dejar las teclas de inicio. Desde el modo de inserción de Vim , presione Escape y luego: w. Eso es todo. Más sobre eso más tarde.

Si todo eso suena complicado, no lo es, pero puede llevar un poco acostumbrarse, como conducir una transmisión manual en lugar de una automática. Entonces, ¿por qué quieres aprender Vim? Aunque Vim es mi editor favorito, seré muy directo: es posible que no quieras hacerlo. Si nunca va a hacer ninguna administración del sistema o editar mucho texto, y si no desea invertir tiempo en aprender las capacidades que tiene Vim, entonces aprender a Vim podría no ser el mejor uso de su tiempo.

Por otro lado, si hace algo de lo siguiente, probablemente quiera ver a Vim:

  • Administracion del sistema
  • Programación
  • Trabajar con HTML, LaTeX u otros lenguajes de marcado
  • Edición pesada de archivos de texto sin formato

Aunque Vim no es tan fácil de usar inicialmente como los editores de texto GUI estándar como Gedit o los procesadores de texto como Writer de OpenOffice.org, a largo plazo puede ser más productivo usando Vim. Si eres un mecanógrafo táctil, verás que tu velocidad mejorará aún más con Vim porque tus manos rara vez necesitan dejar las teclas de «inicio», y solo necesitarás usar el mouse si decides hacerlo. entonces.

Los administradores del sistema necesitan saber al menos un poco de Vim / vi para poder sobrevivir simplemente porque es el editor con mayor probabilidad de estar en cualquier sistema * nix en el que necesites trabajar. Vi es la lengua franca de la administración del sistema.

Si eres un programador o trabajas con lenguajes de marcado estructurados como HTML, LaTeX, DocBook, etc., Vim es lo mejor. Ofrece una serie de características que cubriré en entregas posteriores que hacen que trabajar con lenguajes de programación y marcado sea mucho más fácil.

Puedes ser escéptico. Yo también, hace 10 años, cuando mi jefe insistió en que aprendiera a Vim a trabajar en el sitio web de la compañía. La primera semana fue dolorosa. El mes después de eso estuvo bien. Dentro de dos meses, habría escrito antes con los pies que para alejarme de Vim.

Los Modos

Algunas personas no están de acuerdo sobre cuántos modos tiene realmente Vim. Voy a definir tres: modo de inserción, modo de comando y modo de última línea. Comencemos con el modo predeterminado que verá cuando inicie el modo de comando Vim.

Cuando ejecuta vim filename para editar un archivo, Vim comienza en modo comando. Esto significa que todas las teclas alfanuméricas están vinculadas a comandos, en lugar de insertar esos caracteres. Al escribir j no se insertará el carácter «j», se moverá el cursor hacia abajo una línea. Escribir dd eliminará una línea completa, en lugar de insertar «dd».

Para ingresar al modo de inserción , escriba i (para «insertar») y ahora las teclas se comportarán como es de esperar. Puede escribir normalmente hasta que desee hacer una corrección, guardar el archivo o realizar otra operación reservada para el modo de comando o el modo de última línea. Para salir del modo de inserción, presione la tecla Escape.

Una vez que presiona Escape, vuelve a estar en modo comando. ¿Qué sucede si desea guardar su archivo o buscar en su documento? No hay problema, presione: y Vim cambiará al modo de última línea . Vim ahora está esperando que ingrese un comando como: w para escribir el archivo o: q para salir del editor.

Si todo eso suena complicado, en realidad no lo es. Lleva algunos días comenzar a entrenar tu cerebro para moverse entre los modos y memorizar las teclas más importantes para el movimiento, los comandos, etc. Pero una vez que comience a acostumbrarse, se sorprenderá de lo fluido que es editar un archivo en Vim. Veamos algunos de los comandos más comunes que necesita saber.

Los Fundamentos De Moverse En Vim

Lo primero que querrá aprender es cómo moverse por un archivo. Cuando esté en modo comando, querrá recordar las siguientes teclas y lo que hacen:

  • h mueve el cursor un carácter hacia la izquierda.
  • j mueve el cursor una línea hacia abajo.
  • k mueve el cursor una línea hacia arriba.
  • Muevo el cursor un carácter hacia la derecha.
  • 0 mueve el cursor al comienzo de la línea.
  • $ mueve el cursor al final de la línea.
  • w avanzar una palabra.
  • b retroceder una palabra.
  • G mover al final del archivo.
  • gg moverse al comienzo del archivo.
  • `. pasar a la última edición.

Aquí hay un consejo útil: al anteponer un comando de movimiento con un número, se ejecutará ese movimiento varias veces. Entonces, si desea subir seis líneas, ingrese 6k y Vim moverá el cursor hacia arriba seis líneas. Si desea mover más de cinco palabras, ingrese 5w. Para mover 10 palabras hacia atrás, use 10b.

Tenga en cuenta esa sugerencia: encontrará que también puede ser útil introducir otros comandos con un número.

La mejor manera de aprender es practicando. Tómate unos minutos para probar Vim. Si está en un sistema Linux en este momento, abra una terminal y escriba vim filename. Ingrese al modo de inserción y escriba un poco (o copie parte del texto de este artículo en Vim) y luego presione Escape para comenzar a practicar el movimiento alrededor del archivo. Una vez que sientas que te estás acostumbrando, es hora de intentar un poco de edición.

Edición De Estilo Vim

Ahora que sabe cómo moverse un poco, intentemos editar. Mueva el cursor al comienzo de una palabra. Ahora escriba x. ¿Que pasó? Deberías haber eliminado el carácter en el que estaba el cursor. ¿Quieres deshacerlo? No hay problema. Escriba u (para deshacer) y se restaurará.

¿Quieres eliminar una palabra completa? Mueva el cursor al comienzo de una palabra nuevamente. Use dw. Tenga en cuenta que esto solo eliminará la palabra del cursor, por lo que si tiene el cursor en el medio de una palabra, solo eliminará a partir de ese punto. De nuevo, lo deshacerás. Tenga en cuenta que Vim tiene múltiples niveles de deshacer, por lo que puede deshacer el cambio antes de eso y el cambio antes de eso, etc.

¿Quieres deshacer tu deshacer? Presiona Ctrl-r. Eso rehacerá su último deshacer.

Nuevamente, aquí hay una lista más larga de los comandos que definitivamente querrás saber al comenzar:

  • d inicia la operación de borrado.
  • dw borrará una palabra.
  • d0 borrará al comienzo de una línea.
  • d $ se eliminará al final de una línea.
  • dgg se eliminará al comienzo del archivo.
  • dG se eliminará al final del archivo.
  • Deshacerás la última operación.
  • Ctrl-r rehacerá el último deshacer.

Es posible que haya notado que varios comandos combinan una operación de texto y una tecla de movimiento. gg lo lleva al final de un archivo, y d se usa para eliminar. Combinarlos te da algo más poderoso. Vim es así. Si está trabajando en Vim y piensa «oye, me pregunto si puedo combinar dos cosas que sé para hacer algo más fácil», la respuesta es a menudo (pero no siempre) sí.

Avancemos un poco y hablemos brevemente sobre buscar y reemplazar.

Buscar Y Reemplazar

Ahora que sabe cómo ingresar texto, hacer algunos cambios, etc., es hora de aprender a usar la búsqueda y el reemplazo en Vim. Es realmente bastante fácil. Si desea buscar en el documento desde el modo de comando, use / seguido del texto que desea buscar. Entonces, si quiero buscar «conejito» puedo ingresar / y luego conejito y presionar enter.

Si quiero encontrarlo de nuevo, presiono n. Si quiero buscar una instancia anterior del texto, usaré N en su lugar, que buscará en la dirección opuesta a través del documento.

¿Quieres invertir la dirección de tu búsqueda? Utilizar ? en lugar de / y Vim se moverá hacia atrás a través del documento. Usando ny N como arriba invertirá la dirección de la búsqueda.

  • text busca texto en el documento, en el futuro.
  • n mueva el cursor a la siguiente instancia del texto desde la última búsqueda. Esto se ajustará al comienzo del documento.
  • N mueve el cursor a la instancia anterior del texto desde la última búsqueda.
  • texto búsqueda de texto en el documento, yendo hacia atrás.
  • :% s / texto / reemplazo de texto / g búsqueda a través de todo el documento de texto y reemplazarlo con texto de sustitución .
  • :% s / texto / reemplazo de texto de búsqueda / gc través de todo el documento y confirman antes de reemplazar el texto.

Eso es todo bastante fácil, ¿no? Ahora para pasar a una operación importante: cortar y pegar texto.

Copiar Y Pegar

Ya has aprendido a eliminar texto. El último texto que ha eliminado se almacena en el búfer listo para volver a pegarlo en el documento. Entonces, si ha ejecutado dd y ha eliminado una línea completa, ahora puede presionar p o P para pegarla nuevamente en el documento. Esto se aplica a líneas individuales, líneas múltiples e incluso documentos completos.

¿Quieres seleccionar texto? En el modo de comando, presione V y podrá mover el cursor usando las teclas de flecha o las teclas de movimiento estándar (h, k, j, l) para resaltar el texto. Esto es bastante fácil, pero puede ser lento. ¿Quieres copiar líneas enteras a la vez? Use V en lugar de v y resaltará líneas enteras a la vez. Nuevamente, puede usar las teclas de movimiento para resaltar líneas adicionales.

Vim también tiene un truco genial. Puede resaltar en columnas. Use Ctrl-v y podrá resaltar una columna en lugar de una línea completa. Esto puede ser útil cuando se trabaja con algunos archivos de texto que tienen datos en columnas y desea seleccionar una columna completa, pero no una línea completa.

Cuando haya resaltado lo que desea, presione y y «arrastrará» el texto al búfer para pegarlo más tarde. Entonces, una operación de pegado habitual podría verse así:

Presione v para resaltar algo de texto. Luego presiona y para tirarlo al búfer. Luego mueva el cursor donde lo desee y use p en modo comando. Ahí tienes, ¡acabas de pegar un texto!

Los comandos que más necesitas para comenzar:

  • v resaltar un carácter a la vez.
  • V resaltar una línea a la vez.
  • Ctrl-v resaltado por columnas.
  • p pegue el texto después de la línea actual.
  • P pegar texto en la línea actual.
  • y tire del texto al búfer de copia.

Ya has editado lo suficiente por un día y estás listo para empacarlo. No hay problema. Así es como puede guardar el archivo y salir de Vim.

Guardar Y Dejar De Fumar

Si está en modo de inserción, presione Escape. Luego ingrese: y verá una línea en la parte inferior de la pantalla con un cursor listo para tomar la entrada.

Para escribir el archivo que está editando, ingrese w. (Entonces, tendrá: w.) Eso escribirá el archivo al nombre de archivo existente. Si no tiene un nombre de archivo o desea escribir en un nombre de archivo diferente, use: w filename .

Para salir de Vim después de que hayas terminado, presiona: q. Como Vim es tu amigo, no se te escapará si no has guardado tu archivo. Dirá «no escribir desde el último cambio» y le sugerirá que agregue. para anular.

Si realmente desea dejar de fumar, continúe y use: q! para salir sin ser molestado. También puede salir de Vim usando ZZ, que guardará y cerrará el archivo. Nuevamente, todo esto puede sonar un poco complejo, pero realmente no lo es. Es un montón de cosas más pequeñas aprender que cuando las sumas, se convierte en un paquete muy poderoso.

Por ahora eso debería ser suficiente para comenzar. Sin embargo, no te preocupes. Revisaremos más uso de Vim la próxima semana y seguiremos trabajando en Vim hasta que seas un experto.

Deja un comentario