Недавно я задал этот вопрос, о том, как настроить цвета шрифта терминала удара. На вопрос ответили, и я получил желание цветов, с помощью ссылки, предоставленной услужливым пользователем.
Команда, которую я искал, была:
export PS1="\e[1;34m\u@\H : \e[m\[$(tput sgr0)\]"
Который дает мне следующее в требуемом цвете:
user@host :
Однако после использования этого некоторое время, я замечаю, что мой терминал удара теперь довольно ошибочен при записи и доступе к истории команд. Этот поток описывает точную проблему, которую я имею, и решение быть, "использовать \[...\]
вокруг частей PS1, которые имеют длину 0 дюймов.
Я чувствую, что попробовал все, чтобы сделать точно, что в моем PS1, но история все еще остается багги. Кто-то может указать на то, что я пропускаю?
Эти части PS1 имеют длину 0, потому что они устанавливают форматирование (использующий escape-последовательности ANSI), но не производят никакой другой вывод:
\e[1;34m
\e[m
$(tput sgr0)
Также:
$(tput sgr0)
потому что \e[m
делает ту же самую вещь.Таким образом, Вы ищете эту команду:
export PS1='\[\e[1;34m\]\u@\H : \[\e[m\]'