添加语言¶
准备工作¶
如果您要翻译的语言尚未由其他人开始翻译,并且希望为该语言创建一组新文件,比如 'fr' (法语)。那么你必须首先按照 入门,特别是 安装 和 编译 部分中的指引,创建所需的环境。
该基础环境将用于:
- 从英文源创建一组新语言的翻译文件。
- 执行
make
命令将po文件中的已翻译文本转换为html文件,以便在本地进行测试。 - 同步其他贡献者添加的英文文本更改。
下面的例子展示了在Linux平台上为法语(语言代码 fr
)创建一组新文件的过程。 其他平台大同小异。
- 转到
https://developer.blender.org
为自己创建一个帐户,成为Blender组织的开发者/翻译者。 - 登录帐户并创建一个
todo
类型的任务,向 Subscribers 字段中的管理员发送消息,请求提交者权限,以便将更改传输到翻译团队的中央存储库。 - 打开控制台应用程序,比如Gnome终端模拟器。
- 将当前工作目录更改为
Makefile
实例所在的blender_docs
目录。
尝试使用Make流程创建英文HTML文件¶
如果存在之前的
build
目录,请确保已删除:make clean
将所有
rst
文件转换为pot
翻译文件:make gettext
创建
html
文件:make html
在此之后,就可以在本地查看按照提示的指令创建的html文件,例如:
xdg-open <path to your English manual>/blender_docs/build/html/index.html
设置本地配置文件¶
打开文本编辑器以输入以下文本,将语言代码更改为要翻译的语言:
1 2 3
language = 'fr' locale_dirs = ['locale/'] gettext_compact = True
将此文件保存为
Makefile
所在的blender_docs
目录中的conf.py
。执行以下shell命令,告诉
svn
在执行操作时忽略此文件:svn propset svn:ignore conf.py .
生成目标语言的文件集¶
使用以下命令检验当前的翻译库:
svn checkout https://svn.blender.org/svnroot/bf-manual-translations/trunk/blender_docs/locale
这会将存储库中所有可用的语言全部下载到你的本地的
locale
目录中。转到locale
目录,查看其中隐藏的子目录.svn
以及语言目录。下面你需要为所试图翻译的语言添加自己的文件集。从
blender_docs
目录中为fr
语言生成一组文件:make gettext sphinx-intl update -p build/locale -l fr
这些文件仍然只有英文,所有
msgstr
条目都是空白的。将新文件集提交到中央存储库:
cd locale svn add fr svn commit --username <your username> -m "Initial commit language set of files for French"
你并不需要保留所有其他语言,因此暂时删除语言环境目录:
rm -fr locale
我们将按照下一节的指引,下载这组新语言。
Note
建议你在
.bashrc
中为这些目录创建两个环境变量,以方便修改或编写用于翻译和查看结果的批处理/shell命令:export BLENDER_MAN_EN=$HOME/<directory to make file directory above>/blender_docs export BLENDER_MAN_FR=$BLENDER_MAN_EN/locale
新生成的文件将包含一些用于记录作者和修订日期等信息的占位符。如果你觉得这些替换工作重复繁琐,可以使用位于子目录
~/blender_docs/toos_maintenance
中的脚本change_placeholders.sh
。将其复制到本地bin
目录,并用你的具体详细信息替换文件中提及的参数值。然后在每次更改文件后,就可以执行以下命令,用你的个人详细信息、修订日期和时间更新文件,以及为你所处理的语言生成可以使用网页浏览器打开的html文件:$HOME/bin/change_placeholders.sh $BLENDER_MAN_FR make -d --trace -w -B -e SPHINXOPTS="-D language='fr'" 2>&1