¿Cómo funciona copiar y pegar con xterm?

59

Al hacer clic con el botón izquierdo en xterms, se inicia la selección de algo para copiar y pegar.

Al hacer doble clic a la izquierda se selecciona una palabra.

El triple clic izquierdo selecciona una línea.

Todo esto funciona bajo la unidad en 11.04. Sin embargo, no hay forma de copiar y pegar esa selección en otro lugar: el menú del botón derecho muestra pegar deshabilitado y hacer clic en el medio para copiar y pegar no funciona.

Entonces, ¿cómo puedo copiar una selección de un xterm a otro lugar? Estoy contento con cualquier método para realizar esto.

(Estoy usando la instalación predeterminada sin configuración especial hasta ahora)

Editar: Mismo problema con xedit

falso
fuente
1
Depende totalmente de su DE y terminal.
RobotHumans
@AbrahamVanHelpsing: estoy usando la instalación predeterminada, debería haber dicho esto ...
falso
1
Después de seleccionar, debe copiar, luego solo puede pegar. Solo lo menciono porque la forma en que está escrita la pregunta, parece que desea ir directamente de seleccionar a pegar. En otras palabras, seleccione con el botón izquierdo, copie desde el menú del botón derecho y pegue desde el menú del botón derecho.
1
¿Estás usando XTerm? (el software) o te refieres a Gnome Terminal como XTerm ?.
Uri Herrera el
@ vasa1: ¡Pero después de la selección con el botón izquierdo, la función de pegar con el botón derecho sigue desactivada!
falso

Respuestas:

44

Use el botón central o shift + insert

ver selección de X Window

instrumentos de cuerda
fuente
2
El clic central no funcionó, ni Shift-Insert (del que nunca he oído hablar, pero lo intenté). Por ejemplo, trato de copiar y pegar algo en el cuadro de texto que estoy escribiendo ...
falso
2
X tiene dos portapapeles si selecciona algo en xterm, irá a los búferes de corte, en cuyo caso puede pegar con clic central o shift + insertar. que no es el mismo concepto que copiar y pegar.
cadenas de
Agregué un enlace para ayudar a explicar el proceso de selección de X 11.
Cuerdas
Gracias. Pero, ¿cómo obtengo ahora bajo unidad un texto de xterm a otra aplicación? Anteriormente, (usé karmic), simplemente usé el clic central como sugieres. Pero ahora, bajo la unidad, o 11.04; ni el clic central ni la inserción de mayúsculas funcionan.
falso
1
si shift + insert tampoco funciona, entonces podemos descartar que sea su mouse. ¿Estás usando algún administrador de portapapeles? Xsel o algo así?
cadenas del
28

Xterm usa búferes de corte, no la selección de portapapeles X11 estándar utilizada para copiar y pegar estándar que ahora usan gnome-terminal y la mayoría de los otros programas de Linux.

Pero si comienzas xterm así:

xterm -ls -xrm 'XTerm*selectToClipboard: true'&

entonces las selecciones están disponibles a través del portapapeles estándar.

Lea más en Copiar y pegar en Xterm | Base de datos de conocimientos de StarNet - PC X, X Windows, X 11 y más - StarNet

El xcbprograma también proporciona acceso de línea de comandos a los búferes de corte.

Por ejemplo, en Trusty Tahr 12.04, ejecutando lxde window manager, puedo hacer triple clic en una línea de texto en xterm, lo que lo resalta y lo pone en el búfer de corte 0. Luego puedo ejecutar xcb -p 0 que imprime la línea en stdout.

Por alguna razón, no funcionó para mí hacer clic en ambos botones (simulando un clic en el medio) en una xterm, pero shift-insert sí funcionó en una xterm.

nealmcb
fuente
44
+1 - resuelto para mí Como esta pregunta aparece en las búsquedas de preguntas como "Cómo copiar en xTerm", vale la pena agregar que si tiene configurado un archivo .Xresources (o similar), puede agregar la xterm*selectToClipboard: truelínea allí para que el cambio sea persistente :)
Ashley Davies
La respuesta de Stefan explica cómo garantizar que se lea la configuración en la respuesta de Ashley (funcionó para mí en Fedora 29; no lo intenté sin el paso xrdb adicional de Stefan, pero también menciona que debe reiniciar xterm, aunque eso puede ser obvio para la mayoría personas)
poikilos
Tenga en cuenta que si utiliza -class ${CLASS}para iniciar xtermel indicador correspondiente, -xrm ${CLASS}.*.selectToClipboard:trueentonces si tiene clases de ventanas xterm separadas, la configuración se realiza un seguimiento por separado.
stevesliva
11

