Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fsfs-zh 的 gnu-sync 分支与 gnu.org 同步相关说明 #289

Closed
Hagb opened this issue Apr 27, 2019 · 10 comments
Closed

fsfs-zh 的 gnu-sync 分支与 gnu.org 同步相关说明 #289

Hagb opened this issue Apr 27, 2019 · 10 comments

Comments

@Hagb
Copy link
Contributor

Hagb commented Apr 27, 2019

#209

fsfs-zh 的 gnu-sync 分支(以下简称 fsfs-zh)与 gnu.org 同步相关说明(草案)

该写的还有很多没有写,或许还有很多不妥,后面再慢慢补充完善吧。

(gnu.org 处尚未翻译文章的)译文反馈参考流程

  1. 着手对一篇文章做此工作前,在 GNU CTT 的邮件列表发一封邮件以及在 fsfs-zh 反馈到GNU的文章 #209 中回复,表明你正在反馈这篇文章。
  2. 从 gnu 处获得 pot 文件(方法见于以下“获得 pot 文件”)。
  3. 基于 .pot 文件的英文原文进行审校,有些术语的翻译要与《GNU 术语中文参考翻译(草案)》和 fsfs-zh 的《翻译术语参考》一致,注意差异处理。审校过程中的修改在 fsfs-zh 通过 issue 或 PR 发出,由另一人审核这些修改。这个过程中要在 md 文件中写入标记来标注所对应的 pot 文件版本。
  4. fsfs-zh 处的修改合并后,将修改后的译文写入 pot 文件,保存为 po 文件,发至 GNU CTT 的邮件列表。
  5. (后续跟踪:)GNU CTT 做的修改以及之后译文的更新由 fsfs-zh 项目中的 GNU CTT 成员同步回 fsfs-zh。

具体细节

加入 GNU CTT 邮件列表

https://lists.gnu.org/mailman/listinfo/www-zh-cn-translators 处加入邮件 GNU CTT 的邮件列表,不出意外的话几天内就能加入。

获得 pot 文件

先在 #209 处找到 gnu.org 上该网页的位置(如《应用自由软件判断准则》位于 philosophy/applying-free-sw-criteria.html 即 https://gnu.org/philosophy/applying-free-sw-criteria.html),然后获得该网页的 pot 文件:对于该文章在 gnu.org 的目录,有一个名为 po/ 的子目录,里面包含着 po/ 目录的父目录的所有文章的对应 PO 文件和 PO 模板文件,例如在 philosophy/ 目录下有一篇文章,文件名是 applying-free-sw-criteria.html,对应的 pot 文件为 https://www.gnu.org/philosophy/po/applying-free-sw-criteria.pot

pot 文件的说明

参见:
《简体中文自由软件本地化工作指南》https://repo.aosc.io/aosc-l10n/zh_CN_l10n_1.2.2.pdf
《GNU 中文翻译组工作流程(草案)》的“PO 文件,PO 模板文件,如何编辑?”一节 https://www.gnu.org/server/standards/translations/zh-cn/workflow.zh-cn.html#three

审校

审校过程中,发现译文与 pot 文件不一致时,应将这部分译文、pot 文件的英文原文和 fsfs 的英文原文比对,如果两者的译文原文存在差异,那么应该遵循下面关于这些差异的说明:

英文原文的差异

可能有一下几种情况

  • 因 gnu.org 是网页而 fsfs 是书籍而造成的文本差异,在 fsfs-zh 和 gnu.org 处应分别处理。这种差异包括但可能不限于以下几种:
    • 对网站链接、电子邮件地址的处理上,网页常常不把地址显示出来,而 fsfs-zh 中一定要让地址(以文字)显示出来(否则打印出来是看不到的)。
    • 段落的划分偶尔会有差异(比如,某一段文字可能被分别划分为一段和两段).
    • 非正文部分中,两者很多地方不一样。
    • fsfs 中某些内容可能会被摆到脚注中。
  • 格式上的不同,fsfs-zh 主要是 markdown 格式,而写入到 gnu.org 的 po 文件中 msgstr 的则是 HTML 格式
  • gnu.org 译文更新而造成的内容上的差异。这时候,我们需要使 fsfs-zh 的译文基于新的原文,并将变更的译文按照实际情况更新到 fsfs-zh 和 GNU 的 po 文件。

版本的标注

在 fsfs-zh 的 md 文件里,为了方便跟踪英文原文的之后变化,应在 fsfs-zh 的译文中作版本标记。
某一篇译文与 GNU 同步后,应在这篇译文在 fsfs-zh 处的 md 文件的第一行开头加入标记。
如 pot 文件里是 POT-Creation-Date: 2018-01-01 05:58+0000,那么加入 md 文件的应该是 <!--(po)2018-01-01 05:58+0000(po)-->
po 文件里 PO-Revision-Date 处的内容由负责后续跟踪者写入 md 文件,如 po 文件里是 PO-Revision-Date: 2019-02-11 13:52+0800,那么 md 文件中应是<!--(po)2018-01-01 05:58+0000,2019-02-11 13:52+0800(po)-->

