From Fedora Project Wiki

Fedora 本地化工作向导(不断完善中。。。)

简介

这份指南为翻译 Fedora 项目和文档提供一个快捷、简便、带有步骤的指导。您可以在本页面的末尾找到 FAQ。

我们需要反馈!
如果您发现了这份手册里的拼写错误,或者您想到了改进本手册的方法,请直接编辑本页面或者直接向 Fedora 本地化项目的邮件列表发送邮件。如果您有改进文档的建议,请尽可能具体地阐述。如果您发现了错误,请在报告中包含章节编号和部分上下文以使我们能容易地定位。


Fedora 本地化项目的网址为 https://fedora.transifex.net/

寻求帮助

您可以将问题张贴到 trans 邮件列表,还可以通过因特网中继聊天(IRC)在 irc.freenode.org 上的 #fedora-l10n 房间寻求帮助。

您还可以在 Transifex 上看到许多信息:http://help.transifex.net/

成为 Fedora 翻译人员

最开始您需要注册以获得翻译材料的访问权限:

  1. 新建一个 Transifex 账户
  2. 订阅邮件列表
  3. 介绍一下自己
  4. 加入与您使用的语言有关的 Fedora 翻译团队

您的自我介绍非常重要。它能提升您被批准拥有写入权限的机会。您可能也想 新建一个 Bugzilla 账户 解决用户报告的 bug。

开始使用 Transifex

Fedora 使用 Transifex 管理本地化工作流程。这些步骤会指导您新建 Transifex 账户并加入翻译团队。

http://fedora.transifex.net/

新建一个 Transifex 账户

  1. 访问 https://fedora.transifex.net/ 并点击右上角的 "Register"
  2. 填写表单点击 Register!您可以使用您的 Fedora 邮箱或者您新建 Fedora 账户时使用的邮箱。选择一个好的密码(如上所述)。不过如果您忘记了的话,密码可以被重置。
  3. 检查您的邮箱。您应该很快能收到一封邮件用于校验您的邮箱地址。其中会有一个链接 — 点击它!
  4. 现在您应该能够用您的资料登录 Transifex 了。

加入与您使用的语言有关的 Fedora 翻译团队

  1. 访问 Fedora 团队页面,它位于 https://www.transifex.net/projects/p/fedora/teams/。
  2. 如果您的语言在里面,点击它。
  3. 您应该能看到成员列表、领导人(协调人)。点击 "Join this team" 以请求加入团队。
  4. 团队领导人将会收到有关您的请求的提醒。他会检查您的信息,检查您是否已经做过自我介绍。
  5. 如果一切顺利,维护者会接受您的申请,您会接到通知。

这可能会花几小时或几天的工夫。如果时间更久,请点击 Transifex 上维护者的用户名,向他发送消息询问更多信息。

订阅邮件列表

  1. 访问 https://admin.fedoraproject.org/mailman/listinfo/trans 并订阅这个主要的翻译邮件列表。
  2. 等待确认邮件,它包括一个链接以确认您的订阅。点击链接确认。

检查 https://fedoraproject.org/wiki/L10N/Teams 看看是否有一个您的语言的专门的邮件列表。如果有,请也订阅那个列表。

介绍一下自己

  1. https://fedoraproject.org/wiki/User:Username 创建一个个人页面。这对 Fedora 贡献人员互相认识并联络非常有用。您需要先 新建一个 Fedora 账户
  2. https://fedoraproject.org/wiki/L10N_Self_introduction 的指导下向 trans 邮件列表和您本地团队的邮件列表发布一个简短的个人介绍。请记得提及您的 FAS 用户名和您的语言。使用这些信息,您的语言领导人可以识别您并批准您为他的团队的翻译成员。

新建一个 Bugzilla 账户

如果您被要求使用 Bugzilla,请访问 https://bugzilla.redhat.com/bugzilla/createaccount.cgi ,新建一个账户。

新建一个 Fedora 账户

下面的步骤指导您新建一个 Fedora 账户。

账户申请流程

  1. 要注册 Fedora 账户,首先访问 https://admin.fedoraproject.org/accounts 选择新账户。
  2. 填写用户名、全名和电子邮件,并点击注册!。您的密码会用电子邮件发送给您。
  3. 回到 https://admin.fedoraproject.org/accounts 使用您的密码登录。欢迎页面会被呈现,它会提醒您 CLA 没有完成。
  4. 要签署 CLA,电话号码和邮政地址区域也需要填写。这些信息不能被其他人访问,除了 admin 群组。请参阅 Fedora 隐私权策略,位于 https://fedoraproject.org/wiki/Legal:PrivacyPolicy
  5. 其他区域会显示给其他访问用户页面的成员。
  6. 现在点击页面底部的保存!以保存您的信息。

签署 CLA 协议