Un tema similar se discute aquí . Como señalaron las "cadenas":

X tiene dos portapapeles si selecciona algo en xterm, irá a los búferes de corte, en cuyo caso puede pegar con clic central o shift + insertar. que no es el mismo concepto que copiar y pegar.

Copiar / pegar dentro de xterm funcionó para mí, pero no para una aplicación externa, por ejemplo, gedit. Según el enlace anterior, instalé parcellite y eso solucionó el problema,

sudo apt-get install parcellite

Actualización: si "pegar" no funciona con "shift-insert", use el botón central del mouse o si no tiene un clic, haga clic simultáneamente en los botones izquierdo y derecho para pegar.

Factor Schumi
fuente
1
Para un poco más de claridad, después de instalar parcellite, ejecútelo. Se sienta en la bandeja del sistema. Haga clic derecho> Preferencias, luego marque "Usar primario" y "Sincronizar portapapeles". Ahora seleccione algo en Xterm, y luego puede Ctrl-V en otro lugar.
Ian Gibbs
gracias funcionó, pero una vez que instales paracellite reinicia tu terminal
user889030
10

Para copiar entre xterm y otros programas / documentos / ...

Agregar al archivo ~/.Xresources(o crear):

XTerm*selectToClipboard: true

Luego ejecuta el comando:

xrdb -merge ~/.Xresources

Reiniciar xterm.

Stefan
fuente
4

Cuando copie desde xterm, simplemente use

Mayús + clic central

pegar algo en gedit o algún editor en xterm como mcedit

Andrius Allstone Stašauskas
fuente
4

Esto no responde a su pregunta, pero me ayudó, así que lo estoy poniendo aquí, ya que puede ayudar a alguien más:

  1. Copia lo que quieras de xterm seleccionando tu texto
  2. Abra una segunda copia de xterm y su editor de texto favorito (uso vim)
  3. Use Mayús + Insertar (o haga clic con el botón central) para pegar en su editor de texto
  4. Guarda el archivo.
  5. Si es necesario, abra el archivo con un editor de texto gráfico (como gedit)
  6. Copie su texto y péguelo en la aplicación que desee.
kojow7
fuente
3

Para copiar texto en Xterm, primero seleccione el texto y luego presione shift+ PrtScr. Para pegar texto en Xterm usa shift+ Insert.

Ankush K
fuente
No funciona en Linux Mint Xfce, de 64 bits.
Adrian Keister
2

Cuando selecciona texto, se coloca automáticamente en el búfer de corte (como un portapapeles). Cuando usa Copiar, desde un menú o con un método abreviado de teclado, va al portapapeles principal.

Para pegar desde el búfer de corte en su xterm, haga clic con el botón central. Para pegar desde el portapapeles en tu xterm, haz clic con el botón central.

Greg Bell
fuente
1

Consulte aquí una explicación de los problemas de pegado con xterms y aplicaciones modernas / gestores de ventanas: http://www.davidsimmons.com/soft/xtermhacks/#copynpaste

Brent
fuente
Bienvenido a Ask Ubuntu! Si bien esto puede responder teóricamente la pregunta, sería preferible incluir aquí las partes esenciales de la respuesta y proporcionar el enlace para referencia.
Eric Carvalho
1

Xterm usa la selección primaria X11, que es diferente al portapapeles. El programa xsel se puede usar para copiar la selección primaria en el portapapeles:

xsel -op | xsel -ib

Para hacerlo, he definido Meta-c en Fluxbox para esto.

Mod4 c :Exec xsel -op | xsel -ib

Esto es útil para los programas de Windows, que solo admiten un portapapeles (por ejemplo, VirtualBox).

ceving
fuente
0

Por lo demás, tengo el administrador de portapapeles Glipper útil ejecutándose en 12.04.
Si selecciono caracteres xterm, aparecen en una nueva entrada de Glipper.
Si selecciono esa entrada (botón) entre esa sucesión, el próximo pegado vendrá de él y pegará esos caracteres en cualquier aplicación.

Papou
fuente