ファイルインポートの設定

.JSON - JavaScript Object Notation (TMS)

本コンテンツはPhrase Language AIの機械翻訳により、英語から翻訳されています。

コンテキストメモコンテキストキー、および訳文文字数制限は、10 MB を超えるファイルでは処理されません。

.ARBファイルを処理するには、新規ジョブ作成時にJSONファイルの種類を選択します。

重要

タグに関する問題は、エクスポートエラーの一般的な原因です。ファイルをエクスポートする前に、品質管理チェックを実行して、タグとフォーマットが正しいことを常に確認してください。

ファイル形式

  • .JSON

インポートオプション

  • ICUメッセージを解析する

    ICUメッセージは自動的にタグに変換されます。セグメントにインライン要素が含まれている場合、そのセグメントのICU解析はスキップされます。インライン要素が含まれていないセグメントは通常通り解析されます。

  • HTMLサブフィルターを使用する 

    ファイルに含まれるHTMLタグをインポートします。タグは.HTMLファイルインポート設定で使用できます。

    有効にすると、HTML文字&<は、完了したファイルで&amp;&lt;に変換されます。

  • Phrase TMSタグに変換する 

    正規表現を適用して、指定されたテキストをタグに変換します。

  • 特定のキー(正規表現を使用)のみをインポート

  • 特定のキー(正規表現を使用)のみを除外

  • コンテキストメモ

    一致コンテンツはコンテキストノートに表示されます。

  • 訳文の最大長さ

    要素または各要素の最大訳文文長をインポートします。各セグメントの文字数制限は、エディタ内のコンテキストメモビューに表示されます。制限を超えた文字は赤で強調表示されます。

  • コンテキストキー

    TMコンテキスト(101%一致)を構成します(該当する場合)。

シンプルなJSON

JSONはJavaScript Object Notationの略です。当初はJavaScript専用に設計されていましたが、.XML、.YAML、.Propertiesなどと並行して、標準のExchangeファイル形式になりました。JSONは、中括弧で囲まれたキーと値のペアで構成されます。値は、文字列、数値、またはオブジェクト(中括弧で囲んだ 1 つ以上のキーと値のペア)のいずれかです。簡易JSONは単なる.JSONファイルであり、複数形化の目的を除き、ほとんどの値はプレーンの文字列です。この場合、値として配置された文字列が翻訳対象になります。

推奨インポート設定

JSON配列は、角カッコ[]で囲まれた名前と値のペアの一覧です。JSONオブジェクトは、中かっこ{}で囲まれた名前と値のペアの一覧です。

  • 特定のキー(正規表現を使用)のみをインポート: simple_key|nested.deeply.key

    • sample_collection キーに続く配列のすべての値をインポートするには:(^|.*/)sample_collection\[.*\]

    • pluralized_キーキーの後のオブジェクトのすべての値をインポートするには:(^|.*/)pluralized_key/.*

  • 特定のキー(正規表現を使用)のみを除外するには: unverified_key

  • コンテキストキー:

    • key_with_descriptionキーの値を持つには、 /key_with_descriptionを使用します

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • boolean_keyなどのJSONキーはコンテキストキーとして設定できません。

例:

{
  "boolean_key": "--- true\n",
  "empty_string_translation": "",
  "key_with_description": "Check it out!このキーは説明があります!(少なくとも一部のファイル形式において)
  "key_with_line-break": "This translations contains\na line-break.",
  "nested.deeply.key": "わあ、このキーはさらに深くネストされています。
  "nested.key": "このキーは名前空間の中にネストされています。
  "null_translation": null,
  "pluralized_key": {
    "one": "複数形が1つだけ見つかりました。
    "other": "わあ、%s 個の複数形があります!
    "zero": "複数形はありません。"
  },
  "sample_collection": [
    "最初のアイテム"
    "2番目のアイテム"
    "3番目のアイテム"
  ],
  "simple_key": "単純なメッセージを持つ単純なキーです。"
  "unverified_key": "この翻訳はまだ検証されておらず、検証を待っています。"(一部のフォーマットでは、このステータスもエクスポートされます)"
}

ネストされたJSON

ネストされたJSONは、他のJSONオブジェクトの値がかなり大きな部分を占めるJSONファイルです。シンプルなJSONと比較して、ネストされたJSONはオブジェクトを異なるレイヤーに分離することで、より高い明確さを提供し、メンテナンスを容易にします。

推奨インポート設定

