mirror of
https://github.com/storytold/photocraft.git
synced 2026-11-12 21:23:02 +00:00
The i18n module becomes a thin Lang wrapper over craft_i18n::I18n and the catalogs embedded from craft-i18n. Plurals use trn_plain and PhotoCraft keeps its own fmt; @id rows come only from PhotoCraft's own rows that keep the label's shape. Detection, PHOTOCRAFT_LOCALE, tag bounds and the 35 offered languages are unchanged. Serbian: sr, sr-RS, sr-Cyrl-RS and sr-ME reach sr-latn, the only Serbian catalog, and a saved interface.language "sr" migrates to "sr-latn". The menu completeness test becomes a report that never fails, and `cargo xtask i18n-coverage` is replaced by `cargo xtask i18n-report`, which reads CRAFT_I18N_DIR through the crate. Docs describe the new system. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>