JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 11.1 国际语言环境指南     Oracle Solaris 11.1 Information Library (简体中文)
PDF
为本文档评分
search filter icon
search icon

文档信息

前言

1.  介绍

2.  Unicode 和 UTF-8 语言环境支持

3.  使用语言和语言环境

4.  桌面键盘首选项和输入法

5.  配置字体

6.  高级主题

代码集转换

iconv 实用程序

International Components for Unicode

uconv 实用程序

文件检查器 (fsexam)

自动编码查找器 (auto_ef)

国际化域名支持

GNU IDN 库

JPRS idnkit-2

打印增强功能

mp 实用程序

与其他平台的互操作性

NFS 服务器注意事项

文件系统注意事项

包含非 ASCII 文件名的归档

创建定制语言环境

基于系统语言环境创建新的语言环境

如何创建定制语言环境

从头开始创建语言环境

A.  可用语言环境

索引

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

国际化域名支持

国际化域名 (Internationalized Domain Name, IDN) 允许将非英文本机语言名称用作主机名称和域名。要使用非英文主机名称和域名,请将这些名称转换为 ASCII 兼容编码 (ASCII Compatible Encoding, ACE) 编码名称,然后将名称发送到 RFC5890 中指定的解析器例程。系统管理员还需要在系统管理应用程序不支持 IDN 的系统文件和应用程序中使用 ACE 名称。

有关更多信息,请参见 RFC 5890 应用程序中的域名国际化 (Internationalizing Domain Names in Applications, IDNA)。

图 6-1 Firefox 浏览器中的 IDN 示例

image:Firefox 浏览器中的 IDN 示例

Oracle Solaris 11 提供了两组 IDN 实现,包括库和关联的实用程序:GNU IDN 库和 JPRS (Japan Registry Services co., Ltd.) idnkit-2 库。某些应用程序也可能有其自己的 IDN 实现。例如,Firefox 和 Thunderbird 在名为 Necko 的网络协议组件中有其自己的 IDN 服务。

GNU IDN 库

GNU-libidn 是一个 GNU 项目,使用 GNU 宽通用公共许可证 (Lesser General Public License, LGPL) 版本 2.1 或更高版本许可。GNU-libidn 被各种 GNU/Linux 分发版广泛采用。因此,桌面和 GNOME 应用程序(如 pidgin(1))通常利用 GNU-libidn 实现 IDN 支持。

idn(1) 是国际化域名库的命令行接口。以下示例将采用 UTF-8 编码的主机名转换为 ACE 编码。然后,生成的 URL http://xn-fsqu00a.xn--0zwm56d 可用作 http://例子.测试 的 ACE 编码等效形式。

$ idn --quiet -a 例子.测试
xn-fsqu00a.xn-0zwm56d

GNU-libidn 可作为 library/libidn 软件包进行安装。有关这些选项的更多信息,请参见 idn(1) 手册页。


注 - Oracle Solaris 11 所提供的 GNU-libidn 的当前版本仅支持 IDNA2003 标准。


JPRS idnkit-2

idnkit-2 库是包含 idnkit-2 JPRS 公共许可证的开源 IDN 实现。专用的 idnkit-2 转换实用程序 idnconv(1) 提供了包含各种选项的 IDN 转换。有关用于控制转换详细信息的选项的更多信息,请参见 idnconv(1) 手册页。

利用 libidnkit(3) 中的转换例程,Oracle Solaris 11 还支持通过 iconv(3C) 接口进行 IDN 转换。iconv(1) 实用程序还可用于 ACE 与 UTF-8 之间的转换,如下表所示。

由于 IDNA2008 明确定义了两种操作模式的术语,即 lookupregistration,我们也将提供相应的 iconv 代码转换名称别名,即 IDNA2008-LOOKUPACE-ALLOW-UNASSIGNED 的别名)和 IDNA2008-REGISTACE 的别名)。

表 6-1 iconv IDN 代码转换

源代码
目标代码
ACE 或 IDNA2008-REGIST
UTF-8
ACE-ALLOW-UNASSIGNED 或 IDNA2008-LOOKUP
UTF-8
UTF-8
ACE 或 IDNA2008-REGIST
UTF-8
ACE-ALLOW-UNASSIGNED 或 IDNA2008-LOOKUP

ACEACE-ALLOW-UNASSIGNED iconv 代码转换名称(及其别名)具有以下含义:

以下示例显示了以 hostnames.txt 文件作为输入的 ACEUTF-8 的转换。输出转为标准输出。

$ iconv -f ACE -t UTF-8 hostnames.txt

有关 idnkit-2 库和 iconv 代码转换的信息,请参见 libidnkit(3) 和 iconv_en_US.UTF-8(5) 手册页。