更改Arch

时间:2017-01-24 18:28:20

标签: linux locale archlinux

我的gnome-terminal坏了,zim和许多其他程序也坏了,xfce-terminal没有显示像öä或ü这样的字符。所有这些都显示了语言环境的问题。我认为问题源于配置不当的区域设置。为了输入“locale”,xfce4-terminal会提示

LANG=C
LC_CTYPE="C"
LC_NUMERIC=aa_DJ.UTF-8
LC_TIME=aa_DJ.UTF-8
LC_COLLATE="C"
LC_MONETARY=aa_DJ.UTF-8
LC_MESSAGES="C"
LC_PAPER=aa_DJ.UTF-8
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT=aa_DJ.UTF-8
LC_IDENTIFICATION="C"
LC_ALL=

这不是我想要的。我的/etc/locale.conf设置为

LANG=de_DE.UTF-8

我的/etc/locale.gen被取消注释,例如执行“locale-gen”提示

de_DE.UTF-8... done
de_DE.ISO-8859-1... done
en_US.UTF-8... done
en_US.ISO-8859-1... done

当我查看环境变量时,我的“语言环境”会产生,它并不会让我感到太过惊讶,没有任何事情可以正常运作。我不知道为什么这些变量中有“aa_DJ”,我不知道语言(准确地说,我不确定是哪种语言,也许我说的是......)。但是,我真的不知道在哪里永久地更改环境变量(不将它放在.bashrc中)。我尝试在我的主文件夹中点击它然后在root中(递归 - > grep到处查找),但我找不到任何东西。

所以我的问题是:这些变量在何处或如何定义,如何更改?我找不到任何可以解释它的东西。我知道有几个人问类似的问题,我尝试了这些解决方案,但他们似乎有不同的问题(或者他们通过黑客入侵.bashrc来解决这个问题,这在这里没有做到这一点并且不是一个非常有意义的方式)。

2 个答案:

答案 0 :(得分:2)

所以,你在那里的语言环境似乎是:

Afar - DJIBOUTI (DJ) (aa_DJ)

因此,在运行locale-gen后,您需要运行localectl list-locales并确定所需的区域设置。

最后运行:

localectl set-locale LANG=de_DE.UTF-8

注意:Arch linux中语言环境的德语页面似乎已经过时了

答案 1 :(得分:0)

正如我现在发现的那样,我错过了提供可能有用的信息,这有助于我解决问题。我使用gnome3桌面环境。 Gnome3有自己的设置,用于覆盖系统标准的语言环境(并且不会以纯文本保存,我假设,否则我应该用grep找到它)。解决方案是通过

更正gnome设置
gsettings get org.gnome.system.locale region 'de_DE.UTF-8'