[Guida] PyWal: adattare i colori del terminale allo sfondo del desktop
Nell’articolo di oggi vi parlo della personalizzazione del terminale. In particolare, l’emulatore che utilizzerò è GNOME Terminal, il quale è presente di default nelle principali distribuzioni GNU/Linux. Dopo una breve panoramica sulla personalizzazione manuale, vi spiegherò poi come funziona PyWal, un tool open source per adattare i colori del terminale allo sfondo utilizzato.
GNOME Terminal e i profili custom
Quando modificate i colori del terminale, vi consiglio come primo step di creare sempre un profilo specifico per testare le vostre personalizzazioni. In questo modo, nel caso in cui smanettando con le configurazioni di GNOME Terminal arriviate ad uno scenario illeggibile, potrete sempre tornare rapidamente al profilo standard, senza troppa fatica. Andate quindi in Preferenze, dal menù Modifica o dal sandwich button e, dalla scheda Profili, aggiungetene uno nuovo rinominandolo a vostro piacimento.
Dal menu Terminale, o da quello a scomparsa accessibile dalla freccia presente in alto a sinistra, potete ora scegliere facilmente quale profilo attivare. Sempre da questa schermata, inoltre, noterete la presenza di varie schede con cui andare a modificare l’aspetto del terminale, tramite GUI.
La variabile PS1
Esiste anche un’altra strada per personalizzare l’aspetto del terminale, ed è tramite la variabile d’ambiente PS1. Per visualizzare il valore attualmente assegnato alla variabile, utilizzate il comando echo $PS1 che vi restituirà un output analogo al seguente:
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
In particolare:
- \e … m indicano l’avvio e la chiusura della sequenza relativa al colore del terminale;
- \u indica lo username;
- \h l’hostname;
- \w la directory di base;
- \a la directory corrente;
- $ indica l’user non root.
Potete apportare le modifiche che preferite, tenendo conto della seguente codifica dei valori:
- 0,1,3,4 indicano testo normale, grassetto, corsivo e sottolineato;
- 40-47 è il range per i colori di sfondo;
- 30-37 è il range per i colori del testo.
Provate, ad esempio, ad eseguire questa istruzione:
PS1="\e[44;1;30m[\u@\h:\w\a\$]"
Giocando con questi parametri, dopo aver trovato la combinazione che vi soddisfa, per rendere persistente la configurazione dovete modificare il file ~/.bashrc, editando la riga di codice evidenziata nello screenshot precedente.
Proviamo Pywal
Pywal è un tool open source che genera una tavolozza di colori partendo da un’immagine, nel nostro caso quella usata come sfondo del desktop. Quindi lo utilizzeremo per personalizzare l’aspetto del terminale in modo che sia congruo con lo sfondo che abbiamo impostato.. Per installare questo tool utilizzate le seguenti direttive:
sudo apt install python3-pip sudo pip3 install pywal
Utilizzarlo è semplicissimo, attraverso il comando wal -i, seguito dall’indirizzo del file che utilizzate come sfondo, consente di applicare i nuovi colori al terminale:
wal -i /patch/sfondo.png
Per rendere poi persistente il cambiamento aggiungete, al file .bashrc, le seguenti righe di codice:
# Import colorscheme from 'wal' asynchronously # & # Run the process in the background. # ( ) # Hide shell job control messages. (cat ~/.cache/wal/sequences &) # Alternative (blocks terminal for 0-3ms) cat ~/.cache/wal/sequences # To add support for TTYs this line can be optionally added. source ~/.cache/wal/colors-tty.sh
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.