Articles

Copiar y pegar en Xterm

Al resaltar una selección en xterm puede notar que la selección no se envía al portapapeles (y por lo tanto no puede pegar).
Esto se debe al hecho de que FastX sólo utiliza el buffer CLIPBOARD para copiar y pegar texto. xterm por defecto sólo soporta el buffer PRIMARIO.

Solución

Lance un xterm con la opción selectToClipboard configurada es decir : xterm -ls -xrm ‘XTerm*selectToClipboard: true’

Si elige la opción Xterm en las sugerencias, este comando se ejecuta automáticamente

Alternativamente, añada la siguiente línea a su archivo $HOME/.Xdefaults:

  • XTerm*selectToClipboard: true

Background

Las aplicaciones X tienen múltiples búferes de copia al seleccionar texto, dos de los cuales son PRIMARY y CLIPBOARD. FastX sólo lee el contenido del búfer CLIPBOARD.

  • PRIMARY
    • El búfer de selección «PRIMARY» recibe datos cuando el usuario resalta el texto con el ratón. El texto de este búfer se pega cuando el usuario pulsa el botón central del ratón en un campo de entrada de texto de la aplicación. Este búfer de cortar y pegar es una función heredada de la que generalmente no se informa a los nuevos usuarios, en aras de evitar la confusión masiva. La mayoría de las aplicaciones modernas soportan este búfer. Este es el único búfer utilizado por xterm.
  • CLIPBOARD
    • El búfer de selección «CLIPBOARD» se utiliza para las funciones de cortar y pegar que la mayoría de los usuarios conocen: Seleccionando los elementos de menú «cortar», «copiar» o «pegar» del menú «Editar» de la aplicación, o utilizando las correspondientes teclas de acceso directo CTRL-X, CTRL-C o CTRL-V. Este búfer de selección es el medio estándar para realizar operaciones de cortar y pegar en la mayoría de las aplicaciones modernas. Sin embargo, este búfer de selección desafortunadamente no es usado en absoluto por xterm en la configuración por defecto.

Debido al uso de múltiples búferes, el texto resaltado en xterm no puede ser pegado en una aplicación moderna con CTRL-V (o Edit->Paste). El búfer PRIMARIO es a menudo sobrescrito por el resaltado inadvertido antes de que el usuario esté listo para pegar.

Por ejemplo, si un usuario resalta una URL en un xterm, cambia a Firefox, y presiona ALT-D para navegar a la barra de URL, entonces Firefox resaltará automáticamente el contenido antiguo de la barra de URL, sobrescribiendo así el altamente volátil búfer PRIMARIO antes de que el usuario pueda pegar la nueva URL!