Búsqueda de sitios web

Aprenda consejos y trucos útiles del editor 'Vi/Vim' para mejorar sus habilidades - Parte 1


La necesidad de aprender a utilizar editores de texto en Linux es indiscutible. Todos los administradores e ingenieros de sistemas tratan con archivos de configuración (texto sin formato) a diario, y la mayoría de las veces esto se hace utilizando únicamente una o más herramientas desde una interfaz de línea de comandos (como nano, vim o emacs).

Si bien nano es quizás más adecuado para nuevos usuarios, vim o emacs son la herramienta elegida por los usuarios más experimentados debido a sus capacidades avanzadas.

Pero hay otra razón más por la que aprender a usar uno de estos editores de texto debería ser una prioridad absoluta para usted: puede toparse con un servidor solo CLI o tener un problema con el administrador de escritorio en su servidor Linux basado en GUI. o escritorio y el único recurso para examinarlo y editar archivos de configuración es la línea de comando.

Entre este artículo y el siguiente de esta serie de dos artículos, revisaremos 15 consejos y trucos para mejorar tus habilidades vim. Se supone que ya estás familiarizado con este editor de texto. De lo contrario, hágase un favor y familiarícese con vim antes de continuar: puede consultar Cómo usar vi/vim como editor de texto completo para obtener una guía muy detallada sobre cómo comenzar con vim.

Parte 2: 8 interesantes consejos y trucos del editor 'Vi/Vim'

CONSEJO #1: Usar la ayuda en línea

Después de iniciar vim, presione F1 o use :h en modo ex para ingresar a la ayuda en línea. Puede saltar a una sección o tema específico colocando el cursor sobre él y luego presionando Ctrl+] (Ctrl, luego el corchete de cierre).

Una vez que haya terminado, presione Ctrl+t para volver a la pantalla anterior. Alternativamente, puede buscar un tema o comando específico con :h .

Por ejemplo,

:h x 

mostrará la ayuda para el comando x (eliminar):

y

:h substitute

Aparecerá la ayuda sobre el comando sustituir (nuestro último consejo en este artículo).

CONSEJO #2: Salta hacia adelante y hacia atrás usando marcas

Si se encuentra editando un archivo que ocupa más de una pantalla, apreciará la funcionalidad proporcionada por las marcas. Puedes considerar una marca en vim como un marcador: una vez que la colocas en algún lugar, puedes volver a ella rápida y fácilmente. Supongamos que está editando un archivo de configuración de 300 palabras y por alguna razón necesita cambiar repetidamente entre las líneas 30 y 150, por ejemplo.

Primero, vaya a la línea #30 ingresando :30 en modo ex, luego regrese al modo comando y presione ma > (m, luego a) para crear una marca denominada “a” en la línea 30.

Luego vaya a la línea 250 (con :250 en modo ex) y presione `a (comilla invertida, luego a) para volver a marcar a en la línea 30. Puede usar letras minúsculas y mayúsculas para identificar marcas en vim (ahora repita el proceso para crear una marca denominada A en la línea #250).

Puedes ver tus marcas con

:marks aA

Como puede ver, cada marca está referenciada por una posición de línea/columna específica en el archivo, no solo por línea.

CONSEJO #3: Repita el último comando

Suponga que está editando un script de shell y se da cuenta de que el desarrollador anterior fue bastante malo en lo que respecta a la sangría. Veamos cómo solucionarlo con un par de comandos de vim.

Primero, seleccione un bloque visual colocando el cursor al inicio del bloque y luego presionando Ctrl+v (Ctrl, luego v).

  1. Para sangrar a la izquierda: presione
  2. Para sangrar a la derecha: presione

Luego presione el comando . (punto) para repetir cualquiera de las sangrías. El bloque seleccionado se moverá hacia la derecha o hacia la izquierda con solo presionar una tecla.

Otro ejemplo clásico del uso del comando punto es cuando necesita eliminar una serie de palabras: coloque el cursor en la primera palabra que desea eliminar y luego presione dw. Para continuar eliminando las siguientes palabras, simplemente presione . (más corto y más fácil que repetir dw varias veces).

CONSEJO #4: Insertar caracteres Unicode especiales

Si la distribución de tu teclado no te permite insertar fácilmente caracteres Unicode especiales en un archivo, o si te encuentras frente a un servidor con una configuración de idioma diferente a la que estás acostumbrado, este truco te resultará útil.

Para hacer esto, presione Ctrl+v en modo insertar seguido de la letra u y el código numérico hexadecimal del carácter que desea insertar. Puede consultar los gráficos Unicode para obtener una lista de caracteres especiales y sus códigos numéricos correspondientes.

Por ejemplo,

Ctrl+v followed by

devuelve

u0040

@

u00B5

μ

u20AC

SUGERENCIA #5: Invocar binarios externos desde vim

Habrá ocasiones en las que necesitará insertar la salida de comandos externos directamente en un archivo que se está editando con vim. Por ejemplo, a menudo creo una variable llamada DIR en mis scripts para almacenar la ruta absoluta al directorio donde reside el script para poder usarla más adelante en el script. Para hacer eso, uso:


:r! pwd 

en modo ex. De este modo, se inserta el directorio de trabajo actual.

Otro ejemplo: si necesita utilizar la puerta de enlace predeterminada en algún lugar de un script, puede insertarla fácilmente en el archivo actual sin salir de vim de la siguiente manera:


:!r ip route show | grep default | cut -f 3 -d " "

CONSEJO #6: Inserte un archivo existente

Si necesita agregar el contenido de un archivo separado al que está editando actualmente, la sintaxis es similar al consejo anterior. Simplemente omita el signo de exclamación y estará listo.

Por ejemplo, para copiar el contenido de /etc/passwd:


:r /etc/passwd

Este consejo puede resultarle útil cuando necesite modificar archivos de configuración pero desee conservar los originales para volver a la “configuración de fábrica”, por así decirlo.

CONSEJO #7: Buscar y sustituir (reemplazar)

Historia real. Una vez, durante un examen, me pidieron que abriera un archivo de texto grande que contenía datos aleatorios. La tarea asignada consistió en reemplazar cada aparición de la palabra Globo por Tierra (sí, todavía recuerdo las palabras exactas). Para aquellos familiarizados con sed, esto les resultará familiar: en modo ex, escriba:


:%s/old/new/g

donde antiguo es el patrón a buscar y nuevo es la cadena que lo reemplazará.

En el caso descrito anteriormente, utilicé:


:%s/Globe/Earth/g

para hacer el trabajo.

Entonces, ¿qué pasa si quieres que te avisen antes de hacer sustituciones? Fácil. Simplemente agregue una c al final del comando anterior, de la siguiente manera:


:%s/old/new/gc

Se resaltarán las apariciones del patrón y se le preguntará si desea reemplazarlo con la nueva cadena:


:%s/gacanepa/me/gc

dónde

  1. y:
  2. n: no
  3. a: sustituir todo
  4. q: salir
  5. l: sustituir esta ocurrencia y salir
  6. ^E (Ctrl+E): desplazarse hacia arriba una pantalla
  7. ^Y (Ctrl+Y): desplazarse hacia abajo una pantalla

Resumen

En este artículo hemos comenzado a revisar algunos consejos y trucos de vim para agregar a sus habilidades de edición de texto. Probablemente se le ocurran varios otros, así que compártalos mediante el siguiente formulario y consideraré cubrirlos en el próximo y último artículo de esta serie de vim. Espero escuchar de usted.


Todos los derechos reservados © Linux-Console.net • 2019-2024