JSON配列は、角カッコ[]で囲まれた名前と値のペアの一覧です。JSONオブジェクトは、中かっこ{}で囲まれた名前と値のペアの一覧です。

  • 特定のキーのみをインポート(正規表現を使用): key_with_line-break|simple_key

    • sample_collectionキーに続く配列の値をインポートするには: (^|.*/)sample_collection\[.*\]

    • pluralized_キーキーの後のオブジェクトのすべての値をインポートするには:(^|.*/)pluralized_key/.*

    • 最初のkeyキーの値をインポートするには: nested/deeply/key

    • 2番目のkeyキーの値をインポートするには: nested/key

    • レベルに関係なくkeyキーの値をインポートするには: (^|.*/)key

  • 特定のキー(正規表現を使用)のみを除外するには: unverified_key

  • コンテキストキー:

    • キーkey_with_descriptionの値を持つには: /key_with_descriptionを使用します。

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • boolean_keyなどのJSONキーはコンテキストキーとして設定できません。

例:

{
  "boolean_key": "--- true\n",
  "empty_string_translation": "",
  "key_with_description": "Check it out!このキーは説明があります!(少なくとも一部のファイル形式において)
  "key_with_line-break": "This translations contains\na line-break.",
  "nested": {
    "deeply": {
      "key": "このキーはさらに深くネストされています。"
    },
    "key": "このキーは名前空間内にネストされています。"
  },
  "null_translation": null,
  "pluralized_key": {
    "one": "複数形が1つだけ見つかりました。
    "other": "わあ、%s 個の複数形があります!
    "zero": "複数形はありません。"
  },
  "sample_collection": [
    "最初のアイテム"
    "2番目のアイテム"
    "3番目のアイテム"
  ],
  "simple_key": "単純なメッセージを持つ単純なキーです。"
  "unverified_key": "この翻訳はまだ検証されておらず、検証を待っています。"(一部のフォーマットでは、このステータスもエクスポートされます)"
}

React-IntlシンプルJSON

React-Intlは、主にReactで開発されたアプリケーション向けに、国際化(i18n)とローカライゼーションを簡素化するために設計されたJavaScriptライブラリです。デフォルトでは、React-Intlはローカライズされたコンテンツの保存に.jsファイルを使用します。

推奨インポート設定

JSON配列は、角カッコ[]で囲まれた名前と値のペアの一覧です。

  • 特定のキーのみをインポート(正規表現を使用): key_with_line-break|nested.deeply.key

    • sample_collection キーに続く配列のすべての値をインポートするには:(^|.*/)sample_collection\[.*\]

  • 特定のキー(正規表現を使用)のみを除外するには: unverified_key

  • コンテキストキー:

    • key_with_descriptionキーの値を持つには、 /key_with_descriptionを使用します

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • boolean_keyなどのJSONキーはコンテキストキーとして設定できません。

例:

{
  "boolean_key": "--- true\n",
  "empty_string_translation": "",
  "key_with_description": "Check it out!このキーは説明があります!(少なくとも一部のファイル形式において)
  "key_with_line-break": "This translations contains\na line-break.",
  "nested.deeply.key": "私は深くネストされたキーです。","
  "nested.key": "このキーは名前空間の中にネストされています。
  "null_translation": null,
  "pluralized_key.one": "Only one kitten found.",
  "pluralized_key.other": "わあ、あなたは %s 匹の子猫を飼っています!","
  "pluralized_key.zero": "You have no kittens.",
  "sample_collection": [
    "最初のアイテム"
    "2番目のアイテム"
    "3番目のアイテム"
  ],
  "simple_key": "シンプルなキー、シンプルなメッセージ、非常にシンプルです。","
  "unverified_key": "この翻訳はまだ検証されておらず、検証を待っています。"(一部のフォーマットでは、このステータスもエクスポートされます)"
}

React-Intl ネスト JSON

React-Intlは、主にReactで開発されたアプリケーション向けに、国際化(i18n)とローカライゼーションを簡素化するために設計されたJavaScriptライブラリです。デフォルトでは、React-Intlはローカライズされたコンテンツの保存に.jsファイルを使用します。

推奨インポート設定

