From 10fe7cec5b15c9ad7b539c89d631103206668a5f Mon Sep 17 00:00:00 2001 From: mgros Date: Tue, 22 Sep 2026 14:55:53 +0200 Subject: [PATCH] de: fix "k-th root" --- Rules/Languages/de/ClearSpeak_Rules.yaml | 2 +- Rules/Languages/de/SimpleSpeak_Rules.yaml | 2 +- tests/Languages/de/ClearSpeak/mroot.rs | 14 +++++++++++--- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/Rules/Languages/de/ClearSpeak_Rules.yaml b/Rules/Languages/de/ClearSpeak_Rules.yaml index c1dd81eb5..0436516f5 100644 --- a/Rules/Languages/de/ClearSpeak_Rules.yaml +++ b/Rules/Languages/de/ClearSpeak_Rules.yaml @@ -90,7 +90,7 @@ if: "*[2][self::m:mi][string-length(.)=1]" then: - x: "*[2]" - - pronounce: [text: "-th", ipa: "θ", sapi5: "th", eloquence: "T"] + - pronounce: [text: "-te", ipa: "te", sapi5: "te", eloquence: "T"] else: [x: "*[2]"] - T: "wurzel" - test: diff --git a/Rules/Languages/de/SimpleSpeak_Rules.yaml b/Rules/Languages/de/SimpleSpeak_Rules.yaml index 4d48fd27e..f5afa4120 100644 --- a/Rules/Languages/de/SimpleSpeak_Rules.yaml +++ b/Rules/Languages/de/SimpleSpeak_Rules.yaml @@ -66,7 +66,7 @@ if: "*[2][self::m:mi][string-length(.)=1]" then: - x: "*[2]" - - pronounce: [text: "-th", ipa: "θ", sapi5: "th", eloquence: "T"] + - pronounce: [text: "-te", ipa: "te", sapi5: "te", eloquence: "T"] else: [x: "*[2]"] - T: "wurzel" # phrase(the square 'root' of) - test: diff --git a/tests/Languages/de/ClearSpeak/mroot.rs b/tests/Languages/de/ClearSpeak/mroot.rs index 5acba4ebb..577c6751a 100644 --- a/tests/Languages/de/ClearSpeak/mroot.rs +++ b/tests/Languages/de/ClearSpeak/mroot.rs @@ -119,17 +119,25 @@ fn ordinal_root() -> Result<()> { } -/* // should have n-te wurze #[test] -fn simple_mi_root() -> Result<()> { +fn variable_root_index_uses_german_ordinal_suffix() -> Result<()> { + // A variable root index uses the German ordinal suffix in both speech styles. let expr = " x n "; - test("de", "ClearSpeak", expr, "die n-th wurzel von x")?; + test("de", "ClearSpeak", expr, "die n-te wurzel von x")?; + test("de", "SimpleSpeak", expr, "die n-te wurzel von x")?; + + let expr = " + x k + "; + test("de", "ClearSpeak", expr, "die k-te wurzel von x")?; + test("de", "SimpleSpeak", expr, "die k-te wurzel von x")?; return Ok(()); } +/* #[test] fn mroot_simple_pos_end_root() -> Result<()> { let expr = "