diff --git a/src/arabic/ParadigmsAra.gf b/src/arabic/ParadigmsAra.gf index f84fc7add..9dea1146f 100644 --- a/src/arabic/ParadigmsAra.gf +++ b/src/arabic/ParadigmsAra.gf @@ -435,8 +435,8 @@ resource ParadigmsAra = open mkPron : (_,_,_ : Str) -> PerGenNum -> NP = \ana,nI,I,pgn -> { s = table { - Acc => nI; - Gen => I; + Acc => BIND ++ nI; -- object suffix + Gen => BIND ++ I; -- possessive suffix _ => ana }; a = {pgn = pgn; isPron = True }; diff --git a/src/arabic/ResAra.gf b/src/arabic/ResAra.gf index c73158c7a..d4f08f631 100644 --- a/src/arabic/ResAra.gf +++ b/src/arabic/ResAra.gf @@ -954,7 +954,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf -> --dual suffixes dl : State => Case => Str = table { - Const => + (Const|Poss) => table { Nom => "َا"; _ => "َيْ" @@ -970,7 +970,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf -> --sound masculine plural suffixes m_pl : State => Case => Str = table { - Const => + (Const|Poss) => table { Nom => "ُو"; _ => "ِي" @@ -1266,7 +1266,10 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf -> mkNum : Str -> Str -> Str -> {s : DForm => CardOrd => Gender => State => Case => Str} = \wAhid,awwal,Ula -> - let { wAhida = wAhid + "َة"} in + let wAhida : Str = case wAhid of { + x + "ة" => mkAt wAhid ; + _ => wAhid + "َة" } + in { s= table { unit => table { NCard => table { diff --git a/src/arabic/StructuralAra.gf b/src/arabic/StructuralAra.gf index 8160f2eff..7931b8132 100644 --- a/src/arabic/StructuralAra.gf +++ b/src/arabic/StructuralAra.gf @@ -43,9 +43,9 @@ concrete StructuralAra of Structural = CatAra ** -- how8many_IDet = mkDet "كَمْ" Pl Const ; -- IL: check (was ["هْو مَني"]) ; -- if_Subj = ss "ِف" ; in8front_Prep = ss "مُقَابِلَ" ; - i_Pron = mkPron "أَنَا" "نِي" "ِي" (Per1 Sing); + i_Pron = mkPron "أَنَا" "نِي" "ي" (Per1 Sing); in_Prep = ss "فِي" ; - it_Pron = mkPron "ِت" "ِت" "ِتس" (Per3 Masc Sg); -- IL: check + it_Pron = he_Pron ; -- was: it_Pron = mkPron "ِت" "ِت" "ِتس" (Per3 Masc Sg); -- less_CAdv = ss "لسّ" ; many_Det = mkDet "جَمِيع" Pl Const ; -- more_CAdv = ss "مْري" ;