添加语言

准备

如果您要翻译的语言尚未由其他人启动,并且您希望为所需语言创建一组新文档,例如 "fr" (法语),那幺您必须首先使用您创建的环境,如 入门 中的指导,特别是 安装依赖关系编译手册

该基础环境将用于:

  • 从英语源文本创建一组新的翻译语言。

  • 执行 make 命令将po文件中的已翻译文本转换为html文件,以便在本地进行测试。

  • 同步其他贡献者添加的英文文本更改。

下面的例子展示了在Linux平台上为法语(语言代码 fr)创建一组新文件的过程。 其他平台大同小异。

  1. 进入 https://developer.blender.org 为自己创建一个帐户,并成为Blender组织的开发人员/翻译。

  2. 登录帐户并创建 todo 类型的任务,在 订阅者 文本框中填入管理员,请求提交权,以便将更改传输到翻译团队的中央存储库。

  3. 打开控制台应用程序,比如Gnome终端模拟器。

  4. 将当前工作目录更改为 Makefile 实例所在的 blender_docs 目录。

尝试以英语创建 HTML 文件的编译过程

  1. 如果存在之前的 build 目录,请确保已删除:

    make clean
    
  2. 将所有 rst 文件转换为 pot 翻译文件:

    make gettext
    
  3. 创建 html 文件:

    make html
    
  4. 在此之后,就可以在本地查看按照提示的指令创建的html文件,例如:

    xdg-open <path to your English manual>/blender_docs/build/html/index.html
    

在 HTML 菜单中创建语言条目

  1. 通过打开文件 ./resources/theme/js/version_switch.js (假设您处于 blender_docs 子目录),为 html 菜单中的语言创建条目。

  2. 查找 var all_langs = {..}; 中的语言表。

  3. 输入条目:"fr": "Fran&ccedil;ais",, ("fr": "Français")。 (注意Unicode字符。)

  4. 了解本地存储库中的更改:

    svn status
    
  5. 输入密码:

    svn commit --username <your username> -m "your comment"
    
  6. 将本地存储库升级到最新版本的更改,包括你自己刚刚完成的更改:

    svn update .
    

设置本地配置文件

  1. 打开文本编辑器以输入以下文本,将语言代码更改为要翻译的语言:

    1language = 'fr'
    2locale_dirs = ['locale/']
    3gettext_compact = True
    
  2. 将此文件保存为 Makefile 所在的 blender_docs 目录中的 conf.py

  3. 执行以下shell命令,告诉 svn 在执行操作时忽略此文件:

    svn propset svn:ignore conf.py .
    

生成目标语言的文件集

  1. 使用以下命令检验当前的翻译库:

    svn checkout https://svn.blender.org/svnroot/bf-manual-translations/trunk/blender_docs/locale
    

    这将将存储库中可用的所有语言集下载到驱动器的 locale 目录中。您可以转到 locale 目录,查看其中隐藏的子目录 .svn,以及语言目录。您需要添加自己的一组文件来表示要翻译到的语言。

  2. blender_docs 目录生成一组用于 fr 语言的文件:

    make gettext
    sphinx-intl update -p build/gettext -l fr
    

    这些文件仍然仅以英文显示,所有 msgstr 条目均为空白。

  3. 将新一组文件提交到中央存储库:

    cd locale
    svn add fr
    svn commit --username <your username> -m "Initial commit language set of files for French"
    
  4. 你并不需要保留所有其他语言,因此暂时删除语言环境目录:

    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