/var/log/smzksts

ITインフラと牧場についての備忘録

Apache CloudStack Docsの翻訳に参加してみた

 オープンソースの醍醐味の1つとして、自分もプロジェクトに協力できるという点があります。Apache CloudStackプロジェクトに協力する場合、コードの提供やバグのレポートも貢献の仕方のひとつですが、個人的にもっとも気軽に参加できるのはドキュメントの翻訳だと思います。手探りですが、実際にやってみましたので、情報共有したいと思います。

■翻訳への参加方法

Apache CloudStackのドキュメントは、Transifexというシステムで管理されています。まず前提として、ベースとなるEnglish版のドキュメントがあり、それに対する各国語版の翻訳作業が進められていくという形になっています。現在9つの言語への翻訳作業が行われていますが、日本語版はもっとも進捗率が高くなっています! とはいえ、まだまだ完成までは長い道のりですので、ぜひぜひご参加ください。

Transifex Apache CloudStack Docsプロジェクトページは下記のURLです。
https://www.transifex.com/projects/p/ACS_DOCS/

f:id:smzksts:20130409113203p:plain

翻訳に参加する場合は、まずあらかじめ、右上のリンクからサインアップをします。サインアップしたアカウントでログインしたら、Japanese (Japan)のリンクをクリックして、日本語版プロジェクトのページに移動してみましょう。

f:id:smzksts:20130409113206p:plain

翻訳作業は、ドキュメントを細かいモジュールに分割して行われています。

左がモジュールの名前、真ん中が進捗率、右側に最終更新日時が表示されます。

各列の一番上のバーをクリックすると、項目ごとにソートできます。進捗率が100%に達していないモジュールをクリックして、翻訳をしましょう。

 

 翻訳してみたい項目をクリックすると、↓の画面が出てきます。

f:id:smzksts:20130409113212p:plain

 [翻訳する]をクリックすれば、すぐに翻訳を開始できますが、大人数で作業している場合には同時に同じモジュールに対する翻訳作業をしてしまわないように、[一緒に作業しているほかのメンバーに知らせるためにこの翻訳をロック]できます。

ロックした項目は、項目名の横に鍵マークが付き、ほかのメンバーから編集されなくなります。ロックは48時間で自動解除されますが、編集が終わった際には随時ロックを解除したほうが良いでしょう。

 

[翻訳する]をクリックすると編集用のエディタ画面に切り替わります。

f:id:smzksts:20130409113215p:plain

翻訳対象のモジュールは、さらに複数のセクションに分かれており、左ペインで翻訳対象のセクションを選択、右ペインで編集作業が行えます。セクションの表示は上部の検索ボックスの右にある[未翻訳]のリンクで絞り込むと便利です。

翻訳は一から自力で行うこともできますが、右下の[提案]タブに翻訳の候補が表示される場合があります。提案はユーザーが入力するか、過去のバージョンの翻訳版や類似の翻訳箇所によって自動生成されるようですので、残念ながら新機能についての翻訳を行う場合には出て来づらいと思います(※すみませんが正確な仕組みを確認したわけではありません)。これを利用すると翻訳作業が大幅に楽になりますが、候補の左側に表示されているパーセンテージが100%以外の場合は、候補の生成に使用された文章と実際の翻訳対象の文章に差分がありますので、提案を利用する場合には注意してください。

作業の効率性だけではなく、過去バージョンのドキュメントとの整合性なども考慮すると、特に問題が無い限りは提案された訳をベースに編集していくのが良いと思います。

 

編集が終わったら、右上の保存ボタンをクリックして、翻訳した文章を保存しましょう。

また別のモジュールを翻訳したい場合、左上に表示されている編集中のモジュール名をクリックすると、左ペインに未編集のセクションが残っているモジュールが表示されます。

ただし、この方法では個々のモジュールの進捗状況の一覧性が無いため、進捗を一目で確認したい場合には、[Apache CloudStack Docs]のタイトルをクリックして、トップ画面に戻り、言語ごとのページに進みます(※もっと良いページ遷移方法をご存知の方は、教えてください…)。

■翻訳したドキュメントのビルド方法

翻訳したドキュメントは、HTMLPDFの形式にビルドできます。ビルドの方法は日本CloudStackユーザー会のMLストラトスフィアの川井氏が投稿してくださったTipsがとても参考になります。

http://ml.cloudstack.jp/pipermail/users/2013/000128.html

少し補足すると、私の環境で試した際には tx pullではen版しかダウンロードされなかったので、日本語版もダウンロードする場合には -l オプションで ja_JP(ja-JPではないので注意)を指定しました。

また、-s オプションを付けると進捗状況が見えてよいと思います。これらを組み合わせると↓のようになります。

tx pull -l ja_JP -s

このようにして、ダウンロードしたデータ(POファイル)をpublicanでビルドするのですが、1つ問題があります。publicanでのビルド時に—langsオプションを指定するのですが、ここで指定する値はTransifexからpullしたPOファイルが格納されているディレクトリを指定するので、このまま実行するなら --langs ja_JPとなります。しかし、publicanの仕様上 ja_JPではなくja-JPでないとビルドしたPDFで日本語フォントが正しく指定されず、文字化けします。(https://fedorahosted.org/publican/wiki/FontMatrix

ですので、ja_JPディレクトリをを丸ごと”cp -a ja_JP ja-JP”という具合に丸ごとコピーしてからpublicanでのビルドを行いましょう。(※シンボリックリンクではpublicanがエラーを出しました。cpする以外に何かいい方法をご存知の方は教えてくださいませ…。)

publican build --formats html,pdf --langs ja-JP --config publican-installation.cfg

これでビルドを実行し、少し待てばtmpディレクトリの下にビルドの成果物が出力されます。

図:HTML

f:id:smzksts:20130409114834p:plain

 

f:id:smzksts:20130409114849p:plain

図:ja_JPのままビルドするとPDFの日本語が文字化け…

f:id:smzksts:20130409114916p:plain

f:id:smzksts:20130409114929p:plain

図:ja-JPで指定すれば日本語フォントの表示もOK

f:id:smzksts:20130409114945p:plain

f:id:smzksts:20130409114957p:plain

以上です。ぜひ皆さんもご参加ください!