参考资料

《GNU 中文翻译组工作流程(草案)》 https://www.gnu.org/server/standards/translations/zh-cn/workflow.zh-cn.html
《www.gnu.org 网页翻译指南》 https://www.gnu.org/server/standards/README.translations.html
《PO文件处理技巧》https://www.gnu.org/software/trans-coord/manual/gnun/html_node/PO-Files.html#PO-Files
《简体中文自由软件本地化工作指南》https://repo.aosc.io/aosc-l10n/zh_CN_l10n_1.2.2.pdf

@Hagb Hagb changed the title fsfs-zh 的 gnu-sync 分支(以下简称 fsfs-zh)与 gnu.org 同步相关说明 fsfs-zh 的 gnu-sync 分支与 gnu.org 同步相关说明 Apr 27, 2019
@tonghuix
Copy link
Contributor

太赞了!辛苦你啦!终于有一篇经验总结了,这样可以让更多人参与其中了。不过我还是建议在库的根目录单独放一个 GNUSYNC.md 文件,这样可以协助版本管理,也方便在没有网络的时候随时查阅。可以在更加完善以后放进去。

关于翻译的基础,特别是 Po 和 gettext 的可以加个链接到《简体中文自由软件本地化工作指南》,这样可以避免重复讲很多特别基础的东西。

另外请补充几个必要的关键:

  1. 如何获取 pot 和 po 文件,CTT 的文档里可能有讲,但我觉得比较关键,最好再说一下。

2.需要 一个范例形式的讲解(Tutorial),体现出具体工作流程和大方向细节。比如以一篇文章为例,如《应用自由软件判断准则》,从获取此文的地址,pot 文件开始,然后如何翻译,如何在邮件列表里声明等等。。。

  1. 这里所写的还是大原则和经验总结,如果作为让后来者协助的文档的话,会有点不明所以。结构上可以稍微再整理一下。

@Hagb
Copy link
Contributor Author

Hagb commented Apr 30, 2019

如何获取 pot 和 po 文件,CTT 的文档里可能有讲,但我觉得比较关键,最好再说一下。

emmm…这里的说明是否不够详细?

需要 一个范例形式的讲解(Tutorial),体现出具体工作流程和大方向细节。比如以一篇文章为例,如《应用自由软件判断准则》,从获取此文的地址,pot 文件开始,然后如何翻译,如何在邮件列表里声明等等。。。

先前的同步和一般情况不一样…因为我是作为 CTT 成员来进行合并的,有很多不一样。

这里所写的还是大原则和经验总结,如果作为让后来者协助的文档的话,会有点不明所以。结构上可以稍微再整理一下。

确实…另外还有很多细节需要补充。

@tonghuix
Copy link
Contributor

关于 Pot 文件,你这里只写了“从 gnu 处获得 pot 文件”,从哪里获取,用什么方式获取,都没有提到。

范例还是要有的,可以假设你是普通的同步者而不是 CTT 成员。

@Hagb
Copy link
Contributor Author

Hagb commented Apr 30, 2019 via email

@tonghuix
Copy link
Contributor

没事慢慢来,可以先有个提纲

@tonghuix
Copy link
Contributor

tonghuix commented May 1, 2019

说实话,整个 CTT 的文档都乱的很,真心不靠谱。

@Hagb
Copy link
Contributor Author

Hagb commented May 1, 2019

要不我先放入 GNUSYNC.md 然后再慢慢改?

@tonghuix
Copy link
Contributor

tonghuix commented May 1, 2019

靠谱。但是范例还没有呢

另外我有一个想法,是不是先把 md 文件转成对应的 html 文件会对同步有帮助?

@Hagb
Copy link
Contributor Author

Hagb commented May 1, 2019

靠谱。但是范例还没有呢

是哦!但是我可能这周弄不了了……

另外我有一个想法,是不是先把 md 文件转成对应的 html 文件会对同步有帮助?

我个人觉得这样子不方便更新 md 文件,而写入到 po 文件似乎也没有方便多少(单纯的 html 和 md 格式差异方面的工作量其实不大)……

@tonghuix
Copy link
Contributor

tonghuix commented May 1, 2019

不着急。

@Hagb Hagb mentioned this issue May 10, 2019
14 tasks
Hagb added a commit to Hagb/fsfs-zh that referenced this issue May 24, 2019
Hagb added a commit to Hagb/fsfs-zh that referenced this issue May 24, 2019
tonghuix added a commit that referenced this issue May 27, 2019
@tonghuix tonghuix closed this as completed Jun 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants