libc 5.4.x
及更高版本改进了对本地设置的支持。如果您的系统已为本地支持做好准备,您可以避免第 4 章 调整某些应用程序以适应我们的字母表 中描述的许多单独的程序设置。如果您安装了 wg15-locale
软件包,Debian 发行版支持本地设置。如果您想在带有 libc 5.4.x
的非 Debian 系统上设置本地支持,请阅读Locales mini-HOWTO。如果您安装了 glibc-X.X.X-XX-i386.rpm
软件包,RedHat 发行版也从 5.0 版本开始支持本地设置。带有 GNU libc 2 (libc 6.x) 的系统也支持本地设置。
如果您的 Linux 发行版不支持塞尔维亚拉丁文本地设置,请使用以下技巧
sl_SI
或 hr_HR
,其中描述了克罗地亚语和斯洛文尼亚语的相应设置。
root
身份登录系统。
/usr/share/i18n/locales
,或者 Slackware、Debian 或 Caldera 发行版上的相应目录。
% cp sl_SI
(或 hr_HR
) /usr/share/i18n/locales/sr_YU
% cd /usr/share/i18n/locales
sr_YU
中的以下行(列出的数字不一定准确,而是为了便于在文件中定位而给出的)
4: % Serbian Language Locale for Yugoslavia
6: % Address:
7: %
8: % Contact:
9: % Email:
10: % Tel:
12: % Language: sr
13: % Territory: YU
2117: yesexpr "<<(><d><D><y><Y><)/>><*><.>"
2118: noexpr "<<(><n><N><)/>><*><.>"
2122: int_curr_symbol "<Y><U><N><SP>"
2123: currency_symbol "<d><i><n>"
2148: "<u><t><o>";"<s><r><e>";/
2161: "<j><u><l>";"<a><v><g>";/
2171: "<a><v><g><u><s><t>";/
2177: d_fmt "<%><d><-><%><m><-><%><Y><.>"
localedef -c -i sr_YU -f ISO-8859-2 sr_YU
如果一切顺利,您应该拥有塞尔维亚拉丁文本地支持。 要激活它,您应该设置环境变量LC_ALL=sr_YU
此外,如果 sr_YU
不起作用,您可以尝试 sr_YU.ISO_8859_2
。 要检查本地支持是否正常工作,请输入date
您应该获得包含我们星期几和月份名称缩写的日期。 上述变量设置所有类别的本地支持。 您可以使用类别名称作为变量来设置单个类别。 本地类别是
Lokalna kategorija Primena
------------------ -------
LC_COLLATE Redosled sortiranja slova u stringu.
LC_CTYPE Klasifikacija i pretvaranje znakova.
LC_MESSAGES Prevod odgovora "da" i "ne".
LC_MONETARY Novcani format.
LC_NUMERIC Format ne-monetarnih numerickih vrednosti.
LC_TIME Format datuma i vremena.
LC_ALL Postavlja sve gorenavedene kategorije (i ima
prvenstvo u odnosu na sve).
LANG Postavlja sve kategorije, ali moze da bude
nadjacana bilo kojom pojedinacnom lokalnom
kategorijom.
某些程序(例如 bash
或 GNU emacs
)仍然需要特殊的设置,如第 4 章 调整某些应用程序以适应我们的字母表 中所述,但大多数程序应该无需额外的“监督”即可工作。 以前无法使用 8 位字符的程序(例如 nvi
)现在应该可以工作了。 随着基于 GNU libc 2 库的发行版的出现,本地支持应该会变得更加普及。 请注意,尽管 Red Hat Linux 5.0 包含 GNU libc 2,但本地支持不起作用。 要激活它,您需要执行以下脚本(忽略警告)
#!/bin/sh
localedef -c -i en_DK -f ISO-8859-1 en_DK
localedef -c -i sv_SE -f ISO-8859-1 sv_SE
localedef -c -i fi_FI -f ISO-8859-1 fi_FI
localedef -c -i sv_FI -f ISO-8859-1 sv_FI
localedef -c -i ro_RO -f ISO-8859-1 ro_RO
localedef -c -i pt_PT -f ISO-8859-1 pt_PT
localedef -c -i no_NO -f ISO-8859-1 no_NO
localedef -c -i nl_NL -f ISO-8859-1 nl_NL
localedef -c -i fr_BE -f ISO-8859-1 fr_BE
localedef -c -i nl_BE -f ISO-8859-1 nl_BE
localedef -c -i da_DK -f ISO-8859-1 da_DK
localedef -c -i kl_GL -f ISO-8859-1 kl_GL
localedef -c -i it_IT -f ISO-8859-1 it_IT
localedef -c -i is_IS -f ISO-8859-1 is_IS
localedef -c -i fr_LU -f ISO-8859-1 fr_LU
localedef -c -i fr_FR -f ISO-8859-1 fr_FR
localedef -c -i de_DE -f ISO-8859-1 de_DE
localedef -c -i de_CH -f ISO-8859-1 de_CH
localedef -c -i fr_CH -f ISO-8859-1 fr_CH
localedef -c -i en_CA -f ISO-8859-1 en_CA
localedef -c -i fr_CA -f ISO-8859-1 fr_CA
localedef -c -i fo_FO -f ISO-8859-1 fo_FO
localedef -c -i et_EE -f ISO-8859-1 et_EE
localedef -c -i es_ES -f ISO-8859-1 es_ES
localedef -c -i en_US -f ISO-8859-1 en_US
localedef -c -i en_GB -f ISO-8859-1 en_GB
localedef -c -i en_IE -f ISO-8859-1 en_IE
localedef -c -i de_LU -f ISO-8859-1 de_LU
localedef -c -i de_BE -f ISO-8859-1 de_BE
localedef -c -i de_AT -f ISO-8859-1 de_AT
localedef -c -i sl_SI -f ISO-8859-2 sl_SI
localedef -c -i ru_RU -f ISO-8859-5 ru_RU
localedef -c -i pl_PL -f ISO-8859-2 pl_PL
localedef -c -i lv_LV -f BALTIC lv_LV
localedef -c -i lt_LT -f BALTIC lt_LT
localedef -c -i iw_IL -f ISO-8859-8 iw_IL
localedef -c -i hu_HU -f ISO-8859-2 hu_HU
localedef -c -i hr_HR -f ISO-8859-2 hr_HR
localedef -c -i gr_GR -f ISO-8859-7 gr_GR