bash и перевод каретки

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Ответить
Лис
Сообщения: 1639
ОС: Zenwalk

bash и перевод каретки

Сообщение Лис »

Никак не могу решить проблему. Гуглить пытался, но грамотный запрос составить не получается :( . Проблема в следующем: при вводе длинной строки, которая не может отобразиться одной строкой, (что в консоли, что в xterm) каретка не переводится на новую строку, но возвращается в начало. В результате новые символы пишутся в этой же строке поверх старых. Если дальше нажать backspace, то символ удаляется, а строка перескакивает вверх. Подскажите, пожалуйста, в какую сторону копать.
Система - Slackware 10.2
Спасибо сказали:
Аватара пользователя
bahsurman
Сообщения: 153

Re: bash и перевод каретки

Сообщение bahsurman »

Лис писал(а):
09.03.2006 14:53
Никак не могу решить проблему. Гуглить пытался, но грамотный запрос составить не получается :( . Проблема в следующем: при вводе длинной строки, которая не может отобразиться одной строкой, (что в консоли, что в xterm) каретка не переводится на новую строку, но возвращается в начало. В результате новые символы пишутся в этой же строке поверх старых. Если дальше нажать backspace, то символ удаляется, а строка перескакивает вверх. Подскажите, пожалуйста, в какую сторону копать.
Система - Slackware 10.2


Кажется такое встречается в том числе, когда некорретно составлен промпт(PS1) баша
Попробуйте , к примеру, такой:
PS1="\[\\e[32m\]\u\[\\e[m\]@\h:\w$ "
Посмотрите не изменится ли поведение.
Спасибо сказали:
Аватара пользователя
Shura
Сообщения: 1537
Статус: Оказывается и без KDE есть жизнь
ОС: FreeBSD 8.0-RC2

Re: bash и перевод каретки

Сообщение Shura »

Совершенно верно. Непечатаемые символы в PS надо обрамлять \[\]
Rock'n'roll мертв © БГ
Спасибо сказали:
Лис
Сообщения: 1639
ОС: Zenwalk

Re: bash и перевод каретки

Сообщение Лис »

Извиняюсь за молчание - к компьютеру не было доступа.
Да, дело было в неправильно составленом PS1. Спасибо за помощь!
Спасибо сказали:
Ответить