Używam urxvt w połączeniu z zsh. Jednak od czasu mojej nowej instalacji systemu Ubuntu 10.04 mam następujący problem. Po wpisaniu backspace kursor przesuwa się w prawo (zamiast usuwać znaki po lewej).
Załóżmy, że wpisałem n znaków, a następnie naciśnięcie backspace n-razy przesuwa kursor n- pozycje w lewo, jeśli wpisuję backspace, to jeszcze jeden, kursor już się nie porusza.
Jeśli piszę lewą strzałkę, nic się nie dzieje, jeśli później piszę prawą strzałkę, pojawia się jakaś postać.
mv .zshrc .zshrc.bak
mv .Xdefaults .Xdefaults.bak
nie pomogło
Urxvt + bash działa dobrze, podobnie jak xterm + zsh.
wersja zsh: 4.3.11-4ubuntu2.is.3ubuntu1 rxvt-wersja Unicode: 9.09-3
Jakiś pomysł jak to naprawić?
11.04
command-line
zsh
student
źródło
źródło
TERM=xterm-256color
do obsługi 256 kolorów.Co mówi
bindkey | grep delete
Zsh? Oto linie, które otrzymuję:Powinieneś mieć „^?” ponieważ reprezentuje to backspace. Jeśli nie ... możesz zadzwonić
bindkey "^?" backward-delete-char
w wierszu polecenia zsh, aby go wprowadzić.Czy to rozwiązuje problem?
źródło
Możesz także obejść ten problem, ustawiając
stty erase '^?'
Oto kilka szczegółów dotyczących dewiacyjnego zachowania niektórych emulatorów terminali (przez co niektóre emulatory mają ten problem): Linux Backspace / Delete mini-HOWTO .
źródło
To stary wątek i być może nikt tego nie zobaczy, ale problem był dla mnie w
.Xresources
pliku. Źle zinterpretowałemURxvt*termName
parametr jako ciąg znaków, który stałby sięurxvt
tytułem okna. W rzeczywistości staje się$TERM
zmienną środowiskową, chyba że powłoka ją nadpisuje (bash
robi).Moim rozwiązaniem było dodanie
URxvt*termName: xterm-256color
do~/.Xresources
pliku. Podobnie jak w przypadku każdej zmiany tego pliku, konieczne będzie uruchomieniexrdb -merge ~/.Xresources
i całkowite ponowne uruchomienieurxvt
(w tymurxvtd
procesów demona), aby zmiany zostały wyświetlone.źródło