
Locale Fallback Chains para sa Bawat Framework
Nilalaktawan ng karamihan sa i18n framework ang mga parent locale nang tuluyan. Kapag may nawawalang key ang isang pt-BR user, English ang makikita niya — hindi ang maayos na pt-PT translation. Inaayos ito ng mga locale-chain library gamit ang configurable deep-merge fallback chains.
Ang Problema: Nilalaktawan ng Mga Framework ang Parent Locales
Nagshi-ship kayo ng pt-PT translations na may 2,000 key. May 200 regional override ang pt-BR file ninyo. Ano ang nangyayari sa 1,800 key na magkapareho? Ipinapakita ng karamihan sa framework ang fallback locale (karaniwang English) sa halip na ang parent locale. Nakakakita ang mga user sa Brazil ng halong Portuguese at English — isang sirang karanasan na nagpaparamdam na hindi pa tapos ang inyong app.
Hindi ito isang edge case. Bawat app na may regional variant (zh-Hans/zh-Hant, es/es-419, en-US/en-GB, fr/fr-CA) ay tumatama sa problemang ito. Mali ang default behavior ng halos lahat ng i18n framework para sa mga regional locale.
Paano Gumagana ang Deep-Merge Fallback
Kapag pumili ang user ng pt-BR, nilo-load ng library ang mga message mula sa bawat locale sa fallback chain at dini-deep-merge ang mga ito ayon sa priority order. Ina-override ng mga regional key ang mga parent key. Pinupunan ng mga parent key ang mga puwang. Ang resulta ay isang kumpletong message set na walang nawawalang pagsasalin.
Halimbawa: Ide-define ng pt-BR ang 'cart.checkout' bilang 'Finalizar compra'. Ide-define ng pt-PT ang 'cart.checkout' bilang 'Concluir compra' at 'cart.empty' bilang 'Carrinho vazio'. Ginagamit ng merged result para sa pt-BR ang pt-BR checkout text ngunit nagfa-fallback sa pt-PT para sa empty cart message — sa halip na magpakita ng English.
Available para sa 17 Framework
May nakalaang locale-chain library ang bawat framework na nag-iintegrate nang native sa i18n system nito. I-install ang package, i-configure ang inyong mga chain, at awtomatikong magaganap ang deep-merge sa load time.
Subukan ang i18n Agent Ngayon
I-drop dito ang inyong translation file
JSON, YAML, PO, XML, CSV, Markdown, Properties
o i-click para mag-browse
Mga target language