Я использую urxvt в сочетании с zsh. Однако начиная с моей новой установки ubuntu 10.04 I имеют следующую проблему. Если я ввожу, возвращают перемещения курсора направо (вместо того, чтобы удалить символы слева).
Предположим, что я ввел n символы, затем нажимающие перемещения n-времен клавиши Backspace курсор n-положения налево, если я ввожу клавишу Backspace затем еще один, курсор больше не перемещается.
Если я ввожу стрелку влево, ничего не происходит, если я ввожу стрелку вправо впоследствии происходит, некоторый символ.
mv .zshrc .zshrc.bak
mv .Xdefaults .Xdefaults.bak
не помог.
urxvt + удар хорошо работает, а также xterm + zsh.
zsh-версия: 4.3.11-4ubuntu2.is.3ubuntu1 rxvt-unicode версия: 9.09-3
Какая-либо идея, как зафиксировать это?
Попытайтесь добавить следующее к своему .zshrc:
TERM=xterm
В zsh, что делает bindkey | grep delete
сказать? Это строки, которые я получаю:
"^D" delete-char-or-list
"^H" backward-delete-char
"^[3;5~" delete-char
"^[[3~" delete-char
"^?" backward-delete-char
Вы должны иметь "^?" поскольку это представляет клавишу Backspace. Если не... можно звонить bindkey "^?" backward-delete-char
в zsh запрашивают, чтобы вставить его.
Это разрешает проблему?
Вы могли также обойти проблему путем установки
stty erase '^?'
Вот некоторые детали о ненормативном поведении определенных эмуляторов терминала (который является между прочим, почему определенные эмуляторы имеют эту проблему): Linux Возвращается/Удаляет мини-практическое руководство.
Это - старый поток, и возможно никто не будет видеть это, но проблема для меня была в .Xresources
файл. Я неправильно истолковал URxvt*termName
параметр как строка, которая стала бы urxvt
заголовок окна. Это на самом деле, что становится $TERM
переменная среды, если оболочка не переопределяет его (bash
делает).
Мое решение состояло в том, чтобы добавить URxvt*termName: xterm-256color
к ~/.Xresources
файл. Как с любым изменением в этом файле, необходимо будет работать xrdb -merge ~/.Xresources
и полностью перезапуск urxvt
(включая urxvtd
процессы демона) для изменений в шоу.