无法通过 /etc/default/locale 设置“LANG”环境变量

无法通过 /etc/default/locale 设置“LANG”环境变量

我正在运行以下设置

  • 操作系统:Debian GNU/Linux 10
  • KDE 等离子版本:5.14.5

(如果相关的话,我也在使用 Awesome WM)

Debian 维基,我已经运行dpkg-reconfigure locales生成语言环境并将其设置/etc/default/locale为以下内容:

LANG="en_US.UTF-8"
LANGUAGE="en_US:fr"
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"

也就是说,我试图获取英文的所有信息,除了日期、测量值等。

当我输入 时locale,我得到这个:

LANG=fr_FR.UTF-8
LANGUAGE=en_US:fr
LC_CTYPE=fr_FR.UTF-8
LC_NUMERIC=en_US.UTF-8
LC_TIME=fr_FR.UTF-8
LC_COLLATE=fr_FR.UTF-8
LC_MONETARY=fr_FR.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=fr_FR.UTF-8
LC_NAME=fr_FR.UTF-8
LC_ADDRESS=fr_FR.UTF-8
LC_TELEPHONE=fr_FR.UTF-8
LC_MEASUREMENT=fr_FR.UTF-8
LC_IDENTIFICATION=fr_FR.UTF-8
LC_ALL=

当我输入 时locale -a,我得到:

C
C.UTF-8
en_US.utf8
fr_FR.utf8
POSIX

正如你所看到的,LANG设置为fr_FR.UTF-8,而我希望它是en_US.UTF-8。我的语法有问题吗/etc/default/locale?什么可能会覆盖其内容并在登录时考虑? KDE 区域设置似乎只有美式英语(KDE 菜单/窗口确实是英语)。

答案1

好吧,在@GAD3R 发表评论之后,我意识到我的LANGUAGE变量设置与我想要的并不完全一致:默认为英文消息、法语单位/日期等。我将它重新设置为仅en_US,然后发生了一些奇怪的事情:当登录到 awesome WM 时,的输出locale是我所期望的,一切正常,但登录 KDE Plasma 时却不是这样。

使用 Plasma,我仍然LANGUAGE=en_US:frlocale输出中打印!我最后检查了等离子区域设置,发现没有默认语言设置。我将其设置为“美式英语”,选中“格式”菜单中的“详细设置”复选框(所有内容都已根据配置文件填写),注销并重新登录,问题就解决了。

我猜想在 Plasma 设置中填充内容是必要的,即使所有内容都已经通过/etc/配置文件进行了配置。

答案2

您可以将其放置在 .bashrc 文件中,如下所示

export LANG="en_US.UTF-8"

并将剩余值如此

相关内容