mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-03 16:22:52 -06:00
Latvian: if ~object~ is a Pron and is not modified by a RCl, it is more natural/neutral if it precedes the verb. For this, the lin types of NP and Adv are extended with a boolean field isPron (in addition to the previously introduced isRel field that indicates whether a CN or NP is modified by a RCl).
This commit is contained in:
@@ -32,12 +32,13 @@ lin
|
||||
SlashVS np vs sslash = mkClause
|
||||
np
|
||||
(lin VP {
|
||||
v = vs ;
|
||||
compl = \\_ => "," ++ vs.conj.s ++ sslash.s ;
|
||||
voice = Act ;
|
||||
leftVal = vs.leftVal ;
|
||||
v = vs ;
|
||||
compl = \\_ => "," ++ vs.conj.s ++ sslash.s ;
|
||||
voice = Act ;
|
||||
leftVal = vs.leftVal ;
|
||||
rightAgr = AgrP3 Sg Masc ;
|
||||
rightPol = Pos ;
|
||||
objPron = False
|
||||
}) ** { prep = sslash.prep } ;
|
||||
|
||||
-- ComplVS v s = { v = v ; compl = \\_ => "," ++ v.subj.s ++ s.s } ;
|
||||
@@ -74,13 +75,25 @@ oper
|
||||
}
|
||||
in lin Cl {
|
||||
s = \\mood,pol =>
|
||||
case mood of { -- subject
|
||||
case mood of { -- subject
|
||||
Deb _ _ => np.s ! Dat ; --# notpresent
|
||||
_ => np.s ! vp.leftVal
|
||||
} ++
|
||||
closeRelCl np.isRel ++
|
||||
buildVerb vp.v mood pol agr np.pol vp.rightPol ++ -- verb
|
||||
vp.compl ! np.agr -- object(s), complements, adverbial modifiers
|
||||
closeRelCl np.isRel ++ -- comma, if necessary
|
||||
case vp.objPron of {
|
||||
False =>
|
||||
buildVerb vp.v mood pol agr np.pol vp.rightPol ++ -- verb
|
||||
vp.compl ! np.agr ; -- object(s), modifiers and other complements
|
||||
True =>
|
||||
-- FIXME: the object should be separated from other complements that should remain on the right side
|
||||
(
|
||||
vp.compl ! np.agr ++ -- object(s), modifiers and other complements
|
||||
buildVerb vp.v mood pol agr np.pol vp.rightPol -- verb
|
||||
) --| (
|
||||
--buildVerb vp.v mood pol agr np.pol vp.rightPol ++ -- verb
|
||||
--vp.compl ! np.agr -- object(s), modifiers and other complements
|
||||
--)
|
||||
}
|
||||
} ;
|
||||
|
||||
-- FIXME: quick&dirty - lai kompilētos pret RGL API
|
||||
|
||||
Reference in New Issue
Block a user