前言
现在一直在使用CloudStack,期间坑无数。当然了,官方文档也有坑。很多处错误。
另外,发现越来越多的人在使用CloudStack时,太急躁了,往往一上来就想一下子把所有东西搞透,那怎么可能呢。
官方文档写的再烂,也有它存在的道理,恰恰好多人都不注重看文档。出错了都不知道从哪里查起。。。
当然了,在我看来,吹的再好的产品,文档写得不好,那也白瞎。
CS一直都存在的问题就是文档国际化跟不上,中文翻译也不全,这也许也是很多人不喜欢看文档的原因吧。
最近一直琢磨着翻一下官方文档,今天上www.transifex.com瞅了瞅cloudstack项目下的语言翻译进度。。。
妈呀,连中文库都没。。。只有英语和日语。

实在是忍无可忍了,遂申请创建了中文库,晚上得到回复。可以开工了。

一个人翻译能力毕竟有限,进度缓慢,遂写这篇文章,指导大家建立CS文档翻译环境。造福大家。
个人纯粹出于造福大家的目的

备注:
由于我也不懂sphinx,所以耽误了很多时间在摸索上面。

相关链接

要翻译的链接:

对应的本地化网站链接为:



准备
一、本地环境准备
RHEL/CentOS/Ubuntu/Debian:
#python要求2.6以上
#安装Sphinx及transifex-client
pip install sphinx babel sphinx-intl transifex-client gettext -ihttp://pypi.douban.com/simple/
#安装Shpinx主题
pip install sphinx_rtd_theme

二、获取Docs源码
#创建文档存放路径
mkdir /opt/CloudStack-docs/
cd /opt/CloudStack-docs/

1.github上面获得源码:
git clonehttps://github.com/apache/cloudstack-docs-install.git
git clonehttps://github.com/apache/cloudstack-docs-admin.git
git clonehttps://github.com/apache/cloudstack-docs-rn.git

配置
1.修改source/conf.py文件
添加和修改如下信息:
import sphinx_rtd_theme
html_theme = "sphinx_rtd_theme"
html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]

2.清空build目录
make clean

3.生成.pot文件
make gettext

4.生成.tx/config文件(用于transifex网站更新及推送)
#首先需要进行transifex客户端设置,需要有帐号,没有的可以去该网站注册
#tx init --user=<transifex-username> --pass=<transifex-password>
Creating .tx folder...
Transifex instance [https://www.transifex.com]:
...
#sphinx-intl update-txconfig-resources --pot-dir source/locale/pot --transifex-project-name apache-cloudstack-installation-rtd --locale-dir source/locale

5.创建zh_CN中文目录
mkdir –p source/locale/ja/LC_MESSAGES

6.下载最新的zh_CN po文件(方法一)
tx pull -l zh_CN
同步完成后,验证:
ls source/locale/zh_CN/LC_MESSAGES/

可以看到很多po文件,该文件可以直接进行翻译编辑。

7.自行建立zh_CN的po文件(方法二):
msginit --locale=zh_CN --input=source/locale/pot/index.pot --output=source/locale/zh_CN/LC_MESSAGES/index.po

使用如上命令,依次将source/locale/pot/目录下的所有pot文件,转换成po文件。
转换后即可直接进行po文件的翻译编写。

8.构建翻译后的文档
#将翻译好的po文件转换为mo文件
sphinx-intl  --locale-dir=source/locale/ --language=zh_CN  build

#创建单一的html文档(zh_CN)
make singlehtml SPHINXLANG=zh_CN

#创建html文档(zh_CN)
make html SPHINXLANG=zh_CN


验证

进入html文档目录
cd build/singlehtml
可将此目录拷贝至apache或nginx根目录,或者本地浏览查看。

如果没有安装apache或nginx,可临时使用“
python -m SimpleHTTPServer 80
”打开一个web服务器。



或者将翻译好的po文件上传至对应的如上链接中:

另,附上Sphinx项目流程图:

wKiom1NG09vDqbsmAADr-T5Nwo0565.jpg