Personalizzare l'aspetto di Xterm

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Debian-swirl.png Versioni Compatibili

Debian 8 "jessie"
Debian 9 "stretch"
Debian 10 "buster"

Introduzione

Xterm è l'emulatore di terminale predefinito del X Window System e, a differenza degli emulatori di terminali facenti parte dei principali DE (Konsole in KDE, GNOME Terminal in Gnome e Terminal in Xfce), è caratterizzato da un minore impiego di risorse e una maggiore leggerezza in termini di spazio occupato su disco (grazie anche al fatto che non necessita del gran numero di librerie grafiche richieste dai terminali su citati).
Insomma Xterm fa una cosa alla volta (niente tab, niente trasparenze, niente orpelli) e la fa bene, con poco spreco di risorse: in pieno rispetto della filosofia UNIX[1]. Si consiglia quindi l'uso con un terminal multiplexer, quali per esempio GNU/Screen o tmux.

L'aspetto davvero spartano di Xterm può non piacere o - più semplicemente - può essere necessario qualche aggiustamento relativo alla grandezza dei caratteri o al colore dello sfondo: per modificare a proprio gusto e secondo le proprie necessità l'aspetto di Xterm si possono seguire varie strade, che cercherò di illustrare in questa guida.

Modifiche al volo: i menù di Xterm

