Oh my zsh!

Zshell, jakožto náhrada klasického Bashe, dovoluje celou řadu modifikací terminálu, jako jsou autocomplete příkazů, nastavení promptu, zobrazení aktuální vytíženosti CPU, kapacitu volné RAM apod. Hodně dlouho jsem odolával, než jsem přešel z Bashe, ale nyní si ZShell nemůžu vynachválit.

Instalace

Instalace je detailněji popsána v zsh a oh-my-zsh, já zde ale uvedu postup, který jsem zvolil já.

Instalace ZSH a nastavení jako defaultní shell:

Dalším krokem je instalace frameworku Oh-my-zsh pro managování a upravování ZShellu pomocí curlu

Další úpravy zsh

Všechny úpravy zsh se provádí v jediném souboru .zshrc.

Themes

Color themes se dají měnit pouhým přepsáním hodnoty jediné proměnné ZSH-THEME, nebo přenastavením v preferencích terminálu, v iTermu iTerm2 -> Preferences -> Profiles -> Colors -> Color Presets. Používám dracula theme, který si stačí naklonovat z GitHubu a v nastavení iTermu naimportovat.

Plugins

Asi největší výhodou zsh jsou jeho pluginy. Většinou se instalují pouhým naklonováním z repozitáře a následným přidáním do proměnné pluggins. Pluginy, které stojí za zmíňku, jsou git pro verzování, zsh-autosuggestions, který automaticky napovídá příkazy podle historie vámi použitých příkazů, colorize pro syntax-highlighting pomocí příkazu ccat a zsh-syntax-highlighting pro syntax-highlighting příkazů v terminálu. Rozsáhlejší seznam pluginů najdete zde.

Icons

Dalším příjemným rozšířením je podpora ikon v terminálu, např. pro různé programovací jazyky, GitLab, GitHub a další pomocí fontu nerd fonts. Toto rozšíření vyžaduje nainstalovaný theme powerlevel9k:

Pak stačí přepsat proměnnou ZSH-THEME hodnotou “powerlevel9k/powerlevel9k” . Samotné fonty obsahující ikony se nainstalují následovně:

Následuje nastavení non-ASCII fontu v iTerm2 -> Preferences -> Profiles -> Text na Nerd Font podporující ikony:

Posledním krokem je přidání řádku POWERLEVEL9K_MODE=’nerdfont-complete’ do .zshrc .

Sám mám zsh nastavený takto: