Sphinx を使用したドキュメントの翻訳

Sphinx は美しいドキュメントを作成するためのツールです。単純な reStructuredText 構文を使用し、多くのファイル形式で出力を生成できます。使用例を探さなくても、このドキュメントも Sphinx を使用して作成しています。Sphinx の使用に最適なサービスは Read the Docs サービスです。このサービスは、ドキュメントを無料で作成および公開できます。

ドキュメントの作成自体には着目していません。作成方法に悩んでいる場合は、Sphinx の Web サイトの指示に従ってください。ドキュメントの準備ができたら、翻訳はとても簡単です。Sphinx では、国際化 で適切に処理され翻訳に対応しています。少数のディレクティブの設定と、 sphinx-intl ツールを呼び出すことが重要です。

Read the Docs サービスを使用している場合は、Read the Docs から翻訳したドキュメントの作成を開始できます。Read the Docs の Localization and Internationalization は、必要とするものをほぼ包括しています。— 別のプロジェクトを作成し、その言語を設定し、翻訳としてメイン プロジェクトからリンクします。

あと必要なのは、ドキュメントの内容を翻訳することだけです。Sphinx は、各ディレクトリもしくはトップ レベルのファイルに対して PO ファイルを生成します。これは翻訳するファイルが非常に多くなることにつながります( gettext_compact の設定による)。初期コンポーネントとして index.po を Weblate にインポートしてから、コンポーネントの検出 アドオンを設定すると、他のすべてのコンポーネントを自動的に検出できます。

コンポーネント構成

コンポーネント名

Documentation

ファイル マスク

docs/locales/*/LC_MESSAGES/index.po

新しい翻訳のテンプレート

docs/locales/index.pot

ファイル形式

gettext 用の PO ファイル

翻訳フラグ

rst-text

コンポーネントの検出設定

翻訳ファイルを照合する正規表現

docs/locales/(?P<language>[^/.]*)/LC_MESSAGES/(?P<component>[^/]*)\.po

コンポーネント名のカスタマイズ

Documentation: {{ component|title }}

新しい翻訳用の、基礎となる翻訳ファイルの設定

docs/locales/{{ component }}.pot

ヒント

Sphinx で PO ファイルを 1 つだけ生成するには? Sphinx 3.3.0 以降で有効な生成方法:

gettext_compact = "docs"

この方法を使用して翻訳されたプロジェクトのドキュメント: