Алексей Федорчук
В очерке о приглашении к любви речь шла о том, как оформить приглашение командной строки Zsh своими руками, в соответствие с собственными вкусами и предпочтениями. Однако можно пойти другим путём, и воспользоваться уже готовыми темами приглашений. Они входят в пакет zsh-common
, который всегда, насколько я знаю, устанавливается как зависимость пакета zsh
. После установки местоположение их — каталог /usr/share/zsh/functions/Prompts
.
Сами по себе темы приглашения — файлы вида prompt_themename_setup
, представляющие собой функции Zsh, описывающие как вид приглашения, так и, часто, некоторый его декор, типа расцветки, которая может быть нескольких видов. Однако разбираться в устройстве этих функций не обязательно — с ними можно ознакомиться визуально.
Знакомство это начинается с запуска функций управления видом приглашений:
$ autoload -U promptinit && promptinit
После чего можно давать команду на «смотрины невест»:
$ prompt -p
которая выведет их все (в моей системе — около двух десятков, плюс цветовые вариации) примерно в таком виде:
Среди «невест» можно видеть весьма пёстро наряженных:
Но и одетых весьма скромно также есть:
Выбрав подходящую невесту тему, её можно тут же установить командой
$ prompt имя_темы
при желании — с указанием цветовых параметров, например:
$ prompt fade white grey blue
Что в «живом» терминальном окне (терминал Sakura) будет выглядеть так:
А в выпадающем терминале Guake — несколько иначе:
Кстати, а в «головой» консоли вид этой же темы будет существенно скромнее — разбираться с программами для изготовления скриншотов консоли мне было лень, так что прошу поверить на слово.
Установленная таким образом тема будет функционировать только в данном терминальном окне в течении текущего сеанса. Чтобы увековечить её, необходимо вписать в файл ~/.zshrc
такие строки:
autoload -Uz promptinit promptinit prompt clint
В примере приведена тема, пожалуй, наиболее информативного приглашения, которое «вживе» вылядит так:
Большое количество тем можно при желании отыскать на сайте Oh My ZSH!, но эти я уже заниматься не стал.
В последнее время я обленился, и что касаемо сабжа, пришел к выводу, что напиливание конфига zsh руками сродни сборки LFS — круто, но малопродуктивно. И что много быстрее и прощее будет утянуть с гитхаба oh-my-zsh, и дополнить своими художествами, уж коли буде в том потребность. А стогодовалый конфиг я таскаю только для tcsh, и то лишь потому, что фанаты последнего ничего подобного oh-my-zsh не родили, к сожалению.