Будь-який спосіб виправити неправильне поводження екрана з обертанням рядків? (Можливо, лише Terminal.app)


9

У мене виникла проблема використання екрана та Terminal.app. Якщо я отримую підказку bash в нижній частині екрана, і я продовжую набирати текст, поки рядок не перейде до наступного рядка, я бачу наступний рядок, але я не бачу, щоб рядок над цим змінився.

Ось наочний спосіб ілюстрації моєї проблеми. | являє праву частину терміналу.

До цього. Мій курсор після третього "прикладу", і я збираюся ввести "приклад" в четвертий раз:

$ asdf                        |
bash: asdf: command not found |
$ example example example     |

Після. Зауважте, як після завернення обгортання екран не прокручується, а натомість "з'їв" рядок, на якому я був, і почав свіжий:

$ asdf                        |
bash: asdf: command not found |
ple                           |

Я очікував (і що трапиться без використання екрана) - це те, що весь екран прокручується вниз після обертання.

bash: asdf: command not found |
$ example example example exam|
ple                           |

Нарешті, це, що станеться, якщо я переміщу курсор по загорнутому рядку до початку командного рядка, він з'їдає попередній рядок:

$ asdf                        |
$ example example example exam|
ple                           |

Будь-яка ідея, що відбувається?


Термінал GNOME і екран 4 обгортають, як очікувалося тут, FWIW. Яку версію запущено та чи змінили будь-які конфігурації за замовчуванням?
Бернар

Це відбувається при підключенні до двох різних машин. У моїй дебіанській машині є екран 4 із зробленими для неї налаштованими конфігураціями, а в моєму вікні rhel 5.3 також є екран 4 без спеціальних конфігурацій, і обидва вікна демонструють однакову поведінку.
AlexMax

Я маю точно таку поведінку. Ще одним його симптомом (не описаним вище) є те, що після того, як попередній рядок буде "з'їдений", з виділеннями трапляються дивні речі. Почніть вибирати мишкою, і все, що знаходиться під вибором, виявиться правильним. Наприклад: якби ви вибрали рядок "$ asdf" в останньому прикладі вище, він раптом зміниться на "bash: asdf: команда не знайдена" (що має сказати попередній рядок.) Це як би на екрані просто не перемалював ці рядки, але повинен був. Це як би забути позначити ці рядки брудними, потребуючи повторного відтворення.
Відредаговано

У будь-який час вона починає погано, просто виберіть усе (КОМАНДА + А), щоб буфер екрану виглядав правильно.
Відредаговано

Також це не проблема в iTerm.app
Оновлено

Відповіді:


7

Успіху! Я спробував пропозицію звідси:

/server/272818/screen-not-dropping-down-a-line

що додати:

termcapinfo xterm* ti@:te@

на ваш .screenrcекран і перезавантажте. Це змінює поведінку прокрутки екрана на щось, можливо, краще для мого середнього випадку використання (наприклад, я можу використовувати прокрутку терміналу, поки я буду в одному вікні), на додаток до виправлення проблеми ОП.

Крім того, я можу підтвердити проблему в 10.7 на Terminal.app.


Приємної детективної роботи! На жаль, я є великим користувачем декількох вікон екрану, тому це не спрацює для мене.
AlexMax

він також не працює для мене, коли я ssh на інший сервер, саме там я стикаюся з проблемою. не впевнений, чи можна вказати такий жорсткийtermcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' ti@:te@
Брайан Томас

2

Це може бути "горизонтальний режим прокрутки" для читання рядків. Виконайте таку команду:

bind 'set horizontal-scroll-mode off'

і подивіться, чи змінюються ваші симптоми. Якщо так, ви можете встановити це в ~ / .inputrc


1
не допомогло це в моєму випадку.
Відредаговано

0

Перейдіть до налаштувань терміналу і змініть параметр "Оголосити термінал як:" з "xterm-color" на просто "xterm". Це зафіксувало це для мене (але також має наслідком вимкнення altcreen :()


Я вже налаштував Terminal.app таким чином, і це не допомагає мені в моїй проблемі. Режим горизонтальної прокрутки вимкнено за замовчуванням відповідно до сторінки сторінки екрана, і я не бачу, де він встановлений. Бампер. Дуже хотілося б знайти рішення для цього.
Тім Харпер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.