本地密钥在 Debian 9.6 的图形 shell 中不起作用

本地密钥在 Debian 9.6 的图形 shell 中不起作用

我安装了 Debian 9.6,语言为英语,区域设置(包括键盘)为芬兰语。在桌面应用程序(例如 Chromium)中一切正常,但键“ä”、“ö”和“å”在 Konsole、xterm、uxterm 或 rxvt 中不起作用。否则,键盘映射将按其应有的方式工作。

在 xterm、uxterm 和 rxvt 中,这些键不执行任何操作。在 Konsole 中,“ö”键会给出“(arg: 6)”提示。

也就是说,如果我从 KDE 菜单启动它们。如果我从 Konsole 启动 xterm(或 Konsole),按键就可以工作。同样,如果我在任何终端模拟器中执行“su”。

这似乎并不取决于我通过运行获得的环境变量locale。输出最初如下:

jonni@jlehtira:~$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=sms_FI.UTF-8
LANGUAGE=en_US
LC_CTYPE="sms_FI.UTF-8"
LC_NUMERIC="sms_FI.UTF-8"
LC_TIME="sms_FI.UTF-8"
LC_COLLATE="sms_FI.UTF-8"
LC_MONETARY="sms_FI.UTF-8"
LC_MESSAGES="sms_FI.UTF-8"
LC_PAPER="sms_FI.UTF-8"
LC_NAME="sms_FI.UTF-8"
LC_ADDRESS="sms_FI.UTF-8"
LC_TELEPHONE="sms_FI.UTF-8"
LC_MEASUREMENT="sms_FI.UTF-8"
LC_IDENTIFICATION="sms_FI.UTF-8"
LC_ALL=

如果我这样做了su jonni,那么我就明白了

jonni@jlehtira:~$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

但是,仅将这些环境变量复制粘贴到新打开的 shell 中不会改变任何内容。我也想知道 sms_FI 到底是从哪里来的。

答案1

看来安装过程中区域设置的创建可能已被跳过。

dpkg-reconfigure locales

选择要为您的计算机生成的一种或多种区域设置,然后选择应作为系统默认值的区域设置。

相关内容