区域设置支持已在 libc 5.4.x
中更新。如果您的系统上的程序已为区域设置支持做好准备,您可以避免第 特定应用程序中的国际字符集 章节中描述的许多单独的程序设置。如果您安装了 wg15-locale
软件包,Debian 发行版就带有此支持。带有 GNU libc 2
(libc 6.x
) 的系统默认支持区域设置(请参阅本节后面关于 Red Hat Linux 5.0 版本的说明。)
如果您使用的系统不支持区域设置,您可以使用以下方法添加此类支持
libc 5.4.x
库。您可以从 Yggdrasil Computing 获取。localedef
程序。它应该随库一起提供。/usr/share/i18n/locales/
中,并将 charmap 源放在 /usr/share/i18n/charmaps/
中。localedef
程序以构建区域设置数据文件localedef -ci da_DK -f ISO_8859-1:1987 da_DK(非丹麦语读者请注意:您可以以相同的方式为其他区域设置构建区域设置数据文件。所有区域设置和 charmap 源都在 DKUUG 站点。)
要在具有区域设置支持的系统上启用对丹麦语区域设置的支持,您只需设置以下环境变量之一
LANG=da_DK或
LC_ALL=da_DK
如果 da_DK
不起作用,请尝试 da_DK.ISO_8859-1
。
两个环境变量都设置了所有单独的区域设置类别。您还可以通过使用类别的名称作为环境变量来设置单个区域设置类别。区域设置类别是
Locale category Application --------------- ----------- LC_COLLATE Collation of strings (sort order.) LC_CTYPE Classification and conversion of characters. LC_MESSAGES Translations of yes and no. LC_MONETARY Format of monetary values. LC_NUMERIC Format of non-monetary numeric values. LC_TIME Date and time formats. LC_ALL Sets all of the above (overrides all of them.) LANG Sets all the categories, but can be overridden by the individual locale categories.
在 Red Hat Linux 5.2 中,您可以通过在 /etc/sysconfig/i18n
文件中添加如下行来设置环境变量 LANG 和/或 LC_ALL
LC_ALL=da_DK
少数程序(如 bash
和 GNU emacs
)仍然需要如第 特定应用程序中的国际字符集 章节中所述的特定设置,但大多数应该无需进一步关注即可工作。诸如 nvi
等以前无法使用 8 位字符的程序现在应该可以工作了。
随着基于新的 GNU libc 2
的发行版的可用性增加,区域设置支持应该会变得更加普遍。请注意,尽管 Red Hat Linux 5.0 版本附带了 GNU libc 2
,但区域设置支持不起作用。您必须通过自己执行 localedef
来构建区域设置数据文件。您可以使用以下命令构建丹麦语区域设置数据文件
localedef -c -i da_DK -f ISO-8859-1 da_DK
从 glibc-2.0.7-4.i386.rpm
开始,区域设置数据文件已包含在库中,因此不再需要这样做。