i18n: add Brazilian Portuguese (pt-br) UI translation

Add the crates/ui-egui/src/i18n/pt-br.tsv catalog (Brazilian Portuguese):
every menu label, every tl! literal of the shell and the plural messages
(2533 strings + 13 plurals), written clean-room in ordinary Brazilian
Portuguese computing vocabulary, placeholders and trailing ellipses kept
in lockstep with the English source.

Register the language in i18n::LANGUAGES (code pt-br, native name
"Português (Brasil)", one/other plural rule) so the Language menu, the
preference and the system-locale match (pt_BR → pt-br) pick it up.

Extend the menu-label test to pt-br: it covers every menu label like cs
and ja, and keeps the MENU_KEEP_AS_IS strings (product name, language
names, workspace names, perspective grid presets) in English.

Update docs/development.md and ROADMAP.md accordingly.
This commit is contained in:
RicSchonfelder committed 2026-10-07 18:44:42 -03:00
1 parent f9209e8896
commit 62d6ea4bed
5 files changed
+2592 -9

No files matched your search

+3 -2
View File
@@ -74,8 +74,9 @@ text at render time from one catalog per language (`i18n/<code>.tsv`; the format
always use the English ids and labels, so agents and scripts never see translated text.
Languages shipped: English (`en`, the source), Traditional Chinese (`zh-hant`, complete, in the vocabulary used
in Taiwan; `zh-TW`, `zh-HK`, `zh-MO` and `zh-Hant-*` locales all resolve to it), Czech (`cs`) and Japanese (`ja`), every menu
label for both. Untranslated text falls back to English until its rows are
in Taiwan; `zh-TW`, `zh-HK`, `zh-MO` and `zh-Hant-*` locales all resolve to it), Czech (`cs`), Japanese (`ja`)
and Brazilian Portuguese (`pt-br`): every menu
label for all three, and every `tl!` literal for Brazilian Portuguese. Untranslated text falls back to English until its rows are
added. Simplified Chinese locales
(`zh-CN`, `zh-SG`, `zh-Hans`) fall back to English until a `zh-hans` catalog is registered: the resolver already
tells the two scripts apart, so the Traditional catalog is never shown to a Simplified locale.