我使用 Xfce 安装了 Debian sid,我想更改界面中使用的语言。我想将语言设置为英语(美国),以取代法语。更改必须同时适用于 GUI 和 CLI。
我尝试过的:
重新配置区域设置
它仅适用于 root 用户,不适用于普通用户(我的菜单在 Xfce 上仍然是法语)
# dpkg-reconfigure locales # locale LANG=en_US.UTF-8 LANGUAGE= 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=
作为普通用户:
$ dpkg-reconfigure locales -bash: dpkg-reconfigure : commande introuvable $ locale LANG=fr_FR.utf8 LANGUAGE= LC_CTYPE="fr_FR.utf8" LC_NUMERIC="fr_FR.utf8" LC_TIME="fr_FR.utf8" LC_COLLATE="fr_FR.utf8" LC_MONETARY="fr_FR.utf8" LC_MESSAGES="fr_FR.utf8" LC_PAPER="fr_FR.utf8" LC_NAME="fr_FR.utf8" LC_ADDRESS="fr_FR.utf8" LC_TELEPHONE="fr_FR.utf8" LC_MEASUREMENT="fr_FR.utf8" LC_IDENTIFICATION="fr_FR.utf8" LC_ALL
创建文件
.dmrc
创建此文件不起作用(我在 Xfce 中仍然有法语菜单)
$ cat ~/.dmrc [Desktop] Session=xfce4 Language=en_US.utf8 Layout=fr
答案1
OP 没有表明他们是否需要更改系统语言或用户语言。
假设您要更改的是用户语言,@markusN 的答案是:设置环境变量,仅针对登录的用户,使系统和其他用户不受影响。
export LANGUAGE=en_US.utf8
export LANG=en_US.utf8
export LC_ALL=en_US.utf8
显然,您需要首先生成您所引用的语言环境。
就我而言(xfce4.12),这个解决方案还不够:显然该脚本~/.i18n
没有作为 xfce 启动序列的一部分执行。
确保您将这些说明写在更合适的地方,这样它就会起作用。例如,假设您已经将它们写入~/.i18n
,您也可以写入此~/.config/xfce4/xinitrc
文件:
#!/bin/sh
if [ -f "$HOME/.i18n" ]; then
. "$HOME/.i18n"
fi
. /etc/xdg/xfce4/xinitrc
它在 Debian-10 上对我有用。
答案2
您可以通过在主目录中生成文件“.i18n”来更改语言。为此,请使用包含以下内容的文本编辑器:
export LANGUAGE=en_US.utf8
export LANG=en_US.utf8
export LC_ALL=en_US.utf8
...或者只需在生成文件的终端中运行此命令:
echo "export LANGUAGE=en_US.utf8
export LANG=en_US.utf8
export LC_ALL=en_US.utf8" > $HOME/.i18n
然后注销并登录。
2021 年编辑:
请参阅下面的 @mariotomo 答案中的附加“xinitrc”技巧。
答案3
标准:
sudo dpkg-reconfigure locales
手动逐步执行:
sudo nano /etc/locale.gen (uncomment the one you want)
sudo locale-gen
sudo update-locale LC_ALL=en_US.UTF-8
之后注销并登录。
使用 debianstretch/xfce 测试手动方式。
有关在 debian 中更改语言环境的完整文档可以在Debian 维基。
答案4
在里面Debian 文档我发现默认区域设置是在 中定义的/etc/default/locale
,因此如果您具有 root 访问权限并且您没有寻找为每个用户设置区域设置的方法,我认为这是最简单的方法...