Articles

Copierea și lipirea în Xterm

Când evidențiați o selecție în xterm, puteți observa că selecția nu este trimisă în clipboard (și, prin urmare, nu puteți lipi).
Acest lucru se datorează faptului că FastX utilizează doar bufferul CLIPBOARD pentru copierea și lipirea textului. În mod implicit, xterm suportă doar bufferul PRIMARY.

Soluție

Lansați un xterm cu opțiunea selectToClipboard setată, adică : xterm -ls -xrm ‘XTerm*selectToClipboard: true’

Dacă alegeți opțiunea Xterm în sugestii, această comandă este rulată automat

Alternativ, adăugați următoarea linie în fișierul $HOME/.Xdefaults:

  • XTerm*selectToClipboard: true

Background

Aplicațiile X au mai multe tampoane de copiere la selectarea textului, dintre care două sunt PRIMARY și CLIPBOARD. FastX citește doar conținutul buffer-ului CLIPBOARD.

  • PRIMARY
    • Buffer-ul de selecție „PRIMARY” primește date atunci când utilizatorul evidențiază textul cu mouse-ul. Textul din acest tampon este lipit atunci când utilizatorul apasă butonul din mijloc al mouse-ului în câmpul de introducere a textului unei aplicații. Acest tampon de tăiere și lipire este o funcție moștenită despre care, în general, noii utilizatori nu sunt informați, în interesul evitării confuziei în masă. Majoritatea aplicațiilor moderne acceptă acest tampon. Acesta este singurul buffer utilizat de xterm.
  • CLIPBOARD
    • Bufferul de selecție „CLIPBOARD” este utilizat pentru funcțiile de tăiere și lipire cu care majoritatea utilizatorilor sunt familiarizați: Selectarea elementelor de meniu „cut” (tăiați), „copy” (copiați) sau „paste” (lipiți) din meniul „Edit” (editare) al aplicației sau utilizarea tastelor de comandă rapidă corespunzătoare CTRL-X, CTRL-C sau CTRL-V. Acest tampon de selecție este mijlocul standard de efectuare a operațiunilor de tăiere și lipire în majoritatea aplicațiilor moderne. Cu toate acestea, acest tampon de selecție nu este, din păcate, utilizat deloc de xterm în configurația implicită.

Din cauza utilizării mai multor tampoane, textul evidențiat în xterm nu poate fi lipit într-o aplicație modernă cu CTRL-V (sau Edit->Paste). Tamponul PRIMARY este adesea suprascris de evidențierea involuntară înainte ca utilizatorul să fie gata să lipească.

De exemplu, dacă un utilizator evidențiază un URL în xterm, trece la Firefox și apasă ALT-D pentru a naviga în bara URL, atunci Firefox va evidenția automat vechiul conținut al barei URL, suprascriind astfel tamponul PRIMARY, foarte volatil, înainte ca utilizatorul să poată lipi noul URL!

.