mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-07-01 19:48:34 -06:00
added a project for Portuguese as a copy of Spanish
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
concrete ExtraPor of ExtraPorAbs = ExtraRomancePor **
|
||||
open CommonRomance, PhonoPor, MorphoPor, ParadigmsPor, ParamX, ResPor, BeschPor, (I = IrregPor),
|
||||
Prelude in {
|
||||
flags coding=utf8 ;
|
||||
|
||||
lin
|
||||
i8fem_Pron = mkPronoun
|
||||
"yo" "me" "me" "mí"
|
||||
"mi" "mi" "mis" "mis"
|
||||
Fem Sg P1 ;
|
||||
these8fem_NP = makeNP ["estas"] Fem Pl ;
|
||||
they8fem_Pron = mkPronoun
|
||||
"ellas" "las" "les" "ellas"
|
||||
"su" "su" "sus" "sus"
|
||||
Fem Pl P3 ;
|
||||
this8fem_NP = pn2np (mkPN ["esta"] Fem) ;
|
||||
those8fem_NP = makeNP ["esas"] Fem Pl ;
|
||||
|
||||
we8fem_Pron = mkPronoun
|
||||
"nosotras" "nos" "nos" "nosotras"
|
||||
"nuestro" "nuestra" "nuestros" "nuestras"
|
||||
Fem Pl P1 ;
|
||||
whoPl8fem_IP = {s = \\c => prepCase c ++ "quién" ; a = aagr Fem Pl} ;
|
||||
whoSg8fem_IP = {s = \\c => prepCase c ++ "quién" ; a = aagr Fem Sg} ;
|
||||
|
||||
youSg8fem_Pron = mkPronoun
|
||||
"tú" "te" "te" "ti"
|
||||
"tu" "tu" "tus" "tus"
|
||||
Fem Sg P2 ;
|
||||
youPl8fem_Pron = mkPronoun
|
||||
"vosotras" "os" "os" "vosotras"
|
||||
"vuestro" "vuestra" "vuestros" "vuestras"
|
||||
Fem Pl P2 ;
|
||||
youPol8fem_Pron = mkPronoun
|
||||
"usted" "la" "le" "usted"
|
||||
"su" "su" "sus" "sus"
|
||||
Fem Sg P3 ;
|
||||
|
||||
youPolPl_Pron = mkPronoun
|
||||
"ustedes" "los" "les" "usted"
|
||||
"su" "su" "sus" "sus"
|
||||
Masc Pl P3 ;
|
||||
youPolPl8fem_Pron = mkPronoun
|
||||
"ustedes" "las" "les" "usted"
|
||||
"su" "su" "sus" "sus"
|
||||
Fem Pl P3 ;
|
||||
|
||||
ImpNeg np vp = lin Utt{
|
||||
s = (mkClause (np.s ! Nom).comp np.hasClit False np.a vp).s
|
||||
! DInv ! RPres ! Simul ! RNeg False ! Conjunct
|
||||
} ;
|
||||
|
||||
InvQuestCl cl = {
|
||||
s = \\t,a,p =>
|
||||
let cls = cl.s ! DInv ! t ! a ! p
|
||||
in table {
|
||||
QDir => cls ! Indic ;
|
||||
QIndir => subjIf ++ cls ! Indic
|
||||
}
|
||||
} ;
|
||||
|
||||
-- ExtraRomance.PassVPSlash uses estar
|
||||
PassVPSlash_ser vps =
|
||||
let auxvp = predV copula
|
||||
in
|
||||
insertComplement (\\a => let agr = complAgr a in vps.s.s ! VPart agr.g agr.n) {
|
||||
s = auxvp.s ;
|
||||
agr = auxvp.agr ;
|
||||
neg = vps.neg ;
|
||||
clit1 = vps.clit1 ;
|
||||
clit2 = vps.clit2 ;
|
||||
clit3 = vps.clit3 ;
|
||||
isNeg = vps.isNeg ;
|
||||
comp = vps.comp ;
|
||||
ext = vps.ext
|
||||
} ;
|
||||
|
||||
ExistsNP np =
|
||||
mkClause [] True False np.a (insertComplement (\\_ => (np.s ! Nom).ton) (predV (mkV "existir"))) ;
|
||||
|
||||
UseComp_estar comp = insertComplement comp.s (predV I.estar_V) ;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user