LINUX

Cómo copiar texto al portapapeles en Vim

copiar texto al portapapeles en vim

En este artículo, le mostraré cómo copiar texto del editor de Vim a otro programa. Nuestro objetivo es copiar el contenido al portapapeles.

Usar copiar y pegar dentro de vim es más fácil usando el comando yank o usando registros. Pero cuando se trata de copiar a otra aplicación, digamos a un navegador que necesitamos pasos adicionales. Aquí explicaré dos métodos para copiar texto al portapapeles de su sistema.

  • Instalando vim-gtk
  • Compilando Vim

Método 1: mediante la instalación de vim-gtk

Entonces, ¿cómo copiamos de Vim a otra ventana de Vim o un navegador? De forma predeterminada, Vim no tiene esta capacidad para acceder al portapapeles de su sistema, pero obtener esta capacidad es extremadamente simple. Una forma es simplemente compilar una versión de Vim que tenga acceso al portapapeles, otra forma perezosa es simplemente instalar gvim (también conocido como vim-gtk).

Gvim es una versión gráfica de Vim. Cuando instale gvim, le dará al terminal normal vim sus capacidades de copiar y pegar en su portapapeles. En otras palabras, le brinda la posibilidad de copiar a un registro especial que corresponde al portapapeles de su sistema. El registro especial es un +. En realidad, es solo un registro en el que puede copiar cosas y que lo colocará automáticamente en el portapapeles de su sistema.

Para instalar gvim (o vim-gtk), ejecute:

$ sudo apt-get install vim-gtk

Consideremos un ejemplo de cómo copiar una dirección de enlace y pegarla en el navegador. Abra nuestro archivo de ejemplo y navegue hasta la última línea. Ahora, debes ejecutar el siguiente comando:

V"+y

dónde:
+ es el portapapeles de su sistema

Abra su navegador y presione ctrl + v de la misma manera que normalmente pegaría y verá que ahora está pegado. Podemos ir a ese sitio y obtener algo de él, copiar y pegar en nuestro Vim. Copiemos de la misma manera que lo hacemos normalmente con ctrl+c. Ahora, podemos acceder a esta línea copiada en Vim ejecutando los siguientes comandos:

"+p

Verá que pega correctamente el contenido del navegador en Vim.

Método 2: compilando Vim

Otra forma es compilar Vim para admitir la copia del portapapeles. El Vim predeterminado no lo tiene debajo del capó. Entonces, para verificar si esta opción es válida, ejecute:

vim --version | grep .xterm_clipboard -o

Si obtiene algo como esto: -xterm_clipboard

Esto significa que no se admite la copia al portapapeles y debe compilar su Vim. Vale la pena mencionar que solo la versión de Vim con GUI admite el acceso al portapapeles. Entonces, para recompilar Vim, debe comenzar por obtener las dependencias de compilación de Vim e instalar mercurial:

$ sudo apt-get build-dep vim
$ sudo apt-get install mercurial

Ahora, obtenga la fuente:

$ sudo hg clone http://hg.256bit.org/vim

Si ya tenía este clon de repositorio, actualícelo:

$ sudo hg pull
$ sudo hg update

Y luego verifique si tiene la última versión:

$ hg summary

Ahora tienes que compilarlo:

cd vim_source
./configure 
   --enable-perlinterp=dynamic 
   --enable-pythoninterp=dynamic 
   --enable-rubyinterp=dynamic 
   --enable-cscope 
   --enable-gui=auto 
   --enable-gtk2-check 
   --enable-gnome-check 
   --with-features=huge 
   --with-x 
   --with-compiledby="YourName <YourEmail@domain.com>" 
   --with-python-config-dir=/usr/lib/python2.7/config
make && sudo make install

Eso lo instalará en /usr/local camino. Tenga en cuenta que terminará con dos vim: /usr/bin/vim sin acceso a su portapapeles:

vim instalado en / usr / bin / vim
vim instalado en / usr / bin / vim

y /usr/local/bin/vim con acceso a su portapapeles:

vim instalado en / usr / local / bin /
vim instalado en / usr / local / bin /

Y con gvim /usr/local/bin/gvim (con un enlace simbólico a /usr/local/bin/vim. Admitirá portapapeles tanto si está en modo GUI como si no. Y siempre puede ejecutar el anterior con la ruta explícita.

Una vez que todo esté compilado, puede usar /usr/local/bin/vim para abrir cualquier archivo y copiar y pegar texto de la misma manera que consideramos antes usando el registro ‘+’.

Cómo almacenar texto en el registro

Los registros son un pequeño espacio de almacenamiento en su sistema que puede almacenar el contenido que ha extraído o copiado. Puede usar muchos registros para almacenar diferentes contenidos extraídos.

Use el siguiente comando para seleccionar una línea y almacenarla en ‘un’ registro:

V"ay

dónde:

V (V mayúscula) – para marcar toda la línea
«(comillas dobles) – para acceder al registro
a – nombre de registro
y – yank (copiar)

Y para el registro ‘b’

V”by

Ahora, hemos guardado el texto en dos registros diferentes y podemos pegarlos, y podemos pegarlos en un orden diferente. Por ejemplo, podemos pegar el registro ‘b’ ejecutando el siguiente comando:

“bp

dónde:

p – pegar

Conclusión

En este artículo, hemos considerado dos formas de habilitar el acceso a su portapapeles en Vim. Ambas opciones son válidas y parece que instalar el paquete vim-gtk es más rápido y eficiente que compilar Vim.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar