forked from GitHub/gf-rgl
added NamesLav.gf
This commit is contained in:
@@ -112,7 +112,7 @@ lincat
|
||||
|
||||
PN,LN = ProperNoun ;
|
||||
GN = {s : Case => Str ; gend : Gender} ;
|
||||
SN = {s : Sex => Case => Str; pl : Case => Str} ;
|
||||
SN = {s : Gender => Case => Str; pl : Case => Str} ;
|
||||
|
||||
-- Overriden from CommonX
|
||||
|
||||
|
||||
@@ -93,12 +93,12 @@ lin InflectionSN = \pn -> {
|
||||
t = "ln" ;
|
||||
s1 = heading1 "Family Name" ;
|
||||
s2 = frameTable (
|
||||
tr (th "Nom" ++ td (pn.s ! Male ! Nom)) ++
|
||||
tr (th "Acc" ++ td (pn.s ! Male ! Acc)) ++
|
||||
tr (th "Dat" ++ td (pn.s ! Male ! Dat)) ++
|
||||
tr (th "Gen" ++ td (pn.s ! Male ! Gen)) ++
|
||||
tr (th "Loc" ++ td (pn.s ! Male ! Loc)) ++
|
||||
tr (th "Voc" ++ td (pn.s ! Male ! Voc))) ;
|
||||
tr (th "Nom" ++ td (pn.s ! Masc ! Nom)) ++
|
||||
tr (th "Acc" ++ td (pn.s ! Masc ! Acc)) ++
|
||||
tr (th "Dat" ++ td (pn.s ! Masc ! Dat)) ++
|
||||
tr (th "Gen" ++ td (pn.s ! Masc ! Gen)) ++
|
||||
tr (th "Loc" ++ td (pn.s ! Masc ! Loc)) ++
|
||||
tr (th "Voc" ++ td (pn.s ! Masc ! Voc))) ;
|
||||
s3=[]
|
||||
} ;
|
||||
|
||||
|
||||
@@ -14,7 +14,9 @@ concrete GrammarLav of Grammar =
|
||||
TextX - [Adv,CAdv],
|
||||
StructuralLav,
|
||||
IdiomLav,
|
||||
TenseX - [Adv,CAdv]
|
||||
TenseX - [Adv,CAdv],
|
||||
NamesLav
|
||||
|
||||
** {
|
||||
|
||||
flags
|
||||
|
||||
49
src/latvian/NamesLav.gf
Normal file
49
src/latvian/NamesLav.gf
Normal file
@@ -0,0 +1,49 @@
|
||||
concrete NamesLav of Names = CatLav ** open Prelude, ResLav in {
|
||||
|
||||
lin
|
||||
GivenName gn = {
|
||||
s = gn.s ;
|
||||
agr = AgrP3 Sg gn.gend ;
|
||||
pol = Pos ;
|
||||
isRel = False ;
|
||||
isPron = False
|
||||
} ;
|
||||
MaleSurname sn = {
|
||||
s = sn.s ! Masc ;
|
||||
agr = AgrP3 Sg Masc ;
|
||||
pol = Pos ;
|
||||
isRel = False ;
|
||||
isPron = False
|
||||
} ;
|
||||
FemaleSurname sn = {
|
||||
s = sn.s ! Fem ;
|
||||
agr = AgrP3 Sg Fem ;
|
||||
pol = Pos ;
|
||||
isRel = False ;
|
||||
isPron = False
|
||||
} ;
|
||||
PlSurname sn = {
|
||||
s = sn.pl ;
|
||||
agr = AgrP3 Pl Masc ;
|
||||
pol = Pos ;
|
||||
isRel = False ;
|
||||
isPron = False
|
||||
} ;
|
||||
FullName gn sn = {
|
||||
s = \\c => gn.s ! c ++ sn.s ! gn.gend ! c ;
|
||||
agr = AgrP3 Sg gn.gend ;
|
||||
pol = Pos ;
|
||||
isRel = False ;
|
||||
isPron = False
|
||||
} ;
|
||||
|
||||
lin
|
||||
UseLN, PlainLN = \ln -> {
|
||||
s = ln.s ;
|
||||
agr = AgrP3 ln.num ln.gend ;
|
||||
pol = Pos ;
|
||||
isRel = False ;
|
||||
isPron = False
|
||||
} ;
|
||||
|
||||
}
|
||||
@@ -65,8 +65,8 @@ oper
|
||||
mkSN = overload {
|
||||
mkSN : Str -> SN = \s -> lin SN {s = \\_ => (mkProperNoun s Sg).s; pl = (mkProperNoun s Sg).s}; -- default gender utrum
|
||||
mkSN : Str -> Str -> Str -> SN =
|
||||
\male,female,pl -> lin SN {s = table {Male => (mkProperNoun male Sg).s;
|
||||
Female => (mkProperNoun female Sg).s} ;
|
||||
\male,female,pl -> lin SN {s = table {Masc => (mkProperNoun male Sg).s;
|
||||
Fem => (mkProperNoun female Sg).s} ;
|
||||
pl = (mkProperNoun pl Sg).s
|
||||
} ;
|
||||
} ;
|
||||
|
||||
Reference in New Issue
Block a user