@@ -4,6 +4,68 @@ https://www.python.org/dev/peps/pep-0545/#repository-for-po-files
44
55Please see [ CONTRIBUTING.md] ( .github/CONTRIBUTING.md )
66
7+ ## AI Agentを使った翻訳作業
8+
9+ AI Agent に PO ファイルの翻訳と差分の作成を依頼し、人が Markdown でレビューします。
10+ 修正を繰り返して訳文が確定したら、Transifex に送信します。
11+ 例えば、次のように依頼して作業を始めます。
12+
13+ > tutorial からファイルを1つ選んで、既存訳の改善と未訳部分の翻訳をして。
14+ > 関連する翻訳も確認して文体や用語を選び、差分は Markdown にして見せて。
15+
16+ 1 . ** 対象と関連する訳例を確認する。**
17+ 対象の PO 全体と [ AGENTS.md] ( AGENTS.md ) 、[ 用語集] ( scripts/python_global_japanese-ja.csv )
18+ を読みます。用語集は ` translation_ja ` を基準に、` pos ` と ` notes ` で適用する文脈を確認します。
19+ 関連するチュートリアルやライブラリの説明も読み、文体と訳語を選びます。
20+ 訳例は ` .tx/config ` に登録された現行 PO から探し、未訳・fuzzy・obsolete のエントリーは採用しません。
21+
22+ 2 . ** 既存訳を改善し、未訳部分を翻訳する。**
23+ 誤訳、訳抜け、不自然な語順や読点を見直します。
24+ 原文、参照先、数式、コード例の計算式や出力を保持し、コード例では必要に応じてコメントを翻訳します。
25+ 既存訳に揺れがある場合は、候補・採用した訳語・判断理由・参照した PO をレビュー資料に記載します。
26+
27+ 3 . ** 差分を Markdown にする。**
28+ ` scripts/po_review.py ` で、対象ファイルの原文・変更前・変更後を並べた資料を生成します。
29+ 翻訳件数、主な修正理由、訳語の判断理由、検証結果も補足します。
30+ 例えば ` tutorial/floatingpoint.po ` の差分は次のコマンドで確認できます。
31+
32+ ``` sh
33+ python scripts/po_review.py --base HEAD tutorial/floatingpoint.po -o translation-review-floatingpoint.md
34+ ```
35+
36+ 4 . ** 人がレビューし、修正を反映する。**
37+ Markdown の該当箇所を示して、訳語や文章の修正を依頼します。
38+ AI Agent は PO を修正し、その都度 Markdown を再生成します。
39+ 再生成すると出力ファイルは上書きされるため、追記したレビュー補足は保持して戻します。
40+ 今後も適用する訳語の決定は用語集に、語順や読点などの翻訳ルールは ` AGENTS.md ` に反映します。
41+ 例えば、コマンドラインの文脈では「実引数」ではなく「引数」を使う、といった使い分けを残します。
42+
43+ 5 . ** 変更内容を検証する。**
44+ ` git diff --check ` 、PO の構文・重複チェック、reStructuredText の検査を行います。
45+ 参照、数式、コード、出力が保持されていることを確認し、必要に応じてコード例を実行します。
46+ 実施した検証と、HTML ビルドなど未実施の検証をレビュー資料に記載します。
47+ ` polib ` と ` sphinx-lint ` は ` python -m pip install polib sphinx-lint ` でインストールできます。
48+
49+ ``` sh
50+ git diff --check -- tutorial/floatingpoint.po
51+ sphinx-lint --enable all --disable line-too-long tutorial/floatingpoint.po
52+ ```
53+
54+ 6 . ** 確認済みの日本語訳を Transifex に送信する。**
55+ レビュー後に「このファイルの日本語訳を tx push して」と依頼します。
56+ Transifex CLI と認証を設定した環境で、対象ファイルだけを送信します。
57+ このリポジトリの ` .tx/config ` は ` <lang>/LC_MESSAGES/ ` 以下を参照するため、
58+ 例えば ` tutorial/floatingpoint.po ` は一時ディレクトリの
59+ ` ja/LC_MESSAGES/tutorial/floatingpoint.po ` にコピーします。
60+ 一時ディレクトリの ` .tx/config ` には、元の設定の ` [main] ` と対象リソースの節だけをコピーし、
61+ ` file_filter ` を ` <lang>/LC_MESSAGES/tutorial/floatingpoint.po ` にします。
62+ ** その一時ディレクトリに移動して** 次のコマンドを実行し、対象リソースの ` [ja] ` に対する
63+ ` Uploading file ` と ` Done ` を確認します。
64+
65+ ``` sh
66+ tx push --translation --languages ja
67+ ```
68+
769## ローカルの翻訳差分をレビューする
870
971` scripts/po_review.py ` は PO の差分を原文・変更前・変更後を並べた
0 commit comments