mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-29 20:58:55 -06:00
Add InvQuestCl in ExtraSpa; fix convertir in LexiconSpa; add phonetic changes to feminine article in PhonoSpa
This commit is contained in:
@@ -20,12 +20,15 @@ instance DiffSpa of DiffRomance = open CommonRomance, PhonoSpa, BeschSpa, Prelud
|
|||||||
CPrep P_a => "a"
|
CPrep P_a => "a"
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|
||||||
artDef : Gender -> Number -> Case -> Str = \g,n,c ->
|
artDef : Gender -> Number -> Case -> Str = \g,n,c ->
|
||||||
case <g,n,c> of {
|
case <g,n,c> of {
|
||||||
<Masc,Sg, CPrep P_de> => "del" ;
|
<Masc,Sg, CPrep P_de> => "del" ;
|
||||||
<Masc,Sg, CPrep P_a> => "al" ;
|
<Masc,Sg, CPrep P_a> => "al" ;
|
||||||
<Masc,Sg, _> => prepCase c ++ "el" ;
|
<Masc,Sg, _> => prepCase c ++ "el" ;
|
||||||
<Fem ,Sg, _> => prepCase c ++ "la" ;
|
<Fem ,Sg, CPrep P_de> => chooseDeLa ;
|
||||||
|
<Fem ,Sg, CPrep P_a> => chooseALa ;
|
||||||
|
<Fem, Sg, _> => prepCase c ++ chooseLa ;
|
||||||
<Masc,Pl, _> => prepCase c ++ "los" ;
|
<Masc,Pl, _> => prepCase c ++ "los" ;
|
||||||
<Fem ,Pl, _> => prepCase c ++ "las"
|
<Fem ,Pl, _> => prepCase c ++ "las"
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -45,12 +45,20 @@ concrete ExtraSpa of ExtraSpaAbs = ExtraRomanceSpa **
|
|||||||
"su" "su" "sus" "sus"
|
"su" "su" "sus" "sus"
|
||||||
Fem Pl P3 ;
|
Fem Pl P3 ;
|
||||||
|
|
||||||
--IL 2012-10-12
|
|
||||||
ImpNeg np vp = lin Utt{
|
ImpNeg np vp = lin Utt{
|
||||||
s = (mkClause (np.s ! Nom).comp np.hasClit False np.a vp).s
|
s = (mkClause (np.s ! Nom).comp np.hasClit False np.a vp).s
|
||||||
! DInv ! RPres ! Simul ! RNeg False ! Conjunct
|
! 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
|
-- ExtraRomance.PassVPSlash uses estar
|
||||||
PassVPSlash_ser vps =
|
PassVPSlash_ser vps =
|
||||||
let auxvp = predV copula
|
let auxvp = predV copula
|
||||||
|
|||||||
@@ -26,7 +26,9 @@ abstract ExtraSpaAbs = ExtraRomanceAbs ** {
|
|||||||
youPolPl8fem_Pron : Pron ;
|
youPolPl8fem_Pron : Pron ;
|
||||||
|
|
||||||
|
|
||||||
ImpNeg : NP -> VP -> Utt ; --IL 2012-10-12
|
ImpNeg : NP -> VP -> Utt ; --"no fumes"
|
||||||
|
InvQuestCl : Cl -> QCl ;
|
||||||
|
|
||||||
|
|
||||||
PassVPSlash_ser : VPSlash -> VP ;
|
PassVPSlash_ser : VPSlash -> VP ;
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ lin
|
|||||||
bad_A = prefA (mkADeg (regA "malo") (regA "peor")) ;
|
bad_A = prefA (mkADeg (regA "malo") (regA "peor")) ;
|
||||||
bank_N = regN "banco" ;
|
bank_N = regN "banco" ;
|
||||||
beautiful_A = prefA (regADeg "bello") ; -- bella
|
beautiful_A = prefA (regADeg "bello") ; -- bella
|
||||||
become_VA = reflV (regV "convertir") ; --- convertirse en, volverse, ponerse
|
become_VA = reflV (mkV "convertir" "convierto") ; --- convertirse en, volverse, ponerse
|
||||||
beer_N = regN "cerveza" ;
|
beer_N = regN "cerveza" ;
|
||||||
beg_V2V = mkV2V (mkV "rogar" "ruego") accusative dative ; -- pedir
|
beg_V2V = mkV2V (mkV "rogar" "ruego") accusative dative ; -- pedir
|
||||||
big_A = prefA (regADeg "grande") ;
|
big_A = prefA (regADeg "grande") ;
|
||||||
@@ -205,7 +205,7 @@ lin
|
|||||||
warm_A = regADeg "caliente" ;
|
warm_A = regADeg "caliente" ;
|
||||||
war_N = mkN "guerra" ;
|
war_N = mkN "guerra" ;
|
||||||
watch_V2 = dirV2 (regV "mirar") ; -- ver
|
watch_V2 = dirV2 (regV "mirar") ; -- ver
|
||||||
water_N = mkN "agua" ; ---- feminine, but uses masculine article "el". TODO defArt pre {} thingy for the nouns (limited set) that behave like this.
|
water_N = mkN "agua" ;
|
||||||
white_A = compADeg (regA "blanco") ;
|
white_A = compADeg (regA "blanco") ;
|
||||||
window_N = regN "ventana" ;
|
window_N = regN "ventana" ;
|
||||||
wine_N = regN "vino" ;
|
wine_N = regN "vino" ;
|
||||||
|
|||||||
@@ -10,5 +10,29 @@ oper
|
|||||||
"a" ; "e" ; "h" ; "i" ; "o" ; "u"
|
"a" ; "e" ; "h" ; "i" ; "o" ; "u"
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
--Feminine nouns that start with stressed a use the masculine article el for phonetic reasons:
|
||||||
|
--e.g. "el agua pura" but "la pura agua".
|
||||||
|
--To prevent "el aguamarina", we list explicitly words that begin with these words
|
||||||
|
falseAWords : pattern Str = #("aguam"|"aguaf"|"almac"|"alab"|"alac"|"alam"|"alan"|"alar") ;
|
||||||
|
aWords : pattern Str = #("agua" | "alma" | "ala") ;
|
||||||
|
|
||||||
|
chooseLa = pre {
|
||||||
|
falseAWords => "la" ;
|
||||||
|
aWords => "el" ;
|
||||||
|
"á" => "el" ;
|
||||||
|
_ => "la"
|
||||||
|
} ;
|
||||||
|
chooseDeLa = pre {
|
||||||
|
falseAWords => "de la" ;
|
||||||
|
aWords => "del" ;
|
||||||
|
"á" => "del" ;
|
||||||
|
_ => "de la"
|
||||||
|
} ;
|
||||||
|
|
||||||
|
chooseALa = pre {
|
||||||
|
falseAWords => "a la" ;
|
||||||
|
aWords => "al" ;
|
||||||
|
"á" => "al" ;
|
||||||
|
_ => "a la"
|
||||||
|
} ;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user