Skip to main content

あらゆるフレームワークに対応するロケールフォールバックチェーン

多くの 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

またはクリックしてファイルを選択

翻訳先言語

登録不要すぐに見積もり

ロケールフォールバックのよくある質問