Что делает последовательность %\/
в расширении приглашения zsh? man zshmisc
не содержит строку %\
, в которой находятся остальные расширения, специфичные для приглашения.
Последовательность можно увидеть вточечные файлы Холмана:
directory_name(){
echo "%{$fg_bold[cyan]%}%1/%\/%{$reset_color%}"
}
export PROMPT=$'in $(directory_name)› '
решение1
%\
ничего не делает, поэтому бесполезен. То же самое и для $
in $'...'
. В этом нет необходимости, так как там нет escape-последовательности для расширения.
Все это можно записать так:
PS1='in %{$fg_bold[cyan]%}%1//%{$reset_color%}› '
или:
PS1="in %{$fg_bold[cyan]%}%1//%{$reset_color%}› "
чтобы раскрыть его $fg_bold...
во время выполнения задания, а не при каждом запросе.
Нет необходимости выполнять подстановку команд в каждом запросе, поскольку вывод directory_name
не меняется от одного запуска к другому.
Вам, вероятно, не нужны export
PS1 или PROMPT.