Come posso copiare il testo da xterm (Awesome, Debian, VirtualBox)?


15

Ho eseguito l'installazione minima di Debian all'interno di un'istanza di VirtualBox, ho installato manualmente X11 e Awesome window manager (senza ancora alcuna configurazione personalizzata) e ho installato anche aggiunte VirtualBox (e abilitato appunti condivisi nelle impostazioni). Tuttavia, il testo di copia-incolla dal terminale xterm non sembra funzionare ancora: CTRL+ Cviene inviato come segnale a un terminale e Shift+ Insertinserisce il testo che avevo selezionato (il che probabilmente significa che è stato copiato in qualche buffer), ma non è ancora disponibile dal sistema operativo host.

Risposte:


20

X11 utilizza due buffer: PRIMARYe CLIPBOARD. Per copiare / incollare nel CLIPBOARDbuffer è spesso possibile utilizzare CTRL-Ce CTRL-V. È possibile inserire nel PRIMARYbuffer selezionando un testo e incollarlo premendo il pulsante centrale del mouse.

Se vuoi usare il CLIPBOARDbuffer, inseriscilo nel tuo ~/.Xresourcesfile e usa Ctrl+ Shift+ Ce Ctrl+ Shift+ Vper copiare / incollare da / nel CLIPBOARDbuffer in xterm:

xterm*VT100.Translations: #override \
                 Ctrl Shift <Key>V:    insert-selection(CLIPBOARD) \n\
                 Ctrl Shift <Key>C:    copy-selection(CLIPBOARD)

Devi eseguirlo xrdb ~/.Xresourcesdopo averlo inserito nel file.


2
L'uso xrdb ~/.Xresourcessovrascriverà in modo distruttivo la configurazione predefinita. invece usaxrdb -merge ~/.Xresources
xaedes il

14

Non è necessario modificare le risorse di traduzione xterm per copiare dati da / a Firefox, a meno che non si preferisca utilizzare la tastiera per facilitare il processo.

Dal 2006 xterm ha una funzione selectToClipboardche ti consente di alternare tra la PRIMARYselezione (standard) e CLIPBOARD(Firefox, ecc.).

Poiché alcuni programmi usano la selezione primaria, altri no, è una voce di menu in xterm ( controlmiddle-mouse):

mostra selectToClipboard nella voce di menu

Adattare il suggerimento per caratteri di controllo come le applicazioni GNOME ti consente di usare la tastiera e allo stesso tempo lasciare che il menu passi tra i due tipi di selezioni:

xterm*VT100.Translations: #override \
                 Ctrl Shift <Key>V:    insert-selection(SELECT) \n\
                 Ctrl Shift <Key>C:    copy-selection(SELECT)

sebbene l'aggiunta shiftInsertpotrebbe essere più vicina all'intento originale:

xterm*VT100.Translations: #override \
                 Shift <Key>Insert:    insert-selection(SELECT) \n\
                 Ctrl Shift <Key>V:    insert-selection(SELECT) \n\
                 Ctrl Shift <Key>C:    copy-selection(SELECT)

Di controlCsolito un piano viene assegnato a un segnale :INTR

$ stty -a
speed 38400 baud; rows 40; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke

Ulteriori letture:


4
  1. Apri xtermed evidenzia il testo che desideri copiare.
  2. Vai all'applicazione in cui desideri incollare e passa il cursore del mouse sul campo in cui desideri incollare.
  3. Fai clic sul pulsante di scorrimento del mouse. (sui laptop questo può essere fatto premendo contemporaneamente sinistro e destro)

Quando si evidenzia il testo, il testo viene copiato nel buffer primario. Tieni presente che se evidenzi qualsiasi altro testo prima di incollarlo, quel testo sostituirà il contenuto precedente nel buffer primario.


1
Per favore, leggi attentamente la domanda. "Vai all'applicazione in cui desideri incollare": ciò suggerisce che non hai notato che avevo bisogno di incollarlo nel sistema operativo host.
Max Yankov,

Mi dispiace non ho il terzo pulsante sul mouse. usando trackball qui
holms

2

A quanto pare, non ho tenuto conto del fatto che X11 ha due buffer: primario e appunti . Il mio testo da xterm è stato copiato nel buffer primario, mentre ne avevo bisogno nel buffer degli appunti.

Sono stato in grado di risolvere il problema installando il parcellitepacchetto, avviandolo e configurandolo per sincronizzare due buffer.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.