Add and pass all Foods languages, except Jpn

This commit is contained in:
John J. Camilleri
2021-02-16 22:41:28 +01:00
parent 312cfeb69d
commit d5cf00f711
28 changed files with 1861 additions and 0 deletions

120
testsuite/lpgf/FoodsMkd.gf Normal file
View File

@@ -0,0 +1,120 @@
-- (c) 2009 Krasimir Angelov under LGPL
concrete FoodsMkd of Foods = {
flags coding = utf8 ;
lincat
Comment = Str;
Quality = {s : Agr => Str};
Item = {s : Str; a : Agr};
Kind = {s : Number => Str; g : Gender};
lin
Pred item qual =
item.s ++
case item.a of {
ASg _ => "е";
APl => "се"
} ++
qual.s ! item.a;
This kind = {
s = case kind.g of {
Masc => "овоj";
Fem => "оваа";
Neutr => "ова"
} ++
kind.s ! Sg;
a = ASg kind.g};
That kind = {
s = case kind.g of {
Masc => "оноj";
Fem => "онаа";
Neutr => "она"
} ++
kind.s ! Sg;
a = ASg kind.g};
These kind = {s = "овие" ++ kind.s ! Pl; a = APl};
Those kind = {s = "оние" ++ kind.s ! Pl; a = APl};
Mod qual kind = {
s = \\n => qual.s ! case n of {
Sg => ASg kind.g;
Pl => APl
} ++
kind.s ! n;
g = kind.g};
Wine = {
s = table {
Sg => "вино";
Pl => "вина"
};
g = Neutr};
Cheese = {
s = table {
Sg => "сирење";
Pl => "сирењa"
};
g = Neutr};
Fish = {
s = table {
Sg => "риба";
Pl => "риби"
};
g = Fem};
Pizza = {
s = table {
Sg => "пица";
Pl => "пици"
};
g = Fem
};
Very qual = {s = \\g => "многу" ++ qual.s ! g};
Fresh = {
s = table {
ASg Masc => "свеж";
ASg Fem => "свежа";
ASg Neutr => "свежо";
APl => "свежи"}
};
Warm = {
s = table {
ASg Masc => "топол";
ASg Fem => "топла";
ASg Neutr => "топло";
APl => "топли"}
};
Italian = {
s = table {
ASg Masc => "италијански";
ASg Fem => "италијанска";
ASg Neutr => "италијанско";
APl => "италијански"}
};
Expensive = {
s = table {
ASg Masc => "скап";
ASg Fem => "скапа";
ASg Neutr => "скапо";
APl => "скапи"}
};
Delicious = {
s = table {
ASg Masc => "вкусен";
ASg Fem => "вкусна";
ASg Neutr => "вкусно";
APl => "вкусни"}
};
Boring = {
s = table {
ASg Masc => "досаден";
ASg Fem => "досадна";
ASg Neutr => "досадно";
APl => "досадни"}
};
param
Gender = Masc | Fem | Neutr;
Number = Sg | Pl;
Agr = ASg Gender | APl;
}