edison23

Zápisky šíleného jazykového editora

256 barev v terminálu na Ubuntu

Datum: 2015-03-07
Kategorie: Návody Software Unix CS
Štítky: terminal ubuntu

Prokrastinace je silná a nutí člověka vymýšlet další a další věci, jak si nastavit svůj Mutt. Dnes odpoledne jsem narazil na komplexní barevné schéma pro Mutt, které ale využívá 256odstínového barevného modelu, což v základu ubunťácký terminál neumí, takže po načtení tohoto nastavení Mutt pěkně řval:

Error in /home/edison23/.muttrc, line 225: 136: color not supported by term

… a tak podobně.

Prvním krokem k řešení tedy je zjistit, kolik barev váš terminál podporuje:

tput colors

U mě byl výstup 8. Tedy můj terminál umí zobrazit celých 8 barev.
Řešením tedy je nainstalovat si ncurses-term, což je balíček s dodatečnými definicemi pro terminál.

sudo apt-get install ncurses-term

Poté už stačí jen přidat do konfigurace terminálu, souboru ~/.bashrc, následující (stačí úplně na konec):

export TERM=xterm-256color

Nezapomeňte znovu načíst tento soubor v terminálu:

source ~/.bashrc

Když teď zkusíte znova tput colors, měli byste vidět následující výstup:

tput colors
256

A na závěr – pokud chcete mít přehled, která barva je co, zkuste následující příkaz:

( x=`tput op` y=`printf %$((${COLUMNS}-6))s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}$x;done; )

Duhaaaaa!

Jednotlivé barvy můžete pak psát ve tvaru colorXXX, kde XXX je číslo příslušné barvy.

Zdroje: