用語

General Translation のライブラリで使われる主要用語のガイド

概要

本ドキュメントでは、General Translation のライブラリで使用されるさまざまな概念を説明するために、多様な用語を用います。

このページでは、使用する主要な用語の一部を紹介します。

重要な用語集

ロケール

ロケールは、特定の言語を識別するためのコードです。

詳しくは、ロケールコード文字列のページをご覧ください。

たとえば、en-US は英語(米国)のロケールです。

本ドキュメントでは、「ロケール」と「言語コード」という用語をしばしば同義で使用します。

言語

コードでの利用という文脈で「言語」と言う場合、実際には locale(または言語コード)を指します。

たとえば「setLocale の呼び出しで言語を指定してください」と言うときは、実際には「setLocale の呼び出しで locale を指定してください」という意味です。

「French はサポートされている言語です」と言う場合は、実際には「fr はサポートされている locale です」という意味です。

dictionary

dictionary は、(入れ子構造を含む可能性のある)key-value の組をまとめた JSON ファイルです。

key は参照として使用され、value は文字列で、元の言語または翻訳後の言語のいずれかになります。

{
  "greeting": "こんにちは、世界!",
  "farewell": "さようなら、世界!",
  "dashboard": {
    "title": "ダッシュボード",
    "description": "ダッシュボードへようこそ。"
  }
}

キーは人間が読める参照名で、アプリ内の翻訳済みコンテンツを参照するために使用されます。

これらのdictionaryは、構造や使い方が一般的で、他のi18nライブラリにおけるtranslation filesと同様です。

ソースのdictionaryは.jsまたは.tsファイルにもでき、他のfilesからimportできます。 翻訳済みコンテンツを含むdictionaryは.jsonファイルのみ使用できます。

ソース dictionary

ソース dictionary は、アプリのデフォルトの locale でコンテンツを含む dictionary です。

翻訳済み dictionary

翻訳済み dictionary は、デフォルトの locale とは異なる特定の locale のコンテンツを含む dictionary です。

キーはソースの dictionary と同一で、値は翻訳済みの文字列です。

独自の翻訳済み dictionaries がある場合は、loadDictionary 関数で読み込めます。

インラインコンテンツ

インラインコンテンツとは、アプリのコード内に直接記述され、JSON や dictionary ファイルなどの別ストレージに保存されていないコンテンツを指します。

これには以下が含まれます:

  • <T> コンポーネント
  • useGT フック
  • getGT 関数

ソースコンテンツ

ソースコンテンツは、アプリのデフォルトの locale におけるコンテンツを指します。アプリのデフォルト言語で書かれたすべてが含まれます。

とくに gt-nextgt-react では、ソースコンテンツにはアプリ内のすべての翻訳対象コンテンツが含まれます。アプリのソース dictionary やインラインコンテンツも含まれます。

ソーステンプレート

ソーステンプレートは、ソースコンテンツを保存するための特定のデータ形式を指します。

{
  ["ソースコンテンツの一意の識別子"]: "...コンテンツ..."
}

ソースコンテンツの一意の識別子は、ソースコンテンツ自体のハッシュ、またはユーザーが定義した一意の識別子のいずれかです。

ソースコンテンツの種類に応じて、対応する value は文字列、配列、またはオブジェクトになります(dictionaries には文字列または配列、<T> コンポーネントにはオブジェクト)。

翻訳

このドキュメント全体で、名詞としての「翻訳」は、ソースコンテンツを翻訳して得られた内容を指します。

翻訳は、あなたのソーステンプレートから直接生成されます。

loadTranslations 関数を使うと、これらの翻訳の保存場所をカスタマイズできます。この関数は、JSON がソーステンプレートと同じ形式であることを前提としています。

ソースコンテンツからこれらのデータファイルを生成するには、CLI(コマンドラインインターフェース)generate コマンドを使用してください。

注意

翻訳は、翻訳済みの dictionary(辞書)とは「異なる」点に注意してください。dictionaries は入れ子構造になり得て、キーとして人間が読める参照名を含みます。

一方、翻訳はフラットであり、キーとして人間が読めないハッシュを含む場合があります。

翻訳は GT の CDN(コンテンツ配信ネットワーク)に保存されます。

JSON、MDX、または MD ファイルにおける「翻訳」という表現は、元のソースファイルの直接的な翻訳を指します。

このガイドはいかがですか?