Debian/本地化

来自站长百科
跳转至: 导航、​ 搜索

Debian | Debian安装 | Debian使用 | Debian系统升级 | Debian常见问题

Debian 是国际化的操作系统,它所支持的语言和地区惯例的数目正在不断增加。接下来的部分列出了当前 Debian 对各种差异形式的支持,接着再讨论本地化,该过程负责定制你的工作环境,根据你所选的语言确定当前系统的输入输出方式,并按照你所在地区的惯例转化日期、数字、货币格式以及系统中其它相关方面。

本地化基础[ ]

定制系统的本地化和国家语言支持包括以下几个方面。

键盘本地化[ ]

Debian 发布版中包含了二十多种键盘布局方案。在 Woody 中重新配置键盘可使用:

  • dpkg-reconfigure --priority=low console-data # console
  • dpkg-reconfigure --priority=low xserver-xfree86 # XF4
  • dpkg-reconfigure --priority=low xserver-common-v3 # XF3

资料文件本地化[ ]

绝大多数 Debian 软件包都能使用 non-US-ASCII 字符,它们通过 glibc 中的 locale 技术,用 LC_CTYPE 环境变量来操作这些字符。

纯 8-bit 字符:应用于所有程序

其它拉丁字符集(例如:ISO-8859-1 或 ISO-8859-2):应用于绝大多数程序中

多字节语言如中文、日文或韩文:应用于较新的应用程序中

信息和文档的本地化[ ]

许多在 Debian 系统中显示的文本信息和文档被翻译成了各种译本,如出错信息、标准程序输出、菜单以及帮助页面。当前 Debian 支持德语、西班牙语、芬兰语、法语、匈牙利语、意大利语、日语、韩语、波兰语、葡萄牙语、汉语以及俄语帮助页面,可通过安装 manpages-LANG 软件包实现这些支持(此处 LANG 代表双位的 ISO 国家代码。使用 apt-cache search manpages-|less 获得可用的 Unix 帮助页面列表。)

要访问 NLS 帮助页面,用户必须将环境变量 LC_MESSAGES 设置成相应的字串。例如,要访问意大利语的帮助页面,需要将 LC_MESSAGES 设置成 it,这时 man 程序会在 /usr/share/man/it/ 目录下搜索帮助页面。

Locales[ ]

Debian 支持 locale 技术。locale 机制允许程序按照该地区惯例来提供输出和其它特殊功能如字符集、日期时间显示格式,货币符号等等。该机制使用环境变量来确定其相关的行为。例如,假设你同时在系统上安装了美式英语和法语 locales,许多程序的出错信息都以双语显示:

     $ LANG="en_US" cat foo
     cat: foo: No such file or directory
     $ LANG="de_DE" cat foo
     cat: foo: Datei oder Verzeichnis nicht gefunden

Glibc 以函数库的形式向程序提供该功能的支持。

Locales 简介[ ]

完整的 locale 描述包括三个部分:xx_YY.ZZZZ。

  • xx: ISO 639 个语言代码(小写)
  • YY: ISO 3166 个国家代码(大写)
  • ZZZZ: 编码集,例如,字符集或编码标志。

请注意,为了完成跨平台的兼容性,这个编码集部分可能被“内部标准化”。移除了所有 -,把所有字符都转化成小写的。典型的编码集:

  • UTF-8: 适合所有区域的 Unicode 码,通常是 1-3 个八进制数(新的事实上的标准)
  • ISO-8859-1: western Europe (de facto old standard)
  • ISO-8859-2: eastern Europe (Bosnian, Croatian, Czech, Hungarian, Polish, Romanian, Serbian, Slovak, Slovenian)
  • ISO-8859-3: Maltese
  • ISO-8859-5: Macedonian, Serbian
  • ISO-8859-6: Arabic
  • ISO-8859-7: Greek
  • ISO-8859-8: Hebrew
  • ISO-8859-9: Turkish
  • ISO-8859-11: Thai (=TIS-620)
  • ISO-8859-13: Latvian, Lithuanian, Maori
  • ISO-8859-14: Welsh
  • ISO-8859-15: western Europe with euro
  • KOI8-R: Russian
  • KOI8-U: Ukrainian
  • CP1250: Czech, Hungarian, Polish (MS Windows origin)
  • CP1251: Bulgarian, Byelorussian (MS Windows origin)
  • eucJP: Unix style Japanese (=ujis)
  • eucKR: Unix style Korean
  • GB2312: Unix style Simplified Chinese (=GB, =eucCN) for zh_CN
  • Big5: Traditional Chinese for zh_TW
  • sjis: Microsoft style Japanese (Shift-JIS)

询问基本编码系统术语的意思:

  • ASCII: 7 bits (0-0x7f)
  • ISO-8859-?: 8 bits (0-0xff)
  • ISO-10646-1: Universal Character Set (UCS) (31 bits, 0-0x7fffffff)
  • UCS-2: First 16 bit of UCS as straight 2 Octets (Unicode: 0-0xffff)
  • UCS-4: UCS as straight 4 Octets (UCS: 0-0x7fffffff)
  • UTF-8: UCS encoded in 1-6 Octets (mostly in 3 Octets)
  • ISO-2022: 7 bits (0-0xff) with the escape sequence. ISO-2022-JP is the most popular encoding for the Japanese e-mail.
  • EUC: 8 bits + 16 bits combination (0-0xff), Unix style
  • Shift-JIS: 8 bits + 16 bits combination (0-0xff), Microsoft style.

