mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-22 17:42:51 -06:00
romance postverbal clitic details
This commit is contained in:
@@ -5829,8 +5829,23 @@ oper llover_89 : Str -> Verbum = \llover ->
|
||||
|
||||
-- Verbs: conversion from full verbs to present-tense verbs.
|
||||
|
||||
verbBesch : {s : VFB => Str} -> {s : CommonRomance.VF => Str} = \amar -> {s = table {
|
||||
VInfin => amar.s ! VI Infn ;
|
||||
verbBesch : {s : VFB => Str} -> {s : CommonRomance.VF => Str} = \amar ->
|
||||
{-
|
||||
-- even imperatives should be modified this way, so let's postpone this
|
||||
-- AR 21/6/2006
|
||||
let
|
||||
amare = amar.s ! VI Infn ;
|
||||
a'r = case last (init amare) of {
|
||||
"i" => "ír" ;
|
||||
"e" => "ér" ;
|
||||
_ => "ár"
|
||||
} ;
|
||||
ama'r = Predef.tk 2 amare ++ a'r
|
||||
in
|
||||
-}
|
||||
{s = table {
|
||||
-- VInfin True => ama'r ;
|
||||
VInfin _ => amar.s ! VI Infn ;
|
||||
VFin (VPres Indic) n p => amar.s ! VP (Pres Ind n p) ;
|
||||
VFin (VPres Conjunct) n p => amar.s ! VP (Pres Sub n p) ;
|
||||
VFin (VImperf Indic) n p => amar.s ! VP (Impf Ind n p) ; --# notpresent --# notpresent
|
||||
|
||||
@@ -58,21 +58,18 @@ instance DiffSpa of DiffRomance = open CommonRomance, PhonoSpa, BeschSpa, Prelud
|
||||
pronArg = \n,p,acc,dat ->
|
||||
let
|
||||
paccp = case acc of {
|
||||
CRefl => <reflPron n p Acc, p> ;
|
||||
CPron a => <argPron a.g a.n a.p Acc, a.p> ;
|
||||
_ => <[],P2>
|
||||
CRefl => <reflPron n p Acc, p,True> ;
|
||||
CPron a => <argPron a.g a.n a.p Acc, a.p,True> ;
|
||||
_ => <[],P2,False>
|
||||
} ;
|
||||
pdatp = case dat of {
|
||||
CPron a => <argPron a.g a.n a.p dative, a.p> ;
|
||||
_ => <[],P2>
|
||||
CPron a => <argPron a.g a.n a.p dative, a.p,True> ;
|
||||
_ => <[],P2,False>
|
||||
}
|
||||
in case <paccp.p2, pdatp.p2> of {
|
||||
<P3,P3> => <"se" ++ paccp.p1, []> ;
|
||||
_ => <pdatp.p1 ++ paccp.p1, []>
|
||||
<P3,P3> => <"se" ++ paccp.p1, [],True> ;
|
||||
_ => <pdatp.p1 ++ paccp.p1, [],orB paccp.p3 pdatp.p3>
|
||||
} ;
|
||||
-- case <p,acc,dat> of {
|
||||
-- <Sg,P2,CRefl,CPron {n = Sg ; p = P1}> => <"te" ++ "me", []> ;
|
||||
-- <_,_,CPron {n = Sg ; p = P2},CPron {n = Sg ; p = P1}> => <"te" ++ "me", []> ;
|
||||
|
||||
mkImperative p vp = {
|
||||
s = \\pol,aag =>
|
||||
@@ -86,7 +83,7 @@ instance DiffSpa of DiffRomance = open CommonRomance, PhonoSpa, BeschSpa, Prelud
|
||||
clpr = pronArg agr.n agr.p vp.clAcc vp.clDat ;
|
||||
compl = neg.p2 ++ clpr.p2 ++ vp.comp ! agr ++ vp.ext ! pol
|
||||
in
|
||||
neg.p1 ++ verb ++ clpr.p1 ++ compl ;
|
||||
neg.p1 ++ verb ++ bindIf clpr.p3 ++ clpr.p1 ++ compl ;
|
||||
} ;
|
||||
|
||||
negation : Polarity => (Str * Str) = table {
|
||||
@@ -97,7 +94,7 @@ instance DiffSpa of DiffRomance = open CommonRomance, PhonoSpa, BeschSpa, Prelud
|
||||
conjThan = "que" ;
|
||||
conjThat = "que" ;
|
||||
|
||||
clitInf cli inf = inf ++ cli ; --- contraction of inf
|
||||
clitInf b cli inf = inf ++ bindIf b ++ cli ;
|
||||
|
||||
relPron : Bool => AAgr => Case => Str = \\b,a,c =>
|
||||
case c of {
|
||||
|
||||
Reference in New Issue
Block a user