| name | sync-translations |
| description | 日本語の翻訳ファイル(ja/translation.json)から他の言語ファイルに不足しているキーを同期し、READMEの変更も多言語READMEに反映する。翻訳キーの追加、翻訳ファイルの同期、i18nキーの更新、READMEの多言語同期時に使用。 |
| user-invocable | true |
翻訳ファイル同期スキル
日本語の翻訳ファイル(locales/ja/translation.json)をマスターとして、他の言語ファイルに不足しているキーを同期します。
対象言語
以下の15言語ファイルを更新対象とします:
| 言語 | ファイルパス |
|---|
| 英語 | locales/en/translation.json |
| 中国語(簡体字) | locales/zh-CN/translation.json |
| 中国語(繁体字) | locales/zh-TW/translation.json |
| 韓国語 | locales/ko/translation.json |
| フランス語 | locales/fr/translation.json |
| ドイツ語 | locales/de/translation.json |
| スペイン語 | locales/es/translation.json |
| イタリア語 | locales/it/translation.json |
| ポルトガル語 | locales/pt/translation.json |
| ロシア語 | locales/ru/translation.json |
| ポーランド語 | locales/pl/translation.json |
| タイ語 | locales/th/translation.json |
| ベトナム語 | locales/vi/translation.json |
| ヒンディー語 | locales/hi/translation.json |
| アラビア語 | locales/ar/translation.json |
実行手順
1. 日本語ファイルの読み込み
まず、マスターとなる日本語の翻訳ファイルを読み込みます:
locales/ja/translation.json
2. 不足キーの特定
各言語ファイルを1つずつ読み込み、日本語ファイルに存在するが対象言語ファイルに存在しないキーを特定します。
チェック対象:
- トップレベルのキー(例:
MemorySettings, PNGTuber)
- ネストされたオブジェクト内のキー(例:
PNGTuber.FileInfo)
3. キーの追加と翻訳
不足しているキーを以下のルールで追加します:
-
新しいセクション(オブジェクト)の場合:
- 日本語ファイルでの位置を参考に、適切な場所に挿入
- 前後のセクションを確認し、同じ順序で配置
-
既存セクション内のキーの場合:
-
値の設定(重要):
- 必ず対象言語に翻訳して設定する(日本語のまま入れない)
- UIラベル、説明文、エラーメッセージ等を各言語の自然な表現に翻訳する
{{count}}、{{min}}、{{max}} 等のプレースホルダーはそのまま保持する
- JSONの構造(ネスト、配列など)は保持する
4. 効率的な処理方法
- Node.jsスクリプト(
node -e)を使って不足キーの検出・マージを行うと効率的
- 1言語ずつ処理し、不足キーの検出 → 翻訳値の設定 → ファイル書き込みの流れで進める
- 最後に全言語の検証を行い、不足キーが0であることを確認する
注意事項
- 既存の翻訳は上書きしない: 既に存在するキーの値は変更しない
- JSON構造の保持: インデント(2スペース)のフォーマットを維持
- 順序の一貫性: 可能な限り日本語ファイルのキー順序に合わせる
- 翻訳品質: UIに表示される文字列なので、各言語の自然な表現を心がける
使用例
/sync-translations
これにより、日本語ファイルに追加された新しいキーが全15言語ファイルに翻訳付きで同期されます。
Part 2: 多言語READMEの同期
翻訳ファイルの同期に加えて、日本語の README.md の変更を docs/ 配下の多言語READMEにも反映します。
対象ファイル
| 言語 | ファイルパス |
|---|
| 英語 | docs/README_en.md |
| 中国語(簡体字) | docs/README_zh-CN.md |
| 中国語(繁体字) | docs/README_zh-TW.md |
| 韓国語 | docs/README_ko.md |
| ポーランド語 | docs/README_pl.md |
実行手順
- 差分の確認:
git diff origin/main -- README.md で日本語READMEの変更内容を確認する
- 各言語READMEの読み込み: 5つの多言語READMEファイルを読み込む
- 変更の反映: 日本語READMEの変更箇所を各言語に翻訳して反映する。以下のカテゴリに分類して対応:
- テキスト変更: 既存の説明文の更新 → 各言語の対応箇所を翻訳して更新
- セクション追加: 新しいセクションの追加 → 各言語に翻訳して同じ位置に挿入
- リンク追加: プロモーションサイト等のリンク追加 → リンクテキストを翻訳して追加
- HTML変更: スポンサー一覧等のHTML → そのまま同じHTMLを追加(翻訳不要)
注意事項
- パス参照の違い: docs配下のREADMEでは画像パスが
../public/ になる(ルートREADMEは ./public/)
- 言語リンクの違い: 各READMEのヘッダーにある言語切替リンクは言語ごとに異なるため変更しない
- コードブロック: コマンドやコード例は翻訳せずそのまま使用する
- 5言語を並行処理: Agentツールで5言語を並列に処理すると効率的
出力
処理完了後、以下の情報を報告します:
- 更新した言語ファイルの一覧
- 各ファイルに追加したキーの数
- 多言語READMEの更新内容の要約
- エラーが発生した場合はその詳細