Цветовая подсказка Bash и длинные команды

Цветовая подсказка Bash и длинные команды

Я раскрашиваю части приглашения bash с помощью escape-последовательностей ANSI. Это отлично работает, пока команда, которую я в данный момент набираю, не становится достаточно длинной, чтобы ее пришлось переносить. Вместо того, чтобы отображать остаток команды на следующей строке, она переносится обратно на столбец 1 текущей строки, перезаписывая начало приглашения.

Я получаю такое поведение с помощью этого приглашения:

export PS1="[\u][\033[0;32;40mdemo \033[0;33;40m1.5.40.b\033[0;37;40m] \w> \033[0m"

но он работает правильно с тем же приглашением, последовательности ANSI удаляются:

export PS1="[\u][demo 1.5.40.b] \w> "

Я подключаюсь с помощью текущей версии Putty, с настройками Putty по умолчанию. ОС — Ubuntu 8.10.

решение1

Должно быть, там что-то есть, потому что следующая строка издокументация bashне демонстрирует одинаковое поведение:

PS1="\[\033[1;34m\][\$(date +%H%M)][\u@\h:\w]$\[\033[0m\] "

Пока не понял, что это такое, но у них работает, а у вас — нет...

РЕДАКТИРОВАТЬ:Пытаться:

PS1="[\u][\[\033[1;32m\]\[\033[1;40m\]demo \[\033[1;33m\]\[\033[1;40m\]1.5.40.b\[\033[0;37m\]] \w> \[\033[0m\] "

Связанный контент