激活 locale 支持[ ]

Debian 并不在系统中编译所有可用的 locales,检查 /usr/lib/locale 确定哪个 locales(除了默认的“C”)已在系统上编译安装。如果所需的 locale 并不在其中,有两个解决办法:

  • 编辑 /etc/locale.gen 添加需要的 locale,然后以 root 身份运行 locale-gen 编译它。
  • 运行 dpkg-reconfigure locales 可以重新配置 locales 软件包。如果还没有安装 locales,locales 安装程序会调出 debconf 界面让你选择所需的 locales 并编译相关数据库

激活特定 locale[ ]

相关的环境变量按如下次序将特定 locale 值赋给程序:

LANGUAGE:该环境变量由一个用冒号分隔、以优先级排序的地区名称列表组成。仅当 POSIX 地区值与“C”地区值相异时才使用到它[在 Woody 中;在 Potato 版本中通常其优先级高于 POSIX locale]。(GNU 扩展名)

  • LC_ALL:如果为非空值,其值将作用于所有 locale 项目。(POSIX.1)通常为“”(空值)。
  • LC_*:如果为非空值,其值将作用于相应的 locale 项目。(POSIX.1)通常为“C”。

LC_*变量有:

  1. LC_CTYPE:字符分类和环境转换
  2. LC_COLLATE:校正命令
  3. LC_TIME:时间显示格式
  4. LC_NUMERIC:非货币型数字格式
  5. LC_MONETARY:货币符号
  6. LC_MESSAGES:常规信息、诊断消息和交互响应信息的格式
  7. LC_PAPER:纸张尺寸
  8. LC_NAME:姓名格式
  9. LC_ADDRESS:地址格式和地区信息
  10. LC_TELEPHONE:电话号码格式
  11. LC_MEASUREMENT:度量单位(公制或其它)
  12. LC_IDENTIFICATION:有关地区信息的元数据
  13. LANG:如果为非空值且 LC_ALL 也没有定义,则该值作用于所有没有定义的 LC_*地区项目。(POSIX.1)通常为“C”。

注意,有些应用程序(例如Netscape 4)忽略LC_*设置。

locale 程序可显示当前激活的地区设置和可用的 locale;(注意:locale -a 将列出系统已知的所有的 locales;这并不代表它们都已在系统中编译了!)

US(ISO-8859-1)例子[ ]

将下列语句添加到 ~/.bash_profile:

LC_CTYPE=en_US.ISO-8859-1
export LC_CTYPE

带Euro符号的 France(ISO-8859-15)的例子[ ]

将下列语句添加到 ~/.bash_profile:

     LANG=fr_FR@euro
     export LANG
     LC_CTYPE=fr_FR@euro
     export LC_CTYPE

按键盘本地化, 将键盘设置成 French "AZERTY"。安装 manpages-fr 包添加法语帮助页面。US 中的 Right-Alt 键在 Europe 中称为Alt-Gr,它与其它键组成的组合键可用于输出大量特殊字符,例如 Alt-Gr+E 可以输出欧元符号。

可使用类似的方法配置绝大多数西欧语言环境。

超越locales[ ]

当你第一次在系统上安装“国家语言环境”(national language environment)时,请注意使用 tasksel 或 aptitude 查看一下,在选择相关语言环境任务项时都有哪些软件包被选上了,这些选择信息非常有用特别是进行多语言设置时。如果遇到某些关联包与运行良好的系统上的某些软件发生冲突,就不要安装那些引起冲突的包。由于新装的软件比原来的软件具有更高的优先级,所以必须用 update-alternative 结合有关命令让系统恢复到原来状态。

有时为了获得更好的工作环境,仅通过 locale 来配置程序是不够的。language-env 软件包和 set-language-env命令可以大大简化你的工作。

参考来源[ ]

http://www.debian.org/doc/manuals/debian-reference/ch-tune.zh-cn.html#s-l10n

Debian使用手册导航

Debian安装

安装Debian GNU/Linux前准备 | 获取系统安装介质 | 使用Debian安装程序 | 启动进入新 Debian 系统 | 内核及其它信息 | 为Debian准备分区 | 安装指南 | 在Debian上安装Apache+Mysql+PHP

Debian使用

Debian 文件 | Debian基本操作 | Midnight Commander (MC) | 类Unix工作环境 | 类Unix文本处理 | 类Unix文件系统 | Debian生存命令 | Debian进阶 | Debian其他特性 | Debian下的Linux内核 | 启动系统 | Debian/活动记录及拷贝、创建子目录 | 差量备份、数据同步与系统冻结恢复 |常用命令与典型错误| 系统初始化 | 访问限制(Restricting access) | 刻录机 | 本地化

Debian升级

Debian系统升级 | 发行版升级到stable、testing或unstable

Debian技术支持

Debian技术支持

Debian常见问题

定义与概述 | 兼容性问题 | Debian 的软件系统 | Debian 的 FTP | Debian 的包管理系统 |Debian 的包管理工具 |更新系统 | Debian 与内核 | 定制 Debian GNU/Linux 的安装 |获取 Debian GNU/Linux 的支持 | 为 Debian 项目捐赠 | 作为商品销售Debian以及对其的展望