LINUX.ORG.RU

[gnome-terminal]Перекрашивание промпта и глюки эмулятора терминала

 


0

1

Делаем следующее: дописываем

export PS1="[ \t \u@\h \w ] "

в каком-нибудь .bashrc, все хорошо, имеем удобный промпт. Но вот мы захотели сделать красиво - например, разную подсветку промпта для рута и ограниченного юзера. Усложняем PS1:

export PS1="[ \t \e[32m\u\e[0m@\h \w ] "

Имя юзера выводится зеленым цветом, все остальное - дефолтным, все хорошо. Но! Возникают незаметные на первый взгляд глюки с автодополнением, переполнением строки и прочей фигней, например, подержим один символ на клаве до тех пор, пока длина команды не превысит оставшееся свободное место до конца строки - и символ продолжит вводиться, но не на следующей строке, а на той же, в начале, затирая промпт и все остальное. При следующем дохождении до конца края окна терминала продолжение появляется уже на следующей строчке.

При перелистывании истории при помощи arrow keys предыдущие команды могут начать появляться на на месте уже набранной, а в произвольном месте видмой области в эмуляторе.

У кого-нибудь воспроизводится?

Дистр - сквиз со всеми обновлениями:

deb http://security.debian.org/ squeeze/updates main
deb http://mirror.yandex.ru/debian squeeze main

Потому что надо экранировать управляющие последовательности должным образом

export PS1="[ \t \[\033[01;32m\]\u\[\033[00m\]@\h \w ] "
И зачем export? В .bashrc просто PS1, export для изменений в активном шелле.

nitz ★★
()
Ответ на: комментарий от nitz

Спасибо! Да, что-то ступил с export - это же конфиг шелла, а не скрипт, в нем должны быть просто значения. Лор - торт.

pianolender ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.