diff --git a/src/portuguese/DiffPor.gf b/src/portuguese/DiffPor.gf index ea7eb3a26..04185d2d3 100644 --- a/src/portuguese/DiffPor.gf +++ b/src/portuguese/DiffPor.gf @@ -19,7 +19,17 @@ instance DiffPor of DiffRomance - [iAdvQuestionInv,chooseTA,otherInv,partAgr,sta -- exception vpAgrSubj v = ; + -- AForm and comparatives + param + AFormSimple = AF Gender Number | AA ; oper + AForm = DiffPor.AFormSimple ; + aform2aagr : AForm -> AAgr = \a -> case a of { + DiffPor.AF g n => aagr g n ; + _ => aagr Masc Sg -- "le plus lentement" + } ; + genNum2Aform : Gender -> Number -> AForm = DiffPor.AF ; + genNumPos2Aform : Gender -> Number -> Bool -> AForm = \g,n,_ -> genNum2Aform g n ; piuComp = "mais" ; conjunctCase : Case -> Case = \c -> case c of { diff --git a/src/portuguese/MorphoPor.gf b/src/portuguese/MorphoPor.gf index 9073d4452..ac95daef5 100644 --- a/src/portuguese/MorphoPor.gf +++ b/src/portuguese/MorphoPor.gf @@ -151,8 +151,8 @@ oper mkAdj : (_,_,_,_,_ : Str) -> Adj = \burro,burra,burros,burras,burramente -> {s = table { - ASg g _ => genForms burro burra ! g ; - APl g => genForms burros burras ! g ; + AF g Sg => genForms burro burra ! g ; + AF g Pl => genForms burros burras ! g ; AA => burramente } } ; @@ -169,8 +169,8 @@ oper } + "mente" ; in { s = table { - ASg g _ => genForms ms fs ! g ; - APl g => genForms mp fp ! g ; + AF g Sg => genForms ms fs ! g ; + AF g Pl => genForms mp fp ! g ; AA => adv } } ; diff --git a/src/portuguese/TerminologyPor.gf b/src/portuguese/TerminologyPor.gf index 80d507f2d..faccb14e1 100644 --- a/src/portuguese/TerminologyPor.gf +++ b/src/portuguese/TerminologyPor.gf @@ -116,7 +116,7 @@ lin nounHeading n = ss (n.s ! Sg) ; nounPluralHeading n = ss (n.s ! Pl) ; - modNounHeading a n = ss (n.s ! Sg ++ a.s ! genNumPos2Aform n.g Sg False) ; + modNounHeading a n = ss (n.s ! Sg ++ a.s ! genNum2Aform n.g Sg) ; exampleGr_N = mkN "exemplo" ; formGr_N = mkN "forma" ;