パラメータを使用して、表示される文字列の一部のみが翻訳を必要とする場合に、あなたのローカライズテーブルで利用できます。例えば、数値の後に単位をローカライズしたり、ユーザー名を参照したり、日時を表示したりできます。



パラメータは、パラメータ値とオプションのフォーマット指定子で構成され、波括弧で囲まれます。

以下の例では、ゲームのローカライズテーブルに次のエントリがあります:
| ソース | es |
|---|---|
| Hello {Player_Name}! | Hola {Player_Name}! |
| My name is {NPC_Name} | Me llamo {NPC_Name} |
ユーザーがロケールをesに設定している場合、翻訳出力は以下のようになります:
| 元のゲーム内テキスト | スペイン語翻訳 |
|---|---|
| Hello new_storm! | Hola new_storm! |
| My name is Diva Dragonslayer | Me llamo Diva Dragonslayer |
場合によっては、ローカライズされた文字列内でパラメータ値の形式を制御するためにフォーマット指定子を使用したいことがあります。
利用可能なフォーマット指定子は以下の通りです:
| 指定子 | タイプ | 説明 | 例の出力 |
|---|---|---|---|
| int | number | 負の符号がオプションの整数; 千の区切りなし。 | 1234 |
| fixed | number | 小数点以下2桁の表示、小数点指示子、オプションの負の符号、千の区切りなし。 | 1234.50 1234,50 |
| num | number | 小数点以下2桁の表示、小数点指示子、オプションの負の符号、千の区切りあり。 | 1,234.50 1234,50 |
| HEX | number | 整数を16進数に変換; 負の数は64ビットの2の補数に変換されます。 | 3FF |
| hex | number | HEXと同じだが、小文字。 | 3ff |
| datetime | number | UTCタイムスタンプを数値から一般的なユーザーが読める形式に。 | 2017-10-10 13:38:10 |
| iso8601 | number | UTCタイムスタンプを数値からISO-8601形式のUTC時間に。 | 2017-10-12T22:02:38Z |
| shorttime | number | UTCタイムスタンプをローカルの「時:分」形式に。 | 1:45 PM 13:45 |
| shortdatetime | number | UTCタイムスタンプを一般的な日付+時間のパターンに短い時間で。 | 10/10/2017 1:45 PM |
| shortdate | number | UTCタイムスタンプを短い日付パターンに。 | 10/10/2017 2017-10-10 |
| translate | string | ローカライズテーブル内で文字列のリテラルSourceマッチを探し、利用可能なロケール翻訳を使用します。 |
サブストリングの翻訳
ローカライズテーブルから直接翻訳が必要な場合は、translate指定子を使用します。ローカライズは、ローカライズテーブルのソース列にパラメータの正確な一致を検索します。
以下の例では、ゲームにはローカライズテーブルに次の行があります:
| ソース | es |
|---|---|
| I am from {Place_Name:translate}. | Soy de {Place_Name:translate}. |
| Brazil | Brasil |
| London | Londres |
| Germany | Alemania |
ユーザーがロケールを'es'に設定している場合、翻訳出力は以下のように表示されます:
| 元のゲーム内テキスト | スペイン語翻訳 |
|---|---|
| I am from Brazil. | Soy de Brasil. |
| I am from London. | Soy de Londres. |
| I am from Germany. | Soy de Alemania. |
数字を使用した翻訳
ゲーム内のコンテキストに合わせて数値をフォーマットするために、指定子を使用することができます。
以下の例では、ゲームにはローカライズテーブルに次の数値に関連するエントリがあります:
| ソース | es |
|---|---|
| {race_time:fixed} seconds | {race_time:fixed} segundos |
| ${1:num} cash and {2:int} jewels | ${1:num} dinero y {2:int} joyas |
ユーザーがロケールをesに設定している場合、翻訳出力は以下のように表示されます:
| 元のゲーム内テキスト | スペイン語翻訳 |
|---|---|
| 75.202844 seconds | 75,20 segundos |
| $2500.5 cash and 99.8 jewels | $2.500,50 dinero y 100 joyas |