La prima cosa che balza agli occhi, almeno ai miei, quando si lancia Xterm è la grandezza di default dei caratteri: non arriverò a dire che è illeggibile (perché a dire il vero esiste - e si può abilitare - l'opzione unreadable che è realmente illeggibile) ma è davvero troppo piccola per chi debba stare a lungo davanti al computer.

Una soluzione molto rapida, in questo caso, consiste nel modificare la grandezza dei caratteri attraverso il menù che compare premendo contemporaneamente CTRL+ tasto destro del mouse: potrete scegliere la grandezza desiderata e questa verrà mantenuta solo in quella finestra e per quella sessione.

Altre opzioni sono disponibili nei menù che appaiono con CTRL+ tasto sinistro e CTRL+ tasto centrale del mouse.

Modifiche al volo: opzioni da riga di comando

Un modo lievemente più articolato di modificare l'aspetto di Xterm consiste nel lanciarlo da riga comando specificando, mediante le opzioni opportune, i valori desiderati relativi a tipo e dimensione dei font e ai colori di sfondo e di primo piano.

Le opzioni che possono essere specificate da riga di comando sono davvero tantissime (digitate man xterm se non ci credete!) ma le più utili nel caso specifico sono sicuramente quelle che riguardano:

  • grandezza e tipo di carattere: per sceglierlo possiamo utilizzare le opzioni -fa per il font e -fs per la dimensione:
$ xterm -fa fixed -fs 12
Bulb.png Suggerimento
Non tutti i font dispongono dell'intero set di caratteri necessari per supportare la codifica UTF-8. Verificate sempre che il font da voi supporti anche tale codifica, e presenti il corretto charset, altrimenti rischiate di non visualizzare correttamente le lettere accentate e i vari simboli!


  • colore di primo piano e colore dello sfondo:
  1. il colore di primo piano (foreground color), ovvero il colore dei caratteri, può essere definito da riga di comando attraverso l'opzione -fg color;
  2. il colore dello sfondo (background color) si definisce invece tramite l'opzione -bg color.
In entrambi i casi, color può essere il nome o il codice di uno dei colori specificati in /usr/lib/X11/rgb.txt. Ci si può aiutare con la tavolozza dei colori di riferimento[2].

Modifiche permanenti: agire sul file di configurazione

Se però avete intenzione di rendere permanenti le modifiche all'aspetto di Xterm, e non essere costretti ogni volta a invocare il programma con determinate opzioni da riga di comando, il modo migliore di agire è indubbiamente quello di personalizzare l'aspetto di Xterm agendo su un file di configurazione.

Le opzioni hanno una sintassi specifica, le maiuscole vanno rispettate.
Il nome dell'applicazione si può trovare in /etc/X11/app-defaults/, in questo caso è XTerm.
Per approfondimenti si veda:

$ man X | less -p RESOURCES

Il file .Xresources (un tempo chiamato .Xdefaults[3]) nella home dell'utente serve a personalizzare le applicazioni correlate al server X che usano Xaw (Athena widget set); sono tutte quelle generalmente meno usate in un ambiente Desktop tradizionale: xmessage, xclock, xclipboard, xfontsel, xcalc e così via. E ovviamente il nostro amato Xterm.
Ecco alcune opzioni per ottenere un terminale funzionale e leggibile, le righe sono commentate con il punto esclamativo, il file è così pronto all'uso semplicemente copiando il testo.

! ~/.Xresources

!colore di sfondo
 XTerm*background: grey13

!colore del testo
 XTerm*foreground: grey75

!colore del cursore
 XTerm*cursorColor: darkorange1

!niente barra di scorrimento
 XTerm*scrollBar: false

! http://invisible-island.net/xterm/xterm.faq.html#tiny_menus
!dimensione predefinita
 XTerm.VT100.geometry: 89x29

!modalità UTF-8 permanente
 XTterm*utf8: 2

!256 colori
 XTerm*termName: xterm-256color

!font TrueType con antialiasing
 XTerm*faceName: fixed
! dimensione del font precedente
 XTerm*faceSize: 12

!numero di linee da mantenere nello scrollbuffer
 XTerm*saveLines: 7777

!le combinazioni di tasti con Meta (Alt) vengono convertite in una sequenza ad 8-bit,
!necessario affinché ad esempio si possa usare alt-numero per spostarsi tra le finestre in irssi
 XTerm*metaSendsEscape: true

!seleziona solo il testo di una riga, omettendo gli spazi vuoti
 XTerm*highlightSelection: true

!in combinazione con l'opzione precedente tenta di 
!rimuovere gli spazi in eccesso a inizio e fine riga
 XTerm*trimSelection: true

!il triplo click per selezionare una riga non include il Newline
!(\n, la sequenza che manda a capo la riga, si veda man echo) alla fine
 XTerm*cutNewline: false

!abilita e specifica un attributo colore per il testo in grassetto
 XTerm*colorBDMode: true
 XTerm*colorBD: khaki

!abilita e specifica un attributo colore per il testo sottolineato
 XTerm*colorULMode: true
 XTerm*colorUL: tomato

!i caratteri da includere nella selezione del testo con il doppio click
!sono gruppi di numeri nella forma codice:valore e divisi da una virgola,
!il 48 è arbitrario ma il manuale lo usa come esempio e ci affidiamo a questo valore
!per aggiungere e modificare usare quindi la forma codice:48,
!vedere man xterm | less -p 'CHARACTER CLASSES' per la tabella di riferimento
!prendendo ad esempio il primo gruppo 33:48, 33 equivale al punto esclamativo
 XTerm*charClass: 33:48,35:48,37:48,43:48,45-47:48,64:48,95:48,126:48,35:48,58:48,63:48,61:48,44:48,38:48,59:48

!colori personalizzati per il testo usati in vari programmi
!da 0 a 7 per il testo normale, da 8 a 15 per il grassetto

!black
 XTerm*color0:	#171717
 XTerm*color8:	#737373
!red
 XTerm*color1:	#FF5E5E
 XTerm*color9:	#FF7878
!green
 XTerm*color2:	#9CE82B
 XTerm*color10:	#9ACD32
!yellow
 XTerm*color3:	#F0E68C
 XTerm*color11:	#EEE8AA
!blue
 XTerm*color4:	#008AFF
 XTerm*color12:	#4F98FF
!magenta
 XTerm*color5:	#E88CFF
 XTerm*color13:	#EDA6FF
!cyan
 XTerm*color6:	#87CEFA
 XTerm*color14:	#B0E2FF
!white
 XTerm*color7:	#DCDCCC
 XTerm*color15:	#FFFFFF

Ogni modifica al file di configurazione va resa attiva con:

$ xrdb $HOME/.Xresources

Ora possiamo riavviare xterm semplicemente con:

$ xterm

o da qualunque launcher, per poterlo utilizzare in una forma più gradevole!

Riferimenti

[1] filosofia UNIX
[2] Tavolozza dei colori di xterm
[3] File .Xresources era .Xdefaults




Guida scritta da: MadameZou Swirl-auth40.png Debianized 40%
Estesa da:
Verificata da:
HAL 9000 11:26, 28 set 2019 (CEST)

Verificare ed estendere la guida | Cos'è una guida Debianized