如何使用 urxvt + zsh 修复奇怪的退格行为?

stu*_*ent 17 command-line zsh 11.04

我将 urxvt 与 zsh 结合使用。但是,自从我全新安装 ubuntu 10.04 以来,我遇到了以下问题。如果我输入退格,光标会向右移动(而不是删除左边的字符)。

假设我输入 n 个字符,然后按退格键 n 次将光标向左移动 n 个位置,如果我再输入一个退格键,则光标不再移动。

如果我输入向左箭头,什么也不会发生,如果我在之后输入向右箭头则会出现某个字符。

mv .zshrc .zshrc.bak
mv .Xdefaults .Xdefaults.bak
Run Code Online (Sandbox Code Playgroud)

没有帮助。

urxvt + bash 和 xterm + zsh 一样工作正常。

zsh 版本:4.3.11-4ubuntu2.is.3ubuntu1 rxvt-unicode 版本:9.09-3

知道如何解决这个问题吗?

小智 22

尝试将以下内容添加到您的 .zshrc:

TERM=xterm
Run Code Online (Sandbox Code Playgroud)

  • 最好使用 `TERM=xterm-256color` 来支持 256 色。 (6认同)

Eht*_*ury 8

在zsh中,bindkey | grep delete说什么?这些是我得到的行:

"^D" delete-char-or-list
"^H" backward-delete-char
"^[3;5~" delete-char
"^[[3~" delete-char
"^?" backward-delete-char
Run Code Online (Sandbox Code Playgroud)

你应该有“^?” 因为那代表退格。如果没有...您可以bindkey "^?" backward-delete-char在 zsh 提示符下调用以将其放入。

这能解决问题吗?