From 5430d8b450084560b677c5a2eab6692c96fbf2cc Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Fri, 17 Apr 2020 13:28:58 +0200 Subject: [PATCH] (Hun) Make numerals take singular noun --- src/hungarian/NumeralHun.gf | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/hungarian/NumeralHun.gf b/src/hungarian/NumeralHun.gf index d0ad7ce19..ca2a9e938 100644 --- a/src/hungarian/NumeralHun.gf +++ b/src/hungarian/NumeralHun.gf @@ -8,7 +8,6 @@ lincat Sub1000, Sub1000000 = ResHun.Numeral ; lin - -- TODO: Add case inflection and ordinal forms to all numerals -- : Sub1000000 -> Numeral @@ -30,48 +29,48 @@ lin pot0 d = d ; -- : Sub100 ; -- 10 - pot110 = {s = table {p => "tíz"} ; n = Pl ; numtype = IsNum} ; + pot110 = {s = table {p => "tíz"} ; n = numNumber ; numtype = IsNum} ; -- : Sub100 ; -- 11 - pot111 = {s = table {p => "tizenegy"} ; n = Pl ; numtype = IsNum} ; + pot111 = {s = table {p => "tizenegy"} ; n = numNumber ; numtype = IsNum} ; -- : Digit -> Sub100 ; -- 10 + d pot1to19 d = {s = table {p => "tizen" ++ d.s ! } ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Sub10 -> Sub100 ; -- coercion of 1..9 pot0as1 n = {s = table {p => n.s ! } ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Digit -> Sub100 ; -- d * 10 pot1 d = {s = table {p => d.s ! } ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Digit -> Sub10 -> Sub100 ; -- d * 10 + n pot1plus d e = {s = table {p => (d.s ! ) ++ e.s ! } ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Sub100 -> Sub1000 ; -- coercion of 1..99 pot1as2 n = n ; -- : Sub10 -> Sub1000 ; -- m * 100 pot2 d = {s = table {p => (d.s ! ) ++ "száz"} ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Sub10 -> Sub100 -> Sub1000 ; -- m * 100 + n pot2plus d e = {s = table {p => (d.s ! ) ++ "száz" ++ e.s ! p} ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Sub1000 -> Sub1000000 ; -- coercion of 1..999 pot2as3 n = n ; -- : Sub1000 -> Sub1000000 ; -- m * 1000 pot3 n = {s = table {p => n.s ! Attrib ++ "ezer"} ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; -- : Sub1000 -> Sub1000 -> Sub1000000 ; -- m * 1000 + n pot3plus n m = {s = table {p => n.s ! Attrib ++ "ezer" ++ m.s ! p} ; - n = Pl ; numtype = IsNum} ; + n = numNumber ; numtype = IsNum} ; oper LinDigit : Type = {s : DForm*Place => Str ; n : Number} ; @@ -85,8 +84,9 @@ oper => ua ; => ta } ; -- ord = ord ; -- TODO figure out where to use ordinal - n = Pl ; + n = numNumber ; numType = IsNum ; } ; - } + numNumber = Sg ; +