Web アプリケーションで i18n および l10n 用のTowerライブラリを使用しています。
「ジャストインタイム」、つまり予期しない辞書、特に予期しないサポートされているロケールをローカライズしなければならないという問題があります。
HTTP リクエストを受け取ります。そこから、受け入れられたロケールを優先順に抽出できます。たとえば、次のようになります。
[:de :en-UK :en :fr-FR :fr]
一方、次の形式で、データベースからフェッチされたマイクロ辞書からローカライズする必要があります。
{:fr "En Français"
:en "In English"
:en-Uk "In English from UK"}
私のプログラムでやりたいことは、これらの 2 つの要素から最も一致する翻訳を見つけることです (この例では、それは:en-UK
です。利用できないことを事前に知らない場合があることに注意してください:de
)。
私は Tower ライブラリでそれを行う方法を見つけていません (そして、車輪の再発明は避けたいと思います)。
誰も私がどのように進むべきか知っていますか?
前もって感謝します!