JSON配列は、角カッコ[]で囲まれた名前と値のペアの一覧です。JSONオブジェクトは、中かっこ{}で囲まれた名前と値のペアの一覧です。

  • 特定のキーのみをインポート(正規表現を使用): key_with_line-break|simple_key

    • sample_collection キーに続く配列のすべての値をインポートするには:(^|.*/)sample_collection\[.*\]

    • pluralized_キーキーの後のオブジェクトのすべての値をインポートするには:(^|.*/)pluralized_key/.*

    • 最初のkeyキーの値をインポートするには: nested/deeply/key

    • 2番目のkeyキーの値をインポートするには: nested/key

    • レベルに関係なくkeyキーの値をインポートするには: (^|.*/)key

  • 特定のキー(正規表現を使用)のみを除外するには: unverified_key

  • コンテキストキー:

    • key_with_descriptionキーの値を持つには、 /key_with_descriptionを使用します

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • boolean_keyなどのJSONキーはコンテキストキーとして設定できません。

例:

{
  "boolean_key": "--- true\n",
  "empty_string_translation": "",
  "key_with_description": "Check it!このキーは説明があります!(少なくとも一部の形式ではそうです)\
  "key_with_line-break": "This translations contains\na line-break.",
  "nested": {
    "deeply": {
      "key": "こんにちは、このキーはさらに深くネストされています。"
    },
    "key": "このキーは名前空間内にネストされています。"
  },
  "null_translation": null,
  "pluralized_key": {
    "one": "複数形が1つだけ見つかりました。
    "other": "わあ、%s 個の複数形があります!
    "zero": "複数形はありません。"
  },
  "sample_collection": [
    "最初のアイテム"
    "2番目のアイテム"
    "3番目のアイテム"
  ],
  "simple_key": "シンプルなキーとシンプルなメッセージ。","
  "unverified_key": "この翻訳はまだ検証されておらず、待機中です。"(一部のフォーマットでは、このステータスもエクスポートされます)"
}

Chrome JSON i18n

Chrome拡張機能用にローカライズされた文字列は、通常messages.jsonという名前のJSONファイルに保存されます。ChromeのJSONファイルは、他のプラットフォームでローカライズに使用されるJSONファイルとは少し構造が異なります。Chrome JSONでは、翻訳が必要な文字列は、各ユニットのキーと値のペアの下にネストされたサブキー メッセージ に置かれます。各キーと値のペアに説明を追加することもできます。

推奨インポート設定

JSONオブジェクトは、中かっこ{}で囲まれた名前と値のペアの一覧です。

  • 特定のキー(正規表現を使用)のみをインポート:.*/message|.*/content

    • メッセージキーの最初の値だけをインポートするには:prompt_for_name/message

    • ユーザーキーに続くオブジェクトのすべての値をインポートするには:.*/user/.*

  • 特定のキー(正規表現を使用)のみを除外:.*/example

  • コンテキストメモ:

    • 説明キーの値を持つ場合:../description

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • prompt_for_nameなどのJSONキーをコンテキストメモとして設定することはできません。

  • Phraseタグに変換:\$[^\$]+\$

例:

{
  "prompt_for_name": {
    "message": "あなたの名前は何ですか?",
    "description": "ユーザーの名前を尋ねる"
  },
  "hello": {
    "message": "Hello, $USER$",
    "description": "Greet the user",
    "placeholders": {
      "user": {
        "content": "$1",
        "example": "Cira"
      }
    }
  },
  "bye": {
    "message": "Goodbye, $USER$.すぐに$OUR_SITE$に戻ってください!
    "description": "ユーザーにさよならを言う",
    "placeholders": {
      "our_site": {
        "content": "Example.com"
      },
      "user": {
        "content": "$1",
        "example": "Cira"
      }
    }
  }
}

国際化JSON

Go-i18nはGolang向けに設計された国際化ライブラリです。サポートされているローカライゼーションファイル形式には、JSON、YAML、TOMLなどがあります。go-i18nで使用されるJSONファイルは、他のローカライゼーション/国際化プラットフォームのJSONファイルとは異なり、go-18n JSONは一連のJSONオブジェクトからなるJSON配列として存在することが多いです。各JSONオブジェクトは、IDなどのキーで示される翻訳が必要な文字列を表します。

推奨インポート設定

