Как исправить странное поведение backspace с urxvt + zsh?

Это сработало для меня:

sudo apt-get install build-essential linux-headers-$(uname -r) open-vm-dkms
sudo ln -s /usr/src/linux-headers-$(uname -r)/include/generated/uapi/linux/version.h /usr/src/linux-headers-$(uname -r)/include/linux/version.h

, затем

sudo vmware-config-tools.pl

... и все готово.

11
задан 10 May 2012 в 06:58

5 ответов

Попробуйте добавить следующее к вашему .zshrc:

TERM=xterm
15
ответ дан 13 August 2018 в 12:54
  • 1
    Это фиксировало это для меня FWIW. – seth 27 July 2011 в 03:22
  • 2
    Лучше использовать TERM=xterm-256color для поддержки 256 цветов. – xuhdev 18 April 2016 в 01:15
  • 3
    Разве вы не избегаете проблемы, используя xterm вместо urxvt? – villasv 1 October 2016 в 15:48

В zsh, что говорит bindkey | grep delete? Это строки, которые я получаю:

"^D" delete-char-or-list
"^H" backward-delete-char
"^[3;5~" delete-char
"^[[3~" delete-char
"^?" backward-delete-char

У вас должно быть «^?» так как это означает обратное пространство. Если нет ... вы можете вызвать bindkey "^?" backward-delete-char в приглашении zsh, чтобы поместить его.

Решает ли это проблему?

4
ответ дан 25 May 2018 в 19:42
  • 1
    bindkey | grep delete " ^ D " delete-char-or-list " " " назад-удаления-символ – student 23 July 2011 в 23:46

Это старый поток, и, возможно, никто этого не увидит, но проблема для меня была в файле .Xresources. Я неверно истолковал параметр URxvt*termName как строку, которая станет заголовком окна urxvt. Фактически это становится переменной среды $TERM, если оболочка не переопределяет ее (bash).

Моим решением было добавить URxvt*termName: xterm-256color в файл ~/.Xresources. Как и при любом изменении этого файла, вам нужно будет запустить xrdb -merge ~/.Xresources и полностью перезапустить urxvt (включая процессы демона urxvtd) для отображаемых изменений.

1
ответ дан 25 May 2018 в 19:42

Вы также можете обойти проблему, установив

stty erase '^?'

Вот некоторые подробности о девиантном поведении некоторых эмуляторов терминала (что, кстати, почему некоторые эмуляторы есть эта проблема): Linux Backspace / Delete mini-HOWTO.

0
ответ дан 25 May 2018 в 19:42

В zsh, что говорит bindkey | grep delete? Это строки, которые я получаю:

"^D" delete-char-or-list
"^H" backward-delete-char
"^[3;5~" delete-char
"^[[3~" delete-char
"^?" backward-delete-char

У вас должно быть «^?» так как это означает обратное пространство. Если нет ... вы можете вызвать bindkey "^?" backward-delete-char в приглашении zsh, чтобы поместить его.

Решает ли эта проблема?

4
ответ дан 7 August 2018 в 21:08

Другие вопросы по тегам:

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