我已将 zsh 设置为使用 emacs 模式。但是键入Alt+f或Alt+b插入奇怪的符号(重音字母等),而不是像应有的那样在 shell 中按单词移动。由于我不想在 shell 提示符中插入“ae”符号,我怎样才能让 zsh 正常工作?
我在 bash 上遇到了同样的问题,但现在我实际上正在花时间定制 zsh,我想我会问......
AltGr+b等产生不同的奇怪的符号...
我使用的是Ubuntu 10.4
答案1
行为不端的不是 zsh,而是 xterm。它行为不当的原因是过时的设置导致 xterm 发送字符数XAlt与字符编号一起按下时+128X。文本终端中的正常行为是Alt+ asend ESC a
。
要告诉 xterm 单独保留 8 位字符,请关闭该XTerm.VT100.eightBitInput
资源(尽管有名称,但它不会影响输入 8 位字符时发生的情况)。通常,您可以通过将以下行添加到~/.Xresources
:
XTerm.VT100.eightBitInput: false
~/.Xresources
当您登录大多数 UNIX 发行版时会读取该信息。要立即读取它,请运行命令
xrdb -merge ~/.Xresources