El compartir información entre un servidor remoto y nuestra computadora local es una tarea común cuando trabajamos con sistemas alojados en la nube o en servidores externos, sin embargo en muchos casos, si utilizamos editores de texto como Vim a través de conexiones SSH para modificar archivos directamente en el servidor, puede plantear desafíos cuando se trata de copiar y pegar texto entre nuestro escritorio local y el servidor remoto.
Afortunadamente, con la ayuda de algunas herramientas y configuraciones, podemos superar este obstáculo y mejorar nuestra eficiencia al trabajar con archivos remotos.
En este artículo te explicaré como configurar el intercambio del portapapeles entre Vim en un servidor remoto y nuestro entorno de escritorio local.
Habilitar X11Forwarding
El primer paso es configurar tanto en el servidor como en la computadora local el valor X11Forwarding, en el caso del servidor debemos revisar el archivo /etc/ssh/sshd_config mientras que en la computadora local debemos revisar /etc/ssh/ssh_config, si al conectarte por SSH usando el parametro -X te da algun error como por ejemplo x11 forwarding request failed on channel 0 puedes verificar el siguiente artículo articulo aqui
Instalar xclip
En segundo lugar debes tener instalado el paquete xclip que puedes instalar, dependiendo de tu distribucion:
Debian/Ubuntu
sudo apt-get install xclip
CentOS/AlmaLinux
yum install xclip
Fedora
dnf install xclip
Configurando VIM
Luego, en tu archivo de configuración de VIM (~/.vimrc
), debes agregar las siguientes líneas:
set clipboard=unnamedplus set clipboard+=unnamed " Configuración de xclip para el portapapeles de Vim if executable('xclip') augroup XClip autocmd! autocmd TextYankPost * if v:event.operator ==# 'y' | call system('xclip -i -selection clipboard', @") | endif autocmd TextYankPost * if v:event.operator ==# 'Y' | call system('xclip -i -selection clipboard', @") | endif augroup END endif
Conexion SSH
Para ejecutar la conexión SSH se debe agregar el parámetro -X, por ejemplo
ssh -X usuario@hostname
Conclusión
En conclusión, configurar correctamente el X11 forwarding, Vim y xclip nos permite una experiencia de usuario más practica y agil al trabajar con servidores remotos y compartir el portapapeles entre nuestro entorno de escritorio local y el servidor remoto, al combinar estas herramientas logramos superar una limitaciones molesta a la edición de texto en servidores remotos y sin entorno gráfica, al seguir las instrucciones proporcionadas en este post, ahora deberías ser capaz de copiar y pegar texto fácilmente entre tu máquina local y Vim en un servidor remoto a través de una conexión SSH.
Administrador de Sistemas, Programador, Docente y ahora resulta que también Blogger (peor es ser tictoker). Más de 20 años de experiencia en computación atendiendo nabos y resolviendo problemas que sino fuera por estos nabos no habrían ocurrido en primer lugar. Escribo más que nada sobre tecnología y herramientas en general además de algunos artículos con opiniones tan subjetivas como irrelevantes, así que si no te gustan mejor madura.