Fedora 本地化工作向导(不断完善中。。。)
简介
这份指南为翻译 Fedora 项目和文档提供一个快捷、简便、带有步骤的指导。您可以在本页面的末尾找到 FAQ。
Fedora 本地化项目的网址为 https://fedora.transifex.net/。
寻求帮助
您可以将问题张贴到 trans 邮件列表,还可以通过因特网中继聊天(IRC)在 irc.freenode.org 上的 #fedora-l10n 房间寻求帮助。
您还可以在 Transifex 上看到许多信息:http://help.transifex.net/。
成为 Fedora 翻译人员
最开始您需要注册以获得翻译材料的访问权限:
您的自我介绍非常重要。它能提升您被批准拥有写入权限的机会。您可能也想 新建一个 Bugzilla 账户 解决用户报告的 bug。
开始使用 Transifex
Fedora 使用 Transifex 管理本地化工作流程。这些步骤会指导您新建 Transifex 账户并加入翻译团队。
新建一个 Transifex 账户
- 访问 https://fedora.transifex.net/ 并点击右上角的 "Register"
- 填写表单点击 Register!您可以使用您的 Fedora 邮箱或者您新建 Fedora 账户时使用的邮箱。选择一个好的密码(如上所述)。不过如果您忘记了的话,密码可以被重置。
- 检查您的邮箱。您应该很快能收到一封邮件用于校验您的邮箱地址。其中会有一个链接 — 点击它!
- 现在您应该能够用您的资料登录 Transifex 了。
加入与您使用的语言有关的 Fedora 翻译团队
- 访问 Fedora 团队页面,它位于 https://www.transifex.net/projects/p/fedora/teams/。
- 如果您的语言在里面,点击它。
- 您应该能看到成员列表、领导人(协调人)。点击 "Join this team" 以请求加入团队。
- 团队领导人将会收到有关您的请求的提醒。他会检查您的信息,检查您是否已经做过自我介绍。
- 如果一切顺利,维护者会接受您的申请,您会接到通知。
这可能会花几小时或几天的工夫。如果时间更久,请点击 Transifex 上维护者的用户名,向他发送消息询问更多信息。
订阅邮件列表
- 访问 https://admin.fedoraproject.org/mailman/listinfo/trans 并订阅这个主要的翻译邮件列表。
- 等待确认邮件,它包括一个链接以确认您的订阅。点击链接确认。
检查 https://fedoraproject.org/wiki/L10N/Teams 看看是否有一个您的语言的专门的邮件列表。如果有,请也订阅那个列表。
介绍一下自己
- 在 https://fedoraproject.org/wiki/User:Username 创建一个个人页面。这对 Fedora 贡献人员互相认识并联络非常有用。您需要先 新建一个 Fedora 账户。
- 在 https://fedoraproject.org/wiki/L10N_Self_introduction 的指导下向 trans 邮件列表和您本地团队的邮件列表发布一个简短的个人介绍。请记得提及您的 FAS 用户名和您的语言。使用这些信息,您的语言领导人可以识别您并批准您为他的团队的翻译成员。
新建一个 Bugzilla 账户
如果您被要求使用 Bugzilla,请访问 https://bugzilla.redhat.com/bugzilla/createaccount.cgi ,新建一个账户。
新建一个 Fedora 账户
下面的步骤指导您新建一个 Fedora 账户。
账户申请流程
- 要注册 Fedora 账户,首先访问 https://admin.fedoraproject.org/accounts 选择新账户。
- 填写用户名、全名和电子邮件,并点击注册!。您的密码会用电子邮件发送给您。
- 回到 https://admin.fedoraproject.org/accounts 使用您的密码登录。欢迎页面会被呈现,它会提醒您 CLA 没有完成。
- 要签署 CLA,电话号码和邮政地址区域也需要填写。这些信息不能被其他人访问,除了 admin 群组。请参阅 Fedora 隐私权策略,位于 https://fedoraproject.org/wiki/Legal:PrivacyPolicy 。
- 其他区域会显示给其他访问用户页面的成员。
- 现在点击页面底部的保存!以保存您的信息。
签署 CLA 协议
您必须完成贡献人员许可协议,即 CLA。
- 访问 https://admin.fedoraproject.org/accounts 并使用您通过前面的过程获得的用户名和密码登录。
- 在欢迎页面,点击完成 CLA 或者访问 https://admin.fedoraproject.org/accounts/user/edit 。
- 如果电话号码和邮政地址信息还没有提供,编辑账户 (用户名) 页面会出现。否则 Fedora 贡献人员许可协议页面会被呈现。请仔细阅读协议内容,如果您乐意请点击我同意。
- 用户查看页面出现,显示 CLA: 区域为已签署 CLA。
开始翻译
软件包的可翻译部分呈现为一个或多个 PO 文件。一些项目可能也会使用其他的文件格式,例如 QT TS。 这些文件可以被放在许多版本控制系统(VCS)中的任一个中维护,例如 Subversion、Mercurial 和 git,具体选择依赖于其所在的项目。 它们可能托管在 fedorahosted.org 或者其他系统上。
本章会阐述如何翻译使用 Transifex 管理 L10n 工作流程的项目。翻译人员可以使用 web 界面或者命令行获取、提交文件。在您开始之前, 您必须首先准备保存您的 po 文件的目录。
列出所有可被翻译的Fedora子项目
- 访问 https://www.transifex.net/projects/p/fedora/ 。
- 通过选择合适的 Release,选择您想要翻译的 Fedora 项目类型。您应该能看到 Fedora 本身、Fedora 文档和其他上游项目。点击您选择贡献的 release 。例如,点击指向 https://www.transifex.net/projects/p/fedora/r/fedora-15/l/ja/ 的链接。
- 新页面会显示该 release 分语言的完整统计信息。选择您的语言。
- 这个页面显示这个 release 的所有可翻译的资源(即文件)。点击表格的一行以获取您感兴趣的资源的信息。
您可以把本页面加为书签以供日后参考。下面我们把它叫做“语言-Release”页面。这是一个示例 URL:
https://www.transifex.net/projects/p/fedora/r/fedora-15/l/ja/
在线翻译
最简单的翻译方式是使用 Transifex Web 编辑器。它有一个直观的界面,不需要您下载文件到您的系统再重新上传回来。
- 遵从上面的指导以定位您感兴趣的资源。
- 在弹出层上,您应该能看到一个 "Translate Now" 的按钮。如果您已经登录到 Transifex,并且是相应语言团队的一员,它应该是可以点击的。点击它!
- 您现在应该就在使用 Transifex Web 编辑器(代号是 Lotte)了。继续下去,想翻译多少就翻译多少,最后点击 "Save and Exit"。
注意:当您在线翻译时,文件会被自动“锁上”,其他人会了解到您的工作。绝不要翻译其他翻译人员已经上锁的内容 -- 您可能会重写他自己的工作!
离线翻译
If you prefer to translate offline, you can simply download & upload a translation file.
Before you download any files, we suggest you prepare a directory to hold your files. The described structure below is an example only, and your structure can be formed differently.
mkdir -p ~/fedora-translations/
获取并翻译项目
You can download a file to translate. You may need to communicate with other translators in your language team to avoid conflict. If you are not sure, please contact your language coordinator. Also locking a file will avoid potential conflicts.
- On your Release-Language page find the resource (table row) you want to translate and click on it for the popup to appear.
- Click on "Download for translation" button to download the file as the name of your choice to the directory you created in the previous section (e.g. abrt.po).
- Now the file is on your local workstation and ready for translation. Translate the file into your language eg. with a POeditor of your choice such as Lokalize or gtranslator.
- Check the integrity of your file before commit using
msgfmt -cvo /dev/null abrt.po
. If any error messages appear, correct it before commit.
Please note that all files offered from Transifex are already merged (msgmerged) with the POT files. This happens both when you download and when you upload files.
提交您的翻译内容
Once you finish translation work, commit the file using the same interface.
- Make sure you are logged in on Transifex.
- Navigate back to your Release-Language page and click on the resource you want to upload to. Be careful not to upload on a different resource.
- Click on the "Upload" button and locate your translated file on your local system, and Submit it. The interface might take some time (for large files up to one minute) and finally notify you that the file was submitted successfully. If you receive an error or some other message, please post it to the Fedora Localization Project mailing list so it can be addressed.
加入新文件
If one of the resources in the release is missing your translation, you should see it missing from the release page, and see a separate list at the bottom of the page as follows:
The following resources don't have any translations in Japanese: 1) python-fedora → python-fedora.pot
- Click on it -- it will take you to that resource's main page.
- Click "Add Translation"
- Choose your language and click "Translate Online".
- Go ahead and translate online a few or all the strings, and then "Save and Exit".
校对软件中的译文
从Fedora 12开始,尚在制作中的live映像可以提前下载,以便译员在用户界面下审阅和修正软件的译文。该live映像的制作大约会比Fedora软件译文定稿日(Fedora Software Translation Deadline)提前一周时间,直到最后的定稿日当天。该映像应该包含制作时所有已经提交的最新译文。
要在程序内校对您的译文,请采取如下步骤:
1. 更改目录至您要校对的软件包,例如:
cd ~/myproject/system-config-printer/
2. 使用msgmft命令,配合-o参数,将po文件转换成mo文件:
msgfmt -o system-config-printer.mo ja.po
3. 备份当前文件,并用新文件覆盖之。
su - cp /usr/share/locale/ja/LC_MESSAGES/system-config-printer.mo system-config-printer.mo-backup mv system-config-printer.mo /usr/share/locale/ja/LC_MESSAGES/ exit
4. 在程序内校对译文包中已经翻译的字符串,设置程序以翻译后的界面运行。
LANG=ja_JP.UTF-8 system-config-printer
翻译 Fedora 文档
翻译 Fedora 文档与翻译软件文本如出一辙,按照上述指导进行即可。请务必选择 "Fedora Documentation" 版本,该链接通向文档(Docs)专用的语言版本(Release-Language)页面。
举例说明:
https://fedora.transifex.net/projects/p/fedora/r/fedora-docs/
理解多文件结构 (Multiple Files Structure)
Fedora 文档主要使用 Publican。与软件翻译不同,帮助文档的结构包括多个po文件。每个文件对应文档中的一个章节,文件名通常和章节名称相符。这一结构非常有利于多名译员同时翻译同一份帮助文档。
新语种:创建 docbook-locales 文件
如果您正要首次创建某个新语种的译文,就必须首先翻译 docbook-locales 文件。该语种的所有文档都会用到这份文件。
- 在Transifex上找到 docbook-locales 项目: https://www.transifex.net/projects/p/fedora-docbook-locales/resource/locale/
- 如果您的语言未被列出,则添加之。
- 在 Bugzilla 上就 "Fedora Documentation" 项目下的 "docs-requests" 组件提交一个bug,其内容可以留空,或者只注明您要翻译的帮助文件名称。如有需要的话上传文件附件。如果在按照上面的指南提交po文件的时候遇到困难,可以在提交bug的时候附上该po文件。
- 在该bug的摘要(Summary)中填入下列内容: "[ja]: New language support request."
发布您的成果
当您的文档翻译已经准备好可以发布在 Fedora 文档网站 上时,请依照以下步骤提交一份正式的翻译发布请求:
- 在 Bugzilla 提交 针对 Fedora 文档产品 publishing-requests 组件的 bug。记得在描述区域注明您想要发布的文档的名称与语言版本。如果您想要一次发布多份文档,请为每份文档分别提交 bug。
- FAS 中 docs-publishers 群组的成员会被提醒有您的请求,然后会发布您的翻译。一旦翻译得到发布,他们会为您关闭 bug。
什么样的文档需要翻译
对每个 Fedora 发行版本来说最重要的文档有:
- docbook-locales
- Common Content for Publican(Publican 常规内容)
- Publican branding for Fedora
- Documentation website(文档网站)
- Release Notes(发行注记)
- Burning ISOs(刻录ISO)
- Live Image(Live 镜像)
翻译 Fedora 项目网站
Fedora 网站同样可以通过 Transifex 进行翻译。您可以在 Fedora Websites Release 找到所有 Fedora 网站相关的项目:
https://www.transifex.net/projects/p/fedora/r/fedora-websites/
下载、翻译、提交网站项目,流程和软件项目的一样。请注意新翻译不时就会拉取,根据发布状态,周期可能是每天或是每周一次。如果您注意到已经有一段时间没有更新您的翻译,您可以在网站团队的邮件列表上请求更新。通过添加 L10n 邮件列表到抄送,您可以告知其他团队您已经请求了更新。
加入新的 .po 文件
添加新的 po 文件的方式和软件项目的一致。如果您是有史以来第一次为一个 locale 新建翻译,您必须提醒 Fedora 网站团队把新语言添加到网站上。向 trans 邮件列表发布请求,以使网站团队可以把这个语言添加到网站的 Apache 配置中。
校对
一般说来,网站团队会提供测试站点以供校对。
翻译维基页面
Fedora Wiki 是项目相关信息的仓库。其中的一些页面需要被翻译以更好地服务 Fedora 社区。这一章会一步步地解释翻译维基页面的正确方法。
1.找到待翻译页面的英文版本
英语是 Fedora 项目维基的基础语言,所以首先需要有您要工作的页面的英文版本。(如果您要翻译的页面没有英文版本,参考下面的“处理没有英文版本的翻译”。)
如果页面顶部已经有一个语言模板,点击语言盒子右边的 edit 链接,跳到第 4 步;否则,继续看第 2 步。
如果您新建的页面没有英文版本,请新建一个新页面用于英文版本,添加模板 { { template|autolang } }
,
然后添加模板 {{needs english}}
。这会标识这个页面需要英文翻译,同时会新建一个基础页面。
2.在英文页面顶部加入语言框
编辑英文页面,在页面顶部添加模板 { { template|autolang} }:
{ { autolang|base=yes } }
base=yes 部分对于英文页面是必需的。保存这个页面。
3.创建语言模板
{ { template|autolang } } autolang 模板应该会提供一个链接让您设置好语言盒。点击它会出现一个编辑页面。 不要更改任何内容,保存页面。然后点击语言盒右边的 edit 链接。
4.加入您使用的语言到模板中
到这一步您应该有了一个编辑框,其中有模板语法类似:{ { lang|en|page=Base page name } }
在 lang 和 page= 之间的文本是语言代码的列表。把您打算翻译到的语言的代码添加到列表中去。 使用下面的列表确定正确的 MediaWiki 语言代码。
http://fedoraproject.org/wiki http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/languages/Names.php?view=markup
请保持列表的字母序:保持语言代码的列表依照代码的字母顺序排列。举个例子,这意味着德语(de)应该出现在英语(en)之前。
5.开始创作新页面
点击对应您的语言的红色链接以打开新页面。在页面顶部插入模板 { { autolang } },以使得语言列表出现在那里。 确定非英语的子页面的模板中不包含 base=yes。
6.移动已翻译的旧页面
对于不在正确位置的已翻译页面,请遵循以上的 1-4 步。然后复制新页面的标题(例如 Fedora Project Wiki/de)。 点击就业面顶部的 move 链接,把新页面名字粘贴到新标题区域。编辑新页面,在顶部添加 { { autolang } }。
FAQ (常见问题)
这里有一些有关本地化项目的常见问题。
我应该翻译法律声明吗?
不。您绝不要那么做。法律声明的准确措辞非常重要,不被律师认可的翻译版本非常冒险。Red Hat 是 Fedora 项目的法律代表和主要赞助商,它没有资源去对每一个翻译做交叉检查。当涉及到法律事务时,保持原始的英文声明原封不动即可。
我如何报告问题?
Before reporting (either opening a new ticket or the list), please search to see if there's an existing report opened. It sometimes help to ask in #fedora-l10n if there's a known issue at that exact moment. If not, please open a ticket describing what's wrong with the service in clarity. Include the nature of the problem, the project/resource, the time (in UTC) it happened and your Fedora username. If you suspect it might be a problem with the particular file you are uploading or the target file, include that information as well.
发现问题应向谁报告?
- 针对仅限于Transifex的问题,应该使用网站右侧的"Feedback"(反馈)按钮来进行汇报。
- 问题报告的范围包括:Transifex相关的疑问、可能的bug、请求增加新的功能、网站使用过程中遇到的问题(如网页反应很慢,无法登录等等)。
- 不要用Feedback功能汇报Fedora项目缺失、请求创建Fedora小组、Fedora协调员等问题。
- 针对仅限于Fedora L10n的问题,应该首先在IRC的#fedora-l10n频道里汇报,然后发信至trans-邮件列表。
- 内容可以涉及小组内部提问、发布版本、项目、Fedora的维护者、开发者等。
- 不要在此汇报Transifex的bug、功能请求、网站问题(如网页反应很慢、无法登录,或因发布版本中的项目缺失导致统计数据错误等)。
如何请求添加新的功能?
请参见上条,仅限于Transifex的问题。
我怎样新建一个团队? (#new-team)
See L10N Maintainer on how to become a maintainer of a new language.
我的翻译文件已经100%完成,但我测试程序的时候还是只能看到英文字符! (#missing-strings)
顺带一提,这没什么好担心的。别放在心上。问题可能出在如下几个方面:
- 字符丢失是因为开发人员没有将其标记为译文,因此POT文件里没有这些字符,于是PO文件里当然也不会有。开发者需要对相应译文使用gettext。
- 使用intltool的时候没有选中并包含相应的源文件。
- Transifex上的POT文件没有更新。组件(component)页面有POT文件的生成日期。如果该时间过于久远(超过几个小时,例如一两天以前),请通知管理员;否则没问题。
数据统计是实时的吗?多久更新一次? (#update-frequency)
Transifex项目页面上的数据统计总是实时的。发布页面则是每天更新一次。
如何在Transifex中添加新的模块? (#add-transifex)
- Navigate to https://www.transifex.net/projects/add/
- Follow the instructions from http://help.transifex.net/intro/projects.html
If you want the Fedora Localization Project to handle your translations (i.e. you are NOT an upstream project):
- Click 'Access Control' on your Project Details Page
- Outsource team control to "The Fedora Project"
- Send an email to fedora-trans-list and let the contributors know about the change. One of the Fedora L10n Editors will add your project to one of the Fedora releases.
Here are two more pages you might want to read:
- http://lists.fedoraproject.org/pipermail/trans/2011-January/008573.html
- http://lists.fedoraproject.org/pipermail/docs/2011-February/013109.html
我是开发者,怎样才能连.desktop文件一起翻译?
Transifex很快就会内置对.desktop文件的支持。
我找不到字符串"About this Computer",它在哪儿?
可以在AboutThisComputer找到。
Is the section of export regulations shown at the bottom of the fedoraproject.org/get-fedora page translatable?
No. This is purposely set up as non-translatable. Please refer to Non-translatable export regulations?.
If some strings change past string freeze, how do I request a string freeze breakage?
Email the trans mailing list!
What if I overwrite a wrong file?
If you have overwritten a wrong file in your own locale, try to find the old file on the developer's git repo (http://git.fedorahosted.org/git/) and replace the wrongly updated file with this file.
Even though these are measures to correct mistake, we strongly advice you to take extra care while submitting the translations via Transifex and make sure that you are uploading file in proper location under proper locale because some projects don't keep translation files under their CVS tree (do I say "Anaconda" ? oO)
I'm from the Docs Project. How do I make my Guide / Release Notes / other document available for translation?
If you keep you document in a git repository, see Setting up a document with Transifex to find out how to make it available to translators on Transifex.net.
本指南编写人员
以下人员参与完善本页面:
- Manuel Ospina
- Paul W. Frields
- Noriko Mizumoto
- Dimitris Glezos
- Diego Búrigo Zacarão
- Piotr Drąg
- Misha Shnurapet
- Petr Kovar