From 63093fd459c43e42984e759ab727f0478c843ef2 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Tue, 2 Apr 2019 14:50:03 +0200 Subject: [PATCH] (Spa) add invarA + fix typo in after_Prep --- src/spanish/ParadigmsSpa.gf | 4 +++- src/spanish/StructuralSpa.gf | 33 ++++++++++++++++----------------- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/src/spanish/ParadigmsSpa.gf b/src/spanish/ParadigmsSpa.gf index 0f1492897..0993d935e 100644 --- a/src/spanish/ParadigmsSpa.gf +++ b/src/spanish/ParadigmsSpa.gf @@ -156,7 +156,7 @@ oper -- Some adjectives need the feminine form separately. - mkA : (espanol,espanola : Str) -> A ; + mkA : (español,española : Str) -> A ; -- One-place adjectives compared with "mas" need five forms in the worst -- case (masc and fem singular, masc plural, adverbial). @@ -182,6 +182,8 @@ oper prefixA : A -> A ; -- adjective before noun (default after noun) + invarA : Str -> A -- invariable adjective + = \s -> mkA s s s s s ; --3 Two-place adjectives -- diff --git a/src/spanish/StructuralSpa.gf b/src/spanish/StructuralSpa.gf index ce2467531..050647a24 100644 --- a/src/spanish/StructuralSpa.gf +++ b/src/spanish/StructuralSpa.gf @@ -1,5 +1,5 @@ -concrete StructuralSpa of Structural = CatSpa ** - open PhonoSpa, MorphoSpa, ParadigmsSpa, BeschSpa, +concrete StructuralSpa of Structural = CatSpa ** + open PhonoSpa, MorphoSpa, ParadigmsSpa, BeschSpa, MakeStructuralSpa, (X = ConstructX), Prelude in { flags optimize=all ; @@ -10,7 +10,7 @@ lin -- have_not_V3 above_Prep = mkPrep "sobre" ; - after_Prep = {s = ["despues"] ; c = MorphoSpa.genitive ; isDir = False} ; + after_Prep = mkPrep "después" genitive ; all_Predet = { s = \\a,c => prepCase c ++ aagrForms "todo" "toda" "todos" "todas" ! a ; c = Nom ; @@ -32,7 +32,7 @@ lin by8means_Prep = mkPrep "por" ; can8know_VV = mkVV (verboV (saber_71 "saber")) ; can_VV = mkVV (verboV (poder_58 "poder")) ; - during_Prep = mkPrep "durante" ; + during_Prep = mkPrep "durante" ; either7or_DConj = {s1,s2 = "o" ; n = Sg} ; everybody_NP = makeNP ["todos"] Masc Pl ; every_Det = mkDeterminer "cada" "cada" Sg False ; @@ -43,8 +43,8 @@ lin --- first_Ord = {s = \\ag => (regA "primero").s ! Posit ! AF ag.g ag.n} ; for_Prep = mkPrep "para" ; from_Prep = complGen ; --- - he_Pron = - mkPronoun + he_Pron = + mkPronoun "él" "lo" "le" "él" "su" "su" "sus" "sus" Masc Sg P3 ; @@ -57,13 +57,13 @@ lin if_Subj = ss "si" ** {m = Indic} ; if_then_Conj = {s1 = "si" ; s2 = "entonces" ; n = Sg ; lock_Conj = <>} ; in8front_Prep = {s = "delante" ; c = MorphoSpa.genitive ; isDir = False} ; - i_Pron = + i_Pron = mkPronoun "yo" "me" "me" "mí" "mi" "mi" "mis" "mis" Masc Sg P1 ; in_Prep = mkPrep "en" ; - it_Pron = + it_Pron = mkPronoun "eso" "lo" "le" "eso" "su" "su" "sus" "sus" @@ -101,7 +101,7 @@ lin please_Voc = ss ["por favor"] ; possess_Prep = complGen ; quite_Adv = ss "bastante" ; - she_Pron = + she_Pron = mkPronoun "ella" "la" "le" "ella" "su" "su" "sus" "sus" @@ -109,7 +109,7 @@ lin so_AdA = ss "tanto" ; somebody_NP = pn2np (mkPN "alguien" Masc) ; somePl_Det = mkDeterminer "algunos" "algunas" Pl False ; - someSg_Det = mkDeterminer "algún" "alguna" Sg False ; + someSg_Det = mkDeterminer "algún" "alguna" Sg False ; something_NP = pn2np (mkPN ["algo"] Masc) ; somewhere_Adv = ss ["en alguna parte"] ; that_Quant = mkQuantifier "ese" "esa" "esos" "esas" ; @@ -128,8 +128,8 @@ lin under_Prep = mkPrep "bajo" ; very_AdA = ss "muy" ; want_VV = mkVV (verboV (querer_64 "querer")) ; - we_Pron = - mkPronoun + we_Pron = + mkPronoun "nosotros" "nos" "nos" "nosotros" "nuestro" "nuestra" "nuestros" "nuestras" Masc Pl P1 ; @@ -139,8 +139,8 @@ lin when_Subj = ss "cuando" ** {m = Indic} ; where_IAdv = ss "dónde" ; which_IQuant = {s = table { - Sg => \\g,c => prepCase c ++ "cual" ; - Pl => \\g,c => prepCase c ++ "cuales" + Sg => \\g,c => prepCase c ++ "cual" ; + Pl => \\g,c => prepCase c ++ "cuales" } } ; whoPl_IP = {s = \\c => prepCase c ++ "quién" ; a = aagr Masc Pl} ; @@ -149,7 +149,7 @@ lin without_Prep = mkPrep "sin" ; with_Prep = mkPrep "con" ; yes_Utt = ss "sí" ; - youSg_Pron = mkPronoun + youSg_Pron = mkPronoun "tú" "te" "te" "ti" "tu" "tu" "tus" "tus" Masc Sg P2 ; @@ -166,7 +166,7 @@ lin oper etConj : {s : Str ; n : MorphoSpa.Number} = {s = pre { - "y" ; + "y" ; "y" / strs {"ya" ; "ye" ; "yo" ; "yu"} ; "e" / strs {"i" ; "hi" ; "y"} }} ** {n = Pl} ; @@ -178,4 +178,3 @@ lin lin language_title_Utt = ss "español" ; } -