JSONオブジェクトは、中かっこ{}で囲まれた名前と値のペアの一覧です。

  • 特定のキー(正規表現を使用)のみをインポート:.*/translation

    • 翻訳キーに続くオブジェクトのすべての値をインポートするには:.*/translation/.*

    • 翻訳キーに続く2番目のオブジェクトの値のみをインポートするには:.*\[2\]/translation/.*

    • 翻訳キーに続くオブジェクトのoneキーの値をインポートするには:.*/translation/one

    • 5番目の翻訳キーのoneキーの値をインポートするには:.*\[5\]/translation/one

    • 翻訳キーに続くオブジェクトのotherキーの値をインポートするには:(^|.*/)translation/other

    • 翻訳キーに続く2番目のオブジェクトのotherキーの値をインポートするには:.*\[2\]/translation/other

  • 特定のキー(正規表現を使用)のみを除外:.*/other

  • コンテキストキー:

    • IDキーの値を持つには:../id

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • oneなどのJSONキーはコンテキストキーとして設定できません。

  • Phraseタグに変換:\{\{[^\}]+\}\}

例:

[
{
    "id": "d_days",
    "translation": {
      "one": "{{.Count}} day",
      "other": "{{.Count}} days"
    }
  },
  {
    "id": "my_height_in_meters",
    "translation": {
      "one": "I am {{.Count}} meter tall.",
      "other": "I am {{.Count}} meters tall."
    }
  },
  {
    "id": "person_greeting",
    "translation": "Hello {{.Person}}"
  },
  {
    "id": "person_unread_email_count",
    "translation": {
      "one": "{{.Person}} has {{.Count}} unread email.",
      "other": "{{.Person}}には{{.Count}}通の未読のメールがあります。"
    }
  },
  {
    "id": "person_unread_email_count_timeframe",
    "translation": {
      "one": "{{.Person}}に過去{{.Timeframe}}の未読メールが{{.Count}}されています。"
      "other": "{{.Person}}に過去{{.Timeframe}}の未読メールが{{.Count}}されています。"
    }
  },
  {
    "id": "program_greeting",
    "translation": "Hello world"
  },
  {
    "id": "your_unread_email_count",
    "translation": {
      "one": "You have {{.Count}} unread email.",
      "other": "未読のメールが{{.Count}}件あります。"
    }
  }
]

i18n-node-2 JSON

I18n-node-2は、Express.jsと連携するNode.jsベースのライブラリです。I18n-node-2は、即時文字列抽出を提供してアプリケーションと統合します。I18n-node-2だけで、デフォルトの _(“…”) メソッドで翻訳待ちのStringsをラップできます。実行中、i18n-node-2は事前に定義されたロケールに応じて複数のJSONファイルを自動生成します。I18n-node-2は、自動生成JSONファイル形式を使用して翻訳可能データを保存します。翻訳の前に、ファイルの健全性チェックを行います。i18n-node-2は複数形化をサポートしているため、すべての変数が翻訳中に変更されないようにします。

推奨インポート設定

JSON配列は、角カッコ[]で囲まれた名前と値のペアの一覧です。JSONオブジェクトは、中かっこ{}で囲まれた名前と値のペアの一覧です。

  • 特定のキー(正規表現を使用)のみをインポート: simple_key|nested.deeply.key

    • sample_collection キーに続く配列のすべての値をインポートするには:(^|.*/)sample_collection\[.*\]

    • pluralized_キーキーの後のオブジェクトのすべての値をインポートするには:(^|.*/)pluralized_key/.*

  • 特定のキー(正規表現を使用)のみを除外するには: unverified_key

  • コンテキストキー:

    • key_with_descriptionキーの値を持つには、 /key_with_descriptionを使用します

    • 指定がないか欠けている場合は、親キー/子キーによって形成されます

    • boolean_keyなどのJSONキーはコンテキストキーとして設定できません。

例:

{
  "boolean_key": "--- true\n",
  "empty_string_translation": "",
  "key_with_description": "Check it out!このキーは説明があります!(少なくとも一部のファイル形式において)
  "key_with_line-break": "This translations contains\na line-break.",
  "nested.deeply.key": "私は深くネストされたキーです。","
  "nested.key": "このキーは名前空間の中にネストされています。
  "null_translation": null,
  "pluralized_key": {
    "one": "複数形が1つだけ見つかりました。
    "other": "わあ、%s 個の複数形があります!
    "zero": "複数形はありません。"
  },
  "sample_collection": [
    "最初のアイテム"
    "2番目のアイテム"
    "3番目のアイテム"
  ],
  "simple_key": "simple key, simple message, so simple.",
  "unverified_key": "この翻訳はまだ検証されておらず、検証を待っています。"(一部のフォーマットでは、このステータスもエクスポートされます)"
}
この記事は役に立ちましたか?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.