J'utilise urxvt en combinaison avec zsh. Cependant, depuis ma nouvelle installation d'ubuntu 10.04, j'ai le problème suivant. Si je tape retour arrière, le curseur se déplace vers la droite (au lieu de supprimer les caractères situés à gauche).
Supposons que je tape n caractères, puis que vous appuyiez sur la touche retour arrière n fois, le curseur se positionne à gauche. Si je saisis un retour arrière plus, le curseur ne se déplace plus.
Si je tape la flèche gauche, rien ne se passe, si je tape la flèche droite après un certain caractère apparaît.
mv .zshrc .zshrc.bak
mv .Xdefaults .Xdefaults.bak
n'a pas aidé.
urxvt + bash fonctionne bien ainsi que xterm + zsh.
zsh-version: 4.3.11-4ubuntu2.is.3ubuntu1 version rxvt-unicode: 9.09-3
Une idée comment résoudre ce problème?
Essayez d’ajouter ce qui suit à votre .zshrc:
TERM=xterm
En zsh, que dit bindkey | grep delete
? Ce sont les lignes que je reçois:
"^D" delete-char-or-list
"^H" backward-delete-char
"^[3;5~" delete-char
"^[[3~" delete-char
"^?" backward-delete-char
Vous devriez avoir "^?" comme cela représente le retour arrière. Si ce n'est pas le cas, vous pouvez appeler bindkey "^?" backward-delete-char
à l'invite zsh pour l'insérer.
Est-ce que cela résout le problème?
C'est un vieux fil de discussion et personne ne le verra peut-être, mais le problème pour moi était dans le fichier .Xresources
. J'avais mal interprété le paramètre URxvt*termName
comme la chaîne qui deviendrait le titre de la fenêtre urxvt
. C'est en fait ce qui devient la variable d'environnement $TERM
, à moins que le shell ne la remplace (bash
le fait).
Ma solution était d'ajouter URxvt*termName: xterm-256color
au fichier ~/.Xresources
. Comme pour toute modification de ce fichier, vous devez exécuter xrdb -merge ~/.Xresources
et redémarrer complètement urxvt
(y compris urxvtd
processus de démon) pour que les modifications soient affichées.
Vous pouvez également contourner le problème en définissant
stty erase '^?'
Voici quelques détails sur le comportement déviant de certains émulateurs de terminaux (ce qui explique d'ailleurs pourquoi certains émulateurs ont ce problème): mini-HOWTO Linux Backspace/Delete .