|
|
|
KDE 是一个运行于 UNIX 的 X Window 上的桌面环境。KDE 支持 UNIX 下的国际化标准, 可以较方便地进行本地化。KDE 开发小组还特别针对各种语言的翻译者开发了一套系统, 使翻译者不用关心如何处理程序,模板的更新,以及待翻译文件的更新等问题。 简介KDE 的本地化包括三个方面:核心(库)文件、图形用户界面和用户手册翻译。 可以中文本地化的 KDE 程序必须支持国际化标准,另外, 中文应用程序所面对的使用汉语的用户有某些独特的习惯,对界面可能有一定的要求。 这要求程序在编写时必须考虑相应的要求。本指南主要针对翻译者,不涉及程序设计。 通过翻译 PO 文件(Portable Object,可移植对象),并将其编译成 MO 文件(Machine Object,机器对象) 可以进行 KDE 程序的界面翻译。PO 文件是由多个消息 ID(msgid)和消息翻译(msgstr)组成的。 消息 ID 是该消息的英文原文,可包括格式化字符串,也可以包含 XML 或 HTML 标记; 消息翻译是针对该原文的翻译,在本地化环境中,将使用该消息翻译来进行输出; 一个 PO 文件只能包含一种语言的翻译,不同语言的翻译在不同的 PO 文件中。 KDE 的手册是由 XML 标记语言编写的。KDE 2.1 以前,手册翻译需要直接对 XML 文件进行编辑, 难以跟踪和处理局部更新。而 KDE 2.1 以后,KDE 引入了 XML 到 PO 的转换程序, 可以将 XML 文件转换成 PO 文件。这样,翻译 KDE 手册也是通过翻译 PO 文件完成的。 KDE CVSKDE 是网络社区上的开发者的共同努力的结果,分布在世界各地的开发者协作进行开发。 而这种协作,是围绕着 KDE CVS(KDE 的代码集中存放)以及各种交流方式(如邮件列表、个人邮件等) 来开展的。 KDE 的翻译管理者应该学会使用 CVS,因为要翻译的 KDE PO 文件,要从 KDE 的 CVS 服务器上取得。 CVS 基本用法CVS 是一种用于分布式开发的代码仓库软件,它也是该软件的命令名。CVS 支持远程访问。 通过建立一个集中的代码存储,以及在该代码存储上进行版本管理,使得分布式开发者可以协同工作。 CVS 代码仓库中,代码以模块的形式组织起来,每个模块(按照开发者的意图)完成一种特定的功能。 模块可以是一个程序,可以是程序的一个功能模块,也可以是一个软件包。 登录CVS 远程访问时,必须进行验证并登录。登录 CVS 后,才可以进行各种操作。验证的方式有多种, 例如 SSH、RSH 和 PSERVER。常用的方式是 PSERVER。
当登录时,会提示你输入口令。 登录成功后,你的主目录下会生成一个文件 ~/.cvspass, 该文件包含该 CVS 服务器的 CVSROOT 信息和口令。如果你不执行 cvs logout 或删除该文件, 你下次只需指定服务器信息就可以执行各种命令,~/.cvspass 中的口令将被自动用于验证。 取得模块你必须从 CVS 中取得模块,才能开始工作 :-)
你可以注意到 checkout 可以略写为 co。cvs checkout 将在当前目录下创建模块的目录。 为了方便,你应该选择一个专门的目录来进行。 更新CVS 中的代码可能会被其他人修改,为了和 CVS 同步,你需要进行更新。
cvs update 命令可以简写成 cvs up。注意,更新应该在你 checkout 的代码树中进行。 你可以在cvs update 后指定要更新的文件的列表。 另外,update 时并不需要指定 -d 参数或 CVSROOT 环境变量。 你 checkout 的代码树中已包含该信息 :-) 如果你修改过某文件,而其他人又更新过该文件,则更新时可能会产生冲突。如果产生了冲突, CVS 会提示你,并且在文件状态上以C表明存在冲突,你应该编辑该文件,消除冲突。 提交修改如果你修改了代码,你可以将修改提交到 CVS 中,前提是你有写权限。在写之前, 你应该确定文件中不包含冲突。
你可以在 cvs commit 后指定要提交的文件的列表。 添加文件或目录你也许会向 CVS 中添加文件或目录,这可以通过 cvs add 命令来完成。
注意,目录没有版本,所以你只需 cvs add 就可以。而添加文件需要在 cvs add 后 cvs commit。 设置为了 CVS 正常有效地工作,你应该设置 CVS。特别是你使用调制解调器拨号上网时, 你应该设置压缩传输以减少数据传输量。 编辑 ~/.cvsrc ,增加如下内容:
其中,update -dP 非常重要。cvs -z4 设置压缩率为 4,过高的压缩率会对服务器造成额外的负担, 相对压缩率 4,对传输数据量影响很小。 KDE CVSKDE 匿名 CVS 服务器的信息为:
如果你是 KDE 开发者或翻译小组协调人,你应该在 cvs.kde.org 上有自己的帐号。 匿名 CVS 是从 cvs.kde.org 上同步过来的,有几小时的滞后。 I18N 模块KDE 翻译者主要关心 KDE CVS 中的 i18n 模块。
KDE I18N工作目录当从 kde-i18n 中 checkout 时,会将其它语言翻译也下载。为了节省时间, 你可以先 checkout 出 kde-i18n 目录后,用 Ctrl+C 停止,然后
上面的两个目录中,templates 是所有的模板文件,而 zh_CN 目录则是简体中文翻译。 当本地化目录中没有 PO 文件时,可以从模板文件(POT 文件)开始着手翻译, 并加翻译后的文件添加到 zh_CN 目录中。 zh_CN 目录下有 docs 和 messages 两个目录。docs 目录是 KDE 文档翻译目录, 其中是由文档翻译的 PO 文件生成的 docbook 文件。而 messages 是界面翻译目录。 zh_CN/messages 目录和 templates 目录的内容一一对应。 |
|