我使用的是多用户 Debian Stretch 系统,该系统具有en_US.UTF-8
默认区域设置,但我想要de_DE.UTF-8
我的用户。我可以通过添加到export LANG=de_DE.UTF-8
来为终端设置它~/.bashrc
。
问题是我的 X 环境(使用 XFCE 作为窗口管理器,lightdm 作为登录管理器)仍然使用默认区域设置,这并不奇怪,就像.bashrc
bash 一样。所以我尝试在其他各种文件中设置变量:
〜/.xinitrc
该文件似乎根本没有被执行。
〜/.config/xfce4/xinitrc
在这里设置变量也不起作用(没有观察到行为变化)。另外,如果我切换窗口管理器,我需要再次将其设置为新窗口管理器,这不是很有吸引力。
〜/.xsession
在这里设置变量大概是可行的,但我还需要在这里启动窗口管理器,所以我希望找到一个更好的地方。
~/.pam_环境
Debian 上似乎被忽略了
~/.xsessionrc
这里设置环境变量实际上似乎可行,但看起来像是在启动过程的后期LANG
设置的。en_US.UTF-8
〜/.i18n
这里设置语言好像不行。
看来所有这些都不是设置LANG
变量的正确位置。我应该在哪里设置才能得到想要的结果?
答案1
我遇到了同样的问题,lightdm 未正确设置语言(请参阅这个错误)。将 LANG 导出添加到两个都.bashrc 和 .xsessionrc 为我解决了这个问题。可以肯定的是,我导出为 LANG、LANGUAGE 和 LC_ALL。
答案2
~/.dmrc
Arch/Manjaro 上的设置工作
$ cat ~/.dmrc
[Desktop]
Session=xfce4
Language=en_US.utf8
这在拱门维基:
LightDM 将自动使用帐户服务来设置用户的区域设置(如果已安装)。否则,LightDM 将用户会话配置存储在 ~/.dmrc 中。也有可能从那里检索不需要的区域设置。