(Fre) Fix bug in predicative adj + add unit test

This commit is contained in:
Inari Listenmaa
2021-09-15 14:53:11 +08:00
parent 5281c3ba71
commit 88d0217d10
2 changed files with 26 additions and 1 deletions

View File

@@ -75,7 +75,8 @@ oper
mkAdj' : (_,_,_,_,_ : Str) -> Adj ; mkAdj' : (_,_,_,_,_ : Str) -> Adj ;
mkAdj' vieux vieil vieille vieuxs vieillement = { mkAdj' vieux vieil vieille vieuxs vieillement = {
s = table { s = table {
ASg Masc _ => pre {#voyelle => vieil ; "h" => vieil ; _ => vieux} ; ASg Masc AAttr => pre {#voyelle => vieil ; "h" => vieil ; _ => vieux} ;
ASg Masc APred => vieux ; -- `ce vin est nouveau et bon', not *nouvel et bon
ASg Fem _ => vieille ; ASg Fem _ => vieille ;
APl g => genForms vieuxs (vieille + "s") ! g ; APl g => genForms vieuxs (vieille + "s") ! g ;
AA => vieillement AA => vieillement

View File

@@ -0,0 +1,24 @@
-- Attributive forms: special form before vowel
Lang: UttNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA old_A) (UseN friend_N)))
LangFre: un vieil ami
Lang: UttNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA new_A) (UseN friend_N)))
LangFre: un nouvel ami
-- Regular form before consonant
Lang: UttNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA old_A) (UseN dog_N)))
LangFre: un vieux chien
Lang: UttNP (DetCN (DetQuant IndefArt NumSg) (AdjCN (PositA new_A) (UseN wine_N)))
LangFre: un nouveau vin
-- Predicative forms: always regular form
Lang: PredVP (DetCN (DetQuant (PossPron i_Pron) NumSg) (UseN dog_N)) (UseComp (CompAP (PositA old_A)))
LangFre: mon chien est vieux
Lang: UttS (UseCl (TTAnt TPres ASimul) PPos (PredVP (DetCN (DetQuant this_Quant NumSg) (UseN wine_N)) (UseComp (CompAP (PositA new_A)))))
LangFre: ce vin est nouveau
-- Regular form even before a vowel: not *nouvel et bon
Lang: PredVP (DetCN (DetQuant this_Quant NumSg) (UseN wine_N)) (UseComp (CompAP (ConjAP and_Conj (BaseAP (PositA new_A) (PositA good_A)))))
LangFre: ce vin est nouveau et bon