扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
3、 X11 国际化的历史和级别
早期的X11R4版本中,仅仅含有支持单字节和双字节字体的函数,所以它不能算是国际化的函数库。 此后,一个叫做"mltalk"的X协会成立并着手研究X窗口系统的国际化问题。 众多的X窗口系统供应商也 参与了该组织。 因为对国际化的研究刚刚开始,所以mltalk提出的了 一个基本问题: 什么是X窗口系统的国际化? 对它的解释也各不相同。 实际上,即使是现在,人们对国际化的定义仍然存在分歧,分歧的焦点 主要集中于对软件或系统怎样程度的国际化才算是真正的国际化。
按国际化的级别来分,下列几种情况都属于国际化:
1、语言可以切换。 在系统启动时可以设置某种语言。
2、使用不同语言的软件可以同时使用,在应用软件启动时可以设置某种语言。
3、使用不同语言的软件可以同时使用,而且应用软件的语言可以动态切换。
4、使用不同语言的软件可以同时使用,而且在应用软件中可以同时使用不同语言。
显然,第(4)种国际化方式是最完善的方式,其次是第(3)种,第(2)种 和第(1)种。 mltalk 最终决定使用第(3)种,原因是需要支持第(4)种的 X窗口系统供应商是少数的。 从目前Linux上的国际化情况看,支持第(2),(3)种的国际化软件是最常见的,但是第(4)种软件比较少见,而且应用的 意义不是很大。
基于上述观点,X11R5 的目的是,创建支持不用重新编译源代码就可以适应于语言环境的应用软件开发平台。 确切地说,就是国际化 的结构是基于标准C函数 setlocale的。 X11R5 确立了以下规范:
1、切换语言的机制。
2、与语言无关的输出接口。
3、与语言无关的输入接口。
4、资源文件的国际化。
5、X工具(Xt)的国际化。
此后,以X11R5 为基础,OSF/Motif 完成了国际化改造,并且成为被用户广泛接受的高层图形软件库,直到今天,一些大型的软件仍然使用 Motif 作为基础库使用,如Java,Netscape等。 X11R5的规范在制定的同时,为了检测规范的实用性,开发了两套样本应用,即 Xsi 和 Ximp。 两套应用在输入协议上和对locale的支持上都不同,从而为开发商带来了不便。
X11R6 解决了X11R5中存在的问题,主要的变化有,
1、定义了标准的输入协议。
2、Locale数据格式定义。
3、只采用了一种国际化工具的样本应用模块。
在输出上,X11R6增加了从由到左的的书写方式,以支持阿拉伯语和希伯来语等,增加了从上到下的书写方式,以支持中文和日文等的书写方向。
4、国际化标准组织
这里所说的国际化标准是国际化标准组织或一些相关组织制定的一些标准,而且这些标准也会随时间不同而经常更新。 国际化标准涉及到字符集,编码,字体处理,打印,文本绘制,用户界面,语言输入方法,数据交换,文化习俗,等方方面面。
下面列出一些制定国际化标准的组织:
o Li18nux(Linux I18n)
o ANSI(American National Standards Institute)
o POSIX(Portable Operating System Interface for Computer
Environments)
o ISO(International Standards Organization)
o IEEE(Institute of Electrical and Electronics Engineers)
o Unicode Consortium
o Open Group(X Consortium and OSF)
o X/Open and XPG
其中,ANSI/ISO 制定了使用C编程语言编写国际化软件的通用接口。 ISO 制定了字符集标准和其它影响locale名字的标准。 IEEE提供了一些国际化的通用库函数和设置管理不同locale的用户命令。 Open Group是Unix和X窗口系统的国际化标准设立组织。 Li18nux 是一个专门从事Linux上的软件国际化 规范制定的组织。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者