From 45742f79e44b4920aa6c13cc495478d5bf6fc888 Mon Sep 17 00:00:00 2001 From: Jawler <84626502+jawler@users.noreply.github.com> Date: Fri, 16 Oct 2026 13:25:04 +0200 Subject: [PATCH] Update i18n.rs --- crates/ui-egui/src/i18n.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/crates/ui-egui/src/i18n.rs b/crates/ui-egui/src/i18n.rs index ff8ac778..97d456fb 100644 --- a/crates/ui-egui/src/i18n.rs +++ b/crates/ui-egui/src/i18n.rs @@ -33,6 +33,7 @@ impl Catalog { static ENGLISH: Catalog = Catalog::new("en", "English", include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/../../assets/locales/en.json"))); static GERMAN: Catalog = Catalog::new("de", "Deutsch", include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/../../assets/locales/de.json"))); +static SPANISH: Catalog = Catalog::new("es", "Español (España)", include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/../../assets/locales/es.json"))); static FRENCH: Catalog = Catalog::new("fr", "Français", include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/../../assets/locales/fr.json"))); static JAPANESE: Catalog = Catalog::new("ja", "日本語", include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/../../assets/locales/ja.json"))); static KOREAN: Catalog = Catalog::new("ko", "한국어", include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/../../assets/locales/ko.json"))); @@ -46,6 +47,7 @@ static CHINESE: Catalog = Catalog::new("zh", "中文", include_str!(concat!(env! pub const LOCALES: &[&Catalog] = &[ &ENGLISH, &GERMAN, + &SPANISH, &FRENCH, &JAPANESE, &KOREAN, @@ -466,6 +468,18 @@ mod tests { assert_ne!(de.given_name("Sketch3"), "Sketch3"); } + #[test] + fn spanish_catalog_is_registered_and_translates_cad_labels() { + let es = Locale::for_language("es"); + assert_eq!(es.name(), "Español (España)"); + assert!(is_supported("es")); + assert_eq!(es.text("ui.preferences"), "Preferencias"); + assert_eq!(es.label("Extrude"), "Extruir"); + assert_eq!(es.label("Fillet"), "Redondeo"); + assert_eq!(es.dynamic("Sketch1"), "Boceto1"); + assert_eq!(es.format("document.save_changes", &[("name", "Pieza")]), "¿Guardar los cambios de Pieza?"); + } + #[test] fn korean_catalog_translates_keys_labels_and_browser_patterns() { let ko = Locale::for_language("ko");