====== Obarvení konzole ======
Nebaví Vás už usplash či máte raději přehlednější start systému? Tento návod vám přetvoří nudný upslash a černobílou konzoli v elegantní start systému a krásný barevný textový režim.
====== Vypnutí usplash ======
{{.:info.png}} Usplash znamená takový ten "teploměr", který se zobrazuje při startu systému. Nyní ho vypnete, aby byl vidět textový režim, který potom budete dále zkrášlovat.
Vytvořte zálohu nastavení [[GRUB|GRUBu]] příkazem:
sudo cp /etc/default/grub /etc/default/grub_zaloha
Otevřete toto nastavení Vámi oblíbeným editorem s právy roota
sudo vim /etc/default/grub
Najděte řádek s:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
A upravte ho na toto:
GRUB_CMDLINE_LINUX_DEFAULT=""
Doporučení: nastavte si také [[vyšší rozlišení|Vyšší rozlišení na konzoli]].
Pokud chcete vyvolat GRUB menu při startu, tak zakomentujte řádek na:
#GRUB_HIDDEN_TIMEOUT=0
Jestliže si ale rádi spuštíte GUI sami, tak místo prázdného řetezce vložte
GRUB_CMDLINE_LINUX_DEFAULT="text"
Změny utvrdíte aktualizací grubu:
sudo update-grub
Nyní jste deaktivovali usplash.
====== Obarvení textových výpisů (modrá/zelená/červená) ======
{{.:art.png}} Místo uslash se teď tedy objevuje černobílý textový výpis startu systému. Nyní si ho můžete upravit.
Nejdřív zazálohujte nastavení:
sudo cp /etc/lsb-base-logging.sh /etc/lsb-base-logging.sh_zaloha
Poté si stáhněte z Ubuntuforums.org soubor. [[http://www.ubuntuforums.org/attachment.php?attachmentid=10932&stc=1&d=1149829830|lsb-base-logging.sh]]
Rozbalte a nahraďte stávající:
sudo tar xvfj lsb-base-logging.sh.tar.bz2
sudo chown root:root lsb-base-logging.sh
sudo cp lsb-base-logging.sh /etc/lsb-base-logging.sh
====== Obarvení Promptu ( skeletonix@Kosmik-1:~$ ) ======
Opět nejprve zazálohujte nastavení:
cp ~/.bashrc ~/.bashrc_zaloha
A editujte nastavení:
gedit ~/.bashrc
Najděte tuta čast:
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
Bash čte PS1 proměnou jako primární prompt, PS2 jako sekundarní prompt (používá se při psaní multi-line příkazů). Část mezi if a else se provádí, pokud je barevný prompt aktivován, část mezi else a fi pokud je barevný prompt neaktivní. Jak vidíte, barevný kód vypadá složitěji neboť je v něm něco jako \[\033[01;32m\]. Jedná se o ANSI kód barvy (konkrétně zelené). Naštěstí si můžeme definovat vlastní proměnné na barvy. Okopírujte kód níže a umístěte ho před if
# ANSI color codes
RS="\[\033[0m\]" # reset
HC="\[\033[1m\]" # hicolor
UL="\[\033[4m\]" # underline
INV="\[\033[7m\]" # inverse background and foreground
FBLK="\[\033[30m\]" # foreground black
FRED="\[\033[31m\]" # foreground red
FGRN="\[\033[32m\]" # foreground green
FYEL="\[\033[33m\]" # foreground yellow
FBLE="\[\033[34m\]" # foreground blue
FMAG="\[\033[35m\]" # foreground magenta
FCYN="\[\033[36m\]" # foreground cyan
FWHT="\[\033[37m\]" # foreground white
BBLK="\[\033[40m\]" # background black
BRED="\[\033[41m\]" # background red
BGRN="\[\033[42m\]" # background green
BYEL="\[\033[43m\]" # background yellow
BBLE="\[\033[44m\]" # background blue
BMAG="\[\033[45m\]" # background magenta
BCYN="\[\033[46m\]" # background cyan
BWHT="\[\033[47m\]" # background white
nyní nemusíme psát ANSI kódy barev, ale pouze proměné ($FGRN pro zelenou atd.).
==== Nastavení promptu, zatím bez barev ====
Tak jak jsem již psal, prompt nebarevný je mezi else a fi. Zakomentujte původní definici (před text dejte #) a napište:
PS1="[ ${debian_chroot:+($debian_chroot)}\u: \w ]\\$ "
PS2="> "
Sekundární prompt je jen znak >. Avšak primární je trošku složitější, obsahuje několik specialních znaků, které zastupují informace o aktualní relaci (jméno počítače, uživatele, ...). Hlavní pro jistotu uvedu:
\h
Název počítače (od začátku k první tečce).
\H
Celý název počítače.
\j
Počet procesů na pozadí daného shellu.
\n
Odřádkování.
\t
Čas ve formátu HH:MM:SS.
\A
Čas ve formátu HH:MM.
\u
Uživatelské jméno.
\v a \V
Verze Bashe (4.1 a 4.1.2).
\w
Aktuální pracovní adresář. Název domovského adresáře (např. /home/dave) je zkrácen na tildu (~).
\W
Vrchní adresář aktuálního pracovního adresáře (jste-li v /tmp/x/y, zobrazí y).
\$
Je-li efektivní UID rovné 0, vloží znak „#“, jinak vloží znak „$“.
\\
Zpětné lomítko.
uplné info dostanete příkazem
man bash
jak tedy bude vypadat náš primární prompt? Nejspíš nějak takto [ zerog: ~ ]$ (v domovském adresáři)
Nebádejte co znamená **"${debian_chroot:+($debian_chroot)}"** není to důležité, prostě to vložte vždy před **"/u"**.
==== Nastavení promptu, konečně už barevného :-) ====
První věc co musíte udělat, je najít řádek **#force_color_prompt=yes** a odkomentovat ho (smažte #). Nyní je preferovaná větev if - else. Opět zakomentujte původní řádek (před PS1 dejte znak #) a zkopírujte následující:
PS1="$HC$FYEL[ $FBLE${debian_chroot:+($debian_chroot)}\u$FYEL: $FBLE\w $FYEL]\\$ $RS"
PS2="$HC$FYEL> $RS"
Nyní bude prompt stejný jako předtím, ale krásně barevný. Použili jsme předdefinováné barvy, takže zápis není tak složitý. Primární prompt bude vypadat tedy takto : (žlutá)[(modrá) zerog(žlutá):(modrá) ~(žlutá) ]$(reset)
A nebo poněkud tradičnější řešení uspořádání obarveného promptu nabízí script:
PS1="$HC$FYEL$FBLE${debian_chroot:+($debian_chroot)}\u$FRED@$FYEL\h$FRED:$FBLE\w $FYEL\\$ $RS"
PS2="$HC$FYEL> $RS"
Pokud chcete vidět, jak se Váš barevný prompt rýsuje, prostě jen otevřete nový bash. Pokud chcete videt sekundární prompt, napište **\** na konec řádku.
====== Navrácení změn do původního stavu ======
{{.:clear.png}} Spusťte tyto příkazy, které obnoví zálohy:
sudo cp /etc/default/grub_zaloha /etc/default/grub
sudo cp /etc/lsb-base-logging.sh_zaloha /etc/lsb-base-logging.sh
cp ~/.bashrc_zaloha ~/.bashrc
====== Odkazy ======
* původní návod na českém Ubuntu fóru: [[http://forum.ubuntu.cz/index.php/topic,1936.0.html]]
* původní návod na ubuntuforums.org: [[http://ubuntuforums.org/showthread.php?t=192675]]
{{page>úpravy/grafika}}