diff --git a/Rules/Languages/it/definitions.yaml b/Rules/Languages/it/definitions.yaml index d15d7480..32085572 100644 --- a/Rules/Languages/it/definitions.yaml +++ b/Rules/Languages/it/definitions.yaml @@ -27,8 +27,8 @@ "lim-sup": "prefix=lim sup per: il limite superiore per: il limite superiore per", "lim-inf": "prefix=lim inf per: il limite inferiore per : il limite inferiore per", "logarithm-with-base": "prefix=log base: il logaritmo in base: il log in base", - "minus": "infix=meno || prefix=negativo", - "plus": "infix=più || prefix=positivo", + "minus": "infix=meno || prefix=meno", + "plus": "infix=più || prefix=più", "transpose": "postfix=trasposta || function=trasposta", "norm": "function=; regola: regola: la regola; fine regola", @@ -37,7 +37,7 @@ "homomorphism": "function= ; omomorfismo : omomorfismo di: l'omomorfismo di; fine omomorfismo", "kernel": "function= ; nucleo : nucleo di: il nucleo di; fine nucleo", "vector": "function= ; vettore || prefix=vettore", - "cross-product": "infix=vettoriale: prodoto verttoriale: prodotto vettoriale", + "cross-product": "infix=vettoriale: prodotto vettoriale: prodotto vettoriale", "dot-product": "infix=scalare: prodotto scalare: dot:prodotto scalare", "divergence": "function= ; div: divergenza: divergenza; fine divergenza", diff --git a/Rules/Languages/it/unicode.yaml b/Rules/Languages/it/unicode.yaml index c089614d..930bd8bd 100644 --- a/Rules/Languages/it/unicode.yaml +++ b/Rules/Languages/it/unicode.yaml @@ -34,7 +34,7 @@ - "!": [T: "fattoriale"] # 0x21 - "\"": [T: "barra inversa"] # 0x22 (en: 'quotation mark') - "#": [T: "almohadilla"] # 0x23 (en: 'number', MathPlayer: 'signo de número', google: 'número') - - "$": [T: "dólar"] # 0x24 (en: 'dollars') + - "$": [T: "dóllari"] # 0x24 (en: 'dollars') - "%": [T: "porciento"] # 0x25 (en: 'percent') - "&": [T: "e commerciale"] # 0x26 - "'": [T: "apostrofo"] # 0x27 (en: 'apostrophe', MathPlayer: 'apóstrofo', google: 'apóstrofe') @@ -96,7 +96,7 @@ - "=": # 0x3d - test: if: "$Verbosity!='Terse'" - then: [T: "è iuguale a"] # (en: 'is equal to', google translation) + then: [T: "è uguale a"] # (en: 'is equal to', google translation) else: [T: "uguale a"] # (en: 'equals', google: 'iguales') - ">": # 0x3e @@ -105,7 +105,7 @@ then: [T: "è"] # (en: 'is', google translation) - T: "maggiore di" # (en: 'greater than') - "?": [T: "punto di domanda"] # 0x3f (en: 'question mark', MathPlayer: 'cierra interrogación', google: 'signo de interrogación') - - "@": [T: "arroba"] # 0x40 (en: 'at sign') + - "@": [T: "chiocciola"] # 0x40 (en: 'at sign') - "[": # 0x5b - test: if: $SpeechStyle = 'ClearSpeak' or $SpeechStyle = 'SimpleSpeak' @@ -129,9 +129,9 @@ # note: for ClearSpeak and SimpleSpeak, "|" inside of sets is handled at the mrow level, same for 'sets' - test: - if: "$SpeechStyle != 'ClearSpeak' or not(preceding-sibling::*) or not(following-sibling::*)" - then: [T: "barra vertical"] # (en: 'verticale line', google translation) + then: [T: "barra verticale"] # (en: 'verticale line', google translation) - else_if: "$ClearSpeak_VerticalLine = 'SuchThat'" - then: [T: "tal que"] # (en: 'tale che', google translation) + then: [T: "tale che"] # (en: 'tale che', google translation) - else_if: "$ClearSpeak_VerticalLine = 'Given'" then: [T: "dato"] # (en: 'given', google translation) - else: [T: "barra verticale"] # (en: 'divides') @@ -192,7 +192,7 @@ if: "$SpeechOverrides_CapitalLetters = ''" then_test: if: "$Impairment = 'Blindness'" - then: [T: "maiuscula"] # (en: 'cap', google translation) + then: [T: "maiuscola"] # (en: 'cap', google translation) else: [x: "$SpeechOverrides_CapitalLetters"] - pitch: value: "$CapitalLetters_Pitch" @@ -287,7 +287,7 @@ - "K": [T: "gradi Kelvin"] # 0x212a (en: 'kelvin') - "Å": [T: "angstrom"] # 0x212b (en: 'angstroms') - "ⅆⅇⅈⅉ": # 0x2146-9 - - T: "angstrom in grassetto lavagna" # (en: 'double-struck italic') + - T: "angstrom" # (en: 'double-struck italic') - spell: "translate('.', 'ⅆⅇⅈⅉ', 'deij')" - "←": [T: "freccia sinistra"] # 0x2190 (en: 'leftwards arrow') @@ -442,7 +442,7 @@ - "≠": # 0x2260 - test: if: "$Verbosity!='Terse'" - then: [T: "es"] # (en: 'is', google translation) + then: [T: "è"] # (en: 'is', google translation) - T: "diverso da" # (en: 'not equal to', MathPlayer: 'distinto de', google: 'no igual a') - "≡": # 0x2261 - test: diff --git a/Rules/Languages/zh/tw/definitions.yaml b/Rules/Languages/zh/tw/definitions.yaml index e15ebcf8..93460509 100644 --- a/Rules/Languages/zh/tw/definitions.yaml +++ b/Rules/Languages/zh/tw/definitions.yaml @@ -86,7 +86,7 @@ # base units "A": "安培", "cd": "燭光", - "K": "凱氏", "K": "凱氏", # U+212A + "K": "K", "K": "K", # U+212A "g": "克", "m": "米", # British spelling works for US also "mol": "莫耳", @@ -97,23 +97,23 @@ "C": "庫侖", "°C": "攝氏度", "℃": "攝氏度", "F": "法拉", - "Gy": "格雷", + "Gy": "戈雷", "H": "亨利", "Hz": "赫茲", "J": "焦耳", - "kat": "kattel", + "kat": "卡塔爾", "lm": "流明", "lx": "勒克斯", "N": "牛頓", "Ω": "歐姆", "Ω": "歐姆", # Greek Cap letter, U+2126 OHM SIGN "Pa": "帕", "rad": "弳", - "S": "西門子", + "S": "西門", "Sv": "西弗", - "sr": "sterradion", + "sr": "立弳", "T": "特士拉", "V": "伏特", - "W": "瓦特", + "W": "瓦", "Wb": "韋伯", # accepted (plus a few variants) that take SI prefixes @@ -127,8 +127,8 @@ # copy from english version by hjy # others that take a prefix - "a": "annum", # should only take positive powers - "as": "弧秒", # see en.wikipedia.org/wiki/Minute_and_second_of_arc + "a": "年", # should only take positive powers + "as": "角秒", # see en.wikipedia.org/wiki/Minute_and_second_of_arc # Copy from english version by hjy # technically wrong, but used in practice with SI Units @@ -140,25 +140,25 @@ - UnitsWithoutPrefixes: { # time + "″": "秒", "\"": "秒", "′": "分", "'": "分","min": "分", - "h": "時", "hr": "時", "Hr": "時", + "h": "小時", "hr": "小時", "Hr": "小時", "d": "天", "dy": "天", "w": "週", "wk": "週", "y": "年", "yr": "年", # angles (could be temperature) "°": "度", "deg": "度", - "arcmin": "弧分", - "amin": "弧分", - "am": "弧分", - "MOA": "弧分", - "arcsec": "弧秒", - "asec": "弧秒", - "as": "弧秒", + "arcmin": "角分", + "amin": "角分", + "am": "角分", + "MOA": "角分", + "arcsec": "角秒", + "asec": "角秒", + "as": "角秒", # other accepted units that don't take SI prefixes "ha": "公頃", - "Np": "奈培", "B": "貝爾", "dB": "分貝", @@ -173,13 +173,13 @@ "bar": "巴", "cal": "卡", "Ci": "居里", - "grad": "百分直角", + "grad": "百分度", "M": "體積莫耳濃度", - "R": "倫琴", - "rpm": "轉速每分鐘", + "R": "侖琴", + "rpm": "轉每分", "℧": "姆歐", "dyn": "達因", - "erg": "爾格", + "erg": "耳格", # copy from english version by hjy # powers of 2 used with bits and bytes "Kib": "kibi-位元", "Mib": "mebi-位元", "Gib": "gibi-位元", "Tib": "tebi-位元", "Pib": "pebi-位元", "Eib": "exbi-位元", "Zib": "zebi-位元", "Yib": "yobi-位元", @@ -236,7 +236,7 @@ # energy "hp": "馬力", - "BTU": "英熱單位", + "BTU": "BTU", "°F": "華氏度", "℉": "華氏度", # other @@ -252,8 +252,8 @@ "degree celsius": "攝氏度", "degree fahrenheit": "華氏度", "hertz": "赫茲", - "siemens": "西門子", - "revolution per minute": "轉速每分鐘", + "siemens": "西門", + "revolution per minute": "轉每分", } diff --git a/Rules/Languages/zh/tw/navigate.yaml b/Rules/Languages/zh/tw/navigate.yaml index 18fda920..a4106795 100644 --- a/Rules/Languages/zh/tw/navigate.yaml +++ b/Rules/Languages/zh/tw/navigate.yaml @@ -1620,14 +1620,14 @@ - test: - if: "$NavMode = 'Enhanced'" then: - - T: "符號" # phrase(a mathematical 'character') + - T: "字元" # phrase(a mathematical 'character') - set_variables: [NavMode: "'Character'", ReadZoomLevel: "1"] - else_if: "$NavMode = 'Character'" then: - - T: "簡單的" # phrase(a 'simple' way to do something) + - T: "簡單" # phrase(a 'simple' way to do something) - set_variables: [NavMode: "'Simple'", ReadZoomLevel: "1"] - else: - - T: "增強的" # phrase(an 'enhanced' way to do something) + - T: "增強" # phrase(an 'enhanced' way to do something) - set_variables: [NavMode: "'Enhanced'", ReadZoomLevel: "-1"] - T: "模式" # phrase(a simple 'mode' of use) - pause: long @@ -1645,14 +1645,14 @@ - test: - if: "$NavMode = 'Enhanced'" then: - - T: "簡單的" # phrase(an 'simple' way to do something) + - T: "簡單" # phrase(an 'simple' way to do something) - set_variables: [NavMode: "'Simple'", ReadZoomLevel: "1"] - else_if: "$NavMode = 'Character'" then: - - T: "增強的" # phrase(an 'enhanced' way to do something) + - T: "增強" # phrase(an 'enhanced' way to do something) - set_variables: [NavMode: "'Enhanced'", ReadZoomLevel: "-1"] - else: - - T: "符號" # phrase(a mathematical 'character') + - T: "字元" # phrase(a mathematical 'character') - set_variables: [NavMode: "'Character'", ReadZoomLevel: "1"] - T: "模式" # phrase(a simple 'mode' of use) - pause: long diff --git a/src/xpath_functions.rs b/src/xpath_functions.rs index d7027d58..8c6bfb65 100644 --- a/src/xpath_functions.rs +++ b/src/xpath_functions.rs @@ -46,11 +46,7 @@ fn get_text_from_element(e: Element) -> String { #[allow(non_snake_case)] // Same as 'is_tag', but for ChildOfElement fn get_text_from_COE(coe: &ChildOfElement) -> String { - let element = coe.element(); - return match element { - Some(e) => get_text_from_element(e), - None => "".to_string(), - }; + coe.element().map_or_else(String::new, get_text_from_element) } // make sure that there is only one node in the NodeSet @@ -73,8 +69,7 @@ fn is_tag(e: Element, name: &str) -> bool { #[allow(non_snake_case)] // Same as 'is_tag', but for ChildOfElement fn is_COE_tag(coe: ChildOfElement, name: &str) -> bool { - let element = coe.element(); - return element.is_some() && is_tag(element.unwrap(), name) + coe.element().is_some_and(|element| is_tag(element, name)) } /// Should be an internal structure for implementation of the IsNode, but it was useful in one place in a separate module. @@ -1636,4 +1631,4 @@ mod tests { let mn = as_element(as_element(fraction.children()[1]).children()[0]); assert_eq!(EdgeNode::edge_node(mn, true, "2D"), None); } -} \ No newline at end of file +} diff --git a/tests/Languages/zh/tw/units.rs b/tests/Languages/zh/tw/units.rs index 55535fa6..4fb1f1b4 100644 --- a/tests/Languages/zh/tw/units.rs +++ b/tests/Languages/zh/tw/units.rs @@ -87,8 +87,8 @@ fn si_base() -> Result<()> { test("zh-tw", "SimpleSpeak", expr, "1 安培, 逗號 2 安培, 逗號 \ 1 燭光, 逗號 2 燭光, 逗號 \ - 1 凱氏, 逗號 2 凱氏, 逗號 \ - 1 凱氏, 逗號 2 凱氏, 逗號 \ + 1 K 逗號 2 K 逗號 \ + 1 K 逗號 2 K 逗號 \ 1 克 逗號 2 克 逗號 \ 1 米 逗號 2 米 逗號 \ 1 莫耳, 逗號 2 莫耳, 逗號 \ @@ -116,8 +116,8 @@ fn si_base_with_prefixes() -> Result<()> { test("zh-tw", "SimpleSpeak", expr, "1 昆-安培, 逗號 2 羅-安培, 逗號 \ 1 佑-燭光, 逗號 2 皆-燭光, 逗號 \ - 1 艾-凱氏, 逗號 2 拍-凱氏, 逗號 \ - 1 兆-凱氏, 逗號 2 吉-凱氏, 逗號 \ + 1 艾-K, 逗號 2 拍-K, 逗號 \ + 1 兆-K, 逗號 2 吉-K, 逗號 \ 1 百萬-克, 逗號 2 千-克, 逗號 \ 1 百-米, 逗號 2 十-米, 逗號 \ 1 分-莫耳, 逗號 2 厘-莫耳, 逗號 \ @@ -150,11 +150,11 @@ fn si_derived_1() -> Result<()> { 1 攝氏度, 逗號 2 攝氏度, 逗號 \ 1 攝氏度, 逗號 2 攝氏度, 逗號 \ 1 法拉, 逗號 2 法拉, 逗號 \ - 1 格雷, 逗號 2 格雷, 逗號 \ + 1 戈雷, 逗號 2 戈雷, 逗號 \ 1 亨利, 逗號 2 亨利, 逗號 \ 1 赫茲, 逗號 2 赫茲, 逗號 \ 1 焦耳, 逗號 2 焦耳, 逗號 \ - 1 kattel, 逗號 2 kattel, 逗號 \ + 1 卡塔爾, 逗號 2 卡塔爾, 逗號 \ 1 流明, 逗號 2 流明, 逗號 \ 1 勒克斯, 逗號 2 勒克斯")?; return Ok(()); @@ -181,11 +181,11 @@ fn si_derived_1_with_prefixes() -> Result<()> { "1 昆-貝克, 逗號 2 羅-貝克, 逗號 \ 1 佑-庫侖, 逗號 2 皆-庫侖, 逗號 \ 1 艾-法拉, 逗號 2 拍-法拉, 逗號 \ - 1 兆-格雷, 逗號 2 吉-格雷, 逗號, \ + 1 兆-戈雷, 逗號 2 吉-戈雷, 逗號, \ 1 百萬-亨利, 逗號 2 千-亨利, 逗號 \ 1 十-赫茲, 逗號 2 分-赫茲, 逗號 \ - 1 厘-焦耳, 逗號 2 毫-焦耳, 逗號 \ - 1 微-kattel, 逗號 2 奈-kattel, 逗號 \ + 1 厘-焦耳, 逗號 2 毫-焦耳, 逗號, \ + 1 微-卡塔爾, 逗號, 2 奈-卡塔爾, 逗號 \ 1 皮-流明, 逗號 2 飛-流明, 逗號, \ 1 阿-勒克斯, 逗號, 2 介-勒克斯, 逗號, \ 1 毫-攝氏度, 逗號, 2 微-攝氏度, 逗號, \ @@ -213,11 +213,11 @@ fn si_derived_2() -> Result<()> { 1 歐姆, 逗號 2 歐姆, 逗號 \ 1 歐姆, 逗號 2 歐姆, 逗號 \ 1 帕 逗號 2 帕 逗號 \ - 1 西門子, 逗號 2 西門子, 逗號 \ + 1 西門, 逗號 2 西門, 逗號 \ 1 西弗, 逗號 2 西弗, 逗號 \ 1 特士拉, 逗號 2 特士拉, 逗號 \ 1 伏特, 逗號 2 伏特, 逗號 \ - 1 瓦特, 逗號 2 瓦特, 逗號 \ + 1 瓦 逗號 2 瓦 逗號 \ 1 韋伯, 逗號 2 韋伯")?; return Ok(()); @@ -241,12 +241,12 @@ fn si_derived_2_with_prefixes() -> Result<()> { "1 匱-牛頓, 逗號 2 絨-牛頓, 逗號 \ 1 攸-歐姆, 逗號 2 介-歐姆, 逗號 \ 1 阿-歐姆, 逗號 2 飛-歐姆, 逗號 \ - 1 皮-帕, 逗號 2 奈-帕, 逗號, \ - 1 微-西門子, 逗號, 2 毫-西門子, 逗號 \ + 1 皮-帕, 逗號 2 奈-帕, 逗號 \ + 1 微-西門, 逗號 2 毫-西門, 逗號 \ 1 厘-西弗, 逗號 2 分-西弗, 逗號, \ 1 十-特士拉, 逗號, 2 百-特士拉, 逗號 \ 1 千-伏特, 逗號, 2 百萬-伏特, 逗號 \ - 1 吉-瓦特, 逗號 2 兆-瓦特, 逗號 \ + 1 吉-瓦, 逗號 2 兆-瓦, 逗號 \ 1 拍-韋伯, 逗號 2 艾-韋伯")?; return Ok(()); @@ -282,9 +282,9 @@ fn si_accepted() -> Result<()> { 1 原子質量單位, 逗號 2 原子質量單位, 逗號 \ 1 電子伏特, 逗號 2 電子伏特, 逗號 \ 1 弳 逗號 2 弳 逗號 \ - 1 sterradion, 逗號 2 sterradion, 逗號 \ - 1 annum, 逗號 2 annum, 逗號 \ - 1 弧秒, 逗號 2 弧秒, 逗號 \ + 1 立弳, 逗號 2 立弳, 逗號 \ + 1 年 逗號 2 年 逗號 \ + 1 角秒, 逗號 2 角秒, 逗號 \ 1 位元, 逗號 2 位元, 逗號 \ 1 位元組, 逗號 2 位元組, 逗號 \ 1 鮑 逗號 2 鮑")?; @@ -320,10 +320,10 @@ fn si_accepted_with_prefixes() -> Result<()> { 1 分-奈培, 逗號 2 厘-奈培, 逗號, \ 1 百-原子質量單位; 逗號, 2 十-原子質量單位; 逗號, \ 1 毫-電子伏特, 逗號, 2 微-電子伏特, 逗號 \ - 1 奈-弳, 逗號 2 皮-弳, 逗號, \ - 1 飛-sterradion, 逗號, 2 阿-sterradion, 逗號 \ - 1 吉-annum, 逗號, 2 百萬-annum, 逗號 \ - 1 介-弧秒, 逗號 2 攸-弧秒, 逗號 \ + 1 奈-弳, 逗號 2 皮-弳, 逗號 \ + 1 飛-立弳, 逗號 2 阿-立弳, 逗號 \ + 1 吉-年, 逗號 2 百萬-年, 逗號 \ + 1 介-角秒, 逗號 2 攸-角秒, 逗號 \ 1 千-位元, 逗號, 2 百萬-位元, 逗號, \ 1 吉-位元組, 逗號, 2 兆-位元組, 逗號 \ 1 兆-鮑, 逗號 2 艾-鮑")?; @@ -355,9 +355,9 @@ fn without_prefix_time() -> Result<()> { 1 分 逗號 2 分 逗號 \ 1 分 逗號 2 分 逗號 \ 1 分 逗號 2 分 逗號 \ - 1 時 逗號 2 時 逗號 \ - 1 時 逗號 2 時 逗號 \ - 1 時 逗號 2 時 逗號 \ + 1 小時, 逗號 2 小時, 逗號 \ + 1 小時, 逗號 2 小時, 逗號 \ + 1 小時, 逗號 2 小時, 逗號 \ 1 天 逗號 2 天 逗號 \ 1 天 逗號 2 天 逗號 \ 1 週 逗號 2 週 逗號 \ @@ -383,12 +383,12 @@ fn without_prefix_angles() -> Result<()> { test("zh-tw", "SimpleSpeak", expr, "1 度 逗號 2 度 逗號 \ 1 度 逗號 2 度 逗號 \ - 1 弧分, 逗號 2 弧分, 逗號 \ - 1 弧分, 逗號 2 弧分, 逗號 \ - 1 弧分, 逗號 2 弧分, 逗號 \ - 1 弧分, 逗號 2 弧分, 逗號 \ - 1 弧秒, 逗號 2 弧秒, 逗號 \ - 1 弧秒, 逗號 2 弧秒")?; + 1 角分, 逗號 2 角分, 逗號 \ + 1 角分, 逗號 2 角分, 逗號 \ + 1 角分, 逗號 2 角分, 逗號 \ + 1 角分, 逗號 2 角分, 逗號 \ + 1 角秒, 逗號 2 角秒, 逗號 \ + 1 角秒, 逗號 2 角秒")?; return Ok(()); } @@ -440,13 +440,13 @@ fn without_prefix_other() -> Result<()> { 1 巴 逗號 2 巴 逗號 \ 1 卡 逗號 2 卡 逗號 \ 1 居里, 逗號 2 居里, 逗號 \ - 1 百分直角, 逗號 2 百分直角, 逗號 \ + 1 百分度, 逗號 2 百分度, 逗號 \ 1 體積莫耳濃度, 逗號 2 體積莫耳濃度, 逗號 \ - 1 倫琴, 逗號 2 倫琴, 逗號 \ - 1 轉速每分鐘, 逗號 2 轉速每分鐘, 逗號 \ + 1 侖琴, 逗號 2 侖琴, 逗號 \ + 1 轉每分, 逗號 2 轉每分, 逗號 \ 1 姆歐, 逗號 2 姆歐, 逗號 \ 1 達因, 逗號 2 達因, 逗號 \ - 1 爾格, 逗號 2 爾格")?; + 1 耳格, 逗號 2 耳格")?; return Ok(()); }