环境:
我使用的是 Ubuntu 11.10,其中 wmii 3.9 为 GUI,uxterm 为终端,bash 为 shell。硬件是联想 ThinkPad W500,采用瑞士德语键盘布局(因此我需要变音符号)。我使用 ibus 进行日文输入。
症状:
当我在终端中键入~
诸如 之类的键/字符时^
没有什么发生。如果我按ö
“ (arg: 6)
”,则ä
不会发生任何事情,ü
有时会出现历史记录中的命令。
到目前为止,我测试的所有终端(gnome-terminal、xfce4-terminal、xterm)中的行为都相同。它在其他 X 应用程序(如 chromium-browser、skype 或 texteditors)中按预期工作。
附加信息:
> locale
LANG=de_CH.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="de_CH.UTF-8"
LC_TIME="de_CH.UTF-8"
LC_COLLATE=en_US.UTF-8
LC_MONETARY="de_CH.UTF-8"
LC_MESSAGES=en_US.UTF-8
LC_PAPER="de_CH.UTF-8"
LC_NAME="de_CH.UTF-8"
LC_ADDRESS="de_CH.UTF-8"
LC_TELEPHONE="de_CH.UTF-8"
LC_MEASUREMENT="de_CH.UTF-8"
LC_IDENTIFICATION="de_CH.UTF-8"
LC_ALL=
> setxkbmap -print
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+ch+inet(evdev)+terminate(ctrl_alt_bksp)" };
xkb_geometry { include "pc(pc105)" };
};
答案1
当我使用终端仿真器通过 ssh 连接到 Mac OS X 时,我也遇到了类似的问题。尽管我已将 LANG 设置为,但de_DE.UTF-8
我无法输入任何带变音符号的字符。
我发现的修复方法是创建/编辑~/.inputrc
(或编辑以下几行/etc/inputrc
):
set input-meta on
set output-meta on
set convert-meta off
现在我可以输入变音符号了。我相信这适用于一般的 xterms。
答案2
使用以下方式设置正确的语言环境
sudo dpkg-reconfigure locales
您将在那里选择de_DE.UTF-8
您的设置。这解决了所有问题 ;)
set convert-meta off
信息:更改in的值/etc/inputrc
并不完全有效:
它也修复了这种问题,但仍然有一些奇怪的事情:如果我输入,ö
我会得到一个 ö,但在 ö 前面似乎有一个隐藏的字符:我可以删除 wich Backspace 两个字符,尽管我只输入了一个 ö
答案3
除了上述答案之外,还可能是您的语言环境未编译。/usr/share 下有语言环境源文件,/usr/lib 下有已编译的语言环境文件。/usr/lib 下的文件可能已损坏或未编译,要修复此问题,您可以使用 localedef 实用程序编译文件。或者在基于 Debian 的系统上使用 dpkg-reconfigure。