From e2fbde46f948fc86ecd2f61b647b7f3dce074cb4 Mon Sep 17 00:00:00 2001 From: aarne Date: Mon, 23 May 2005 15:42:54 +0000 Subject: [PATCH] Spanish verbs (almost) corrected --- examples/stoneage/StoneageSpa.gf | 6 +- lib/resource/spanish/BasicSpa.gf | 30 +-- lib/resource/spanish/BeschSpa.gf | 257 ++++++++++++++++++++------ lib/resource/spanish/ParadigmsSpa.gf | 13 ++ lib/resource/spanish/SwadeshLexSpa.gf | 8 +- 5 files changed, 232 insertions(+), 82 deletions(-) diff --git a/examples/stoneage/StoneageSpa.gf b/examples/stoneage/StoneageSpa.gf index 5b2ad4c3f..490ce724d 100644 --- a/examples/stoneage/StoneageSpa.gf +++ b/examples/stoneage/StoneageSpa.gf @@ -1,7 +1,7 @@ --# -path=.:../../lib/resource/romance:../../lib/resource/abstract:../../lib/resource/spanish:../../lib/prelude concrete StoneageSpa of Stoneage - = open SyntaxSpa, RulesSpa, StructuralSpa, ParadigmsSpa, SwadeshLexSpa, + = open SyntaxSpa, RulesSpa, StructuralSpa, ClauseSpa, ParadigmsSpa, SwadeshLexSpa, StoneageResSpa in { flags @@ -68,7 +68,9 @@ lin Come = PresV come_V ; Lie = PresReflV lie_V ; Sit = PresReflV sit_V ; - Stand = PresReflV stand_V ; +-- Stand = PresV stand_V ; ---- "estar de pie" + Stand x = IndicPhrase (UseCl (PosTP TPresent ASimul) (AdvCl (SPredV x stand_V) + (AdvPP (PrepNP part_Prep (MassNP (UseN foot_N)))))) ; Turn = PresV turn_V ; Fall = PresV fall_V ; Sing = PresV sing_V ; diff --git a/lib/resource/spanish/BasicSpa.gf b/lib/resource/spanish/BasicSpa.gf index dc12a9014..0206fa645 100644 --- a/lib/resource/spanish/BasicSpa.gf +++ b/lib/resource/spanish/BasicSpa.gf @@ -11,10 +11,10 @@ flags lin airplane_N = regN "aeroplano" ; -- avión is masculine - answer_V2S = mkV2S (regV "responder") dative ; ----V + answer_V2S = mkV2S (regV "responder") dative ; apartment_N = regN "apartamento" ; apple_N = regN "manzana" ; - art_N = regN "arte" ; -- masculine + art_N = regN "arte" ; ask_V2Q = mkV2Q (regV "preguntar") dative ; baby_N = regN "bebé" ; -- can be used for both fem. & masc. bad_ADeg = prefADeg (mkADeg (regA "malo") (regA "peor")) ; @@ -34,7 +34,7 @@ lin boss_N = regN "jefe" ; boy_N = regN "niño" ; bread_N = regN "pan" ; - break_V2 = dirV2 (regV "romper") ; ----V + break_V2 = dirV2 (special_ppV (regV "romper") "roto") ; broad_ADeg = regADeg "ancho" ; brother_N2 = deN2 (regN "hermano") ; brown_ADeg = regADeg "marrón" ; @@ -61,18 +61,18 @@ lin country_N = regN "país" ; -- masc cousin_N = regN "primo" ; cow_N = regN "vaca" ; - die_V = regV "morir" ; ----V verboV (morire_105 "morir") ; + die_V = verboV (morir_35b "morir") ; dirty_ADeg = regADeg "sucio" ; doctor_N = regN "médico" ; -- médica dog_N = regN "perro" ; -- perra door_N = regN "puerta" ; drink_V2 = dirV2 (regV "tomar") ; -- beber easy_A2V = mkA2V (regA "fácil") dative genitive ; - eat_V2 = dirV2 (regV "comer") ; ----V + eat_V2 = dirV2 (regV "comer") ; enemy_N = regN "enemigo" ; -- enemiga factory_N = regN "fábrica" ; father_N2 = deN2 (regN "padre") ; - fear_VS = mkVS (regV "temer") ; ----V mkVS (verboV (temere_20 "temer")) ; + fear_VS = mkVS (regV "temer") ; find_V2 = dirV2 (regV "encontrar") ; fish_N = regN "pez" ; floor_N = regN "suelo" ; -- piso @@ -92,7 +92,7 @@ lin hate_V2 = dirV2 (regV "odiar") ; hat_N = regN "sombrero" ; have_V2 = dirV2 (verboV (tener_4 "tener")) ; - hear_V2 = dirV2 (regV "oir") ; ----V -- escuchar + hear_V2 = dirV2 (regV "escuchar") ; -- oír_51 hill_N = regN "colina" ; hope_VS = mkVS (regV "esperar") ; horse_N = regN "caballo" ; @@ -105,14 +105,14 @@ lin know_V2 = dirV2 (verboV (saber_71 "saber")) ; -- conocer lake_N = regN "lago" ; lamp_N = regN "lámpara" ; - learn_V2 = dirV2 (regV "aprender") ; ----V + learn_V2 = dirV2 (regV "aprender") ; leather_N = regN "cuero" ; leave_V2 = dirV2 (regV "partir") ; -- irse, dejar like_V2 = dirV2 (regV "gustar") ; listen_V2 = dirV2 (regV "escuchar") ; live_V = verboV (vivir_7 "vivir") ; long_ADeg = regADeg "largo" ; - lose_V2 = dirV2 (regV "perder") ; ----V + lose_V2 = dirV2 (verboV (defender_29 "perder")) ; love_N = regN "amor" ; love_V2 = dirV2 (regV "amar") ; man_N = regN "hombre" ; -- masc @@ -128,7 +128,7 @@ lin newspaper_N = regN "periódico" ; -- diario oil_N = regN "aceite" ; old_ADeg = prefADeg (regADeg "viejo") ; - open_V2 = dirV2 (regV "abrir") ; ----V + open_V2 = dirV2 (special_ppV (regV "abrir") "abierto") ; paint_V2A = mkV2A (regV "pintar") accusative ; paper_N = regN "papel" ; peace_N = femN (regN "paz") ; @@ -142,7 +142,7 @@ lin queen_N = regN "reina" ; radio_N = mkN "radio" "radio" feminine ; rain_V0 = mkV0 (verboV (llover_89 "llover")) ; - read_V2 = dirV2 (regV "leer") ; ----V + read_V2 = dirV2 (verboV (creer_26 "leer")) ; red_ADeg = regADeg "rojo" ; religion_N = femN (regN "religión") ; restaurant_N = regN "restaurante" ; -- restorán, restaurán, masc @@ -150,14 +150,14 @@ lin rock_N = regN "roca" ; roof_N = regN "techo" ; rubber_N = regN "goma" ; - run_V = regV "correr" ; ----V verboV (correre_38 "correr") ; + run_V = regV "correr" ; say_VS = mkVS (verboV (decir_28 "decir")) ; school_N = regN "escuela" ; science_N = regN "ciencia" ; sea_N = regN "mar" ; -- masc & fem seek_V2 = dirV2 (regV "buscar") ; see_V2 = dirV2 (verboV (ver_83 "ver")) ; - sell_V3 = dirV3 (regV "vender") dative ; ----V + sell_V3 = dirV3 (regV "vender") dative ; send_V3 = dirV3 (regV "mandar") dative ; sheep_N = regN "oveja" ; ship_N = femN (regN "nave") ; @@ -180,7 +180,7 @@ lin stupid_ADeg = regADeg "estúpido" ; sun_N = regN "sol" ; switch8off_V2 = dirV2 (regV "apagar") ; - switch8on_V2 = dirV2 (regV "prender") ; ----V + switch8on_V2 = dirV2 (regV "prender") ; table_N = regN "mesa" ; talk_V3 = mkV3 (regV "hablar") dative genitive ; teacher_N = regN "maestro" ; -- maestra @@ -209,7 +209,7 @@ lin woman_N = regN "mujer" ; -- fem wonder_VQ = mkVQ (regV "preguntar") ; ---- preguntarse wood_N = regN "madera" ; - write_V2 = dirV2 (regV "escribir") ; ----V + write_V2 = dirV2 (special_ppV (regV "escribir") "escrito") ; yellow_ADeg = regADeg "amarillo" ; young_ADeg = prefADeg (regADeg "joven") ; diff --git a/lib/resource/spanish/BeschSpa.gf b/lib/resource/spanish/BeschSpa.gf index 82af10e41..fe7be5fc7 100644 --- a/lib/resource/spanish/BeschSpa.gf +++ b/lib/resource/spanish/BeschSpa.gf @@ -1861,69 +1861,72 @@ oper decir_28 : Str -> Verbum = \decir -> } } ; oper defender_29 : Str -> Verbum = \defender -> - let def_ = Predef.tk 5 defender in + let + def_ = Predef.tk 5 defender ; + nd_ = Predef.tk 2 (Predef.dp 4 defender) + in {s = table { - VI Infn => def_ + "ender" ; - VI Ger => def_ + "endiendo" ; - VI Part => def_ + "endido" ; - VP (Pres Ind Sg P1) => def_ + "iendo" ; - VP (Pres Ind Sg P2) => def_ + "iendes" ; - VP (Pres Ind Sg P3) => def_ + "iende" ; - VP (Pres Ind Pl P1) => def_ + "endemos" ; - VP (Pres Ind Pl P2) => def_ + "endéis" ; - VP (Pres Ind Pl P3) => def_ + "ienden" ; - VP (Pres Subj Sg P1) => def_ + "ienda" ; - VP (Pres Subj Sg P2) => def_ + "iendas" ; - VP (Pres Subj Sg P3) => def_ + "ienda" ; - VP (Pres Subj Pl P1) => def_ + "endamos" ; - VP (Pres Subj Pl P2) => def_ + "endáis" ; - VP (Pres Subj Pl P3) => def_ + "iendan" ; - VP (Impf Ind Sg P1) => def_ + "endía" ; - VP (Impf Ind Sg P2) => def_ + "endías" ; - VP (Impf Ind Sg P3) => def_ + "endía" ; - VP (Impf Ind Pl P1) => def_ + "endíamos" ; - VP (Impf Ind Pl P2) => def_ + "endíais" ; - VP (Impf Ind Pl P3) => def_ + "endían" ; - VP (Impf Subj Sg P1) => variants {def_ + "endiera" ; def_ + "endiese"} ; - VP (Impf Subj Sg P2) => variants {def_ + "endieras" ; def_ + "endieses"} ; - VP (Impf Subj Sg P3) => variants {def_ + "endiera" ; def_ + "endiese"} ; - VP (Impf Subj Pl P1) => variants {def_ + "endiéramos" ; def_ + "endiésemos"} ; - VP (Impf Subj Pl P2) => variants {def_ + "endierais" ; def_ + "endieseis"} ; - VP (Impf Subj Pl P3) => variants {def_ + "endieran" ; def_ + "endiesen"} ; - VP (Pret Sg P1) => def_ + "endí" ; - VP (Pret Sg P2) => def_ + "endiste" ; - VP (Pret Sg P3) => def_ + "endió" ; - VP (Pret Pl P1) => def_ + "endimos" ; - VP (Pret Pl P2) => def_ + "endisteis" ; - VP (Pret Pl P3) => def_ + "endieron" ; - VP (Fut Ind Sg P1) => def_ + "enderé" ; - VP (Fut Ind Sg P2) => def_ + "enderás" ; - VP (Fut Ind Sg P3) => def_ + "enderá" ; - VP (Fut Ind Pl P1) => def_ + "enderemos" ; - VP (Fut Ind Pl P2) => def_ + "enderéis" ; - VP (Fut Ind Pl P3) => def_ + "enderán" ; - VP (Fut Subj Sg P1) => def_ + "endiere" ; - VP (Fut Subj Sg P2) => def_ + "endieres" ; - VP (Fut Subj Sg P3) => def_ + "endiere" ; - VP (Fut Subj Pl P1) => def_ + "endiéremos" ; - VP (Fut Subj Pl P2) => def_ + "endiereis" ; - VP (Fut Subj Pl P3) => def_ + "endieren" ; - VP (Cond Sg P1) => def_ + "endería" ; - VP (Cond Sg P2) => def_ + "enderías" ; - VP (Cond Sg P3) => def_ + "endería" ; - VP (Cond Pl P1) => def_ + "enderíamos" ; - VP (Cond Pl P2) => def_ + "enderíais" ; - VP (Cond Pl P3) => def_ + "enderían" ; + VI Infn => def_ + "e" + nd_ + "er" ; + VI Ger => def_ + "e" + nd_ + "iendo" ; + VI Part => def_ + "e" + nd_ + "ido" ; + VP (Pres Ind Sg P1) => def_ + "ie" + nd_ + "o" ; + VP (Pres Ind Sg P2) => def_ + "ie" + nd_ + "es" ; + VP (Pres Ind Sg P3) => def_ + "ie" + nd_ + "e" ; + VP (Pres Ind Pl P1) => def_ + "e" + nd_ + "emos" ; + VP (Pres Ind Pl P2) => def_ + "e" + nd_ + "éis" ; + VP (Pres Ind Pl P3) => def_ + "ie" + nd_ + "en" ; + VP (Pres Subj Sg P1) => def_ + "ie" + nd_ + "a" ; + VP (Pres Subj Sg P2) => def_ + "ie" + nd_ + "as" ; + VP (Pres Subj Sg P3) => def_ + "ie" + nd_ + "a" ; + VP (Pres Subj Pl P1) => def_ + "e" + nd_ + "amos" ; + VP (Pres Subj Pl P2) => def_ + "e" + nd_ + "áis" ; + VP (Pres Subj Pl P3) => def_ + "ie" + nd_ + "an" ; + VP (Impf Ind Sg P1) => def_ + "e" + nd_ + "ía" ; + VP (Impf Ind Sg P2) => def_ + "e" + nd_ + "ías" ; + VP (Impf Ind Sg P3) => def_ + "e" + nd_ + "ía" ; + VP (Impf Ind Pl P1) => def_ + "e" + nd_ + "íamos" ; + VP (Impf Ind Pl P2) => def_ + "e" + nd_ + "íais" ; + VP (Impf Ind Pl P3) => def_ + "e" + nd_ + "ían" ; + VP (Impf Subj Sg P1) => variants {def_ + "e" + nd_ + "iera" ; def_ + "e" + nd_ + "iese"} ; + VP (Impf Subj Sg P2) => variants {def_ + "e" + nd_ + "ieras" ; def_ + "e" + nd_ + "ieses"} ; + VP (Impf Subj Sg P3) => variants {def_ + "e" + nd_ + "iera" ; def_ + "e" + nd_ + "iese"} ; + VP (Impf Subj Pl P1) => variants {def_ + "e" + nd_ + "iéramos" ; def_ + "e" + nd_ + "iésemos"} ; + VP (Impf Subj Pl P2) => variants {def_ + "e" + nd_ + "ierais" ; def_ + "e" + nd_ + "ieseis"} ; + VP (Impf Subj Pl P3) => variants {def_ + "e" + nd_ + "ieran" ; def_ + "e" + nd_ + "iesen"} ; + VP (Pret Sg P1) => def_ + "e" + nd_ + "í" ; + VP (Pret Sg P2) => def_ + "e" + nd_ + "iste" ; + VP (Pret Sg P3) => def_ + "e" + nd_ + "ió" ; + VP (Pret Pl P1) => def_ + "e" + nd_ + "imos" ; + VP (Pret Pl P2) => def_ + "e" + nd_ + "isteis" ; + VP (Pret Pl P3) => def_ + "e" + nd_ + "ieron" ; + VP (Fut Ind Sg P1) => def_ + "e" + nd_ + "eré" ; + VP (Fut Ind Sg P2) => def_ + "e" + nd_ + "erás" ; + VP (Fut Ind Sg P3) => def_ + "e" + nd_ + "erá" ; + VP (Fut Ind Pl P1) => def_ + "e" + nd_ + "eremos" ; + VP (Fut Ind Pl P2) => def_ + "e" + nd_ + "eréis" ; + VP (Fut Ind Pl P3) => def_ + "e" + nd_ + "erán" ; + VP (Fut Subj Sg P1) => def_ + "e" + nd_ + "iere" ; + VP (Fut Subj Sg P2) => def_ + "e" + nd_ + "ieres" ; + VP (Fut Subj Sg P3) => def_ + "e" + nd_ + "iere" ; + VP (Fut Subj Pl P1) => def_ + "e" + nd_ + "iéremos" ; + VP (Fut Subj Pl P2) => def_ + "e" + nd_ + "iereis" ; + VP (Fut Subj Pl P3) => def_ + "e" + nd_ + "ieren" ; + VP (Cond Sg P1) => def_ + "e" + nd_ + "ería" ; + VP (Cond Sg P2) => def_ + "e" + nd_ + "erías" ; + VP (Cond Sg P3) => def_ + "e" + nd_ + "ería" ; + VP (Cond Pl P1) => def_ + "e" + nd_ + "eríamos" ; + VP (Cond Pl P2) => def_ + "e" + nd_ + "eríais" ; + VP (Cond Pl P3) => def_ + "e" + nd_ + "erían" ; VP (Imp Sg P1) => variants {} ; - VP (Imp Sg P2) => def_ + "iende" ; - VP (Imp Sg P3) => def_ + "ienda" ; - VP (Imp Pl P1) => def_ + "endamos" ; - VP (Imp Pl P2) => def_ + "ended" ; - VP (Imp Pl P3) => def_ + "iendan" ; - VP (Pass Sg Masc) => def_ + "endido" ; - VP (Pass Sg Fem) => def_ + "endida" ; - VP (Pass Pl Masc) => def_ + "endidos" ; - VP (Pass Pl Fem) => def_ + "endidas" + VP (Imp Sg P2) => def_ + "ie" + nd_ + "e" ; + VP (Imp Sg P3) => def_ + "ie" + nd_ + "a" ; + VP (Imp Pl P1) => def_ + "e" + nd_ + "amos" ; + VP (Imp Pl P2) => def_ + "e" + nd_ + "ed" ; + VP (Imp Pl P3) => def_ + "ie" + nd_ + "an" ; + VP (Pass Sg Masc) => def_ + "e" + nd_ + "ido" ; + VP (Pass Sg Fem) => def_ + "e" + nd_ + "ida" ; + VP (Pass Pl Masc) => def_ + "e" + nd_ + "idos" ; + VP (Pass Pl Fem) => def_ + "e" + nd_ + "idas" } } ; oper delinquir_30 : Str -> Verbum = \delinquir -> @@ -2322,6 +2325,72 @@ oper dormir_35 : Str -> Verbum = \dormir -> VP (Pass Pl Fem) => d_ + "ormidas" } } ; +oper morir_35b : Str -> Verbum = \morir -> + let d_ = Predef.tk 4 morir in + {s = table { + VI Infn => d_ + "orir" ; + VI Ger => d_ + "uriendo" ; + VI Part => d_ + "orido" ; + VP (Pres Ind Sg P1) => d_ + "uero" ; + VP (Pres Ind Sg P2) => d_ + "ueres" ; + VP (Pres Ind Sg P3) => d_ + "uere" ; + VP (Pres Ind Pl P1) => d_ + "orimos" ; + VP (Pres Ind Pl P2) => d_ + "orís" ; + VP (Pres Ind Pl P3) => d_ + "ueren" ; + VP (Pres Subj Sg P1) => d_ + "uera" ; + VP (Pres Subj Sg P2) => d_ + "ueras" ; + VP (Pres Subj Sg P3) => d_ + "uera" ; + VP (Pres Subj Pl P1) => d_ + "uramos" ; + VP (Pres Subj Pl P2) => d_ + "uráis" ; + VP (Pres Subj Pl P3) => d_ + "ueran" ; + VP (Impf Ind Sg P1) => d_ + "oría" ; + VP (Impf Ind Sg P2) => d_ + "orías" ; + VP (Impf Ind Sg P3) => d_ + "oría" ; + VP (Impf Ind Pl P1) => d_ + "oríamos" ; + VP (Impf Ind Pl P2) => d_ + "oríais" ; + VP (Impf Ind Pl P3) => d_ + "orían" ; + VP (Impf Subj Sg P1) => variants {d_ + "uriera" ; d_ + "uriese"} ; + VP (Impf Subj Sg P2) => variants {d_ + "urieras" ; d_ + "urieses"} ; + VP (Impf Subj Sg P3) => variants {d_ + "uriera" ; d_ + "uriese"} ; + VP (Impf Subj Pl P1) => variants {d_ + "uriéramos" ; d_ + "uriésemos"} ; + VP (Impf Subj Pl P2) => variants {d_ + "urierais" ; d_ + "urieseis"} ; + VP (Impf Subj Pl P3) => variants {d_ + "urieran" ; d_ + "uriesen"} ; + VP (Pret Sg P1) => d_ + "orí" ; + VP (Pret Sg P2) => d_ + "oriste" ; + VP (Pret Sg P3) => d_ + "urió" ; + VP (Pret Pl P1) => d_ + "orimos" ; + VP (Pret Pl P2) => d_ + "oristeis" ; + VP (Pret Pl P3) => d_ + "urieron" ; + VP (Fut Ind Sg P1) => d_ + "oriré" ; + VP (Fut Ind Sg P2) => d_ + "orirás" ; + VP (Fut Ind Sg P3) => d_ + "orirá" ; + VP (Fut Ind Pl P1) => d_ + "oriremos" ; + VP (Fut Ind Pl P2) => d_ + "oriréis" ; + VP (Fut Ind Pl P3) => d_ + "orirán" ; + VP (Fut Subj Sg P1) => d_ + "uriere" ; + VP (Fut Subj Sg P2) => d_ + "urieres" ; + VP (Fut Subj Sg P3) => d_ + "uriere" ; + VP (Fut Subj Pl P1) => d_ + "uriéremos" ; + VP (Fut Subj Pl P2) => d_ + "uriereis" ; + VP (Fut Subj Pl P3) => d_ + "urieren" ; + VP (Cond Sg P1) => d_ + "oriría" ; + VP (Cond Sg P2) => d_ + "orirías" ; + VP (Cond Sg P3) => d_ + "oriría" ; + VP (Cond Pl P1) => d_ + "oriríamos" ; + VP (Cond Pl P2) => d_ + "oriríais" ; + VP (Cond Pl P3) => d_ + "orirían" ; + VP (Imp Sg P1) => variants {} ; + VP (Imp Sg P2) => d_ + "uere" ; + VP (Imp Sg P3) => d_ + "uera" ; + VP (Imp Pl P1) => d_ + "uramos" ; + VP (Imp Pl P2) => d_ + "orid" ; + VP (Imp Pl P3) => d_ + "ueran" ; + VP (Pass Sg Masc) => d_ + "orido" ; + VP (Pass Sg Fem) => d_ + "orida" ; + VP (Pass Pl Masc) => d_ + "oridos" ; + VP (Pass Pl Fem) => d_ + "oridas" + } + } ; oper elegir_36 : Str -> Verbum = \elegir -> let el_ = Predef.tk 4 elegir in {s = table { @@ -3312,6 +3381,72 @@ oper mover_50 : Str -> Verbum = \mover -> VP (Pass Pl Fem) => m_ + "ovidas" } } ; +oper morder_50b : Str -> Verbum = \morder -> + let m_ = Predef.tk 4 morder in + {s = table { + VI Infn => m_ + "order" ; + VI Ger => m_ + "ordiendo" ; + VI Part => m_ + "ordido" ; + VP (Pres Ind Sg P1) => m_ + "uerdo" ; + VP (Pres Ind Sg P2) => m_ + "uerdes" ; + VP (Pres Ind Sg P3) => m_ + "uerde" ; + VP (Pres Ind Pl P1) => m_ + "ordemos" ; + VP (Pres Ind Pl P2) => m_ + "ordéis" ; + VP (Pres Ind Pl P3) => m_ + "uerden" ; + VP (Pres Subj Sg P1) => m_ + "uerda" ; + VP (Pres Subj Sg P2) => m_ + "uerdas" ; + VP (Pres Subj Sg P3) => m_ + "uerda" ; + VP (Pres Subj Pl P1) => m_ + "ordamos" ; + VP (Pres Subj Pl P2) => m_ + "ordáis" ; + VP (Pres Subj Pl P3) => m_ + "uerdan" ; + VP (Impf Ind Sg P1) => m_ + "ordía" ; + VP (Impf Ind Sg P2) => m_ + "ordías" ; + VP (Impf Ind Sg P3) => m_ + "ordía" ; + VP (Impf Ind Pl P1) => m_ + "ordíamos" ; + VP (Impf Ind Pl P2) => m_ + "ordíais" ; + VP (Impf Ind Pl P3) => m_ + "ordían" ; + VP (Impf Subj Sg P1) => variants {m_ + "ordiera" ; m_ + "ordiese"} ; + VP (Impf Subj Sg P2) => variants {m_ + "ordieras" ; m_ + "ordieses"} ; + VP (Impf Subj Sg P3) => variants {m_ + "ordiera" ; m_ + "ordiese"} ; + VP (Impf Subj Pl P1) => variants {m_ + "ordiéramos" ; m_ + "ordiésemos"} ; + VP (Impf Subj Pl P2) => variants {m_ + "ordierais" ; m_ + "ordieseis"} ; + VP (Impf Subj Pl P3) => variants {m_ + "ordieran" ; m_ + "ordiesen"} ; + VP (Pret Sg P1) => m_ + "ordí" ; + VP (Pret Sg P2) => m_ + "ordiste" ; + VP (Pret Sg P3) => m_ + "ordió" ; + VP (Pret Pl P1) => m_ + "ordimos" ; + VP (Pret Pl P2) => m_ + "ordisteis" ; + VP (Pret Pl P3) => m_ + "ordieron" ; + VP (Fut Ind Sg P1) => m_ + "orderé" ; + VP (Fut Ind Sg P2) => m_ + "orderás" ; + VP (Fut Ind Sg P3) => m_ + "orderá" ; + VP (Fut Ind Pl P1) => m_ + "orderemos" ; + VP (Fut Ind Pl P2) => m_ + "orderéis" ; + VP (Fut Ind Pl P3) => m_ + "orderán" ; + VP (Fut Subj Sg P1) => m_ + "ordiere" ; + VP (Fut Subj Sg P2) => m_ + "ordieres" ; + VP (Fut Subj Sg P3) => m_ + "ordiere" ; + VP (Fut Subj Pl P1) => m_ + "ordiéremos" ; + VP (Fut Subj Pl P2) => m_ + "ordiereis" ; + VP (Fut Subj Pl P3) => m_ + "ordieren" ; + VP (Cond Sg P1) => m_ + "ordería" ; + VP (Cond Sg P2) => m_ + "orderías" ; + VP (Cond Sg P3) => m_ + "ordería" ; + VP (Cond Pl P1) => m_ + "orderíamos" ; + VP (Cond Pl P2) => m_ + "orderíais" ; + VP (Cond Pl P3) => m_ + "orderían" ; + VP (Imp Sg P1) => variants {} ; + VP (Imp Sg P2) => m_ + "uerde" ; + VP (Imp Sg P3) => m_ + "uerda" ; + VP (Imp Pl P1) => m_ + "ordamos" ; + VP (Imp Pl P2) => m_ + "orded" ; + VP (Imp Pl P3) => m_ + "uerdan" ; + VP (Pass Sg Masc) => m_ + "ordido" ; + VP (Pass Sg Fem) => m_ + "ordida" ; + VP (Pass Pl Masc) => m_ + "ordidos" ; + VP (Pass Pl Fem) => m_ + "ordidas" + } + } ; oper oler_52 : Str -> Verbum = \oler -> let x_ = Predef.tk 4 oler in {s = table { diff --git a/lib/resource/spanish/ParadigmsSpa.gf b/lib/resource/spanish/ParadigmsSpa.gf index c7154ea23..e2855cff3 100644 --- a/lib/resource/spanish/ParadigmsSpa.gf +++ b/lib/resource/spanish/ParadigmsSpa.gf @@ -204,6 +204,10 @@ oper verboV : Verbum -> V ; +-- Verbs with a deviant passive participle: just give the participle +-- in masculine singular form as second argument. + + special_ppV : V -> Str -> V ; --3 Two-place verbs -- @@ -326,6 +330,15 @@ oper verboV ve = verbPres ve AHabere ** {lock_V = <>} ; + special_ppV ve pa = { + s = table { + VPart g n => (adjSolo pa).s ! AF g n ; + p => ve.s ! p + } ; + lock_V = <> ; + aux = AHabere + } ; + mkV2 v p = {s = v.s ; aux = v.aux ; s2 = p.p2 ; c = p.p1 ; lock_V2 = <>} ; dirV2 v = mkV2 v accusative ; v2V v = v ** {lock_V = <>} ; diff --git a/lib/resource/spanish/SwadeshLexSpa.gf b/lib/resource/spanish/SwadeshLexSpa.gf index 371f86213..dddae910b 100644 --- a/lib/resource/spanish/SwadeshLexSpa.gf +++ b/lib/resource/spanish/SwadeshLexSpa.gf @@ -189,7 +189,7 @@ concrete SwadeshLexSpa of SwadeshLex = CategoriesSpa -- Verbs - bite_V = regV "morder" ; ----V + bite_V = verboV (morder_50b "morder") ; blow_V = regV "soplar" ; breathe_V = regV "respirar" ; burn_V = regV "quemar" ; @@ -214,7 +214,7 @@ concrete SwadeshLexSpa of SwadeshLex = CategoriesSpa hunt_V = regV "cazar" ; kill_V = regV "matar" ; know_V = know_V2 ; - laugh_V = regV "reir" ; ----V verboV (ridere_74 "reir") ; + laugh_V = regV "reir" ; ----V reír_67 lie_V = regV "mentir" ; -- "acostarse" live_V = live_V ; play_V = regV "jugar" ; @@ -224,14 +224,14 @@ concrete SwadeshLexSpa of SwadeshLex = CategoriesSpa say_V = say_VS ; scratch_V = regV "rascar" ; see_V = see_V2 ; - sew_V = regV "coser" ; ----V verboV (cucire_103 "coser") ; + sew_V = regV "coser" ; sing_V = regV "cantar" ; sit_V = regV "sentar" ; ----V verboV (sedere_84 "sentarse") ; sleep_V = sleep_V ; smell_V = verboV (oler_52 "oler") ; spit_V = regV "escupir" ; split_V = regV "separar" ; -- dividir, partir - squeeze_V = regV "exprimir" ; ----V verboV (temere_20 "exprimir") ; + squeeze_V = regV "exprimir" ; stab_V = regV "apuñalar" ; stand_V = verboV (estar_2 "estar") ; ---- "estar de pie" ; suck_V = regV "chupar" ;