贡献

本页使用法语(fr)举例。不过其他语言只需替换语言代码即可。所以,要确保把这里的前缀 /fr 替换为你正在翻译的语言!

要查看当前可用的语言,可以查询在线界面,或浏览底层 git 代码库

简单贡献

为翻译工作做出贡献的首选方式是使用基于网络的界面,目前是一个 Weblate 实例。

任何用户都可以提出简单的改进建议,甚至无需登录。建议会在发布前将由翻译团队进行审核。

Weblate 还配备了新的帮助工具,以提高翻译的连贯性,如术语表

高级操作

如果由于某些原因,网络翻译界面不能很好地为您提供服务,您仍然可以从该界面下载 PO 文件,然后再回传。

Warning

如果在此期间发生了某些更新,您将不得不自行处理潜在的冲突。直接提交到 git 仓库进行翻译已不再可行。

Note

目前网络界面背后的工具存在一个已知的问题,它会导致上传和整合 PO 文件等繁重的处理过程耗时数分钟,整个过程中网页一直处于刷新模式。如果时间超过十分钟,甚至会出现服务器超时的错误信息。但通常不会出现实际问题,因此无需重新尝试上传 PO 文件,几分钟后刷新页面就可以在 Web 界面中看到贡献。

Note

首先,假定您已经已经有生成好的手册。如果还没有,请返回入门章节。

安装

语言文件

在包含文档源代码的目录,运行以下检出命令:

make checkout_locale

系统会提示你输入要下载的语言文件夹。在本例中,我们将使用 fr。按 回车 键将确认这一选择。

下载需要几分钟时间,但完成后会创建一个 locale/fr 子目录。

你的目录布局应该是下面这样的:

blender-manual
   |- locale/
   |  |- fr/
   |  |  |- LC_MESSAGES/
   |- manual/

Note

在使用命令行运行 Git 时(比如更新时),需要先将目录更改为 locale 而不是 blender-manual

PO 语言文件本身也可从网页界面的 文件 菜单下载,该菜单位于 手册 组件的每个专用语言页面上。

PO 编辑器

要编辑 PO 文件,您需要安装一个 PO 编辑器。我们建议您使用 Poedit,但任何 PO 编辑器都可以。

Note

对于 Linux 用户,您需要向您的发行版软件中心查询 Poedit 版本。这个编辑器只是一个推荐。还有其他一些编辑器,如 Kate 和 Kwrite,可以提供语法高亮和基本的文本编辑工具,如字母大小写转换。其他平台可以使用一些支持 PO 文件语法高亮的文本编辑器,或允许您创建自定义编辑器(如 Windows 上的 Notepad++)。

使用翻译文件编译文档

构建

现在你可以编译应用翻译后的手册了:

在 Linux 和 macOS 上运行:

make -e BF_LANG=fr

在 Windows 上运行:

set BF_LANG=fr
make html

现在,您将拥有一个应用了翻译的手册版本。

编辑翻译文件

现在,您可以编辑 PO 翻译文件,在 LC_MESSAGES 文件夹中,您有两个文件:

  • blender_manual.po --这是您将要编辑的主要翻译文件。

  • sphinx.po --此翻译文件小得多,包含网站主题的翻译。

要编辑这些文件,请在翻译编辑器中打开它们,即 Poedit。进入编辑器后,您将看到文本列表,每个项目都代表用户手册的某些部分。您可能需要调整编辑器以合理的方式对列表进行排序,例如 "按源"。

现在您可以选择一个未翻译的字符串,编辑器将有一个输入框来添加翻译。修改后的 .po 文件现在可以提交回网络界面。

Tip

确保使用翻译构建以捕获翻译过程中可能出现的任何语法错误。这些错误将在构建时显示为警告。

维护

追踪模糊字符串

手册更新后,过时的翻译将被标记为模糊。要追踪这种状况,可以使用我们为此创建的工具。

你可以运行下面的命令:

make report_po_progress

但是该命令仅会给出一个快速的摘要,要得到更多信息,可以运行:

python tools/translations/report_translation_progress.py locale/fr/

你得到一个文件列表,包含空或者模糊字符串的数量信息。如果你想要只是摘要,追加 -q 到上面的命令。更多选项,请参阅:

python tools/translations/report_translation_progress.py --help

更新 PO 文件

随着原始手册的修改,po 模板也需要不断更新。注意,这个步骤不是必须的,因为管理员会定期自动更新这些 po 文件。这一步用于同步所有语言手册为同一版本。不过,如果你需要手动更新 po 文件,可以使用下面的命令:

make update_po

更新后的模板就可以提交到版本库。

See also

有关如何添加新语言的指南,请参阅添加语言