проблема с zsh интерактивной оболочкой

682
Jack

Когда я использую zsh в интерактивном режиме, я получаю некоторые глюки. Это в основном происходит, когда команда перетаскивается на новую строку, и я использую backspace, при этом backspace оставляет некоторые глюки на экране и перемещает курсор в нечетное положение.

Это происходит в VT, в xterm и urxvt, хотя это наиболее заметно с моим выбранным терминалом, urxvt.

Когда я использую zsh в качестве оболочки для входа, это не происходит вообще.

Что может быть причиной этого?

2
Ваше описание немного расплывчато. Вы используете модную подсказку? (По-прежнему ли это происходит с простым приглашением?) Является ли приглашение одинаковым в случаях отсутствия входа в систему и входа в систему * zsh *? Используете ли вы какие-либо символы, не входящие в ASCII, в вашем приглашении или во входных данных (например, терминал UTF-8 с включенным многобайтовым текстом UTF-8)? Chris Johnsen 14 лет назад 0

2 ответа на вопрос

3
Dennis Williamson

Было бы полезно, если бы вы показали, какая PROMPTпеременная установлена, когда она не работает, но вполне вероятно, что у вас есть escape-последовательности, которые подсчитываются по ширине приглашения. Вы можете исправить это, отредактировав значение так, чтобы эти последовательности были окружены %{ ... %}.

Это было именно так :) Jack 14 лет назад 0
0
DevSolar

Оболочка и ваша терминальная программа должны согласовать:

  • размер, возможности и поведение окна;

  • количество символов, отображаемых на нем; эти числа могут начать различаться, например, когда одна сторона предполагает Unicode, а другая - латинскую кодировку, или когда backspace обрабатывается неправильно.

Ваши настройки termcap / terminfo и конфигурация вашей терминальной программы должны быть согласованы, иначе вы получите именно то поведение, которое вы описываете.

К сожалению, я не настолько опытен с этими настройками, как хотелось бы, и не могу точно определить, что вы должны изменить, где. (Нужно оставить место для других, чтобы заработать голоса, да?)

Похожие вопросы