12.2.2. 国際化#
今のところ、Groongaには日本語でのドキュメントしかありません。1.2.2からgettextベースの Sphinx I18N feature を使ってドキュメントの国際化対応を始めました。この仕組みではベースの言語として英語を使い、日本語などの他の言語には英語からその言語に翻訳します。すべてのドキュメントはdoc/source/以下において、それをSphinxで処理します。
しかし、今のところ、doc/source/では日本語を使っています。そのため、まずは、doc/source/以下にある日本語のドキュメントを英語に翻訳する必要があります。ドキュメントを翻訳して、パッチを送ってくれるととても喜びます。
12.2.2.1. 翻訳の流れ#
doc/source/*.txtを更新したら、翻訳を始めます。
これが翻訳の流れです:
Sphinxをインストールします。(インストールされていない場合)
Groongaのリポジトリをcloneします。
.edit
ファイルを更新します。.edit
ファイルを編集します。.po
ファイルを更新します。HTMLファイルを生成します。
HTMLの出力を確認します。
翻訳が完了するまで、3.-7.を繰り返します。
翻訳作業の成果をGroongaプロジェクトに送ってください!
上記の流れを実行するコマンドラインです。詳細は以降のセクションで説明します。
# Please fork https://github.com/groonga/groonga on GitHub
% git clone https://github.com/${YOUR_GITHUB_ACCOUNT}/groonga.git
% ./autogen.sh
% ./configure --enable-document
% cd doc/locale/${LANGUAGE}/LC_MESSAGES # ${LANGUAGE} is language code such as 'ja'.
% make # *.edit are updated
% editor *.edit # translate *.edit # you can use your favorite editor
% make # *.po are updated
% cd ..
% make html
% browser html/index.html # confirm translation
% git add LC_MESSAGES/*.po
% git commit
% git push
12.2.2.2. Sphinxのインストール方法#
導入 を参照してください。
12.2.2.3. Groongaリポジトリのcloneの仕方#
はじめに、GitHub上のGroongaリポジトリをforkしてください。 groonga/groonga にアクセスして Fork ボタンを押すだけです。これで自分のGroongaリポジトリをcloneすることができます。:
% git clone https://github.com/${YOUR_GITHUB_ACCOUNT}/groonga.git
cloneした後はconfigureする必要があります。:
% cd groonga
% ./autogen.sh
% ./configure --enable-document
この作業は初回セットアップ時のみだけの作業です。
以上の作業で問題があった場合は、 https://packages.groonga.org/source/groonga/ にあるソースファイルを利用してもよいです。
12.2.2.4. .edit
ファイルの更新の仕方#
doc/locale/${LANGUAGE}/LC_MESSAGES
ディレクトリで make を実行すると .edit
ファイルを更新できます。(${LANGUAGE} は'ja'など自分の言語の言語コードに置き換えてください。):
% cd doc/locale/ja/LC_MESSAGES
% make
12.2.2.5. .edit
ファイルの編集の仕方#
edit
ファイルと po
ファイルはどちらも PO ファイル です。 .edit
ファイルは編集用で、 .po
ファイルはバージョン管理用です。
様々なツールで .edit
ファイルを編集できます。 .edit
ファイルは単なるテキストなので好きなエディタで編集できます。
以下は .edit
ファイルの編集に特化したエディタのリストです。.edit
ファイルの実体は .po
ファイルなので、これらのエディタを使うことができます。
12.2.2.6. .po
ファイルの更新の仕方#
.edit
ファイルを編集した後、 doc/locale/${LANGUAGE}/LC_MESSAGES
ディレクトリで make
を実行すると .po
ファイルを更新できます。(${LANGUAGE} は'ja'など自分の言語の言語コードに置き換えてください。)
% cd doc/locale/ja/LC_MESSAGES
% make
12.2.2.7. HTMLファイルの生成方法#
doc/locale/${LANGUAGE}ディレクトリで make html を実行すると更新した .po
ファイルを使ってHTMLファイルを生成できます。(${LANGUAGE} は'ja'など自分の言語の言語コードに置き換えてください。):
% cd doc/locale/ja/
% make html
全ての言語のHTMLファイルを生成するにはdoc/locale/ディレクトリで make html を実行します。:
% cd doc/locale
% make html
注釈
.moファイルは make html で自動的に更新されるので、.moファイルのことを気にする必要はありません。
12.2.2.8. HTML出力の確認の仕方#
HTMLファイルはdoc/locale/${LANGUAGE}/html/以下に出力されます。(${LANGUAGE} は'ja'など自分の言語の言語コードに置き換えてください。)好きなブラウザで出力されたHTMLを確認してください。:
% firefox doc/locale/ja/html/index.html
12.2.2.9. 翻訳の成果の送り方#
翻訳の成果はGitHubのpull requestかメールで送ってください。メールで送る場合はパッチでも .po
ファイルそのものでも構いません。
12.2.2.9.1. pull requestの送り方#
pull requestを送るためのコマンドライン:
% git add doc/locale/ja/LC_MESSAGES/*.po
% git commit
% git push
これでGitHub上でpull requestを送る準備ができました。あとは、GitHub上の自分のリポジトリのページへアクセスして Pull Request ボタンを押すだけです。
12.2.2.9.2. パッチの送り方#
パッチを作るためのコマンドライン
% git add doc/locale/ja/LC_MESSAGES/*.po
% git commit
% git format-patch origin/main
カレントディレクトリに000X-YYY.patchという名前のファイルができていると思います。これをGroongaプロジェクトに送ってください!
参考
コミュニティ に連絡先の情報があります。
12.2.2.9.3. .po
ファイルの送り方#
doc/locale/${LANGUAGE}/LC_MESSAGES/以下を.tar.gzや.zipなどでアーカイブにしてGroongaプロジェクトに送ってください!(${LANGUAGE} は'ja'など自分の言語の言語コードに置き換えてください。)こちらでアーカイブの中の内容をマージします。
参考
コミュニティ に連絡先の情報があります。
12.2.2.10. 新しい言語の追加方法#
新しい翻訳対象の言語を追加するコマンドライン:
% cd doc/locale
% make add LOCALE=${LANGUAGE} # specify your language code such as 'de'.
${LANGUAGE} は'ja'などの自分の言語の言語コードに置き換えてください。