软件翻译/Old:修订间差异

来自Ubuntu中文
跳到导航跳到搜索
Nsynet留言 | 贡献
无编辑摘要
Nsynet留言 | 贡献
无编辑摘要
第4行: 第4行:


具体的步骤如下:
具体的步骤如下:
(1)使用工具软件提取出代码中的字符串,生成的结果是pot(Portable Object Template )格式的文件,这是po(Portable Object)格式文件的模板,在将来程序可能配置成其他语种,其他语言的po文件都从它而来
#使用工具软件提取出代码中的字符串,生成的结果是pot(Portable Object Template )格式的文件,这是po(Portable Object)格式文件的模板,在将来程序可能配置成其他语种,其他语言的po文件都从它而来
(2)如果需要翻译中文版,则由pot格式生成po格式的初始文件ZH_CN.po,这时的po文件还没有翻译,与pot文件差别还不大
#如果需要翻译中文版,则由pot格式生成po格式的初始文件ZH_CN.po,这时的po文件还没有翻译,与pot文件差别还不大
(3)软件翻译者完成po文件中字符串的翻译,这是开源软件翻译的工作主体
#软件翻译者完成po文件中字符串的翻译,这是开源软件翻译的工作主体
(4)po格式文件翻译完成后,生成可以被程序使用的mo(Machine Object)格式的文件ZH_CN.mo
#po格式文件翻译完成后,生成可以被程序使用的mo(Machine Object)格式的文件ZH_CN.mo
(5)生成的mo格式文件存放在系统中,启动程序,中文版本的ZH_CN.mo被调用,软件摇身变成中文版了
#生成的mo格式文件存放在系统中,启动程序,中文版本的ZH_CN.mo被调用,软件摇身变成中文版了





2009年3月13日 (五) 23:48的版本

开源软件的国际化的原理

软件,总是从程序代码开始的。程序源代码中有很多的字符串,国际化的目的,就是把这些字符串从代码中取出来,翻译成其他语种。开源软件国际化有一种使用广泛的实现方式,整个过程会涉及到三种格式的文件:pot格式、po格式、mo格式,并有一套GNU工具完成其中的转化,其流程可以参见下面的图:

具体的步骤如下:

  1. 使用工具软件提取出代码中的字符串,生成的结果是pot(Portable Object Template )格式的文件,这是po(Portable Object)格式文件的模板,在将来程序可能配置成其他语种,其他语言的po文件都从它而来
  2. 如果需要翻译中文版,则由pot格式生成po格式的初始文件ZH_CN.po,这时的po文件还没有翻译,与pot文件差别还不大
  3. 软件翻译者完成po文件中字符串的翻译,这是开源软件翻译的工作主体
  4. po格式文件翻译完成后,生成可以被程序使用的mo(Machine Object)格式的文件ZH_CN.mo
  5. 生成的mo格式文件存放在系统中,启动程序,中文版本的ZH_CN.mo被调用,软件摇身变成中文版了


以一个例子说明开源软件的翻译

开源软件的翻译工具使用

使用网站launchpad.net做在线翻译

以上简要里描述了开源软件的翻译的大致过程,现在还有一种比较新颖的方式,那就是通过UBUNTU的网站launchpad.net做在线翻译。Launchpad.net 是由 Ubuntu 的母公司 Canonical 有限公司所架设,其功能之一就是提供了在线翻译的功能,不过建议大家只选择于 Launchpad 翻译 Ubuntu 上独有的软体,而其他的软体则直接到其社群参与翻译的工作,有关其介绍请参考Ubuntu的wiki,这里不再赘述。