ger*_*ijk 11 translation language environment-variables
我正在尝试以另一种语言运行应用程序作为我当前的环境。为了简单起见,我想更改ls.
这是我在整个地方阅读的内容(有关相关问题,请参见下文):设置LANG为受支持的语言环境之一,例如:
LANG=nl_NL.UTF-8 ls /nonexistent
Run Code Online (Sandbox Code Playgroud)
让它显示荷兰语 (NL) 输出。
但是,我仍然得到英文输出:
$ LANG=nl_NL.UTF-8 ls -al /nonexistent
ls: cannot access /nonexistent: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我现在的环境:
$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=
Run Code Online (Sandbox Code Playgroud)
可以肯定的是,我已经检查过:
支持语言环境:
$ grep nl_NL /usr/share/i18n/SUPPORTED
nl_NL.UTF-8 UTF-8
nl_NL ISO-8859-1
nl_NL@euro ISO-8859-15
Run Code Online (Sandbox Code Playgroud)生成区域设置:
sudo locale-gen nl_NL.UTF-8
Run Code Online (Sandbox Code Playgroud)
并sudo dpkg-reconfigure locales显示它已生成。
安装荷兰语语言包(已安装):
sudo apt-get install language-pack-nl
Run Code Online (Sandbox Code Playgroud)我还尝试了什么?
export同时设置LANG和LANGUAGE而不是在前面加上命令。LC_ALL。具有讽刺意味的是,一些(只有一些!)GUI 应用程序实际上是荷兰语的,但我根本没有配置它!

就这点而言,我使用的是 Kubuntu 12.04(.2)。
类似的问题(无济于事):
我的系统有什么问题?在哪里进一步调试?
Gun*_*son 12
因为优先于 LANG 的 LANGUAGE 已设置且未更改。
$ LANGUAGE=nl ls /nonexistent
ls: kan geen toegang krijgen tot /nonexistent: Bestand of map bestaat niet
Run Code Online (Sandbox Code Playgroud)
更多信息在GNU gettext 文档中:
出于消息处理的目的,GNU gettext 优先使用 LANGUAGE 而不是 LC_ALL 和 LANG,但您仍然需要将 LANG(或 LC_ALL)设置为主要语言;这是系统库的其他部分所需要的。