您必须完成贡献人员许可协议,即 CLA。

  1. 访问 https://admin.fedoraproject.org/accounts 并使用您通过前面的过程获得的用户名和密码登录。
  2. 在欢迎页面,点击完成 CLA 或者访问 https://admin.fedoraproject.org/accounts/user/edit
  3. 如果电话号码和邮政地址信息还没有提供,编辑账户 (用户名) 页面会出现。否则 Fedora 贡献人员许可协议页面会被呈现。请仔细阅读协议内容,如果您乐意请点击我同意。
  4. 用户查看页面出现,显示 CLA: 区域为已签署 CLA。

开始翻译

软件包的可翻译部分呈现为一个或多个 PO 文件。一些项目可能也会使用其他的文件格式,例如 QT TS。 这些文件可以被放在许多版本控制系统(VCS)中的任一个中维护,例如 Subversion、Mercurial 和 git,具体选择依赖于其所在的项目。 它们可能托管在 fedorahosted.org 或者其他系统上。

本章会阐述如何翻译使用 Transifex 管理 L10n 工作流程的项目。翻译人员可以使用 web 界面或者命令行获取、提交文件。在您开始之前, 您必须首先准备保存您的 po 文件的目录。

Fedora 和上游项目
使用 Transifex,您可以同时向 Fedora 和其上游项目贡献力量。Fedora 自身项目中,Fedora 是维护和处理的上游。它们通常只用于 Fedora。

列出所有可被翻译的Fedora子项目

  1. 访问 https://www.transifex.net/projects/p/fedora/
  2. 通过选择合适的 Release,选择您想要翻译的 Fedora 项目类型。您应该能看到 Fedora 本身、Fedora 文档和其他上游项目。点击您选择贡献的 release 。例如,点击指向 https://www.transifex.net/projects/p/fedora/r/fedora-15/l/ja/ 的链接。
  3. 新页面会显示该 release 分语言的完整统计信息。选择您的语言。
  4. 这个页面显示这个 release 的所有可翻译的资源(即文件)。点击表格的一行以获取您感兴趣的资源的信息。

您可以把本页面加为书签以供日后参考。下面我们把它叫做“语言-Release”页面。这是一个示例 URL:

https://www.transifex.net/projects/p/fedora/r/fedora-15/l/ja/


image


image

在线翻译

最简单的翻译方式是使用 Transifex Web 编辑器。它有一个直观的界面,不需要您下载文件到您的系统再重新上传回来。

  1. 遵从上面的指导以定位您感兴趣的资源。
  2. 在弹出层上,您应该能看到一个 "Translate Now" 的按钮。如果您已经登录到 Transifex,并且是相应语言团队的一员,它应该是可以点击的。点击它!
  3. 您现在应该就在使用 Transifex Web 编辑器(代号是 Lotte)了。继续下去,想翻译多少就翻译多少,最后点击 "Save and Exit"。

注意:当您在线翻译时,文件会被自动“锁上”,其他人会了解到您的工作。绝不要翻译其他翻译人员已经上锁的内容 -- 您可能会重写他自己的工作!

image

离线翻译

如果您更喜欢离线翻译,您可以简单地下载并上传翻译文件。

在您下载任何文件之前,我们建议您准备一个目录存储您的文件。下面描述的结构只是一个示例,您的结构可以以不同的方式组织。

mkdir -p ~/fedora-translations/

获取并翻译项目

您可以下载一个文件来翻译。您可能需要和语言团队里的其他翻译成员沟通以避免冲突。如果您不确定,请联系您的语言的协调人。锁上一个文件也可以避免可能的冲突。

  1. 在您的 Release-语言页面找到您想要翻译的资源(表格行)并点击使弹出层出现。
  2. 点击 "Download for translation" 按钮下载文件到您之前新建的目录中,文件名可以自由选择(例如 abrt.po)。
  3. 现在文件已经在您的本地机器上,可以被翻译了。使用一个您喜欢的 PO 编辑器例如 Lokalize 或 gtranslator 把文件翻译到您的语言。
  4. 在提交之前使用 msgfmt -cvo /dev/null abrt.po 检查您的文件的完整性。如果有错误信息出现,请先修正之后再提交。

请注意 Transifex 提供的所有文件都已经和 POT 文件合并过 (msgmerged)。这发生在您下载和上传文件时。

提交您的翻译内容

一旦您完成了翻译工作,使用同样的界面提交文件。

  1. 确定您已经登录到 Transifex。
  2. 回到您的 Release-语言页面,点击您想要上传到的资源。小心不要上传到不同的资源中。
  3. 点击 "Upload" 按钮,定位您本地系统上已翻译的文件,提交它。提交界面可能会花一些时间(对于大文件而言多达一分钟)并最终提醒您文件成功提交。如果您收到一个错误或其他信息,请把它发布到 Fedora 本地化项目邮件列表以使它可以被解决。

加入新文件

如果 release 中有资源没有翻译,您应该能从 release 页面看到它的缺失,并且能在页面底部看到一个单独的列表,如下所示:

