From 9a9b36dca8483326fea13464da01bcfeb76addf5 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Sat, 29 Dec 2018 18:45:47 +0200 Subject: [PATCH] (Ara) misc. small fixes and cleanup --- src/arabic/MissingAra.gf | 1 - src/arabic/ParadigmsAra.gf | 4 +++- src/arabic/ResAra.gf | 4 ++-- src/arabic/SentenceAra.gf | 25 ++++--------------------- 4 files changed, 9 insertions(+), 25 deletions(-) diff --git a/src/arabic/MissingAra.gf b/src/arabic/MissingAra.gf index 9dfe21b1d..774055f83 100644 --- a/src/arabic/MissingAra.gf +++ b/src/arabic/MissingAra.gf @@ -15,7 +15,6 @@ oper DetNP : Det -> NP = notYet "DetNP" ; oper ExistIP : IP -> QCl = notYet "ExistIP" ; oper FunRP : Prep -> NP -> RP -> RP = notYet "FunRP" ; oper ImpPl1 : VP -> Utt = notYet "ImpPl1" ; -oper ImpersCl : VP -> Cl = notYet "ImpersCl" ; oper PConjConj : Conj -> PConj = notYet "PConjConj" ; oper PPartNP : NP -> V2 -> NP = notYet "PPartNP" ; oper PredSCVP : SC -> VP -> Cl = notYet "PredSCVP" ; diff --git a/src/arabic/ParadigmsAra.gf b/src/arabic/ParadigmsAra.gf index 6fdc88fb5..4c9cf18a8 100644 --- a/src/arabic/ParadigmsAra.gf +++ b/src/arabic/ParadigmsAra.gf @@ -551,7 +551,9 @@ resource ParadigmsAra = open brkN' : Str -> Str -> Str -> Gender -> Species -> N = \root,sg,pl,gen,spec -> - let { kitAb = mkWord sg root; + let { kitAb = case root of { + ? + ? + "ي" => mkDefectiveAlifMaqsura (mkPat sg) (mkRoot3 root) ; + _ => mkWord sg root }; kutub = mkWord pl root } in mkFullN (reg kitAb kutub) gen spec; diff --git a/src/arabic/ResAra.gf b/src/arabic/ResAra.gf index d807d3bf8..a54db8ec8 100644 --- a/src/arabic/ResAra.gf +++ b/src/arabic/ResAra.gf @@ -221,7 +221,7 @@ oper --PerfAct, PerfPas, ImpfAct, ImpfPas, Imp, PPart verb : (_,_,_,_,_,_ : Str) -> Verb = \katab,kutib,aktub,uktab,euktub,maktUb -> { - s = table { + s = \\vf => rectifyHmz (case vf of { VPerf Act pgn => katab + suffixPerf ! pgn ; VPerf Pas pgn => kutib + suffixPerf ! pgn ; VImpf Ind Act pgn => prefixImpf!pgn + aktub + suffixImpfInd !pgn; @@ -230,7 +230,7 @@ oper VImpf m Pas pgn => prefixImpf !pgn + uktab + suffixImpfCJ m !pgn; VImp g n => euktub + suffixImpfCJ Jus ! (Per2 g n); VPPart => maktUb - } + }) } ; --affixes of sound verbs diff --git a/src/arabic/SentenceAra.gf b/src/arabic/SentenceAra.gf index cea5f38eb..b3fc8bf73 100644 --- a/src/arabic/SentenceAra.gf +++ b/src/arabic/SentenceAra.gf @@ -12,23 +12,8 @@ concrete SentenceAra of Sentence = CatAra ** open flags optimize=all_subs ; coding=utf8 ; lin -{- - PredVP np vp = - { s = \\t,p,o => - case o of { - Verbal => - case vp.comp.a.isPron of { - False => vp.s ! t ! p ! Verbal ! np.a ++ np.s ! Nom ++ vp.comp.s ! Acc ; - True => vp.s ! t ! p ! Verbal ! np.a ++ vp.comp.s ! Acc ++ np.s ! Nom - }; - Nominal => - np.s ! Nom ++ vp.s ! t ! p ! Nominal ! np.a ++ vp.comp.s ! Acc - } - }; --} - PredVP = predVP ; --- PredSCVP sc vp = mkClause sc.s (agrP3 Sg) vp ; + PredVP = predVP ; ImpVP vp = { s = \\p,g,n => @@ -57,11 +42,9 @@ concrete SentenceAra of Sentence = CatAra ** open -- SlashVS np vs sslash = TODO - - EmbedS s = {s = "أَنْ" ++ s.s ! Verbal} ; - EmbedQS qs = {s = qs.s ! QIndir} ; - EmbedVP vp = {s = uttVP vp ! Masc} ; - + EmbedS s = {s = "أَنْ" ++ s.s ! Verbal} ; + EmbedQS qs = {s = qs.s ! QIndir} ; + EmbedVP vp = {s = uttVP vp ! Masc} ; UseCl t p cl = {s = \\o => t.s ++ p.s ++