mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-27 08:58:55 -06:00
added NamesLav.gf
This commit is contained in:
@@ -112,7 +112,7 @@ lincat
|
|||||||
|
|
||||||
PN,LN = ProperNoun ;
|
PN,LN = ProperNoun ;
|
||||||
GN = {s : Case => Str ; gend : Gender} ;
|
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
|
-- Overriden from CommonX
|
||||||
|
|
||||||
|
|||||||
@@ -93,12 +93,12 @@ lin InflectionSN = \pn -> {
|
|||||||
t = "ln" ;
|
t = "ln" ;
|
||||||
s1 = heading1 "Family Name" ;
|
s1 = heading1 "Family Name" ;
|
||||||
s2 = frameTable (
|
s2 = frameTable (
|
||||||
tr (th "Nom" ++ td (pn.s ! Male ! Nom)) ++
|
tr (th "Nom" ++ td (pn.s ! Masc ! Nom)) ++
|
||||||
tr (th "Acc" ++ td (pn.s ! Male ! Acc)) ++
|
tr (th "Acc" ++ td (pn.s ! Masc ! Acc)) ++
|
||||||
tr (th "Dat" ++ td (pn.s ! Male ! Dat)) ++
|
tr (th "Dat" ++ td (pn.s ! Masc ! Dat)) ++
|
||||||
tr (th "Gen" ++ td (pn.s ! Male ! Gen)) ++
|
tr (th "Gen" ++ td (pn.s ! Masc ! Gen)) ++
|
||||||
tr (th "Loc" ++ td (pn.s ! Male ! Loc)) ++
|
tr (th "Loc" ++ td (pn.s ! Masc ! Loc)) ++
|
||||||
tr (th "Voc" ++ td (pn.s ! Male ! Voc))) ;
|
tr (th "Voc" ++ td (pn.s ! Masc ! Voc))) ;
|
||||||
s3=[]
|
s3=[]
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,9 @@ concrete GrammarLav of Grammar =
|
|||||||
TextX - [Adv,CAdv],
|
TextX - [Adv,CAdv],
|
||||||
StructuralLav,
|
StructuralLav,
|
||||||
IdiomLav,
|
IdiomLav,
|
||||||
TenseX - [Adv,CAdv]
|
TenseX - [Adv,CAdv],
|
||||||
|
NamesLav
|
||||||
|
|
||||||
** {
|
** {
|
||||||
|
|
||||||
flags
|
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 = overload {
|
||||||
mkSN : Str -> SN = \s -> lin SN {s = \\_ => (mkProperNoun s Sg).s; pl = (mkProperNoun s Sg).s}; -- default gender utrum
|
mkSN : Str -> SN = \s -> lin SN {s = \\_ => (mkProperNoun s Sg).s; pl = (mkProperNoun s Sg).s}; -- default gender utrum
|
||||||
mkSN : Str -> Str -> Str -> SN =
|
mkSN : Str -> Str -> Str -> SN =
|
||||||
\male,female,pl -> lin SN {s = table {Male => (mkProperNoun male Sg).s;
|
\male,female,pl -> lin SN {s = table {Masc => (mkProperNoun male Sg).s;
|
||||||
Female => (mkProperNoun female Sg).s} ;
|
Fem => (mkProperNoun female Sg).s} ;
|
||||||
pl = (mkProperNoun pl Sg).s
|
pl = (mkProperNoun pl Sg).s
|
||||||
} ;
|
} ;
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user