The following resources don't have any translations in Japanese:
1) python-fedora → python-fedora.pot
  1. 点击它 -- 它会带您到资源的主页面。
  2. 点击 "Add Translation"
  3. 选择您的语言并点击 "Translate Online"。
  4. 继续并且在线翻译一些或全部字符串,然后 "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 文件。该语种的所有文档都会用到这份文件。

  1. 在Transifex上找到 docbook-locales 项目: https://www.transifex.net/projects/p/fedora-docbook-locales/resource/locale/
  2. 如果您的语言未被列出,则添加之。
  3. 在 Bugzilla 上就 "Fedora Documentation" 项目下的 "docs-requests" 组件提交一个bug,其内容可以留空,或者只注明您要翻译的帮助文件名称。如有需要的话上传文件附件。如果在按照上面的指南提交po文件的时候遇到困难,可以在提交bug的时候附上该po文件。
  4. 在该bug的摘要(Summary)中填入下列内容: "[ja]: New language support request."

发布您的成果

当您的文档翻译已经准备好可以发布在 Fedora 文档网站 上时,请依照以下步骤提交一份正式的翻译发布请求:

  1. Bugzilla 提交 针对 Fedora 文档产品 publishing-requests 组件的 bug。记得在描述区域注明您想要发布的文档的名称与语言版本。如果您想要一次发布多份文档,请为每份文档分别提交 bug。
  2. FAS 中 docs-publishers 群组的成员会被提醒有您的请求,然后会发布您的翻译。一旦翻译得到发布,他们会为您关闭 bug。
发布翻译的其他方式
上面的步骤并不影响那些已经习惯于发布自己文档翻译的翻译团队。只要缺少必要人力或知识在 Fedora 文档网站上发布文档的翻译团队才需要在 Bugzilla 提交 bug 以发布他们的文档翻译。
成为 FAS 中 docs-publishers 群组的成员
如果您乐意帮忙处理发布过程,成为 FAS 中 docs-publishers 群组的成员,请联系 文档项目。为加速整个过程,建议翻译团队中至少有一个成员也在 FAS 的 docs-publishers 群组中以处理团队的发布请求。

什么样的文档需要翻译

对每个 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 项目的法律代表和主要赞助商,它没有资源去对每一个翻译做交叉检查。当涉及到法律事务时,保持原始的英文声明原封不动即可。

我如何报告问题?

在(通过开启新的 ticket 或发到邮件列表)报告之前,请先搜索查看是否已经有问题报告开启。如果当时有已知问题,在 #fedora-l10n 房间询问有时候也有帮助。如果没有,请开启一个 ticket 详细描述服务中的问题。包含问题的本质、项目/资源、问题发生时间(UTC)和您的 Fedora 用户名。如果您怀疑问题和您在上传的特定文件或者目标文件有关,也请包含相应信息。

发现问题应向谁报告?

  • 针对仅限于Transifex的问题,应该使用网站右侧的"Feedback"(反馈)按钮来进行汇报。
    • 问题报告的范围包括:Transifex相关的疑问、可能的bug、请求增加新的功能、网站使用过程中遇到的问题(如网页反应很慢,无法登录等等)。
    • 不要用Feedback功能汇报Fedora项目缺失、请求创建Fedora小组、Fedora协调员等问题。
  • 针对仅限于Fedora L10n的问题,应该首先在IRC的#fedora-l10n频道里汇报,然后发信至trans-邮件列表。
    • 内容可以涉及小组内部提问、发布版本、项目、Fedora的维护者、开发者等。
    • 不要在此汇报Transifex的bug、功能请求、网站问题(如网页反应很慢、无法登录,或因发布版本中的项目缺失导致统计数据错误等)。

如何请求添加新的功能?

请参见上条,仅限于Transifex的问题

我怎样新建一个团队? (#new-team)

请参阅 L10N 维护人员 查看如何成为一个新语言的维护人员。


我的翻译文件已经100%完成,但我测试程序的时候还是只能看到英文字符! (#missing-strings)

顺带一提,这没什么好担心的。别放在心上。问题可能出在如下几个方面:

  • 字符丢失是因为开发人员没有将其标记为译文,因此POT文件里没有这些字符,于是PO文件里当然也不会有。开发者需要对相应译文使用gettext。
  • 使用intltool的时候没有选中并包含相应的源文件。
  • Transifex上的POT文件没有更新。组件(component)页面有POT文件的生成日期。如果该时间过于久远(超过几个小时,例如一两天以前),请通知管理员;否则没问题。

数据统计是实时的吗?多久更新一次? (#update-frequency)

Transifex项目页面上的数据统计总是实时的。发布页面则是每天更新一次。


如何在Transifex中添加新的模块? (#add-transifex)

  1. Navigate to https://www.transifex.net/projects/add/
  2. 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):

  1. Click 'Access Control' on your Project Details Page
  2. Outsource team control to "The Fedora Project"
  3. 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.

http://fedora.transifex.net/


Here are two more pages you might want to read:

我是开发者,怎样才能连.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