Vim y cómo pegar texto en una posición dentro de un archivo

Publicado por Diego Córdoba en

En este breve artículo aprenderemos a pegar texto, el contenido de un portapapeles de Vim, bajo una línea particular dentro de un archivo.

Este artículo surge a partir de una interesante consulta de un alumno del curso online de Vim, así que intentaré responderla lo más claro posible en este artículo 🙂

Antes de pegar texto hay que copiar

Para pegar un determinado contenido de un archivo en una línea específica, previamente habrá que haberlo copiado.

Si editamos el archivo /etc/fstab, cuyo contenido (en mi caso particular) es el siguiente:

pegar texto ejemplo vim fstab

Supongamos que queremos pegar el contenido de las líneas 1-5 luego de la línea 12, podríamos copiarlas de varias maneras. Aquí algunos ejemplos:

  • Posicionarse en la línea 1 y presionar, en modo comando, 5yy o 5Y
  • Moverse a la línea 1, activar el modo visual de línea con Shift+V, seleccionar hasta la línea 5 y presionar y.
  • Desde cualquier parte del archivo, ejecutar el comando Ex: :1,5y

Lo anterior representa 3 forma comunes de copiar al portapapeles predeterminado. Podría, no obstante, copiarse a un portapapeles particular, por ejemplo, el portapapeles t, de esta forma:

  • Posicionarse en la línea 1 y presionar, en modo comando, "t5yy o "t5Y
  • Moverse a la línea 1, activar el modo visual de línea con Shift+V, seleccionar hasta la línea 5 y presionar "ty.
  • Desde cualquier parte del archivo, ejecutar el comando Ex: :1,5y t

En cualquier caso se tendrá el contenido en un portapapeles del Vim, ya sea el predeterminado, o uno con nombre, particularmente el t en este ejemplo.

Pegando el bloque

Una vez copiado el texto, podremos pegarlo luego de la línea 12 con el siguiente comando Ex:

:12pu

o en su defecto:

:12put

Eso pegará el contenido del portapapeles predeterminado debajo de la línea 12 en el archivo de texto.

Para pegar el contenido del portapapeles t del ejemplo anterior, podría usarse este comando Ex:

:12pu t

O

:12put t

Resumiendo…

«Una imagen vale más que mil palabras«… y un gif aún más 🙂

Acá un ejemplo, siempre usando comandos Ex, de copia y pega con el portapapeles predeterminado de vim:

gif copiando y pegando ex predeterminado

Y siguiendo con comandos Ex, ahora usando un portapapeles con nombre, "t en el ejemplo:

gif copiando y pegando ex portapapeles con nombre

Sin más, espero que les sirva! Nunca está de mas un truquito nuevo de mi editor favorito 😀

Cualquier duda me lo dejan por comentarios, y como siempre, si quieren sumarse a charlar sobre Vim, GNU/Linux, programación, redes y seguridad informática, demás, quedan invitados al grupo de Telegram de Juncotic!

Y no se olviden de pasarse por la página de cursos donde van a encontrar siempre mis cursos en promoción o/

Será hasta la próxima!!


¿Preguntas? ¿Comentarios?

Si tenés dudas, o querés dejarnos tus comentarios y consultas, sumate al grupo de Telegram de la comunidad JuncoTIC!
¡Te esperamos!

Categorías: Aplicaciones

Diego Córdoba

- Ingeniero en Informática - Mg. Teleinformática - Tesis pendiente - Docente universitario - Investigador