
あらゆるフレームワークに対応するロケールフォールバックチェーン
多くの i18n フレームワークは親ロケールを確認しません。pt-BR でキーが欠落すると、利用可能な pt-PT 翻訳ではなく英語が表示されます。locale-chain ライブラリは、構成可能なディープマージフォールバックチェーンでこの問題を解決します。
問題:フレームワークが親ロケールを確認しない
pt-PT に 2,000 個の翻訳キーがあり、pt-BR ファイルには地域固有の上書きが 200 個あるとします。内容が同じ残り 1,800 個のキーはどうなるでしょうか。多くのフレームワークでは親ロケールではなく、フォールバックロケール(通常は英語)が表示されます。ブラジルのユーザーにはポルトガル語と英語が混在し、未完成に見える不自然な体験になります。
これは特殊な事例ではありません。地域バリアント(zh-Hans/zh-Hant、es/es-419、en-US/en-GB、fr/fr-CA)を持つすべてのアプリで発生します。ほぼすべての i18n フレームワークの標準動作は、地域ロケールに適していません。
ディープマージフォールバックの仕組み
ユーザーが pt-BR を選択すると、ライブラリはフォールバックチェーン内の各ロケールからメッセージを読み込み、優先順位に従ってディープマージします。地域固有のキーが親ロケールのキーを上書きし、親ロケールのキーが欠落部分を補います。その結果、翻訳の欠落がない完全なメッセージセットが得られます。
例:pt-BR では「cart.checkout」を「Finalizar compra」、pt-PT では「cart.checkout」を「Concluir compra」、「cart.empty」を「Carrinho vazio」と定義します。pt-BR 用に統合した結果では、チェックアウトの文言に pt-BR の翻訳を使い、空のカートメッセージは英語ではなく pt-PT へフォールバックします。
17 種類のフレームワークに対応
各フレームワークには、その i18n システムとネイティブに連携する専用の locale-chain ライブラリがあります。パッケージをインストールしてチェーンを構成すれば、読み込み時に自動でディープマージされます。
i18n Agent を今すぐ試す
翻訳ファイルをここにドロップ
JSON, YAML, PO, XML, CSV, Markdown, Properties
またはクリックしてファイルを選択
翻訳先言語