web analytics

Come colorare le pagine di Man

man-logo

Come sapete, tempo fa qui su lffl abbiamo iniziato una “rubrica” con cui abbiamo cercato di rendere l’uso del terminale più semplice e produttivo (potete trovare un piccolo elenco degli articoli a riguardo qui). Un tool fondamentale all’interno del terminale è sicuramente man, il manuale che possiamo consultare in qualunque momento e con cui possiamo imparare ad utilizzare al meglio tutti i comandi.

Se però vogliamo trovare un difetto in man è sicuramente il fatto che il testo viene visualizzato completamente con lo stesso colore, il che potrebbe farlo risultare scomodo in lettura. Un modo per ovviare a questo piccolo problema è quello di colorare le pagine e rendere così il tutto più leggibile utilizzando l’utility less come pager per il manuale.

Tutto quello che dobbiamo fare è aprire il file .bashrc all’interno della nostra cartella /home aggiungendovi le seguenti righe:

man() {
env \
LESS_TERMCAP_mb=$'\e[01;31m' \
LESS_TERMCAP_md=$'\e[01;31m' \
LESS_TERMCAP_me=$'\e[0m' \
LESS_TERMCAP_se=$'\e[0m' \
LESS_TERMCAP_so=$'\e[01;44;33m' \
LESS_TERMCAP_ue=$'\e[0m' \
LESS_TERMCAP_us=$'\e[01;32m' \
man "$@"
}

Per applicare i cambiamenti sarà poi sufficiente lanciare il comando:

source ~/.bashrc

A questo punto aprite una qualunque pagina di man e dovreste ottenere un risultato molto simile a questo:
man-1

NOTA:  In alcuni sistemi il terminale potrebbe non riconoscere le sequenze di escape SGR col risultato che il testo delle pagine di man risulteranno comunque non colorato, potete risolvere la cosa aggiungendo nel file .bashrc, oltre a quelle scritte prima, la seguente riga:

export GROFF_NO_SGR=1

Questa piccola guida termina qui. Spero che possa tornarvi utile e migliorare la vostra esperienza quotidiana col terminale. Se avete dubbi o domande non esitate a chiedere con un commento!