22Diciembre2019VimGuiaSupervivencia 

Vim es un editor clásico en sistemas tipo Unix/Linux, realmente es una herramienta muy potente, no necesita recursos de computo sofisticados, aunque evidentemente tiene un estilo de operación muy vieja guardia ...full años 80, simplemente utiliza otro paradigma que ha demostrado vigencia hasta nuestros días, no es fortuito que aparezca bien posicionado en la conocida encuesta anual de StackOverflow:

 22Diciembre2019VimGuiaSupervivenciaStackOverflowStats

Desde la consola abrimos el editor con el comando vim o vim NOMBRE_DE_ARCHIVO. En términos simples, lo primero es comprender que existe un modo de edición y un modo comandos, el modo de edición se activa oprimiendo la tecla i y el modo comandos se activa oprimiendo la tecla de ESC, luego para enviar un comando se oprime :, seguido del comando, luego ENTER.

El modo edición se reconoce porque aparece -- INSERT --  en la barra inferior de estado, también podemos ver allí, en la parte derecha, la posición (línea, columna) del cursor para el archivo que editamos.

En resumen, para una operación de supervivencia tenemos:

  • ¿Cómo salir?
    • Modo comandos :q! ENTER  ...se sale sin salvar cambios
    • Modo comandos :wq ENTER  ...se sale salvando los cambios
  • Vim soporta la edición de múltiples archivos, ¿cómo abrir un nuevo archivo?
    • Modo comandos :edit NOMBRE_ARCHIVO ENTER  ...si no recuerdas el nombre del archivo, usa TAB para completar el nombre del archivo o navegar los disponibles en el directorio de trabajo (flechas izquierda, derecha + ENTER), si por casualidad escoges una carpeta, saldrá el contenido del directorio de trabajo, lo podrás navegar (flechas arriba, abajo), al encontrar tu archivo deseado das ENTER y listo.
  • OK, veo el nuevo archivo ¿donde quedó mi anterior archivo?
    • Modo comandos :ls ENTER  ...verás un listado de archivos abiertos, se llaman buffers
    • Modo comandos :bNÚMERO_DEL_BUFFER ENTER  ...b1, b5, b9 etc, así saltas a otro archivo abierto
    • en cualquier momento puedes cerrar el buffer actual como se explica en el primer item
  • Quiero ejecutar un comando en la shell sin tener que cerrar todo y perder mi flujo de trabajo...
    • Modo comandos :! COMANDO_SHELL ENTER  ...ejecutarás el COMANDO_SHELL, verás su salida y luego un aviso de confirmación para volver al editor, también soporta autocompletado oprimiendo TAB
  • ¿cuál es el equivalente al famoso CTRL-Z de cualquier editor?
    • Modo comandos u  ...no hay necesidad de oprimir :
    • Modo comandos CTRL + r  ...para aplicar de nuevo el cambio (redo)
  • ¿y para cortar y pegar?
    • Modo comandos v  ...modo VISUAL, se selecciona un bloque de texto (flechas arriba, abajo), verás el bloque seleccionado, ESC para cancelar
    • con el bloque seleccionado oprimes la tecla y ...tendrás ese bloque listo para jalarlo (yank) a otra sección del archivo
    • navegas a la posición de destino para hacer put. Oprimiendo p se insertará el bloque desde el caracter inmediatamente siguiente a la posición del cursor. También puedes volver al modo edición, hacer espacio, organizar, vuelves a modo comandos con ESC y luego pegar con p

Vim más que un editor, puede convertirse en un entorno completo de programación, soporta edición por tabs, autocompletado, resaltado de sintaxis, ventanas (divisiones horizontales/verticales de la pantalla, útil para editar archivos en paralelo, se cambia entre ellas con Modo comandos CTRL w w , se cierra la ventana actual con Modo comandos CTRL w c , para esto último tiene que salvarse el archivo previamente).

Esta sólo es una introducción, la documentación completa se accede vía Modo comandos :help user-manual . Lleva un tiempo acostumbrarse, pero vale la pena, es como una navaja suiza de edición en un entorno Linux.

Enlaces interesantes:

En OpenSAI estaremos atentos a conocer tu experiencia, no dudes en dejar tu comentario ...y si te gustó nuestro contenido ya sabes que nos puedes invitar un café (en Colombia se le dice tintico... 😊)

No hay comentarios

Deje su comentario

En respuesta a Some User

Este sitio web utiliza cookies necesarias para su funcionamiento y para alcanzar los fines que se describen en la política de privacidad. Al aceptarla, al desplazarse por esta página o al continuar navegando, acepta nuestra política de privacidad.