ツールの説明

このツールは、AIを使用してJSONファイルを別の言語に翻訳します。i18next、next-intl、react-intl、vue-i18n、Angularなどのローカライズファイル(en.jsonなど)向けに作られていますが、あらゆるJSONで利用できます。JSONファイルを開いて言語を選択すると、同じキーと構造を保ったまま、テキストが翻訳されたファイルが生成されます。

ファイルはブラウザ内で読み込まれます。翻訳のために送信されるのは、各テキスト値と、そのキーのパス(例:checkout.button.pay)だけです。AIが各テキストの用途を把握できるよう、キーのパスも一緒に送信されます。キー、数値、ブール値、nullはファイルから外部に送信されず、そのまま保持され、翻訳された値が同じ場所に戻されます。

機能

  • オブジェクトや配列内のあらゆる階層にあるすべての文字列値を翻訳します。
  • キー、順序、数値、ブール値、nullを完全にそのまま保持します。
  • {name}{{count}}%s%1$dなどのプレースホルダーや、{count, plural, one {# item} other {# items}}のようなICUの複数形を保持します。
  • URL、メールアドレス、色、バージョン番号、primary_buttonのような識別子など、テキストではない値はスキップします。
  • 元のファイルのインデントを保持し、整形されていないJSONはそのまま整形されていない状態で保持します。
  • 結果のファイル名に翻訳先の言語を反映します。en.jsonde.jsonに、messages.en.jsonmessages.de.jsonになります。
  • 丁寧体またはくだけた表現がある言語では、どちらかを選択できます。

この入力をドイツ語に翻訳すると:

{
  "cart": {
    "title": "Your cart",
    "items": "{count, plural, one {# item} other {# items}}",
    "checkout": "Continue to checkout"
  },
  "maxItems": 20
}

次のようになります:

{
  "cart": {
    "title": "カート",
    "items": "{count, plural, one {# 件} other {# 件}}",
    "checkout": "チェックアウトに進む"
  },
  "maxItems": 20
}

ヒント

言語設定の下にあるバーには、送信されるテキストの量が表示されます。一度に翻訳できるテキストは最大10,000文字です。キーやその他の値は文字数に含まれません。大きなファイルはトップレベルのセクションごとに分割し、1つずつ翻訳してください。

説明的なキーを使用すると、より適切に翻訳されます。button.saveのようなキーがあると、「Save」が名詞ではなくボタンのラベルであることをAIが把握できます。

よくある質問

ファイルはアップロードされますか?

いいえ。ファイルはブラウザ内で解析され、AIに送信されるのはテキスト値とそのキーのパスだけです。

翻訳できなかったテキストはどうなりますか?

元のテキストが保持され、該当するテキストの数を知らせるメッセージが表示されます。そのため、ファイルは常に完全かつ有効な状態になります。