Module:Peter Bowman/odmiana-czas-es
Documentation for this module may be created at Module:Peter Bowman/odmiana-czas-es/doc
local p = {}
local subString, lenString = mw.ustring.sub, mw.ustring.len -- usar en entornos Wiki
--local subString, lenString = string.sub, string.len
local modelos = {} -- tabla que almacena la lista de modelos
local conjug = {} -- tabla que almacena las subrutinas propias de cada conjugación
local _i, _d = '<span style="color:red">', '</span>' -- etiquetas wiki para el cambio de color en las irregularidades
-- mensaje devuelto en caso de que el modelo no fuera reconocido
local mensaje = function (verbo)
return [=[<!--
--><b>Brak lub nieprawidłowy parametr "model" ([http://lema.rae.es/drae/?val=]=]..verbo..[=[ DRAE]). Wpisz <tt>"model=reg"</tt> dla czasownika regularnego.</b><br/><!--
-->Opcjonalne parametry:<!--
--><ul><li><tt>"[[participio#es|participio]]"</tt> – imiesłów bierny nieregularny, np.: <i>abrir – <span style="color:red">abierto</span></i></li><!--
--><li><tt>"3.os"</tt> – wybierz:</br><ul><!--
--><li><tt>"3.os=lp"</tt> – czasownik nieosobowy ([[verbo impersonal#es|impersonal]]), tylko formy 3. os. lp.; np.: <i><span style="color:red">nevar</span></i> (śnieżyć)</li><!--
--><li><tt>"3.os=lm"</tt> – czasownik trzecioosobowy ([[verbo terciopersonal#es|terciopersonal]]), tylko formy 3. os. lp. i lm.; np.: <i><span style="color:red">atañer</span></i> (dotyczyć)</li></ul></li><!--
--><li><tt>"imperativo=nie"</tt> – brak form trybu rozkazującego <i>(imperativo)</i></li><!--
--><li><tt>"defectivo"</tt> – wybierz:</br><ul><!--
--><li><tt>"defectivo=eimorfo"</tt> – brak form u których końcówka fleksyjna rozpoczyna się głoską [e] lub [i]; np.: <i><span style="color:red">balbucir</span></i></li><!--
--><li><tt>"defectivo=imorfo"</tt> – brak form u których końcówka fleksyjna rozpoczyna się głoską [i]; np.: <i><span style="color:red">abolir</span></i></li><!--
--><li><tt>"defectivo=embaír" / "desvaír" / "soler" / "acostumbrar"</tt> – wyjątki</li></ul></li><!--
--><li><tt>"zaimek"</tt> – zaimek enklityczny, np: <i><span style="color:red">apañárselas</span></i> (należy dopisać "<tt>zaimek=las|czasownik=apañarse</tt>")</li><!--
--><li><tt>"uwagi"</tt> – jeśli zbyt długi tekst nadmiernie rozszerza tabelkę, należy kontynuować od nowej linii, wstawiając znacznik <tt></br></tt>; np.: Długi tekst długi tekst</br>długi tekst</li></ul>]=]
end
-- devuelve la posición de la/s consonante/s que sufre/n cambios para conservar el sonido (ver "mensaje")
local consTema = function (str, conj)
local aux = subString(str, -1, -1) -- extrae la última letra de la raíz (COM-er = M)
if conj == 1 then
-- primera conjugación
if aux == "c" then return aux, "qu", 2
elseif aux == "g" then return aux, "gu", 2
elseif aux == "z" then return aux, "c", 2
else
local aux = subString(str, -2, -1) -- extrae las dos últimas letras de la raíz
if aux == "gu" then return aux, "gü", 3 end
end
else
-- segunda o tercera conjugación
if aux == "c" then return aux, "z", 2
elseif aux == "g" then return aux, "j", 2
else
local aux = subString(str, -2, -1) -- extrae las dos últimas letras de la raíz
if aux == "gu" then return aux, "g", 3
elseif aux == "qu" then return aux, "c", 3 end
end
end
-- por defecto devuelve cadenas vacías en .suf1 y .suf2 y nil en ind_sufijo
return "", "", nil
end
-- devuelve la posición de la primera vocal que encuentra (o de aquella que se ha indicado previamente, si es el caso)
-- y su variante con tilde para las formas del imperativo pronominal (comer -> cOme -> cómete)
local buscaVocal = function (str, vocal, op)
local indice, len, aux, tilde = 1, lenString(str)
if vocal then
-- vocal indicada (ver vocalModelo{} en .analizarCadena)
repeat
aux = subString(str, -indice, -indice)
if vocal == aux then break
else indice = indice + 1 end
until indice == len + 1
else
-- vocal no indicada
local sin_tilde = { "a", "e", "o", "ü", "i", "u" }
local con_tilde = { "á", "é", "ó", "ü", "í", "ú" }
repeat
aux = subString(str, -indice, -indice)
for i, v in pairs(sin_tilde) do
if v == aux then
if (indice == 1) and (i > 4) and (not op) then -- no hace nada
else tilde = con_tilde[i] break end
end
end
if tilde then break
else indice = indice + 1 end
until indice == len + 1
-- no encuentra ninguna vocal (dar, ver)
if not tilde then indice = nil end
end
return indice, tilde
end
--[[ denominación de los "componentes" de una cadena (el verbo en infinitivo):
str = descolgar contar pagar comer sacarse casarse
pref = desc c p c s c
vocal = o o a o a a
tilde = ó ó á ó á á
int = l nt [nil] m [nil] s
suf1 = g [nil] g [nil] c [nil]
suf2 = gu [nil] gu [nil] qu [nil] *NOTA: [nil] = cadena vacía ]]
-- divide la cadena proporcionada (el verbo) en componentes (ver esquema superior)
local analizarCadena = function (str, modelo)
local componentes = {}
local vocalModelo = { actuar = "u", adeudar = "e", bailar = "a", causar = "a", coitar = "o", enviar = "i", peinar = "e" }
local tildeModelo = { actuar = "ú", adeudar = "é", bailar = "á", causar = "á", coitar = "ó", enviar = "í", peinar = "é" }
local indice, ind_suf, ind_vocal, conj, tilde, esPronominal = 0
local vocal = vocalModelo[modelo]
if subString(str, -2, -1) == "se" then -- comprueba si es un verbo pronominal
esPronominal = true
indice = 2
else esPronominal = false end
local aux = subString(str, -2-indice, -1-indice) -- recorta el "-se" pronominal si procede
-- caso especial para el modelo "ir", regresa a la rutina principal si es el caso
if modelo == "ir" then return { pref = (aux == "ir") and "" or "contra" , suf1 = "" }, esPronominal, 3 end
if aux == "ar" then conj = 1
elseif aux == "er" then conj = 2
elseif (aux == "ir") or (aux == "ír") then conj = 3 end
aux = subString(str, 1, -3-indice) -- recorta la desinencia del infinitivo ("-ar", "-er", "-ir") y el "-se"
componentes.suf1, componentes.suf2, ind_suf = consTema(aux, conj) -- llamada a .consTema
ind_vocal, componentes.tilde = buscaVocal(aux, vocal, (modelo == "construir")) -- llamada a .buscaVocal
componentes.tilde = componentes.tilde or tildeModelo[modelo] or ""
componentes.vocal = vocal or (ind_vocal and subString(aux, -ind_vocal, -ind_vocal) or "")
ind_vocal, ind_suf = ind_vocal or 0, ind_suf or 1
componentes.pref = (ind_vocal == lenString(aux)) and "" or subString(aux, 1, -1-ind_vocal)
componentes.int = (ind_vocal <= 1) and "" or subString(aux, -ind_vocal+1, -ind_suf)
return componentes, esPronominal, conj
end
-- mensajes a mostrar en la celda desplegable "notas" cuando hay alternancia de consonantes para preservar el sonido
local notas = {
g_gu = 'Rdzeń kończy się spółgłoską <b>"g"</b>, która przybiera formę grupy liter <b>"gu"</b> przed głoskami [e], [i]',
z_c = 'Rdzeń kończy się spółgłoską <b>"z"</b>, która przybiera formę litery <b>"c"</b> przed głoskami [e], [i]',
c_qu = 'Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę grupy liter <b>"qu"</b> przed głoskami [e], [i]',
["gu_gü"] = 'Rdzeń kończy się grupą <b>"gu"</b>, która przybiera formę <b>"gü"</b> przed głoskami [e], [i]',
g_j = 'Rdzeń kończy się spółgłoską <b>"g"</b>, która przybiera formę litery <b>"j"</b> przed głoskami [a], [o], [u]',
c_z = 'Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę litery <b>"z"</b> przed głoskami [a], [o], [u]',
gu_g = 'Rdzeń kończy się grupą <b>"gu"</b>, która przybiera formę litery <b>"g"</b> przed głoskami [a], [o], [u]',
qu_c = 'Rdzeń kończy się grupą <b>"qu"</b>, która przybiera formę litery <b>"c"</b> przed głoskami [a], [o], [u]'
}
-- FORMAS VERBALES
--[[ nomenclatura: c.x_y_z
x - tiempo verbal: p (presente), pi(1/2) (pret. imp.), pps (pret. perf. simple), f (futuro), c (condicional); vacío para el modo imperativo
y - modo: i (indicativo), s (subjuntivo), imp (imperativo)
z - persona y número: 1s (1ª del singular), 3p (3ª del plural), 2vs (2ª del singular, voseante)
todas se concatenan del siguiente modo: forma_verbal..#es|..forma verbal (incluido c.ger - gerundio)
otros:
c.ger2 (gerundio pronominal) - NO se concatena
c.inf (infinitivo), c.inf2 (infinitivo pronominal)
c.part (participio sin color resaltado), c.part_irr (bit de control - true/false)
c.imp_2vs, c.imp_2p - NO se concatenan
c.imp_pron_(2s/2vs/1p/2p/3s3p) - NO se concatenan, NO se incluye el pronombre enclítico
c._imp_pron... - las formas anteriores con las irregularidades resaltadas
* NOTA: para la 1ª pers. del plural (pronominal) se incluye hasta la primera vocal de la desinencia (bañarse -> BAÑÉ-monos)
* NOTA: todas las componentes que empiezan con barra baja indican que contienen un cambio de color para resaltar las irregularidades (p. ej.: c._part)
c.notas, c.no_part (solo "empecer"), c.modelo (impone la designación del modelo)
c.dipt, c.tild - modelo de diptongación o tildación; c.alt - modelo con cambio en la morfología para conservar el sonido
c.(ger/pps/pps2/f_c/pi_f/imp)_ast - nota en forma de asterisco/s anterior a la forma verbal
]]
-- rellena el array con las formas verbales de la conjugación [i] usando el tema "regular" (acertar -> acert-)
conjug[1] = function (comp)
local c, es = {}, "#es|"
local t = comp.pref..comp.vocal..comp.int..comp.suf1 -- raíz sin tilde
local t2 = comp.pref..comp.tilde..comp.int..comp.suf1 -- raíz con tilde
c.ger = "ando"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s, c.p_i_1p, c.p_i_2p, c.p_i_3p = "o", "as", "ás", "a", "amos", "áis", "an"
c.pi_i_1s, c.pi_i_2s, c.pi_i_3s, c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = "aba", "abas", "aba", "ábamos", "abais", "aban"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s, c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = "é", "aste", "ó", "amos", "asteis", "aron"
c.f_i_1s, c.f_i_2s, c.f_i_3s, c.f_i_1p, c.f_i_2p, c.f_i_3p = "aré", "arás", "ará", "aremos", "aréis", "arán"
c.c_i_1s, c.c_i_2s, c.c_i_3s, c.c_i_1p, c.c_i_2p, c.c_i_3p = "aría", "arías", "aría", "aríamos", "aríais", "arían"
c.p_s_1s, c.p_s_2s, c.p_s_3s, c.p_s_1p, c.p_s_2p, c.p_s_3p = "e", "es", "e", "emos", "éis", "en"
c.pi1_s_1s, c.pi1_s_2s, c.pi1_s_3s, c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = "ara", "aras", "ara", "áramos", "arais", "aran"
c.pi2_s_1s, c.pi2_s_2s, c.pi2_s_3s, c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = "ase", "ases", "ase", "ásemos", "aseis", "asen"
c.f_s_1s, c.f_s_2s, c.f_s_3s, c.f_s_1p, c.f_s_2p, c.f_s_3p = "are", "ares", "are", "áremos", "areis", "aren"
c.imp_2s = c.p_i_3s
for i in pairs(c) do c[i] = t..c[i]..es..t..c[i] end
c.inf, c.inf2, c.ger2, c.part = t.."ar", t.."ár", t.."ándo", t.."ado"
c.imp_2vs, c.imp_2p = t.."á", t.."ad"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_2p, c.imp_pron_3p = t2.."a", t.."a", t2.."e", t.."é", t.."a", t2.."en"
return c
end
conjug[2] = function (comp)
local c, es = {}, "#es|"
local t = comp.pref..comp.vocal..comp.int..comp.suf1 -- raíz sin tilde
local t2 = comp.pref..comp.tilde..comp.int..comp.suf1 -- raíz con tilde
c.ger = "iendo"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s, c.p_i_1p, c.p_i_2p, c.p_i_3p = "o", "es", "és", "e", "emos", "éis", "en"
c.pi_i_1s, c.pi_i_2s, c.pi_i_3s, c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = "ía", "ías", "ía", "íamos", "íais", "ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s, c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = "í", "iste", "ió", "imos", "isteis", "ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s, c.f_i_1p, c.f_i_2p, c.f_i_3p = "eré", "erás", "erá", "eremos", "eréis", "erán"
c.c_i_1s, c.c_i_2s, c.c_i_3s, c.c_i_1p, c.c_i_2p, c.c_i_3p = "ería", "erías", "ería", "eríamos", "eríais", "erían"
c.p_s_1s, c.p_s_2s, c.p_s_3s, c.p_s_1p, c.p_s_2p, c.p_s_3p = "a", "as", "a", "amos", "áis", "an"
c.pi1_s_1s, c.pi1_s_2s, c.pi1_s_3s, c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = "iera", "ieras", "iera", "iéramos", "ierais", "ieran"
c.pi2_s_1s, c.pi2_s_2s, c.pi2_s_3s, c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = "iese", "ieses", "iese", "iésemos", "ieseis", "iesen"
c.f_s_1s, c.f_s_2s, c.f_s_3s, c.f_s_1p, c.f_s_2p, c.f_s_3p = "iere", "ieres", "iere", "iéremos", "iereis", "ieren"
c.imp_2s = c.p_i_3s
for i in pairs(c) do c[i] = t..c[i]..es..t..c[i] end
c.inf, c.inf2, c.ger2, c.part = t.."er", t.."ér", t.."iéndo", t.."ido"
c.imp_2vs, c.imp_2p = t.."é", t.."ed"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_2p, c.imp_pron_3p = t2.."e", t.."e", t2.."a", t.."á", t.."e", t2.."an"
return c
end
conjug[3] = function (comp)
local c, es = {}, "#es|"
local t = comp.pref..comp.vocal..comp.int..comp.suf1 -- raíz sin tilde
local t2 = comp.pref..comp.tilde..comp.int..comp.suf1 -- raíz con tilde
c.ger = "iendo"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s, c.p_i_1p, c.p_i_2p, c.p_i_3p = "o", "es", "ís", "e", "imos", "ís", "en"
c.pi_i_1s, c.pi_i_2s, c.pi_i_3s, c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = "ía", "ías", "ía", "íamos", "íais", "ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s, c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = "í", "iste", "ió", "imos", "isteis", "ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s, c.f_i_1p, c.f_i_2p, c.f_i_3p = "iré", "irás", "irá", "iremos", "iréis", "irán"
c.c_i_1s, c.c_i_2s, c.c_i_3s, c.c_i_1p, c.c_i_2p, c.c_i_3p = "iría", "irías", "iría", "iríamos", "iríais", "irían"
c.p_s_1s, c.p_s_2s, c.p_s_3s, c.p_s_1p, c.p_s_2p, c.p_s_3p = "a", "as", "a", "amos", "áis", "an"
c.pi1_s_1s, c.pi1_s_2s, c.pi1_s_3s, c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = "iera", "ieras", "iera", "iéramos", "ierais", "ieran"
c.pi2_s_1s, c.pi2_s_2s, c.pi2_s_3s, c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = "iese", "ieses", "iese", "iésemos", "ieseis", "iesen"
c.f_s_1s, c.f_s_2s, c.f_s_3s, c.f_s_1p, c.f_s_2p, c.f_s_3p = "iere", "ieres", "iere", "iéremos", "iereis", "ieren"
c.imp_2s = c.p_i_3s
for i in pairs(c) do c[i] = t..c[i]..es..t..c[i] end
c.inf, c.inf2, c.ger2, c.part = t.."ir", t.."ír", t.."iéndo", t.."ido"
c.imp_2vs, c.imp_2p = t.."í", t.."id"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_2p, c.imp_pron_3p = t2.."e", t.."i", t2.."a", t.."á", t.."í", t2.."an"
return c
end
-- modelo común para la conjugación REGULAR sin tildación
modelos.reg = function (C, conj, modelo, verbo)
local aux, auxT, op = C.pref..C.vocal..C.int, C.pref..C.tilde..C.int, (conj == 1)
local s2, _s2 = C.suf2, (C.suf2 == "") and "" or _i..C.suf2.._d
local c, es = conjug[conj](C), "#es|"
c.modelo = "reg"
c.p_i_1s = op and c.p_i_1s or aux..s2.."o"..es..aux.._s2.."o"
c.pps_i_1s = op and aux..s2.."é"..es..aux.._s2.."é" or c.pps_i_1s
c.p_s_1s = op and aux..s2.."e"..es..aux.._s2.."e" or aux..s2.."a"..es..aux.._s2.."a"
c.p_s_2s = op and aux..s2.."es"..es..aux.._s2.."es" or aux..s2.."as"..es..aux.._s2.."as"
c.p_s_1p = op and aux..s2.."emos"..es..aux.._s2.."emos" or aux..s2.."amos"..es..aux.._s2.."amos"
c.p_s_2p = op and aux..s2.."éis"..es..aux.._s2.."éis" or aux..s2.."áis"..es..aux.._s2.."áis"
c.p_s_3p = op and aux..s2.."en"..es..aux.._s2.."en" or aux..s2.."an"..es..aux.._s2.."an"
c.p_s_3s = c.p_s_1s
c.imp_pron_3s, c._imp_pron_3s = op and auxT..s2.."e" or auxT..s2.."a", op and auxT.._s2.."e" or auxT.._s2.."a"
c.imp_pron_1p, c._imp_pron_1p = op and aux..s2.."é" or aux..s2.."á", op and aux..s2.."é" or aux..s2.."á"
c.imp_pron_3p, c._imp_pron_3p = op and auxT..s2.."en" or auxT..s2.."an", op and auxT.._s2.."en" or auxT.._s2.."an"
if (C.suf1 ~= "") then -- si se da alternancia en la/s última/s letra/s para conservar el sonido, especifica el "modelo" correspondiente
if C.suf2 == "qu" then c.alt = "sacar"
elseif C.suf2 == "gu" then c.alt = "pagar"
elseif C.suf1 == "z" then c.alt = "cazar"
elseif C.suf2 == "gü" then c.alt = "desaguar"
elseif C.suf1 == "qu" then c.alt = "delinquir"
elseif C.suf2 == "g" then c.alt = "distinguir"
elseif (C.suf2 == "z") and (conj == 2) then c.alt = "vencer"
elseif (C.suf2 == "z") and (conj == 3) then c.alt = "esparcir"
elseif (C.suf2 == "j") and (conj == 2) then c.alt = "proteger"
elseif (C.suf2 == "j") and (conj == 3) then c.alt = "dirigir" end
c.notas = "<li>"..notas[C.suf1.."_"..C.suf2].."</li>"
end
-- caso especial del verbo isoptongo doble "desahuciar"
if (modelo ~= "reg") then
if verbo == "desahuciar" then
if modelo == "anunciar" then c.dipt2 = "causar"
elseif modelo == "causar" then c.dipt2 = "anunciar" end
end
c.dipt = modelo
end
-- variante del participio irregular del grupo "escribir" - "escripto"
if (verbo == "escribir") or (verbo == "adscribir") or (verbo == "circunscribir") or (verbo == "describir") or (verbo == "inscribir") or (verbo == "prescribir") or
(verbo == "proscribir") or (verbo == "rescribir") or (verbo == "sobrescribir") or (verbo == "subscribir") or (verbo == "suscribir") or (verbo == "transcribir") or (verbo == "trascribir") then
c.part_irr, c.part, c.part_ipto = true, C.pref.."ito", C.pref.."ipto"
end
-- participio doble del grupo "imprimir" - "imprimido" o "impreso"
if (verbo == "imprimir") or (verbo == "sobreimprimir") or (verbo == "reimprimir") then c.part_doble = C.pref.."eso" end
return c
end
-- modelo común para la conjugación REGULAR con tildación
modelos.reg_tilde = function (C, conj, modelo, verbo)
-- ejemplo: *augar, *aúgo, *aúgue
-- t = aug-, t2 = augu-, tT = aúg-, tT2 = aúgu-
local t, s2 = C.pref..C.vocal..C.int..C.suf1, (C.suf2 == "") and "" or _i..C.suf2.._d
local t2, _t2 = C.pref..C.vocal..C.int..C.suf2, C.pref..C.vocal..C.int..s2
local tT, _tT = C.pref..C.tilde..C.int..C.suf1, C.pref.._i..C.tilde.._d..C.int..C.suf1
local tT2, _tT2 = C.pref..C.tilde..C.int..C.suf2, C.pref.._i..C.tilde.._d..C.int..s2
local op = (conj == 1)
local c, es = conjug[conj](C), "#es|"
c.modelo, c.tild = "reg", modelo
c.p_i_1s = op and tT.."o"..es.._tT.."o" or tT2.."o"..es.._tT2.."o"
c.p_i_2s = op and tT.."as"..es.._tT.."as" or tT.."es"..es.._tT.."es"
c.p_i_3s = op and tT.."a"..es.._tT.."a" or tT.."e"..es.._tT.."e"
c.p_i_3p = op and tT.."an"..es.._tT.."an" or tT.."en"..es.._tT.."en"
c.pps_i_1s = op and t2.."é"..es.._t2.."é" or c.pps_i_1s
c.p_s_1s = op and tT2.."e"..es.._tT2.."e" or tT2.."a"..es.._tT2.."a"
c.p_s_2s = op and tT2.."es"..es.._tT2.."es" or tT2.."as"..es.._tT2.."as"
c.p_s_1p = op and t2.."emos"..es.._t2.."emos" or t2.."amos"..es.._t2.."amos"
c.p_s_2p = op and t2.."éis"..es.._t2.."éis" or t2.."áis"..es.._t2.."áis"
c.p_s_3p = op and tT2.."en"..es.._tT2.."en" or tT2.."an"..es.._tT2.."an"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = op and tT.."a" or tT.."e", op and _tT.."a" or _tT.."e"
c.imp_pron_3s, c._imp_pron_3s = op and tT2.."e" or tT2.."a", op and _tT2.."e" or _tT2.."a"
c.imp_pron_1p, c._imp_pron_1p = op and t2.."é" or t2.."á", op and _t2.."é" or _t2.."á"
c.imp_pron_3p, c._imp_pron_3p = op and tT2.."en" or tT2.."an", op and _tT2.."en" or _tT2.."an"
c.notas = '<li>Gdy akcent pada na rdzenną głoskę <b>"'..C.vocal..'"</b>, ta tworzy rozziew z sąsiadującą samogłoską i przybiera akcent graficzny</li>'
if (C.suf1 ~= "") then -- si se da alternancia en la/s última/s letra/s para conservar el sonido, especifica el "modelo" correspondiente
if C.suf2 == "qu" then c.alt = "sacar"
elseif C.suf2 == "gu" then c.alt = "pagar"
elseif C.suf1 == "z" then c.alt = "cazar"
elseif C.suf2 == "gü" then c.alt = "desaguar"
elseif C.suf1 == "qu" then c.alt = "delinquir"
elseif C.suf2 == "g" then c.alt = "distinguir"
elseif (C.suf2 == "z") and (conj == 2) then c.alt = "vencer"
elseif (C.suf2 == "z") and (conj == 3) then c.alt = "esparcir"
elseif (C.suf2 == "j") and (conj == 2) then c.alt = "proteger"
elseif (C.suf2 == "j") and (conj == 3) then c.alt = "dirigir" end
c.notas = c.notas.."<li>"..notas[C.suf1.."_"..C.suf2].."</li>"
end
-- verbos con formas monosilábicas
if ((modelo == "actuar") or (modelo == "enviar")) and ((verbo == "chiar") or (verbo == "ciar") or (verbo == "criar") or (verbo == "fiar") or (verbo == "gruar") or
(verbo == "guiar") or (verbo == "liar") or (verbo == "miar") or (verbo == "piar") or (verbo == "priar") or (verbo == "puar") or (verbo == "ruar") or (verbo == "triar")) then
local aux = C.pref..(modelo == "enviar" and "i" or "u")
c.p_i_2vs = aux.."as"..es..aux.._i.."a".._d.."s"
c.p_i_2p = aux.."ais"..es..aux.._i.."a".._d.."is"
c.pps_i_1s = aux.."e"..es..aux.._i.."e".._d
c.pps_i_3s = aux.."o"..es..aux.._i.."o".._d
c.p_s_2p = aux.."eis"..es..aux.._i.."e".._d.."is"
c.imp_2vs = aux.."a"
c.notas = c.notas..[=[<li>Zgodnie z regułą pisowni nie akcentuje się wyrazów jednosylabowych: <!--
--><i>]=]..aux..'as, '..aux..'ais, '..aux..'e, '..aux..'o, '..aux..'eis, '..aux..'a</i></li>'
end
return c
end
-- modelos para la conjugación IRREGULAR
modelos.acertar = function (C)
-- t = comienz-, tT = comiénz-, tS = comienc-, tST = comiénc-, t2S = comenc-
local t, _t = C.pref.."ie"..C.int..C.suf1, C.pref.._i.."ie".._d..C.int..C.suf1
local tT, _tT = C.pref.."ié"..C.int..C.suf1, C.pref.._i.."ié".._d..C.int..C.suf1
local tS, _tS = C.pref.."ie"..C.int..C.suf2, C.pref.._i.."ie".._d..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local tST, _tST = C.pref.."ié"..C.int..C.suf2, C.pref.._i.."ié".._d..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local t2S, _t2S = C.pref.."e"..C.int..C.suf2, C.pref.."e"..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local c, es = conjug[1](C), "#es|"
c.modelo = "acertar"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."as"..es.._t.."as", t.."a"..es.._t.."a", t.."an"..es.._t.."an"
c.pps_i_1s = t2S.."é"..es.._t2S.."é"
c.p_s_1s, c.p_s_2s, c.p_s_3p = tS.."e"..es.._tS.."e", tS.."es"..es.._tS.."es", tS.."en"..es.._tS.."en"
c.p_s_1p, c.p_s_2p = t2S.."emos"..es.._t2S.."emos", t2S.."éis"..es.._t2S.."éis"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c.imp_pron_3s, c.imp_pron_3p = tT.."a", tST.."e", tST.."en"
c._imp_pron_2s, c._imp_pron_3s, c._imp_pron_3p = _tT.."a", _tST.."e", _tST.."en"
c.imp_pron_1p, c._imp_pron_1p = t2S.."é", _t2S.."é"
c.notas = '<li>Gdy akcent pada na rdzenną głoskę [e], przechodzi ona w dyftong <b>"ie"</b></li>'
if (C.suf1 ~= "") then -- si se da alternancia en la/s última/s letra/s para conservar el sonido, especifica el "modelo" correspondiente
if "g" == C.suf1 then c.alt = "regar"
elseif "z" == C.suf1 then c.alt = "empezar" end
c.notas = c.notas.."<li>"..notas[C.suf1.."_"..C.suf2].."</li>"
end
return c
end
modelos.adquirir = function (C, conj, modelo) -- también: "entender", "discernir"
-- t = adquier-, tT = adquiér-
local t, _t = C.pref.."ie"..C.int, C.pref.._i.."ie".._d..C.int
local tT, _tT = C.pref.."ié"..C.int, C.pref.._i.."ié".._d..C.int
local c, es = conjug[conj](C), "#es|"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.p_s_1s, c.p_s_2s, c.p_s_3p = t.."a"..es.._t.."a", t.."as"..es.._t.."as", t.."an"..es.._t.."an"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c.imp_pron_3s, c.imp_pron_3p = tT.."e", tT.."a", tT.."an"
c._imp_pron_2s, c._imp_pron_3s, c._imp_pron_3p = _tT.."e", _tT.."a", _tT.."an"
c.notas = '<li>Gdy akcent pada na rdzenną głoskę ['..((modelo == "adquirir") and "i" or "e")..'], przechodzi ona w dyftong <b>"ie"</b></li>'
return c
end
modelos.agradecer = function (C, conj, _modelo, verbo, terc_pers) -- también: "lucir", usado por: "yacer"
-- t = agradezc-, tT = agradézc-
local t, _t = C.pref..C.vocal.."zc", C.pref..C.vocal.._i.."zc".._d
local tT, _tT = C.pref..C.tilde.."zc", C.pref..C.tilde.._i.."zc".._d
local c, es = conjug[conj](C), "#es|"
c.p_i_1s = t.."o"..es.._t.."o"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.p_s_3s = c.p_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = '<li>Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę grupy liter <b>"zc"</b> przed '..(terc_pers and "głoską [a]" or "głoskami [a], [o]")..'</li>'
if verbo == "placer" then
c.pps_i_3s = "plació#es|plació]]<br/>[[plugo#es|pl".._i.."ugo".._d
c.p_s_3s = "plazca#es|pla".._i.."zc".._d.."a]]<br/>[[plega#es|pl".._i.."eg".._d.."a]]<br/>[[plegue#es|pl".._i.."egue".._d
c.pi1_s_3s = "placiera#es|placiera]]<br/>[[pluguiera#es|pl".._i.."ugu".._d.."iera"
c.pi2_s_3s = "placiese#es|placiese]]<br/>[[pluguiese#es|pl".._i.."ugu".._d.."iese"
c.f_s_3s = "placiere#es|placiere]]<br/>[[pluguiere#es|pl".._i.."ugu".._d.."iere"
c.notas = c.notas..'<li>Przybiera oboczne, archaiczne formy 3. os. lp. w czasach <i>pret. perf. simple (ind.), presente, pret. imperfecto</i> i <i>futuro (sub.)</i></li>'
end
if verbo == "empecer" then
c.no_part = true
c.notas = c.notas..'<li>Brak imiesłowów (<i>gerundio</i> i <i>participio</i>) i form złożonych (<i>tiempos compuestos</i>)</li>'
end
return c
end
modelos.andar = function (C)
-- t = anduv-
local t, _t = C.pref.."a"..C.int.."uv", C.pref.."a"..C.int.._i.."uv".._d
local c, es = conjug[1](C), "#es|"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t.."e"..es.._t.._i.."e".._d, t.."iste"..es.._t.._i.."i".._d.."ste", t.."o"..es.._t.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t.."imos"..es.._t.._i.."i".._d.."mos", t.."isteis"..es.._t.._i.."i".._d.."steis", t.."ieron"..es.._t.._i.."ie".._d.."ron"
c.pi1_s_1s, c.pi1_s_2s = t.."iera"..es.._t.._i.."ie".._d.."ra", t.."ieras"..es.._t.._i.."ie".._d.."ras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."iéramos"..es.._t.._i.."ié".._d.."ramos", t.."ierais"..es.._t.._i.."ie".._d.."rais", t.."ieran"..es.._t.._i.."ie".._d.."ran"
c.pi2_s_1s, c.pi2_s_2s = t.."iese"..es.._t.._i.."ie".._d.."se", t.."ieses"..es.._t.._i.."ie".._d.."ses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."iésemos"..es.._t.._i.."ié".._d.."semos", t.."ieseis"..es.._t.._i.."ie".._d.."seis", t.."iesen"..es.._t.._i.."ie".._d.."sen"
c.f_s_1s, c.f_s_2s = t.."iere"..es.._t.._i.."ie".._d.."re", t.."ieres"..es.._t.._i.."ie".._d.."res"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."iéremos"..es.._t.._i.."ié".._d.."remos", t.."iereis"..es.._t.._i.."ie".._d.."reis", t.."ieren"..es.._t.._i.."ie".._d.."ren"
c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.notas = [=[<!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i>; pozostałe końcówki tego czasu,</br><!--
--><i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i> pochodzą od koniugacji II-III</li><!--
--><li>Rdzeń otrzymuje końcową grupę <b>"uv"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li>]=]
return c
end
modelos.asir = function (C)
-- t = asg-, tT = ásg-
local t, _t = C.pref.."asg", C.pref.."as".._i.."g".._d
local tT, _tT = C.pref.."ásg", C.pref.."ás".._i.."g".._d
local c, es = conjug[3](C), "#es|"
c.p_i_1s = t.."o"..es.._t.."o"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.p_s_3s = c.p_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = '<li>Rdzeń otrzymuje dodatkową, końcową spółgłoskę <b>"g"</b> przed głoskami [a], [o]</li>'
return c
end
modelos.caer = function (C) -- usado por: "roer"
-- t = caig-, tT = cáig-, t2 = cay-
local t, _t = C.pref..C.vocal.."ig", C.pref..C.vocal.._i.."ig".._d
local tT, _tT = C.pref..C.tilde.."ig", C.pref..C.tilde.._i.."ig".._d
local t2, _t2 = C.pref..C.vocal.."y", C.pref..C.vocal.._i.."y".._d
local c, tR, es = conjug[2](C), C.pref..C.vocal, "#es|"
c.ger, c.ger2, c._ger2 = t2.."endo"..es.._t2.."endo", t2.."éndo", _t2.."éndo"
c.part, c._part = C.pref..C.vocal.."ído", C.pref..C.vocal.._i.."í".._d.."do"
c.p_i_1s = t.."o"..es.._t.."o"
c.pps_i_1p = tR.."ímos"..es..tR.._i.."í".._d.."mos"
c.pps_i_2s, c.pps_i_2p = tR.."íste"..es..tR.._i.."í".._d.."ste", tR.."ísteis"..es..tR.._i.."í".._d.."steis"
c.pps_i_3s, c.pps_i_1p, c.pps_i_3p = t2.."ó"..es.._t2.."ó", C.pref..C.vocal.."ímos"..es..C.pref..C.vocal.._i.."í".._d.."mos", t2.."eron"..es.._t2.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."era"..es.._t2.."era", t2.."eras"..es.._t2.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."éramos"..es.._t2.."éramos", t2.."erais"..es.._t2.."erais", t2.."eran"..es.._t2.."eran"
c.pi2_s_1s, c.pi2_s_2s = t2.."ese"..es.._t2.."ese", t2.."eses"..es.._t2.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."ésemos"..es.._t2.."ésemos", t2.."eseis"..es.._t2.."eseis", t2.."esen"..es.._t2.."esen"
c.f_s_1s, c.f_s_2s = t2.."ere"..es.._t2.."ere", t2.."eres"..es.._t2.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."éremos"..es.._t2.."éremos", t2.."ereis"..es.._t2.."ereis", t2.."eren"..es.._t2.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje dodatkową, końcową grupę <b>"ig"</b> przed głoskami [a], [o]</li><!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską []=]..C.vocal..[=[] rdzenia, otrzymując akcent graficzny (<b>"]=]..C.vocal..[=[í"</b>)</li><!--
--><li>Początkowa, nieakcentowana samogłoska <b>"i"</b> w końcówce przechodzi w spółgłoskę <b>"y"</b>, gdy występuje po niej inna samogłoska</li>]=]
return c
end
modelos["ceñir"] = function (C)
-- t = ciñ-, tT = cíñ-
local t, _t = C.pref.."iñ", C.pref.._i.."i".._d.."ñ"
local tT, _tT = C.pref.."íñ", C.pref.._i.."í".._d.."ñ"
local c, es = conjug[3](C), "#es|"
c.ger, c.ger2, c._ger2 = t.."endo"..es.._t.."endo", t.."éndo", _t.."éndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_3s, c.pps_i_3p = t.."ó"..es.._t.."ó", t.."eron"..es.._t.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es.._t.."era", t.."eras"..es.._t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es.._t.."éramos", t.."erais"..es.._t.."erais", t.."eran"..es.._t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es.._t.."ese", t.."eses"..es.._t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es.._t.."ésemos", t.."eseis"..es.._t.."eseis", t.."esen"..es.._t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es.._t.."ere", t.."eres"..es.._t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es.._t.."éremos", t.."ereis"..es.._t.."ereis", t.."eren"..es.._t.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_pron_2s, c._imp_pron_2s = c.p_i_3s, tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.ger_ast, c.pps_ast, c.pi_f_ast = "*", "*", "*"
c.notas = [=[<!--
--><li>Kiedy jest akcentowana, rdzenna głoska [e] przechodzi w samogłoskę <b>"i"</b></li><!--
--><li>W 3. os. czasu <i>pretérito perfecto simple</i>, we wszystkich czasach <i>subjuntivo</i> i w <i>gerundio</i> rdzenna głoska [e] przechodzi</br><!--
-->w samogłoskę <b>"i"</b></li><!--
--><li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce fleksyjnej, gdy występuje po niej inna samogłoska (*)</li>]=]
return c
end
modelos.conducir = function (C)
-- t = conduzc-, tT = condúzc-, t2 = conduj-
local t, _t = C.pref.."uzc", C.pref.."u".._i.."zc".._d
local tT, _tT = C.pref.."úzc", C.pref.."ú".._i.."zc".._d
local t2, _t2 = C.pref.."uj", C.pref.."u".._i.."j".._d
local c, es = conjug[3](C), "#es|"
c.p_i_1s = t.."o"..es.._t.."o"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."eron"..es.._t2.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."era"..es.._t2.."era", t2.."eras"..es.._t2.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."éramos"..es.._t2.."éramos", t2.."erais"..es.._t2.."erais", t2.."eran"..es.._t2.."eran"
c.pi2_s_1s, c.pi2_s_2s = t2.."ese"..es.._t2.."ese", t2.."eses"..es.._t2.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."ésemos"..es.._t2.."ésemos", t2.."eseis"..es.._t2.."eseis", t2.."esen"..es.._t2.."esen"
c.f_s_1s, c.f_s_2s = t2.."ere"..es.._t2.."ere", t2.."eres"..es.._t2.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."éremos"..es.._t2.."éremos", t2.."ereis"..es.._t2.."ereis", t2.."eren"..es.._t2.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.pps2_ast, c.pi_f_ast = "*", "*"
c.notas = [=[<!--
--><li>Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę grupy liter <b>"zc"</b> przed głoskami [a], [o]</li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Ostatnia spółgłoska rdzenia <b>"c"</b> przybiera formę <b>"j"</b> w czasach </i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce, gdy występuje po niej inna samogłoska (wyjątek: <i>gerundio</i>) (*)</li>]=]
return c
end
modelos.construir = function (C, _conj, _modelo, verbo)
local t, _t, tT, _tT
if C.vocal == "ü" then -- verbos acabados en "-güir": argüir, reargüir, redargüir, caigüir
local str = string.sub(C.pref, 1, -2)
-- t = arguy-, tT = argúy-
t, _t = str.."guy", str.._i.."guy".._d
tT, _tT = str.."gúy", str.._i.."gúy".._d
else
-- t = construy-, tT = constrúy-
t, _t = C.pref..C.vocal.."y", C.pref..C.vocal.._i.."y".._d
tT, _tT = C.pref..C.tilde.."y", C.pref..C.tilde.._i.."y".._d
end
local c, tR, es = conjug[3](C), C.pref..C.vocal, "#es|"
c.ger, c.ger2, c._ger2 = t.."endo"..es.._t.."endo", t.."éndo", _t.."éndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_3s, c.pps_i_3p = t.."ó"..es.._t.."ó", t.."eron"..es.._t.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es.._t.."era", t.."eras"..es.._t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es.._t.."éramos", t.."erais"..es.._t.."erais", t.."eran"..es.._t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es.._t.."ese", t.."eses"..es.._t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es.._t.."ésemos", t.."eseis"..es.._t.."eseis", t.."esen"..es.._t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es.._t.."ere", t.."eres"..es.._t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es.._t.."éremos", t.."ereis"..es.._t.."ereis", t.."eren"..es.._t.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"y"</b> przed samogłoską otwartą [a]]=]..((verbo == "desvaír") and "" or ", [e]")..[=[ lub [o]</li><!--
--><li>Początkowa, nieakcentowana samogłoska <b>"i"</b> w końcówce przechodzi w spółgłoskę <b>"y"</b>, gdy występuje po niej inna samogłoska</li>]=]
-- verbos con formas monosilábicas
if (verbo == "buir") or (verbo == "fluir") or (verbo == "fruir") or (verbo == "gruir") or (verbo == "huir") or (verbo == "luir") or (verbo == "muir") then
local aux = C.pref.."u"
c.p_i_2vs = aux.."is"..es..aux.._i.."i".._d.."s"
c.pps_i_1s = aux.."i"..es..aux.._i.."i".._d
c.p_i_2p, c.imp_2vs, c._imp_2vs = c.p_i_2vs, aux.."i", aux.._i.."i".._d
c.notas = c.notas..'<li>Zgodnie z regułą pisowni nie akcentuje się wyrazów jednosylabowych: <i>'..aux..'is, '..aux..'i</i></li>'
end
if verbo == "rehuir" then
c.p_i_1s = "rehúyo"..es.."reh".._i.."úy".._d.."o"
c.p_i_2s = "rehúyes"..es.."reh".._i.."úy".._d.."es"
c.p_i_3s = "rehúye"..es.."reh".._i.."úy".._d.."e"
c.p_i_3p = "rehúyen"..es.."reh".._i.."úy".._d.."en"
c.p_s_1s = "rehúya"..es.."reh".._i.."úy".._d.."a"
c.p_s_2s = "rehúyas"..es.."reh".._i.."úy".._d.."as"
c.p_s_3p = "rehúyan"..es.."reh".._i.."úy".._d.."an"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = "rehúye", "reh".._i.."úy".._d.."e"
c.imp_pron_3s, c._imp_pron_3s = "rehúya", "reh".._i.."úy".._d.."an"
c.imp_pron_3p, c._imp_pron_3p = "rehúyan", "reh".._i.."úy".._d.."an"
c.tild = "reunir"
c.notas = c.notas..'<li>Gdy akcent pada na rdzenną głoskę [u], ta tworzy rozziew z poprzednią głoską [e] i przybiera akcent graficzny (<b>"ehú"</b>)</li>'
end
if ((verbo == "desvaír") or (verbo == "embaír")) then
c.inf = tR.."ír"
c._part = tR.._i.."í".._d.."do"
c.p_i_2s = tR.."es"..es..tR.."es"
c.p_i_3s = tR.."e"..es..tR.."e"
c.p_i_1p = tR.."ímos"..es..tR.._i.."í".._d.."mos"
c.p_i_3p = tR.."en"..es..tR.."en"
c.pps_i_2s = tR.."íste"..es..tR.._i.."í".._d.."ste"
c.pps_i_2p = tR.."ísteis"..es..tR.._i.."í".._d.."steis"
c.pps_i_1p, c.imp_2s = c.p_i_1p, c.p_i_3s
c.imp_2p, c._imp_2p = tR.."íd", tR.._i.."í".._d.."d"
c.imp_pron_2s = C.pref.."áe"
c.notas = nil
end
-- verbos acabados en "-güir": argüir, reargüir, redargüir, caigüir
if C.vocal == "ü" then c.notas = c.notas..'<li>Diereza zanika w czasach, w których po rdzeniu występuje spółgłoska <b>"y"</b> (<b>"gü"</b> przybiera formę <b>"gu"</b>)</li>' end
return c
end
modelos.contar = function (C, _conj, _modelo, verbo) -- también: "jugar"
local aux, auxT, _aux, _auxT
local _h = (verbo == "desosar") and "h" or ""
local op = ((verbo == "degollar") or (verbo == "agorar") or (verbo == "engorar") or (verbo == "regoldar") or (verbo == "avergonzar") or (verbo == "desvergonzar") or (verbo == "envergonzar")) and true or false
if op then
local pref = subString(C.pref, 1, -2)
aux, _aux = pref.."güe"..C.int, pref.._i.."güe".._d..C.int
auxT, _auxT = pref.."güé"..C.int, pref.._i.."güé".._d..C.int
else
aux, _aux = C.pref.._h.."ue"..C.int, C.pref.._i.._h.."ue".._d..C.int
auxT, _auxT = C.pref.._h.."ué"..C.int, C.pref.._i.._h.."ué".._d..C.int
end
-- t = cuelg-, tT = cuélg-, tS = cuelgu-, tST = cuélgu-, t2S = colgu-
local t, _t = aux..C.suf1, _aux..C.suf1
local tT, _tT = auxT..C.suf1, _auxT..C.suf1
local tS, _tS = aux..C.suf2, _aux..((C.suf2 == "") and "" or _i..C.suf2.._d)
local tST, _tST = auxT..C.suf2, _auxT..((C.suf2 == "") and "" or _i..C.suf2.._d)
local t2S, _t2S = C.pref..C.vocal..C.int..C.suf2, C.pref..C.vocal..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local c, es = conjug[1](C), "#es|"
c.modelo = "contar"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."as"..es.._t.."as", t.."a"..es.._t.."a", t.."an"..es.._t.."an"
c.pps_i_1s = t2S.."é"..es.._t2S.."é"
c.p_s_1s, c.p_s_2s, c.p_s_3s = tS.."e"..es.._tS.."e", tS.."es"..es.._tS.."es", tS.."e"..es.._tS.."e"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t2S.."emos"..es.._t2S.."emos", t2S.."éis"..es.._t2S.."éis", tS.."en"..es.._tS.."en"
c.imp_2s = c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."a", _tT.."a"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tST.."e", t2S.."é", tST.."en"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tST.."e", _t2S.."é", _tST.."en"
c.notas = '<li>Gdy akcent pada na rdzenną głoskę ['..C.vocal..'], przechodzi ona w dyftong <b>"'.._h..'ue"</b></li>'
if (C.suf1 ~= "") then -- si se da alternancia en la/s última/s letra/s para conservar el sonido, especifica el "modelo" correspondiente
if "g" == C.suf1 then c.alt = "colgar"
elseif "c" == C.suf1 then c.alt = "volcar"
elseif "z" == C.suf1 then c.alt = "forzar" end
c.notas = c.notas.."<li>"..notas[C.suf1.."_"..C.suf2].."</li>"
end
if op then c.notas = c.notas..'<li>Rdzeń zawiera spółgłoskę <b>"g"</b>, która przybiera formę grupy liter <b>"gü"</b> przed głoskami [e], [i]</li>' end
return c
end
modelos.dar = function (C, _conj, modelo, verbo)
local t, c, es, op = C.pref..C.vocal..C.int, conjug[1](C), "#es|", (modelo == verbo)
c.p_i_1s = t.."oy"..es..t.."o".._i.."y".._d
c.p_i_2s = op and c.p_i_2s or t.."ás"..es..t.._i.."á".._d.."s"
c.p_i_2vs = c.p_i_2s
c.p_i_3s = op and c.p_i_3s or t.."á"..es..t.._i.."á".._d
c.p_i_2p = op and "dais"..es.."d".._i.."a".._d.."is" or c.p_i_2p
c.p_i_3p = op and c.p_i_3p or t.."án"..es..t.._i.."á".._d.."n"
c.pps_i_1s = op and "di"..es.."d".._i.."i".._d or t.."í"..es..t.._i.."í".._d
c.pps_i_2s = t.."iste"..es..t.._i.."i".._d.."ste"
c.pps_i_3s = op and "dio"..es.."d".._i.."io".._d or t.."ió"..es..t.._i.."ió".._d
c.pps_i_1p = t.."imos"..es..t.._i.."i".._d.."mos"
c.pps_i_2p = t.."isteis"..es..t.._i.."i".._d.."steis"
c.pps_i_3p = t.."ieron"..es..t.._i.."ie".._d.."ron"
c.p_s_1s = t.."é"..es..t.._i.."é".._d
c.p_s_2s = op and c.p_s_2s or t.."és"..es..t.._i.."é".._d.."s"
c.p_s_3s = c.p_s_1s
c.p_s_2p = op and "deis"..es.."d".._i.."e".._d.."is" or c.p_s_2p
c.p_s_3p = op and c.p_s_3p or t.."én"..es..t.._i.."é".._d.."n"
c.pi1_s_1s, c.pi1_s_2s = t.."iera"..es..t.._i.."ie".._d.."ra", t.."ieras"..es..t.._i.."ie".._d.."ras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."iéramos"..es..t.._i.."ié".._d.."ramos", t.."ierais"..es..t.._i.."ie".._d.."rais", t.."ieran"..es..t.._i.."ie".._d.."ran"
c.pi2_s_1s, c.pi2_s_2s = t.."iese"..es..t.._i.."ie".._d.."se", t.."ieses"..es..t.._i.."ie".._d.."ses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."iésemos"..es..t.._i.."ié".._d.."semos", t.."ieseis"..es..t.._i.."ie".._d.."seis", t.."iesen"..es..t.._i.."ie".._d.."sen"
c.f_s_1s, c.f_s_2s = t.."iere"..es..t.._i.."ie".._d.."re", t.."ieres"..es..t.._i.."ie".._d.."res"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."iéremos"..es..t.._i.."ié".._d.."remos", t.."iereis"..es..t.._i.."ie".._d.."reis", t.."ieren"..es..t.._i.."ie".._d.."ren"
c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2vs, c._imp_2vs = c.p_i_3s, op and "da" or c.imp_2vs, op and "d".._i.."a".._d or c.imp_2vs
c.imp_pron_3s, c.imp_pron_3p = t.."e", t.."en"
c.notas = [=[<!--
--><li>Do końcówki 1. os. lp. czasu <i>presente de indicativo</i> dodaje się jotowaną spółgłoskę <b>"y"</b></li><!--
--><li>Otrzymuje końcówki fleksyjne koniugacji II-III w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
-->]=]..((verbo == "dar") and [=[<li>Zgodnie z regułą pisowni nie akcentuje się wyrazów jednosylabowych: <i>dais, deis, di, dio, da</i></li><!--
--><li>Pomimo że formy 1. i 3. os. lp <i>presente de subjuntivo</i> są jednosylabowe, otrzymują akcent graficzny, aby odróżnić je</br>od przyimka <i>[[de#es|de]]</i> ([[tilde diacrítica]])</li>]=]
or "<li>Formy <i>presente de indicativo/subjuntivo</i> i lp. <i>imperativo</i> są akcentowane na końcówce, przybierając zatem akcent graficzny</li>")
return c
end
modelos.decir = function (C, _conj, _modelo, verbo) -- (*)
-- t = dig-, tT = díg-, t2 = dij-, t3 = dic-, t3T = díc-
local t, _t = C.pref.."ig", C.pref.._i.."ig".._d
local tT, _tT = C.pref.."íg", C.pref.._i.."íg".._d
local t2, _t2 = C.pref.."ij", C.pref.._i.."ij".._d
local t3, _t3 = C.pref.."ic", C.pref.._i.."ic".._d
local t3T, _t3T = C.pref.."íc", C.pref.._i.."íc".._d
local c, es = {}, "#es|"
local op, op2 = ((verbo == "bendecir") or (verbo == "maldecir")), ((verbo == "contradecir") or (verbo == "desdecir") or (verbo == "predecir") or (verbo == "condecir"))
local tR, tR2 = C.pref, C.pref.."ec"
c.inf, c.inf2, c.ger, c.ger2, c._ger2 = tR2.."ir", tR2.."ír", t3.."iendo"..es.._t3.."iendo", t3.."iéndo", _t3.."iéndo"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s = t.."o"..es.._t.."o", t3.."es"..es.._t3.."es", tR2.."ís"..es..tR2.."ís", t3.."e"..es.._t3.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR2.."imos"..es..tR2.."imos", tR2.."ís"..es..tR2.."ís", t3.."en"..es.._t3.."en"
c.pi_i_1s, c.pi_i_2s = tR2.."ía"..es..tR2.."ía", tR2.."ías"..es..tR2.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR2.."íamos"..es..tR2.."íamos", tR2.."íais"..es..tR2.."íais", tR2.."ían"..es..tR2.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."eron"..es.._t2.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."era"..es.._t2.."era", t2.."eras"..es.._t2.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."éramos"..es.._t2.."éramos", t2.."erais"..es.._t2.."erais", t2.."eran"..es.._t2.."eran"
c.pi2_s_1s, c.pi2_s_2s = t2.."ese"..es.._t2.."ese", t2.."eses"..es.._t2.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."ésemos"..es.._t2.."ésemos", t2.."eseis"..es.._t2.."eseis", t2.."esen"..es.._t2.."esen"
c.f_s_1s, c.f_s_2s = t2.."ere"..es.._t2.."ere", t2.."eres"..es.._t2.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."éremos"..es.._t2.."éremos", t2.."ereis"..es.._t2.."ereis", t2.."eren"..es.._t2.."eren"
c.pi_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2vs, c.imp_2p = tR2.."í", tR2.."id"
c.imp_pron_2vs, c.imp_pron_3s, c._imp_pron_3s, c.imp_pron_3p, c._imp_pron_3p = tR2.."i", tT.."a", _tT.."a", tT.."an", _tT.."an"
c.imp_pron_1p, c._imp_pron_1p, c.imp_pron_2p = t.."á", _t.."á", tR2.."í"
c.notas = [=[<!--
--><li>Kiedy jest akcentowana, grupa <b>"ec"</b> rdzenia przybiera formę <b>"ig"</b> przed samogłoskami [a], [o] i formę <b>"ic"</b> przed [e]</li><!--
--><li>W czasie <i>pretérito perfecto simple</i>, we wszystkich czasach <i>subjuntivo</i> i w <i>gerundio</i> samogłoska <b>"e"</b> rdzenia przechodzi w <b>"i"</b></li><!--
--><li>Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę litery <b>"j"</b> w czasach </i>pretérito perfecto simple (indicativo)</i>,</br><!--
--><i>pretérito imperfecto (subjuntivo)</i> i <i>futuro (subjuntivo)</i></li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li>]=]
-- variantes bendecir (op)/predecir (op2)/decir (default)
if op then
c.part, c.part_irr = tR2.."ido", false
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR2.."iré"..es..tR2.."iré", tR2.."irás"..es..tR2.."irás", tR2.."irá"..es..tR2.."irá"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR2.."iremos"..es..tR2.."iremos", tR2.."iréis"..es..tR2.."iréis", tR2.."irán"..es..tR2.."irán"
c.c_i_1s, c.c_i_2s = tR2.."iría"..es..tR2.."iría", tR2.."irías"..es..tR2.."irías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR2.."iríamos"..es..tR2.."iríamos", tR2.."iríais"..es..tR2.."iríais", tR2.."irían"..es..tR2.."irían"
c.imp_2s = t3.."e"..es.._t3.."e"
c.imp_pron_2s, c._imp_pron_2s = t3T.."e", _t3T.."e"
c.pps2_ast, c.pi_f_ast = "*", "*"
c.notas = c.notas..'<li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce, gdy występuje po niej inna samogłoska (wyjątek: <i>gerundio</i>) (*)</li>'
elseif op2 then
c.part, c.part_irr = tR.."icho", true
c.f_i_1s = tR.."iré"..es..tR.."iré]]</br>[["..tR2.."iré"..es..tR2.."iré"
c.f_i_2s = tR.."irás"..es..tR.."irás]]</br>[["..tR2.."irás"..es..tR2.."irás"
c.f_i_3s = tR.."irá"..es..tR.."irá]]</br>[["..tR2.."irá"..es..tR2.."irá"
c.f_i_1p = tR.."iremos"..es..tR.."iremos]]</br>[["..tR2.."iremos"..es..tR2.."iremos"
c.f_i_2p = tR.."iréis"..es..tR.."iréis]]</br>[["..tR2.."iréis"..es..tR2.."iréis"
c.f_i_3p = tR.."irán"..es..tR.."irán]]</br>[["..tR2.."irán"..es..tR2.."irán"
c.c_i_1s = tR.."iría"..es..tR.."iría]]</br>[["..tR2.."iría"..es..tR2.."iría"
c.c_i_2s = tR.."irías"..es..tR.."irías]]</br>[["..tR2.."irías"..es..tR2.."irías"
c.c_i_1p = tR.."iríamos"..es..tR.."iríamos]]</br>[["..tR2.."iríamos"..es..tR2.."iríamos"
c.c_i_2p = tR.."iríais"..es..tR.."iríais]]</br>[["..tR2.."iríais"..es..tR2.."iríais"
c.c_i_3p = tR.."irían"..es..tR.."irían]]</br>[["..tR2.."irían"..es..tR2.."irían"
c.imp_2s = t3.."e"..es.._t3.."e"
c.imp_pron_2s, c._imp_pron_2s = t3T.."e", _t3T.."e"
c.pps2_ast, c.f_c_ast, c.pi_f_ast = "**", "*", "**"
c.notas = c.notas..[=[<!--
--><li>Traci grupę <b>"ec"</b> rdzenia w czasach <i>futuro</i> i <i>condicional (indicativo)</i> (*); przyjmuje równiez formy regularne</li><!--
--><li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce, gdy występuje po niej inna samogłoska (wyjątek: <i>gerundio</i>) (**)</li>]=]
else
c.part, c.part_irr = tR.."icho", true
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."iré"..es..tR.."iré", tR.."irás"..es..tR.."irás", tR.."irá"..es..tR.."irá"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."iremos"..es..tR.."iremos", tR.."iréis"..es..tR.."iréis", tR.."irán"..es..tR.."irán"
c.c_i_1s, c.c_i_2s = tR.."iría"..es..tR.."iría", tR.."irías"..es..tR.."irías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."iríamos"..es..tR.."iríamos", tR.."iríais"..es..tR.."iríais", tR.."irían"..es..tR.."irían"
c.imp_2s = (verbo == "decir") and "di"..es.."di" or tR.."í"..es..tR.."í"
c.imp_pron_2s = tR.."i"
c.pps2_ast, c.f_c_ast, c.imp_ast, c.pi_f_ast = "**", "*", "*", "**"
c.notas = c.notas..[=[<!--
--><li>Traci grupę <b>"ec"</b> rdzenia w czasach <i>futuro</i> i <i>condicional (indicativo)</i> i w trybie rozkazującym <i>imperativo (tú)</i> (*)<!--
-->]=]..((verbo == "decir") and '</li>' or ', przybierając<br/>w ostatnim przypadku akcent graficzny</li>')..[=[<!--
--><li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce, gdy występuje po niej inna samogłoska (wyjątek: <i>gerundio</i>) (**)</li>]=]
end
c.c_i_3s = c.c_i_1s
return c
end
modelos.dormir = function (C)
-- t = duerm-, tT = duérm-, t2 = durm-
local t, _t = C.pref.."ue"..C.int, C.pref.._i.."ue".._d..C.int
local tT, _tT = C.pref.."ué"..C.int, C.pref.._i.."ué".._d..C.int
local t2, _t2 = C.pref.."u"..C.int, C.pref.._i.."u".._d..C.int
local c, es = conjug[3](C), "#es|"
c.ger, c.ger2, c._ger2 = t2.."iendo"..es.._t2.."iendo", t2.."iéndo", _t2.."iéndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_3s, c.pps_i_3p = t2.."ió"..es.._t2.."ió", t2.."ieron"..es.._t2.."ieron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t2.."amos"..es.._t2.."amos", t2.."áis"..es.._t2.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t2.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t2.."á", _tT.."an"
c.notas = [=[<!--
--><li>Gdy akcent pada na rdzenną głoskę [o], przechodzi ona w dyftong <b>"ue"</b></li><!--
--><li>Gdy jest nieakcentowana, rdzenna głoska [o] przechodzi w samogłoskę <b>"u"</b> w 3. os. czasu <i>pretérito perfecto simple</i>,</br><!--
-->we wszystkich czasach <i>modo subjuntivo</i> oraz w <i>gerundio</i></li>]=]
return c
end
modelos.erguir = function (C)
-- t = irgu-, tT = írgu-, tS = yerg-, tST = yérg-
local t, _t = "irgu", _i.."i".._d.."rgu"
local tT, _tT = "írgu", _i.."í".._d.."rgu"
local tS, _tS = "yerg", _i.."y".._d.."er".._i.."g".._d
local tST, _tST = "yérg", _i.."y".._d.."ér".._i.."g".._d
local c, es = conjug[3](C), "#es|"
c.ger, c.ger2, c._ger2 = t.."iendo"..es.._t.."iendo", t.."iéndo", _t.."iéndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = tS.."o"..es.._tS.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_3s, c.pps_i_3p = t.."ió"..es.._t.."ió", t.."ieron"..es.._t.."ieron"
c.p_s_1s, c.p_s_2s = tS.."a"..es.._tS.."a", tS.."as"..es.._tS.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = tS.."amos"..es.._tS.."amos", tS.."áis"..es.._tS.."áis", tS.."an"..es.._tS.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."iera"..es.._t.."iera", t.."ieras"..es.._t.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."iéramos"..es.._t.."iéramos", t.."ierais"..es.._t.."ierais", t.."ieran"..es.._t.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t.."iese"..es.._t.."iese", t.."ieses"..es.._t.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."iésemos"..es.._t.."iésemos", t.."ieseis"..es.._t.."ieseis", t.."iesen"..es.._t.."iesen"
c.f_s_1s, c.f_s_2s = t.."iere"..es.._t.."iere", t.."ieres"..es.._t.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."iéremos"..es.._t.."iéremos", t.."iereis"..es.._t.."iereis", t.."ieren"..es.._t.."ieren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s, c.imp_2s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s, c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tST.."a", tS.."á", tST.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tST.."a", _tS.."á", _tST.."an"
c.notas = [=[<!--
--><li>Gdy akcent pada na rdzenną głoskę [e], rdzeń otrzymuje początkową spółgłoskę <b>"y"</b></li><!--
--><li>Gdy jest nieakcentowana, rdzenna głoska [e] przechodzi w samogłoskę <b>"i"</b> w 3. os. czasu <i>pretérito perfecto simple</i>,</br><!--
-->we wszystkich czasach <i>modo subjuntivo</i> oraz w <i>gerundio</i></li><!--
--><li>Rdzeń kończy się grupą <b>"gu"</b>, która przybiera formę litery <b>"g"</b> przed głoskami [a], [o], [u]</li>]=]
return c
end
modelos.errar = function (C)
-- t = yerr-, tT = yérr-
local t, _t = "yerr", _i.."y".._d.."err"
local tT, _tT = "yérr", _i.."y".._d.."érr"
local c, es = conjug[1](C), "#es|"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."as"..es.._t.."as", t.."a"..es.._t.."a", t.."an"..es.._t.."an"
c.p_s_1s, c.p_s_2s, c.p_s_3p = t.."e"..es.._t.."e", t.."es"..es.._t.."es", t.."en"..es.._t.."en"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c.imp_pron_3s, c.imp_pron_3p = tT.."a", tT.."e", tT.."en"
c._imp_pron_2s, c._imp_pron_3s, c._imp_pron_3p = _tT.."a", _tT.."e", _tT.."en"
c.notas = '<li>Gdy akcent pada na rdzenną głoskę [e], rdzeń otrzymuje początkową spółgłoskę <b>"y"</b></li>'
return c
end
modelos.estar = function (C, _conj, _modelo, _verbo, terc_pers, esPron)
local t, _t = "estuv", "est".._i.."uv".._d
local c, es = conjug[1](C), "#es|"
c.p_i_1s, c.p_i_2s, c.p_i_3s = "estoy"..es.."esto".._i.."y".._d, "estás"..es.."est".._i.."á".._d.."s", "está"..es.."est".._i.."á".._d
c.p_i_3p = "están"..es.."est".._i.."á".._d.."n"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t.."e"..es.._t.._i.."e".._d, t.."iste"..es.._t.._i.."i".._d.."ste", t.."o"..es.._t.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t.."imos"..es.._t.._i.."i".._d.."mos", t.."isteis"..es.._t.._i.."i".._d.."steis", t.."ieron"..es.._t.._i.."ie".._d.."ron"
c.p_s_1s, c.p_s_2s, c.p_s_3p = "esté"..es.."est".._i.."é".._d, "estés"..es.."est".._i.."é".._d.."s", "estén"..es.."est".._i.."é".._d.."n"
c.pi1_s_1s, c.pi1_s_2s = t.."iera"..es.._t.._i.."ie".._d.."ra", t.."ieras"..es.._t.._i.."ie".._d.."ras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."iéramos"..es.._t.._i.."ié".._d.."ramos", t.."ierais"..es.._t.._i.."ie".._d.."rais", t.."ieran"..es.._t.._i.."ie".._d.."ran"
c.pi2_s_1s, c.pi2_s_2s = t.."iese"..es.._t.._i.."ie".._d.."se", t.."ieses"..es.._t.._i.."ie".._d.."ses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."iésemos"..es.._t.._i.."ié".._d.."semos", t.."ieseis"..es.._t.._i.."ie".._d.."seis", t.."iesen"..es.._t.._i.."ie".._d.."sen"
c.f_s_1s, c.f_s_2s = t.."iere"..es.._t.._i.."ie".._d.."re", t.."ieres"..es.._t.._i.."ie".._d.."res"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."iéremos"..es.._t.._i.."ié".._d.."remos", t.."iereis"..es.._t.._i.."ie".._d.."reis", t.."ieren"..es.._t.._i.."ie".._d.."ren"
c.p_i_2vs, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_i_2s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = "estate"..es.."est".._i.."ate".._d
c.imp_2vs, c._imp_2vs, c.imp_pron_2s = "estate", "est".._i.."ate".._d, "esta"
c.imp_pron_3s, c.imp_pron_3p = "este", "esten"
c.notas = [=[<!--
-->]=]..(terc_pers and '' or '<li>Do końcówki 1. os. lp. czasu <i>presente de indicativo</i> dodaje się jotowaną spółgłoskę <b>"y"</b></li>')..[=[<!--
--><li>Formy <i>presente de indicativo</i> i <i>subjuntivo</i> są akcentowane na ostatniej sylabie, przybierając zatem akcent graficzny</li><!--
--><li>]=]..(terc_pers and 'Otrzymuje nieakcentowaną końcówkę fleksyjną w 3. os. lp. czasu <i>pretérito perfecto simple</i></li><li>Końcówki fleksyjne ' or
'Otrzymuje nieakcentowane końcówki fleksyjne w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i>; pozostałe końcówki tego czasu,</br>')..[=[<!--
--><i>pretérito imperfecto (subjuntivo)</i> i <i>futuro (subjuntivo)</i> pochodzą od koniugacji II-III</li><!--
--><li>Rdzeń otrzymuje końcową grupę <b>"uv"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
-->]=]..(esPron and "" or "<li>Formy lp. trybu <i>imperativo</i> pochodzą od czasownika zwrotnego <i>[[estarse]]</i></li>")
return c
end
modelos.haber = function (C, _conj, _modelo, _verbo, terc_pers, esPron) -- (*)
-- t = hay-, t2 = hub-
local t, _t = "hay", "ha".._i.."y".._d
local t2, _t2 = "hub", "h".._i.."ub".._d
local c, tR, es, op = {}, "hab", "#es|", (modelo == verbo)
c.inf, c.inf2, c.ger, c.ger2, c._ger2, c.part = tR.."er", tR.."ér", tR.."iendo"..es..tR.."iendo", tR.."iéndo", tR.."iéndo", tR.."ido"
c.p_i_1s, c.p_i_2s, c.p_i_3s = "he"..es.."h".._i.."e".._d, "has"..es.."h".._i.."as".._d
c.p_i_3s = terc_pers and "hay"..es.."h".._i.."ay".._d or "ha"..es.."h".._i.."a".._d
c.p_i_1p = esPron and tR.."emos"..es..tR.."emos" or "hemos"..es.."h".._i.."emos".._d
c.p_i_2p, c.p_i_3p = tR.."éis"..es..tR.."éis", "han"..es.."h".._i.."an".._d
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."ré"..es..tR.."ré", tR.."rás"..es..tR.."rás", tR.."rá"..es..tR.."rá"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."remos"..es..tR.."remos", tR.."réis"..es..tR.."réis", tR.."rán"..es..tR.."rán"
c.c_i_1s, c.c_i_2s = tR.."ría"..es..tR.."ría", tR.."rías"..es..tR.."rías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."ríamos"..es..tR.."ríamos", tR.."ríais"..es..tR.."ríais", tR.."rían"..es..tR.."rían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.p_i_2vs, c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_i_2s, c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imper_no = true
c.f_c_ast = "*"
c.notas = [=[<!--
-->]=]..(terc_pers and '' or '<li>Traci grupę <b>"ab"</b> rdzenia we wszystkich formach <i>presente de indicativo</i> oprócz '..(esPron and '1. i ' or '')..'2. os. lm., zmieniając końcówki fleksyjne</li>')..[=[<!--
-->]=]..((terc_pers == "lp") and '<li>Do końcówki 3. os. lp. czasu <i>presente de indicativo</i> dodaje się jotowaną spółgłoskę <b>"y"</b></li>' or '')..[=[<!--
--><li>Grupa <b>"ab"</b> rdzenia przybiera formę <b>"ub"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>]=]..(terc_pers and 'Otrzymuje nieakcentowaną końcówkę fleksyjną pierwszej koniugacji w' or 'Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i')..[=[<!--
--> 3. os. lp. czasu ''pretérito perfecto simple''</li><!--
--><li>Rdzenna spółgłoska <b>"b"</b> przybiera formę <b>"y"</b> w czasie <i>presente de subjuntivo</i></li><!--
--><li>Traci pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (simple)</i> (*)</li>]=]
return c
end
modelos.hacer = function (C, _conj, _modelo, verbo, terc_pers) -- (*)
-- t = hag-, tT = hág-, t2 = hic-
local t, _t = C.pref.."ag", C.pref.."a".._i.."g".._d
local tT, _tT = C.pref.."ág", C.pref.."á".._i.."g".._d
local t2, _t2 = C.pref.."ic", C.pref.._i.."ic".._d
local c, tR, tR2, es, op, op2 = {}, C.pref.."ac", C.pref.."ar", "#es|", ((verbo == "contrahacer") or (verbo == "rehacer")), (verbo == "satisfacer")
c.inf, c.inf2, c.ger, c.ger2 = tR.."er", tR.."ér", tR.."iendo"..es..tR.."iendo", tR.."iéndo"
c.part, c.part_irr = C.pref.."echo", true
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s = t.."o"..es.._t.."o", tR.."es"..es..tR.."es", tR.."és"..es..tR.."és", tR.."e"..es..tR.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", tR.."en"..es..tR.."en"
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", C.pref.."izo"..es..C.pref.._i.."izo".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR2.."é"..es..tR2.."é", tR2.."ás"..es..tR2.."ás", tR2.."á"..es..tR2.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR2.."emos"..es..tR2.."emos", tR2.."éis"..es..tR2.."éis", tR2.."án"..es..tR2.."án"
c.c_i_1s, c.c_i_2s = tR2.."ía"..es..tR2.."ía", tR2.."ías"..es..tR2.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR2.."íamos"..es..tR2.."íamos", tR2.."íais"..es..tR2.."íais", tR2.."ían"..es..tR2.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = op2 and "satisfaz#es|satisfa".._i.."z".._d.."]]</br>[[satisface#es|satisface" or C.pref.."az"..es..C.pref.."a".._i.."z".._d
c.imp_2vs, c.imp_2p = tR.."é", tR.."ed"
c.imp_pron_2s = op2 and "satisfaz" or C.pref.."az"
c._imp_pron_2s = op2 and "satisfa".._i.."z".._d.."te]]</br>[[satisfácete#es|satisfáce" or C.pref.."a".._i.."z".._d
c.imp_pron_2vs, c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = tR.."e", tT.."a", tT.."an", _tT.."a", _tT.."an"
c.imp_pron_1p, c._imp_pron_1p, c.imp_pron_2p = t.."á", _t.."á", tR.."e"
c.f_c_ast, c.imp_ast = "*", "*"
c.notas = [=[<!--
--><li>Wszystkie czasowniki tego modelu tworzą <i>participio</i> poprzez przemianę grupy <b>"ac"</b> rdzenia na <b>"ech"</b></li><!--
--><li>Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę spółgłoski <b>"g"</b> przed ]=]..(terc_pers and 'głoska [a]' or 'głoskami [a], [o]')..[=[</li><!--
--><li>Grupa <b>"ac"</b> rdzenia przybiera formę <b>"ic"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (subjuntivo)</i></br><!--
-->i <i>futuro (subjuntivo)</i> przed głoskami [e], [i] i formę <b>"iz"</b> przed głoską [o]]=]..(op and [=[; w przypadku gdy akcent pada na tę sylabę,</br><!--
-->głoska [i] tworzy rozziew z ostatnią samogłoską rdzenia i przybiera akcent graficzny</li>]=] or '</li>')..[=[<!--
--><li>]=]..(terc_pers and 'Otrzymuje nieakcentowaną końcówkę fleksyjną pierwszej koniugacji w' or 'Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i')..[=[<!--
--> 3. os. lp. czasu ''pretérito perfecto simple''</li><!--
--><li>Traci grupę <b>"ac"</b> rdzenia w czasach <i>futuro</i> i <i>condicional (indicativo)</i> (*)</li><!--
-->]=]..(terc_pers and '' or [=[<li>Traci końcówkę fleksyjną dla formy 2. os. lp. <i>imperativo (tú)</i>, przybierając końcową spółgłoskę <b>"z"</b> zamiast <b>"c"</b><!--
-->]=]..(op2 and '.<br/>Przyjmuje również regularną formę zakończoną na "-ace"</li>' or '</li>'))
if op then
c.pps_i_1s = C.pref.."íce"..es..C.pref.._i.."íce".._d
c.pps_i_3s = C.pref.."ízo"..es..C.pref.._i.."ízo".._d
if verbo == "rehacer" then
c.tild = "descafeinar"
c.notas = c.notas..'<li>Gdy akcent pada na głoskę [i] końcówki fleksyjnej, tworzy rozziew z głoską [e] rdzenia i przybiera akcent graficzny (<b>"ehí"</b>)</li>'
else
c.tild = "aislar"
c.notas = c.notas..'<li>Gdy akcent pada na głoskę [i] końcówki fleksyjnej, tworzy rozziew z głoską [a] rdzenia i przybiera akcent graficzny (<b>"ahí"</b>)</li>'
end
end
return c
end
modelos.ir = function (C, _conj, modelo, verbo, _terc_pers, esPron) -- (*)
local op, tR = (modelo == verbo), C.pref
-- t = fu-, t2 = ib-, t2T = íb-, t3 = vay-, t3T = váy-
local t, _t = tR.."fu", tR.._i.."fu".._d
local t2, _t2 = op and "ib" or tR.."íb", op and _i.."ib".._d or tR.._i.."íb".._d
local t2T, _t2T = tR.."íb", tR.._i.."íb".._d
local t3, _t3 = tR.."vay", tR.._i.."vay".._d
local t3T, _t3T = tR.."váy", tR.._i.."váy".._d
local c, es = {}, "#es|"
c.inf, c.inf2, c.ger, c.ger2, c._ger2 = op and "ir" or tR.."ír", tR.."ír", tR.."yendo"..es..tR.._i.."y".._d.."endo", tR.."yéndo", tR.._i.."y".._d.."éndo"
c.part, c._part = op and "ido" or tR.."ído", op and "ido" or tR.._i.."í".._d.."do"
c.p_i_1s, c.p_i_1p = tR.."voy"..es..tR.._i.."voy".._d, tR.."vamos"..es..tR.._i.."va".._d.."mos"
c.p_i_2s = op and "vas"..es.._i.."va".._d.."s" or tR.."vás"..es..tR.._i.."vá".._d.."s"
c.p_i_3s = op and "va"..es.._i.."va".._d or tR.."vá"..es..tR.._i.."vá".._d
c.p_i_2p = op and "vais"..es.._i.."va".._d.."is" or tR.."váis"..es..tR.._i.."vá".._d.."is"
c.p_i_3p = op and "van"..es.._i.."va".._d.."n" or tR.."ván"..es..tR.._i.."vá".._d.."n"
c.pi_i_1s, c.pi_i_2s = t2.."a"..es.._t2.."a", t2.."as"..es.._t2.."as"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = t2T.."amos"..es.._t2T.."amos", t2.."ais"..es.._t2.."ais", t2.."an"..es.._t2.."an"
c.pps_i_1s = op and "fui"..es.._i.."fui".._d or t.."í"..es.._t.._i.."í".._d
c.pps_i_3s = op and "fue"..es.._i.."fue".._d or t.."é"..es.._t.._i.."é".._d
c.pps_i_2s, c.pps_i_2p = t.."iste"..es.._t.."iste", t.."isteis"..es.._t.."isteis"
c.pps_i_1p, c.pps_i_3p = t.."imos"..es.._t.."imos", t.."eron"..es.._t.."eron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."iré"..es..tR.."iré", tR.."irás"..es..tR.."irás", tR.."irá"..es..tR.."irá"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."iremos"..es..tR.."iremos", tR.."iréis"..es..tR.."iréis", tR.."irá"..es..tR.."irán"
c.c_i_1s, c.c_i_2s = tR.."iría"..es..tR.."iría", tR.."irías"..es..tR.."irías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."iríamos"..es..tR.."iríamos", tR.."iríais"..es..tR.."iríais", tR.."irían"..es..tR.."irían"
c.p_s_1s, c.p_s_2s = t3.."a"..es.._t3.."a", t3.."as"..es.._t3.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t3.."amos"..es.._t3.."amos", t3.."áis"..es.._t3.."áis", t3.."an"..es.._t3.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es.._t.."era", t.."eras"..es.._t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es.._t.."éramos", t.."erais"..es.._t.."erais", t.."eran"..es.._t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es.._t.."ese", t.."eses"..es.._t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es.._t.."ésemos", t.."eseis"..es.._t.."eseis", t.."esen"..es.._t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es.._t.."ere", t.."eres"..es.._t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es.._t.."éremos", t.."ereis"..es.._t.."ereis", t.."eren"..es.._t.."eren"
c.p_i_2vs, c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_i_2s, c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = op and "ve"..es.._i.."ve".._d or tR.."vé"..es..tR.._i.."vé".._d
c.imp_2vs, c._imp_2vs = op and "andá" or tR.."vé", op and _i.."andá".._d or tR.._i.."vé".._d
c.imp_2p, c._imp_2p = op and "id" or tR.."íd", op and "id" or tR.._i.."í".._d.."d"
c.imp_pron_2s, c.imp_pron_2vs, c._imp_pron_2s, c._imp_pron_2vs = tR.."ve", op and "anda" or tR.."ve", "v".._d.."e", op and _i.."anda".._d or tR.."v".."e"
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = tR..t3T.."a", tR..t3T.."an", tR.._t3T.."a", tR.._t3T.."an"
c.imp_pron_1p, c._imp_pron_1p = tR..t3.."á", tR.._t3.."á"
c.imp_pron_2p, c._imp_pron_2p = op and "id" or tR.."íd", op and "i".._i.."d".._d or tR.._i.."íd".._d
c.notas = [=[<!--
--><li>Do końcówki 1. os. lp. czasu <i>presente de indicativo</i> dodaje się jotowaną spółgłoskę <b>"y"</b></li><!--
--><li>Rdzeń otrzymuje spółgłoskę <b>"v"</b> w czasie <i>presente de indicativo</i> i w formie lp. trybu <i>imperativo (tú)</i></li><!--
--><li>Otrzymuje końcówki fleksyjne pierwszej koniugacji w czasach <i>presente (indicativo/subjuntivo)</i> i <i>pretérito imperfecto</br><!--
-->(indicativo)</i>, zamieniając w tym ostatnim początkową literę <b>"a"</b> samogłoską <b>"i"</b></li><!--
--><li>Rdzeń otrzymuje grupę liter <b>"fu"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i>,</br><!--
-->tracąc w tych ostatnich początkową samogłoskę <b>"i"</b> końcówki fleksyjnej</li><!--
--><li>Końcówka fleksyjna 3. os. lp. czasu <i>pretérito perfecto simple</i> przybiera formę samogłoski <b>"e"</b></li><!--
--><li>Rdzeń otrzymuje grupę liter <b>"vay"</b> w czasie <i>presente de subjuntivo</i></li><!--
--><li>Początkowa samogłoska <b>"i"</b> w gerundio przechodzi w spółgłoskę <b>"y"</b></li><!--
--><li>Forma lp. trybu <i>imperativo (vos)</i> pochodzi od czasownika <i>[[andar#es|andar]]</i></li><!--
-->]=]..(esPron and '<li>Końcówka fleksyjna dla formy lm. trybu <i>imperativo (vosotros/as)</i> zachowuje spółgłoskę <b>"d"</b></li>' or '')..[=[<!--
-->]=]..(op and '<li>Zgodnie z reguła pisowni nie akcentuje się wyrazów jednosylabowych: <i>vais, fui, fue</i></li>' or '')..[=[<!--
-->]=]..(op and '' or '<li>Formy <i>presente de indicativo</i> (oprócz 1. os.)'..((esPron) and '' or ' i lp. <i>imperativo (tú)</i>')..[=[<!--
--> są akcentowane na ostatniej sylabie, przybierając zatem akcent graficzny</li></li><!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską [a] rdzenia, otrzymując akcent graficzny (<b>"aí"</b>)]=])
return c
end
modelos.leer = function (C, _conj, _modelo, verbo) -- usado por "roer"
-- t = ley-
local t, _t = C.pref..C.vocal.."y", C.pref..C.vocal.._i.."y".._d
local c, tR, es = conjug[2](C), C.pref..C.vocal, "#es|"
c.ger, c.ger2, c._ger2 = t.."endo"..es.._t.."endo", t.."éndo", _t.."éndo"
c.part, c._part = tR.."ído", tR.._i.."í".._d.."do"
c.pps_i_1p = tR.."ímos"..es..tR.._i.."í".._d.."mos"
c.pps_i_2s, c.pps_i_2p = tR.."íste"..es..tR.._i.."í".._d.."ste", tR.."ísteis"..es..tR.._i.."í".._d.."steis"
c.pps_i_3s, c.pps_i_3p = t.."ó"..es.._t.."ó", t.."eron"..es.._t.."eron"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es.._t.."era", t.."eras"..es.._t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es.._t.."éramos", t.."erais"..es.._t.."erais", t.."eran"..es.._t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es.._t.."ese", t.."eses"..es.._t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es.._t.."ésemos", t.."eseis"..es.._t.."eseis", t.."esen"..es.._t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es.._t.."ere", t.."eres"..es.._t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es.._t.."éremos", t.."ereis"..es.._t.."ereis", t.."eren"..es.._t.."eren"
c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.notas = [=[<!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską []=]..C.vocal..[=[] rdzenia, otrzymując akcent graficzny (<b>"]=]..C.vocal..[=[í"</b>)</li><!--
--><li>Początkowa, nieakcentowana samogłoska <b>"i"</b> w końcówce przechodzi w spółgłoskę <b>"y"</b>, gdy występuje po niej inna samogłoska</li>]=]
-- participio doble del grupo "proveer" - "proveído" o "provisto"
if (verbo == "proveer") or (verbo == "desproveer") then c.part_doble = C.pref.."isto" end
return c
end
modelos.mover = function (C, _conj, modelo) -- también: "oler"
local aux, auxT = (modelo == "oler") and "hue" or "ue", (modelo == "oler") and "hué" or "ué"
-- t = cuec-, tT = cuéc-, tS = cuez-, tST = cuéz-, t2S = coz-
local t, _t = C.pref..aux..C.int..C.suf1, C.pref.._i..aux.._d..C.int..C.suf1
local tT, _tT = C.pref..auxT..C.int..C.suf1, C.pref.._i..auxT.._d..C.int..C.suf1
local tS, _tS = C.pref..aux..C.int..C.suf2, C.pref.._i..aux.._d..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local tST, _tST = C.pref..auxT..C.int..C.suf2, C.pref.._i..auxT.._d..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local t2S, _t2S = C.pref.."o"..C.int..C.suf2, C.pref.."o"..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local c, es = conjug[2](C), "#es|"
c.modelo = "mover"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = tS.."o"..es.._tS.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.p_s_1s, c.p_s_2s = tS.."a"..es.._tS.."a", tS.."as"..es.._tS.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t2S.."amos"..es.._t2S.."amos", t2S.."áis"..es.._t2S.."áis", tS.."an"..es.._tS.."an"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tST.."a", t2S.."á", tST.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tST.."a", _t2S.."á", _tST.."an"
c.notas = '<li>Gdy akcent pada na rdzenną głoskę [o], przechodzi ona w '..((modelo == "oler") and 'grupę <b>"hue"</b>' or 'dyftong <b>"ue"</b>')..'</li>'
if (C.suf1 ~= "") then -- si se da alternancia en la/s última/s letra/s para conservar el sonido, especifica el "modelo" correspondiente
c.alt = "cocer"
c.notas = c.notas.."<li>"..notas[C.suf1.."_"..C.suf2].."</li>"
end
return c
end
modelos.mullir = function (C, conj) -- también: "tañer"
-- t = mull-, tT = múll-
local t = C.pref..C.vocal..C.int
local c, es = conjug[conj](C), "#es|"
c.ger, c.ger2 = t.."endo"..es..t.."endo", t.."éndo"
c.pps_i_3s, c.pps_i_3p = t.."ó"..es..t.."ó", t.."eron"..es..t.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es..t.."a", t.."as"..es..t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es..t.."amos", t.."áis"..es..t.."áis", t.."an"..es..t.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es..t.."era", t.."eras"..es..t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es..t.."éramos", t.."erais"..es..t.."erais", t.."eran"..es..t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es..t.."ese", t.."eses"..es..t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es..t.."ésemos", t.."eseis"..es..t.."eseis", t.."esen"..es..t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es..t.."ere", t.."eres"..es..t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es..t.."éremos", t.."ereis"..es..t.."ereis", t.."eren"..es..t.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.ger_ast, c.pps_ast, c.pi_f_ast = "*", "*", "*"
c.notas = '<li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce fleksyjnej, gdy występuje po niej inna samogłoska (*)</li>'
return c
end
modelos["oír"] = function (C)
-- t = oig-, tT = óig, t2 = oy-, tT2 = óy-
local t, _t = C.pref.."oig", C.pref.."o".._i.."ig".._d
local tT, _tT = C.pref.."óig", C.pref.."ó".._i.."ig".._d
local t2, _t2 = C.pref.."oy", C.pref.."o".._i.."y".._d
local tT2, _tT2 = C.pref.."óy", C.pref.."ó".._i.."y".._d
local c, es = conjug[3](C), "#es|"
c.inf, c.ger, c.ger2, c._ger2 = C.pref.."oír", t2.."endo"..es.._t2.."endo", t2.."éndo", _t2.."éndo"
c.part, c._part = C.pref.."oído", C.pref.."o".._i.."í".._d.."do"
c.p_i_1s, c.p_i_2s, c.p_i_3s = t.."o"..es.._t.."o", t2.."es"..es.._t2.."es", t2.."e"..es.._t2.."e"
c.p_i_1p, c.p_i_3p = C.pref.."oímos"..es..C.pref.."o".._i.."í".._d.."mos", t2.."en"..es.._t2.."en"
c.pps_i_1p = c.p_i_1p
c.pps_i_2s, c.pps_i_2p = C.pref.."oíste"..es..C.pref.."o".._i.."í".._d.."ste", C.pref.."oísteis"..es..C.pref.."o".._i.."í".._d.."steis"
c.pps_i_3s, c.pps_i_3p = t2.."ó"..es.._t2.."ó", t2.."eron"..es.._t2.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."era"..es.._t2.."era", t2.."eras"..es.._t2.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."éramos"..es.._t2.."éramos", t2.."erais"..es.._t2.."erais", t2.."eran"..es.._t2.."eran"
c.pi2_s_1s, c.pi2_s_2s = t2.."ese"..es.._t2.."ese", t2.."eses"..es.._t2.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."ésemos"..es.._t2.."ésemos", t2.."eseis"..es.._t2.."eseis", t2.."esen"..es.._t2.."esen"
c.f_s_1s, c.f_s_2s = t2.."ere"..es.._t2.."ere", t2.."eres"..es.._t2.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."éremos"..es.._t2.."éremos", t2.."ereis"..es.._t2.."ereis", t2.."eren"..es.._t2.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2p, c._imp_2p = c.p_i_3s, C.pref.."oíd", C.pref.."o".._i.."í".._d.."d"
c.imp_pron_1p, c._imp_pron_1p = t.."á", _t.."á"
c.imp_pron_2s, c.imp_pron_2vs, c._imp_pron_2s, c._imp_pron_2vs = tT2.."e", C.pref.."oí", _tT2.."e", C.pref.."o".._i.."í".._d
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = tT.."a", tT.."an", _tT.."a", _tT.."an"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje końcową grupę <b>"ig"</b> przed głoskami [a], [o]</li><!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"y"</b> przed samogłoską otwartą [e] w <i>presente de indicativo</i> i <i>imperativo (tú)</i></li><!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską [o] rdzenia, otrzymując akcent graficzny (<b>"oí"</b>)</li><!--
--><li>Początkowa, nieakcentowana samogłoska <b>"i"</b> w końcówce przechodzi w spółgłoskę <b>"y"</b>, gdy występuje po niej inna samogłoska</li>]=]
return c
end
modelos.pedir = function (C, _conj, _modelo, verbo) -- usado por: "erguir"
-- t = sigu-, tT = sígu-, tS = sig-, tST = síg-
local t, _t = C.pref.."i"..C.int..C.suf1, C.pref.._i.."i".._d..C.int..C.suf1
local tT, _tT = C.pref.."í"..C.int..C.suf1, C.pref.._i.."í".._d..C.int..C.suf1
local tS, _tS = C.pref.."i"..C.int..C.suf2, C.pref.._i.."i".._d..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local tST, _tST = C.pref.."í"..C.int..C.suf2, C.pref.._i.."í".._d..C.int..((C.suf2 == "") and "" or _i..C.suf2.._d)
local c, es = conjug[3](C), "#es|"
c.modelo = "pedir"
c.ger, c.ger2, c._ger2 = t.."iendo"..es.._t.."iendo", t.."iéndo", _t.."iéndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = tS.."o"..es.._tS.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_3s, c.pps_i_3p = t.."ió"..es.._t.."ió", t.."ieron"..es.._t.."ieron"
c.p_s_1s, c.p_s_2s = tS.."a"..es.._tS.."a", tS.."as"..es.._tS.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = tS.."amos"..es.._tS.."amos", tS.."áis"..es.._tS.."áis", tS.."an"..es.._tS.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."iera"..es.._t.."iera", t.."ieras"..es.._t.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."iéramos"..es.._t.."iéramos", t.."ierais"..es.._t.."ierais", t.."ieran"..es.._t.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t.."iese"..es.._t.."iese", t.."ieses"..es.._t.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."iésemos"..es.._t.."iésemos", t.."ieseis"..es.._t.."ieseis", t.."iesen"..es.._t.."iesen"
c.f_s_1s, c.f_s_2s = t.."iere"..es.._t.."iere", t.."ieres"..es.._t.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."iéremos"..es.._t.."iéremos", t.."iereis"..es.._t.."iereis", t.."ieren"..es.._t.."ieren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tST.."a", tS.."á", tST.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tST.."a", tS.."á", _tST.."an"
c.notas = ((verbo == "preterir") and '' or
'<li>Gdy akcent pada na rdzenną głoskę [e], przechodzi ona w samogłoskę <b>"i"</b>'..((verbo == "rehenchir") and ' i tworzy rozziew z grupą "eh", przybierając akcent graficzny (<b>"ehí"</b>)' or ''))..[=[</li><!--
--><li>Gdy jest nieakcentowana, rdzenna głoska [e] przechodzi w samogłoskę <b>"i"</b> w 3. os. czasu <i>pretérito perfecto simple</i>,</br><!--
-->we wszystkich czasach <i>modo subjuntivo</i> oraz w <i>gerundio</i></li>]=]
if verbo == "rehenchir" then
c.p_i_1s = "rehíncho"..es.."reh".._i.."í".._d.."ncho"
c.p_i_2s = "rehínches"..es.."reh".._i.."í".._d.."nches"
c.p_i_3s = "rehínche"..es.."reh".._i.."í".._d.."nche"
c.p_i_3p = "rehínchen"..es.."reh".._i.."í".._d.."nchen"
c.p_s_1s = "rehíncha"..es.."reh".._i.."í".._d.."ncha"
c.p_s_2s = "rehínchas"..es.."reh".._i.."í".._d.."nchas"
c.p_s_3p = "rehínchan"..es.."reh".._i.."í".._d.."nchan"
c.p_s_3s, c.imp_2s = c.p_s_1s, c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = "rehínche", "reh".._i.."í".._d.."nche"
c.imp_pron_3s, c._imp_pron_3s = "rehínchase", "reh".._i.."í".._d.."nchan"
c.imp_pron_3p, c._imp_pron_3p = "rehínchanse", "reh".._i.."í".._d.."nchan"
c.tild = "descafeinar"
end
if (C.suf1 ~= "") then -- si se da alternancia en la/s última/s letra/s para conservar el sonido, especifica el "modelo" correspondiente
if "g" == C.suf1 then c.alt = "elegir"
elseif "gu" == C.suf1 then c.alt = "seguir" end
c.notas = c.notas.."<li>"..notas[C.suf1.."_"..C.suf2].."</li>"
end
return c
end
modelos.poder = function (C, _conj, _modelo, _verbo, terc_pers)
-- t = pued-, tT = puéd-, t2 = pud-
local t, _t = C.pref.."ue"..C.int, C.pref.._i.."ue".._d..C.int
local tT, _tT = C.pref.."ué"..C.int, C.pref.._i.."ué".._d..C.int
local t2, _t2 = C.pref.."u"..C.int, C.pref.._i.."u".._d..C.int
local c, tR, es = conjug[2](C), "podr", "#es|"
c.ger, c.ger2, c._ger2 = t2.."iendo"..es.._t2.."iendo", t2.."iéndo", _t2.."iéndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."é"..es..tR.."é", tR.."ás"..es..tR.."ás", tR.."á"..es..tR.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", tR.."án"..es..tR.."án"
c.c_i_1s, c.c_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.p_s_1s, c.p_s_2s, c.p_s_3p = t.."a"..es.._t.."a", t.."as"..es.._t.."as", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.._i.."ie".._d.."ra", t2.."ieras"..es.._t2.._i.."ie".._d.."ras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.._i.."ié".._d.."ramos", t2.."ierais"..es.._t2.._i.."ie".._d.."rais", t2.."ieran"..es.._t2.._i.."ie".._d.."ran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.._i.."ie".._d.."se", t2.."ieses"..es.._t2.._i.."ie".._d.."ses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.._i.."ié".._d.."semos", t2.."ieseis"..es.._t2.._i.."ie".._d.."seis", t2.."iesen"..es.._t2.._i.."ie".._d.."sen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.._i.."ie".._d.."re", t2.."ieres"..es.._t2.._i.."ie".._d.."res"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.._i.."ié".._d.."remos", t2.."iereis"..es.._t2.._i.."ie".._d.."reis", t2.."ieren"..es.._t2.._i.."ie".._d.."ren"
c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s, c.imp_2s = c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s, c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s,c._imp_pron_3p = tT.."a", tT.."an", _tT.."a", _tT.."an"
c.notas = [=[<!--
--><li>Gdy akcent pada na rdzenną głoskę [o], przechodzi ona w dyftong <b>"ue"</b> w czasach <i>presente de indicativo/subjuntivo<i/> i<br/><!--
-->w <i>pretérito perfecto simple (indicativo)</i></li><!--
--><li>Gdy jest nieakcentowana, rdzenna głoska [o] przechodzi w samogłoskę <b>"u"</b> w 3. os. czasu <i>pretérito perfecto simple</i>,</br><!--
-->w czasach <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i> oraz w <i>gerundio</i></li><!--
--><li>]=]..(terc_pers and 'Otrzymuje nieakcentowaną końcówkę fleksyjną pierwszej koniugacji w' or
'Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i')..' 3. os. lp. czasu <i>pretérito perfecto simple</i></li>'
return c
end
modelos.poner = function (C, _conj, modelo, verbo, _terc_pers, esPron) -- (*)
-- t = pong-, tT = póng-, t2 = pus-, t3 = pond-
local t, _t = C.pref.."ong", C.pref.."on".._i.."g".._d
local tT, _tT = C.pref.."ong", C.pref.."ón".._i.."g".._d
local t2, _t2 = C.pref.."us", C.pref.._i.."us".._d
local t3, _t3 = C.pref.."ondr", C.pref.."on".._i.."d".._d.."r"
local c, tR, es, op = {}, C.pref.."on", "#es|", (modelo == verbo)
c.inf, c.inf2, c.ger, c.ger2 = tR.."er", tR.."ér", tR.."iendo"..es..tR.."iendo", tR.."iéndo"
c.part, c.part_irr = C.pref.."uesto", true
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s = t.."o"..es.._t.."o", tR.."es"..es..tR.."es", tR.."és"..es..tR.."és", tR.."e"..es..tR.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", tR.."en"..es..tR.."en"
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = t3.."é"..es.._t3.."é", t3.."ás"..es.._t3.."ás", t3.."á"..es.._t3.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = t3.."emos"..es.._t3.."emos", t3.."éis"..es.._t3.."éis", t3.."án"..es.._t3.."án"
c.c_i_1s, c.c_i_2s = t3.."ía"..es.._t3.."ía", t3.."ías"..es.._t3.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = t3.."íamos"..es.._t3.."íamos", t3.."íais"..es.._t3.."íais", t3.."ían"..es.._t3.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2vs, c.imp_2p = op and tR..es..tR or C.pref.."ón"..es..C.pref.."ón", tR.."é", tR.."ed"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_1p, c._imp_pron_1p, c.imp_pron_2p = tR, tR.."e", t.."á", _t.."á", tR.."e"
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = tT.."a", tT.."an", _tT.."a", _tT.."an"
c.imp_ast = "*"
c.notas = [=[<!--
--><li>Wszystkie czasowniki tego modelu tworzą <i>participio</i> poprzez przemianę grupy <b>"on"</b> rdzenia na <b>"uest"</b></li><!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"g"</b> przed samogłoskami [a], [o]</li><!--
--><li>Grupa <b>"on"</b> rdzenia przybiera formę <b>"us"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Spółgłoska <b>"d"</b> zastępuje pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (indicativo)</i></li><!--
--><li>Traci końcówkę fleksyjną dla formy 2. os. lp. <i>imperativo (tú)</i>]=]..((not esPron and (verbo ~= "poner")) and ', przybierając zatem akcent graficzny (*)</li>' or '</li>')
return c
end
modelos.pudrir = function (C)
-- t = pudr-
local t, _t = C.pref.."u"..C.int, C.pref.._i.."u".._d..C.int
local tT, _tT = C.pref.."ú"..C.int, C.pref.._i.."ú".._d..C.int
local c, es = conjug[3](C), "#es|"
c.ger, c.ger2, c._ger2 = t.."iendo"..es.._t.."iendo", t.."iéndo", _t.."iéndo"
c.p_i_1s, c.p_i_2s = t.."o"..es.._t.."o", t.."es"..es.._t.."es"
c.p_i_3s, c.p_i_3p = t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis"
c.p_s_3p = t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."iera"..es.._t.."iera", t.."ieras"..es.._t.."ieras"
c.pi1_s_1p, c.pi1_s_2p = t.."iéramos"..es.._t.."iéramos", t.."ierais"..es.._t.."ierais"
c.pi1_s_3p = t.."ieran"..es.._t.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t.."iese"..es.._t.."iese", t.."ieses"..es.._t.."ieses"
c.pi2_s_1p, c.pi2_s_2p = t.."iésemos"..es.._t.."iésemos", t.."ieseis"..es.._t.."ieseis"
c.pi2_s_3p = t.."iesen"..es.._t.."iesen"
c.f_s_1s, c.f_s_2s = t.."iere"..es.._t.."iere", t.."ieres"..es.._t.."ieres"
c.f_s_1p, c.f_s_2p = t.."iéremos"..es.._t.."iéremos", t.."iereis"..es.._t.."iereis"
c.f_s_3p = t.."ieren"..es.._t.."ieren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s, c.imp_2s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s, c.p_i_3s
c.imp_pron_2s, c.imp_pron_3s = tT.."e", tT.."a"
c._imp_pron_2s, c._imp_pron_3s = _tT.."e", _tT.."a"
c.imp_pron_1p, c.imp_pron_3p = t.."á", tT.."an"
c._imp_pron_1p, c._imp_pron_3p = _t.."á", _tT.."an"
c.notas = '<li>Głoska [u] rdzenia przechodzi w <b>"o"</b> w niektórych czasach</li>'
return c
end
modelos.querer = function (C, _conj, _modelo, _verbo, terc_pers) -- (*)
-- t = quier-, tT = quiér-, t2 = quis-
local t, _t = C.pref.."ie"..C.int, C.pref.._i.."ie".._d..C.int
local tT, _tT = C.pref.."ié"..C.int, C.pref.._i.."ié".._d..C.int
local t2, _t2 = C.pref.."is", C.pref.._i.."is".._d
local c, tR, es = {}, C.pref.."er", "#es|"
c.inf, c.inf2, c.ger, c.ger2, c._ger2, c.part = tR.."er", tR.."ér", tR.."iendo"..es..tR.."iendo", tR.."iéndo", tR.."iéndo", tR.."ido"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s = t.."o"..es.._t.."o", t.."es"..es.._t.."es", tR.."és"..es..tR.."és", t.."e"..es.._t.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", t.."en"..es.._t.."en"
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."ré"..es..tR.."ré", tR.."rás"..es..tR.."rás", tR.."rá"..es..tR.."rá"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."remos"..es..tR.."remos", tR.."réis"..es..tR.."réis", tR.."rán"..es..tR.."rán"
c.c_i_1s, c.c_i_2s = tR.."ría"..es..tR.."ría", tR.."rías"..es..tR.."rías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."ríamos"..es..tR.."ríamos", tR.."ríais"..es..tR.."ríais", tR.."rían"..es..tR.."rían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = tR.."amos"..es..tR.."amos", tR.."áis"..es..tR.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2vs, c.imp_2p = c.p_i_3s, tR.."é", tR.."ed"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_3s = tT.."e", tR.."e", tT.."a"
c._imp_pron_2s, c._imp_pron_3s = _tT.."e", _tT.."a"
c.imp_pron_1p, c.imp_pron_2p, c.imp_pron_3p, c._imp_pron_3p = tR.."á", tR.."e", tT.."an", _tT.."an"
c.f_c_ast = "*"
c.notas = [=[<!--
--><li>Gdy akcent pada na rdzenną głoskę [e], przechodzi ona w dyftong <b>"ie"</b></li><!--
--><li>Grupa <b>"er"</b> rdzenia przybiera formę <b>"is"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>]=]..(terc_pers and 'Otrzymuje nieakcentowaną końcówkę fleksyjną pierwszej koniugacji w' or 'Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i')..[=[<!--
--> 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Traci pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (simple)</i> (*)</li>]=]
return c
end
modelos.roer = function (C) -- usado por: "raer"
-- t = roy-, tT = róy-
local t, _t = C.pref..C.vocal.."y", C.pref..C.vocal.._i.."y".._d
local tT, _tT = C.pref..C.tilde.."y", C.pref..C.tilde.._i.."y".._d
local c, tR, es = conjug[2](C), C.pref..C.vocal, "#es|"
c.ger, c.ger2, c._ger2 = t.."endo"..es.._t.."endo", t.."éndo", _t.."éndo"
c.part, c._part = C.pref..C.vocal.."ído", C.pref..C.vocal.._i.."í".._d.."do"
c.p_i_1s = op and c.p_i_1s or t.."o"..es.._t.."o"
c.pps_i_2s, c.pps_i_2p = tR.."íste"..es..tR.._i.."í".._d.."ste", tR.."ísteis"..es..tR.._i.."í".._d.."steis"
c.pps_i_1p = tR.."ímos"..es..tR.._i.."í".._d.."mos"
c.pps_i_3s, c.pps_i_3p = t.."ó"..es.._t.."ó", t.."eron"..es.._t.."eron"
c.p_s_1s, c.p_s_2s = op and c.p_s_1s or t.."a"..es.._t.."a", op and c.p_s_2s or t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p = op and c.p_s_1p or t.."amos"..es.._t.."amos", op and c.p_s_2p or t.."áis"..es.._t.."áis"
c.p_s_3p = op and c.p_s_3p or t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es.._t.."era", t.."eras"..es.._t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es.._t.."éramos", t.."erais"..es.._t.."erais", t.."eran"..es.._t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es.._t.."ese", t.."eses"..es.._t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es.._t.."ésemos", t.."eseis"..es.._t.."eseis", t.."esen"..es.._t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es.._t.."ere", t.."eres"..es.._t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es.._t.."éremos", t.."ereis"..es.._t.."ereis", t.."eren"..es.._t.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje dodatkową, końcową spółgłoskę <b>"y"</b> przed głoskami [a], [o]</li><!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską []=]..C.vocal..[=[] rdzenia, otrzymując akcent graficzny (<b>"]=]..C.vocal..[=[í"</b>)</li><!--
--><li>Początkowa, nieakcentowana samogłoska <b>"i"</b> w końcówce przechodzi w spółgłoskę <b>"y"</b>, gdy występuje po niej inna samogłoska</li>]=]
return c
end
modelos.saber = function (C, _conj, modelo, verbo) -- (*) también: "caber"
local op = (modelo == "caber")
-- t = sep-, tT = sép-, t2 = sup-
local t, _t = (op and "qu" or C.pref).."ep", op and _i.."quep".._d or C.pref.._i.."ep".._d
local tT, _tT = C.pref.."ép", C.pref.._i.."ép".._d
local t2, _t2 = C.pref.."up", C.pref.._i.."up".._d
local c, tR, tRT, es = {}, C.pref.."ab", C.pref.."áb", "#es|"
c.inf, c.inf2, c.ger, c.ger2, c._ger2, c.part = tR.."er", tR.."ér", tR.."iendo"..es..tR.."iendo", tR.."iéndo", tR.."iéndo", tR.."ido"
c.p_i_1s = op and "quepo"..es.._i.."quep".._d.."o" or C.pref.."sé"..es..C.pref.._i.."é".._d
c.p_i_2s, c.p_i_2vs, c.p_i_3s = tR.."es"..es..tR.."es", tR.."és"..es..tR.."és", tR.."e"..es..tR.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", tR.."en"..es..tR.."en"
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."ré"..es..tR.."ré", tR.."rás"..es..tR.."rás", tR.."rá"..es..tR.."rá"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."remos"..es..tR.."remos", tR.."réis"..es..tR.."réis", tR.."rán"..es..tR.."rán"
c.c_i_1s, c.c_i_2s = tR.."ría"..es..tR.."ría", tR.."rías"..es..tR.."rías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."ríamos"..es..tR.."ríamos", tR.."ríais"..es..tR.."ríais", tR.."rían"..es..tR.."rían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
if verbo == "caber" then
c.imper_no = true
else
c.imp_2s, c.imp_2vs, c.imp_2p = c.p_i_3s, tR.."é", tR.."ed"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_3s, c._imp_pron_3s = tRT.."e", tR.."e", tT.."a", _tT.."a"
c.imp_pron_1p, c._imp_pron_1p, c.imp_pron_2p, c.imp_pron_3p, c._imp_pron_3p = t.."á", _t.."á", tR.."e", tT.."an", _tT.."an"
end
c.f_c_ast = "*"
c.notas = [=[<!--
-->]=]..(op and '' or '<li>Grupa <b>"ab"</b> rdzenia zanika, a końcówka <b>"o"</b> przybiera formę akcentowanej samogłoski <b>"é"</b> w 1. os. lp. <i>presente de indicativo</i>')..[=[<!--
-->]=]..((verbo == "saber") and '</br>Pomimo że wyraz ten jest jednosylabowy, otrzymuje akcent graficzny, aby odróżnić go od zaimka zwrotnego "[[se#es|se]]" ([[tilde diacrítica]])</li><!--' or "</li><!--")..[=[
--><li>Grupa <b>"ab"</b> rdzenia przybiera formę <b>"up"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Traci pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (simple)</i> (*)</li><!--
--><li>Grupa <b>"ab"</b> rdzenia przybiera formę <b>"ep"</b> w czasie <i>presente de subjuntivo</i></li>]=]
return c
end
modelos.salir = function (C)
-- t = salg-, tT = sálg-, t2 = saldr-
local t, _t = C.pref.."alg", C.pref.."al".._i.."g".._d
local tT, _tT = C.pref.."álg", C.pref.."ál".._i.."g".._d
local t2, _t2 = C.pref.."aldr", C.pref.."al".._i.."d".._d.."r"
local c, tR, es = conjug[3](C), C.pref.."al", "#es|"
c.p_i_1s = t.."o"..es.._t.."o"
c.f_i_1s, c.f_i_2s, c.f_i_3s = t2.."é"..es.._t2.."é", t2.."ás"..es.._t2.."ás", t2.."á"..es.._t2.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = t2.."emos"..es.._t2.."emos", t2.."éis"..es.._t2.."éis", t2.."án"..es.._t2.."án"
c.c_i_1s, c.c_i_2s = t2.."ía"..es.._t2.."ía", t2.."ías"..es.._t2.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = t2.."íamos"..es.._t2.."íamos", t2.."íais"..es.._t2.."íais", t2.."ían"..es.._t2.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.c_i_3s, c.p_s_3s = c.c_i_1s, c.p_s_1s
c.imp_2s, c.imp_pron_2s = tR, tR
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.imp_ast = "*"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"g"</b> przed samogłoskami [a], [o]</li><!--
--><li>Spółgłoska <b>"d"</b> zastępuje pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (indicativo)</i></li><!--
--><li>Traci końcówkę fleksyjną dla formy 2. os. lp. <i>imperativo (tú)</i> (*)</li>]=]
return c
end
modelos.sentir = function (C)
-- t = sient-, tT = siént-, t2 = sint-
local t, _t = C.pref.."ie"..C.int, C.pref.._i.."ie".._d..C.int
local tT, _tT = C.pref.."ié"..C.int, C.pref.._i.."ié".._d..C.int
local t2, _t2 = C.pref.."i"..C.int, C.pref.._i.."i".._d..C.int
local c, es = conjug[3](C), "#es|"
c.ger, c.ger2, c._ger2 = t2.."iendo"..es.._t2.."iendo", t2.."iéndo", _t2.."iéndo"
c.p_i_1s, c.p_i_2s, c.p_i_3s, c.p_i_3p = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e", t.."en"..es.._t.."en"
c.pps_i_3s, c.pps_i_3p = t2.."ió"..es.._t2.."ió", t2.."ieron"..es.._t2.."ieron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t2.."amos"..es.._t2.."amos", t2.."áis"..es.._t2.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s = c.p_i_3s
c.imp_pron_2s, c._imp_pron_2s = tT.."e", _tT.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t2.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t2.."á", _tT.."an"
c.notas = [=[<!--
--><li>Gdy akcent pada na rdzenną głoskę [e], przechodzi ona w dyftong <b>"ie"</b></li><!--
--><li>Gdy jest nieakcentowana, rdzenna głoska [e] przechodzi w samogłoskę <b>"i"</b> w 3. os. czasu <i>pretérito perfecto simple</i>,</br><!--
-->w czasach <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i> oraz w <i>gerundio</i></li>]=]
return c
end
modelos.ser = function (C) -- (*)
-- t = fu-, t2 = er-, t2T = ér-, t3 = se-
local t, _t = "fu", _i.."fu".._d
local t2, _t2 = "er", _i.."er".._d
local t2T, _t2T = "ér", _i.."ér".._d
local t3, _t3 = "se", "s".._i.."e".._d
local c, tR, es = {}, "ser", "#es|"
c.inf, c.ger, c.ger2, c.part = "ser", "siendo"..es.."siendo", "siéndo", "sido"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s = "soy"..es.."so".._i.."y".._d, "eres"..es.._t2.."es", "sos"..es.._i.."sos".._d, "es"..es.._i.."es".._d
c.p_i_1p, c.p_i_2p, c.p_i_3p = "somos"..es.."s".._i.."o".._d.."mos", "sois"..es.."s".._i.."o".._d.."is", "son"..es.."s".._i.."o".._d.."n"
c.pi_i_1s, c.pi_i_2s = t2.."a"..es.._t2.."a", t2.."as"..es.._t2.."as"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = t2T.."amos"..es.._t2T.."amos", t2.."ais"..es.._t2.."ais", t2.."an"..es.._t2.."an"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t.."i"..es.._t.._i.."i".._d, t.."iste"..es.._t.."iste", t.."e"..es.._t.._i.."e".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t.."imos"..es.._t.."imos", t.."isteis"..es.._t.."isteis", t.."eron"..es.._t.."eron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = tR.."é"..es..tR.."é", tR.."ás"..es..tR.."ás", tR.."á"..es..tR.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", tR.."án"..es..tR.."án"
c.c_i_1s, c.c_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.p_s_1s, c.p_s_2s = t3.."a"..es.._t3.."a", t3.."as"..es.._t3.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t3.."amos"..es.._t3.."amos", t3.."áis"..es.._t3.."áis", t3.."an"..es.._t3.."an"
c.pi1_s_1s, c.pi1_s_2s = t.."era"..es.._t.."era", t.."eras"..es.._t.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t.."éramos"..es.._t.."éramos", t.."erais"..es.._t.."erais", t.."eran"..es.._t.."eran"
c.pi2_s_1s, c.pi2_s_2s = t.."ese"..es.._t.."ese", t.."eses"..es.._t.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t.."ésemos"..es.._t.."ésemos", t.."eseis"..es.._t.."eseis", t.."esen"..es.._t.."esen"
c.f_s_1s, c.f_s_2s = t.."ere"..es.._t.."ere", t.."eres"..es.._t.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t.."éremos"..es.._t.."éremos", t.."ereis"..es.._t.."ereis", t.."eren"..es.._t.."eren"
c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2vs, c.imp_2p = "sé"..es.."s".._i.."é".._d, "sé", "sed"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_1p, c._imp_pron_1p = "se", "se", "seamos", "s".._i.."e".._d.."á"
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = "séa", "séan", "s".._i.."é".._d.."a", "s".._i.."é".._d.."an"
c.notas = [=[<!--
--><li>Wszystkie formy <i>presente de indicativo</i> zmienają rdzeń lub otrzymują nieregularne końcówki fleksyjne</li><!--
--><li>Otrzymuje końcówki fleksyjne pierwszej koniugacji w czasie <i>pretérito imperfecto</i>, tracąc rdzeń i zamieniając</br><!--
-->charakterystyczną końcówkę <b>"ab"</b> grupą liter <b>"er"</b></li><!--
--><li>Rdzeń otrzymuje grupę liter <b>"fu"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i>,</br><!--
-->tracąc w tych ostatnich początkową samogłoskę <b>"i"</b> końcówki fleksyjnej</li><!--
--><li>Końcówka fleksyjna 3. os. lp. czasu <i>pretérito perfecto simple</i> przybiera formę samogłoski <b>"e"</b></li><!--
--><li>Rdzeń otrzymuje końcową samogłoskę <b>"e"</b> przed głoską [a] w czasie <i>presente de subjuntivo</i></li><!--
--><li>Zgodnie z regułą pisowni nie akcentuje się wyrazów jednosylabowych</li><!--
--><li>Pomimo że formy lp. trybu <i>imperativo</i> są jednosylabowe, otrzymują akcent graficzny, aby odróżnić je od zaimka</br><!--
-->zwrotnego <i>"[[se#es|se]]"</i> ([[tilde diacrítica]])</li>]=]
return c
end
modelos["sonreír"] = function (C, _conj, _modelo, verbo)
-- t = sonrí-, t2 = sonri-
local t, _t = C.pref.."í", C.pref.._i.."í".._d
local t2, _t2 = C.pref.."i", C.pref.._i.."i".._d
local c, tR, es = conjug[3](C), C.pref.."e", "#es|"
c.inf, c.ger, c.ger2, c._ger2 = tR.."ír", t2.."endo"..es.._t2.."endo", t2.."éndo", _t2.."éndo"
c.part, c._part = tR.."ído", tR.._i.."í".._d.."do"
c.p_i_1s, c.p_i_2s, c.p_i_3s = t.."o"..es.._t.."o", t.."es"..es.._t.."es", t.."e"..es.._t.."e"
c.p_i_1p, c.p_i_3p = tR.."ímos"..es..tR.._i.."í".._d.."mos", t.."en"..es.._t.."en"
c.pps_i_1p = c.p_i_1p
c.pps_i_2s, c.pps_i_2p = tR.."íste"..es..tR.._i.."í".._d.."ste", tR.."ísteis"..es..tR.._i.."í".._d.."steis"
c.pps_i_3s, c.pps_i_3p = t2.."ó"..es.._t2.."ó", t2.."eron"..es.._t2.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t2.."amos"..es.._t2.."amos", t2.."áis"..es.._t2.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."era"..es.._t2.."era", t2.."eras"..es.._t2.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."éramos"..es.._t2.."éramos", t2.."erais"..es.._t2.."erais", t2.."eran"..es.._t2.."eran"
c.pi2_s_1s, c.pi2_s_2s = t2.."ese"..es.._t2.."ese", t2.."eses"..es.._t2.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."ésemos"..es.._t2.."ésemos", t2.."eseis"..es.._t2.."eseis", t2.."esen"..es.._t2.."esen"
c.f_s_1s, c.f_s_2s = t2.."ere"..es.._t2.."ere", t2.."eres"..es.._t2.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."éremos"..es.._t2.."éremos", t2.."ereis"..es.._t2.."ereis", t2.."eren"..es.._t2.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2p, c._imp_2p = c.p_i_3s, tR.."íd", tR.._i.."í".._d.."d"
c.imp_pron_1p, c._imp_pron_1p = t2.."á", _t2.."á"
c.imp_pron_2s, c._imp_pron_2s, c.imp_pron_2vs, c._imp_pron_2vs = t.."e", _t.."e", tR.."í", tR.._i.."í".._d
c.imp_pron_3s, c._imp_pron_3s, c.imp_pron_3p, c._imp_pron_3p = t.."a", _t.."a", t.."an", _t.."an"
c.notas = [=[<!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską [e] rdzenia, otrzymując akcent graficzny (<b>"eí"</b>)</li><!--
--><li>Gdy jest akcentowana, rdzenna głoska [e] przechodzi w samogłoskę <b>"í"</b> z akcentem graficznym, tworząc rozziew z nastepującą samogłoską</br><!--
-->(czasy <i>presente de indicativo</i> i <i>subjuntivo</i> oraz 2. os. lp. <i>imperativo (tú)</i>)</li><!--
--><li>Rdzenna głoska [e] przechodzi w samogłoskę <b>"i"</b> w 3. os. <i>pret. perf. simple</i>, we wszystkich czasach <i>modo subjuntivo</i> oraz w <i>gerundio</i></br><!--
-->; dodatkowo zanika początkowa, nieakcentowana samogłoska <b>"i"</b> w końcówce fleksyjnej</li>]=]
-- verbos con formas monosilábicas
if (verbo == "freír") or (verbo == "reír") then
local aux = C.pref.."i"
c.pps_i_3s = aux.."o"..es..aux.._i.."o".._d
c.p_s_2p = aux.."ais"..es..aux.._i.."a".._d.."is"
c.notas = c.notas..'<li>Zgodnie z regułą pisowni nie akcentuje się wyrazów jednosylabowych: <i>'..aux..'o, '..aux..'ais</i></li>'
end
-- participio doble del grupo "freír" - "freído" o "frito"
if (verbo == "freír") or (verbo == "refreír") or (verbo == "sofreír") then c.part_doble = C.pref.."ito" end
return c
end
modelos.tener = function (C, _conj, modelo, verbo) -- (*)
-- t = teng-, tT = téng-, t2 = tuv-, t3 = tendr-, t4 = tien-
local t, _t = C.pref.."eng", C.pref.."en".._i.."g".._d
local tT, _tT = C.pref.."eng", C.pref.."én".._i.."g".._d
local t2, _t2 = C.pref.."uv", C.pref.._i.."uv".._d
local t3, _t3 = C.pref.."endr", C.pref.."en".._i.."d".._d.."r"
local t4, _t4 = C.pref.."ien", C.pref.._i.."ie".._d.."n"
local c, tR, es, op = {}, C.pref.."en", "#es|", (modelo == verbo)
c.inf, c.inf2, c.ger, c.ger2, c.part = tR.."er", tR.."ér", tR.."iendo"..es..tR.."iendo", tR.."iéndo", tR.."ido"
c.p_i_1s, c.p_i_2s, c.p_i_2vs, c.p_i_3s = t.."o"..es.._t.."o", t4.."es"..es.._t4.."es", tR.."és"..es..tR.."és", t4.."e"..es.._t4.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR.."emos"..es..tR.."emos", tR.."éis"..es..tR.."éis", t4.."en"..es.._t4.."en"
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = t3.."é"..es.._t3.."é", t3.."ás"..es.._t3.."ás", t3.."á"..es.._t3.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = t3.."emos"..es.._t3.."emos", t3.."éis"..es.._t3.."éis", t3.."án"..es.._t3.."án"
c.c_i_1s, c.c_i_2s = t3.."ía"..es.._t3.."ía", t3.."ías"..es.._t3.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = t3.."íamos"..es.._t3.."íamos", t3.."íais"..es.._t3.."íais", t3.."ían"..es.._t3.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2vs, c.imp_2p = op and tR..es..tR or C.pref.."én"..es..C.pref.."én", tR.."é", tR.."ed"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_1p, c._imp_pron_1p, c.imp_pron_2p = tR, tR.."e", t.."á", _t.."á", tR.."e"
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = tT.."a", tT.."an", _tT.."a", _tT.."an"
c.imp_ast = "*"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"g"</b> przed samogłoskami [a], [o]</li><!--
--><li>Grupa <b>"en"</b> rdzenia przybiera formę <b>"uv"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Spółgłoska <b>"d"</b> zastępuje pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (indicativo)</i></li><!--
--><li>Traci końcówkę fleksyjną dla formy 2. os. lp. <i>imperativo (tú)</i>]=]..((not esPron and (verbo ~= "tener")) and ', przybierając zatem akcent graficzny (*)</li>' or '</li>')
return c
end
modelos.traer = function (C)
-- t = traig-, tT = tráig-, t2 = traj-
local t, _t = C.pref.."aig", C.pref.."a".._i.."ig".._d
local tT, _tT = C.pref.."áig", C.pref.."á".._i.."ig".._d
local t2, _t2 = C.pref.."aj", C.pref.."a".._i.."j".._d
local c, es = conjug[2](C), "#es|"
c.ger, c.ger2, c._ger2 = C.pref.."ayendo"..es..C.pref.."a".._i.."y".._d.."endo", C.pref.."ayéndo", C.pref.."a".._i.."y".._d.."éndo"
c.part, c._part = C.pref.."aído", C.pref.."a".._i.."í".._d.."do"
c.p_i_1s = t.."o"..es.._t.."o"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."eron"..es.._t2.."eron"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."era"..es.._t2.."era", t2.."eras"..es.._t2.."eras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."éramos"..es.._t2.."éramos", t2.."erais"..es.._t2.."erais", t2.."eran"..es.._t2.."eran"
c.pi2_s_1s, c.pi2_s_2s = t2.."ese"..es.._t2.."ese", t2.."eses"..es.._t2.."eses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."ésemos"..es.._t2.."ésemos", t2.."eseis"..es.._t2.."eseis", t2.."esen"..es.._t2.."esen"
c.f_s_1s, c.f_s_2s = t2.."ere"..es.._t2.."ere", t2.."eres"..es.._t2.."eres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."éremos"..es.._t2.."éremos", t2.."ereis"..es.._t2.."ereis", t2.."eren"..es.._t2.."eren"
c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.pps2_ast, c.pi_f_ast = "*", "*"
c.notas = [=[<!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską [a] rdzenia, otrzymując akcent graficzny (<b>"aí"</b>)</li><!--
--><li>Rdzeń otrzymuje końcową grupę <b>"ig"</b> przed samogłoskami [a], [o]</li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"j"</b> w czasach <i>pretérito perfecto simple</i>, <i>pretérito imperfecto (sub.)</i> i <i>futuro (sub.)</i></li><!--
--><li>Traci początkową, nieakcentowaną samogłoskę <b>"i"</b> w końcówce, gdy występuje po niej inna samogłoska (*). W <i>gerundio</i> końcówka ta</br><!--
-->przybiera formę spółgłoski <b>"y"</b></li>]=]
return c
end
modelos.valer = function (C)
-- t = valg-, tT = válg-, t2 = valdr-
local t, _t = C.pref.."alg", C.pref.."al".._i.."g".._d
local tT, _tT = C.pref.."álg", C.pref.."ál".._i.."g".._d
local t2, _t2 = C.pref.."aldr", C.pref.."al".._i.."d".._d.."r"
local c, tR, es = conjug[2](C), C.pref.."al", "#es|"
c.p_i_1s = t.."o"..es.._t.."o"
c.f_i_1s, c.f_i_2s, c.f_i_3s = t2.."é"..es.._t2.."é", t2.."ás"..es.._t2.."ás", t2.."á"..es.._t2.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = t2.."emos"..es.._t2.."emos", t2.."éis"..es.._t2.."éis", t2.."án"..es.._t2.."án"
c.c_i_1s, c.c_i_2s = t2.."ía"..es.._t2.."ía", t2.."ías"..es.._t2.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = t2.."íamos"..es.._t2.."íamos", t2.."íais"..es.._t2.."íais", t2.."ían"..es.._t2.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.c_i_3s, c.p_s_3s = c.c_i_1s, c.p_s_1s
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"g"</b> przed samogłoskami [a], [o]</li><!--
--><li>Spółgłoska <b>"d"</b> zastępuje pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (indicativo)</i></li>]=]
return c
end
modelos.venir = function (C, _conj, modelo, verbo) -- (*)
-- t = veng-, tT = véng-, t2 = vin-, t3 = vendr-, t4 = vien-
local t, _t = C.pref.."eng", C.pref.."en".._i.."g".._d
local tT, _tT = C.pref.."eng", C.pref.."én".._i.."g".._d
local t2, _t2 = C.pref.."in", C.pref.._i.."i".._d.."n"
local t3, _t3 = C.pref.."endr", C.pref.."en".._i.."d".._d.."r"
local t4, _t4 = C.pref.."ien", C.pref.._i.."ie".._d.."n"
local c, tR, es, op = {}, C.pref.."en", "#es|", (modelo == verbo)
c.inf, c.inf2, c.ger, c.ger2, c._ger2, c.part = tR.."ir", tR.."ír", t2.."iendo"..es.._t2.."iendo", t2.."iéndo", _t2.."iéndo", tR.."ido"
c.p_i_1s, c.p_i_2s, c.p_i_3s = t.."o"..es.._t.."o", t4.."es"..es.._t4.."es", t4.."e"..es.._t4.."e"
c.p_i_1p, c.p_i_2p, c.p_i_3p = tR.."imos"..es..tR.."imos", tR.."ís"..es..tR.."ís", t4.."en"..es.._t4.."en"
c.pi_i_1s, c.pi_i_2s = tR.."ía"..es..tR.."ía", tR.."ías"..es..tR.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = tR.."íamos"..es..tR.."íamos", tR.."íais"..es..tR.."íais", tR.."ían"..es..tR.."ían"
c.pps_i_1s, c.pps_i_2s, c.pps_i_3s = t2.."e"..es.._t2.._i.."e".._d, t2.."iste"..es.._t2.."iste", t2.."o"..es.._t2.._i.."o".._d
c.pps_i_1p, c.pps_i_2p, c.pps_i_3p = t2.."imos"..es.._t2.."imos", t2.."isteis"..es.._t2.."isteis", t2.."ieron"..es.._t2.."ieron"
c.f_i_1s, c.f_i_2s, c.f_i_3s = t3.."é"..es.._t3.."é", t3.."ás"..es.._t3.."ás", t3.."á"..es.._t3.."á"
c.f_i_1p, c.f_i_2p, c.f_i_3p = t3.."emos"..es.._t3.."emos", t3.."éis"..es.._t3.."éis", t3.."án"..es.._t3.."án"
c.c_i_1s, c.c_i_2s = t3.."ía"..es.._t3.."ía", t3.."ías"..es.._t3.."ías"
c.c_i_1p, c.c_i_2p, c.c_i_3p = t3.."íamos"..es.._t3.."íamos", t3.."íais"..es.._t3.."íais", t3.."ían"..es.._t3.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.pi1_s_1s, c.pi1_s_2s = t2.."iera"..es.._t2.."iera", t2.."ieras"..es.._t2.."ieras"
c.pi1_s_1p, c.pi1_s_2p, c.pi1_s_3p = t2.."iéramos"..es.._t2.."iéramos", t2.."ierais"..es.._t2.."ierais", t2.."ieran"..es.._t2.."ieran"
c.pi2_s_1s, c.pi2_s_2s = t2.."iese"..es.._t2.."iese", t2.."ieses"..es.._t2.."ieses"
c.pi2_s_1p, c.pi2_s_2p, c.pi2_s_3p = t2.."iésemos"..es.._t2.."iésemos", t2.."ieseis"..es.._t2.."ieseis", t2.."iesen"..es.._t2.."iesen"
c.f_s_1s, c.f_s_2s = t2.."iere"..es.._t2.."iere", t2.."ieres"..es.._t2.."ieres"
c.f_s_1p, c.f_s_2p, c.f_s_3p = t2.."iéremos"..es.._t2.."iéremos", t2.."iereis"..es.._t2.."iereis", t2.."ieren"..es.._t2.."ieren"
c.p_i_2vs, c.pi_i_3s, c.c_i_3s, c.p_s_3s, c.pi1_s_3s, c.pi2_s_3s, c.f_s_3s = c.p_i_2p, c.pi_i_1s, c.c_i_1s, c.p_s_1s, c.pi1_s_1s, c.pi2_s_1s, c.f_s_1s
c.imp_2s, c.imp_2vs, c.imp_2p = op and tR..es..tR or C.pref.."én"..es..C.pref.."én", tR.."í", tR.."id"
c.imp_pron_2s, c.imp_pron_2vs, c.imp_pron_1p, c._imp_pron_1p, c.imp_pron_2p = tR, tR.."i", t.."á", _t.."á", tR.."í"
c.imp_pron_3s, c.imp_pron_3p, c._imp_pron_3s, c._imp_pron_3p = tT.."a", tT.."an", _tT.."a", _tT.."an"
c.imp_ast = "*"
c.notas = [=[<!--
--><li>Rdzeń otrzymuje końcową spółgłoskę <b>"g"</b> przed samogłoskami [a], [o]</li><!--
--><li>Gdy akcent pada na rdzenną głoskę [e], przechodzi ona w dyftong <b>"ie"</b> w czasie <i>presente de indicativo<i></li><!--
--><li>Gdy jest nieakcentowana, rdzenna głoska [e] przechodzi w samogłoskę <b>"i"</b> w 3. os. czasu <i>pretérito perfecto simple</i>,</br><!--
-->w czasach <i>pretérito imperfecto</i> i <i>futuro de subjuntivo</i> oraz w <i>gerundio</i></li><!--
--><li>Otrzymuje nieakcentowane końcówki fleksyjne pierwszej koniugacji w 1. i 3. os. lp. czasu <i>pretérito perfecto simple</i></li><!--
--><li>Spółgłoska <b>"d"</b> zastępuje pierwszą samogłoskę końcówki fleksyjnej w czasach <i>futuro</i> i <i>condicional (indicativo)</i></li><!--
--><li>Traci koncówkę fleksyjną dla formy 2. os. lp. <i>imperativo (tú)</i>]=]..((not esPron and (verbo ~= "venir")) and ', przybierając zatem akcent graficzny (*)</li>' or '</li>')
return c
end
modelos.ver = function (C, _conj, modelo, verbo, _terc_pers, esPron)
-- tR = prev-, t = preve-, tT = prevé-
local tR = C.pref..C.vocal..C.int
local t, _t = tR.."e", tR.._i.."e".._d
local tT, _tT = tR.."é", tR.._i.."é".._d
local c, es, op = conjug[2](C), "#es|", (modelo == verbo)
c.part, c.part_irr = tR.."isto", true
c.p_i_1s = t.."o"..es.._t.."o"
c.p_i_2s = op and "ves"..es.."ves" or tR.."és"..es..tR.._i.."é".._d.."s"
c.p_i_3s = op and "ve"..es.."ve" or tR.."é"..es..tR.._i.."é".._d
c.p_i_2p = op and "veis"..es.."v".._i.."e".._d.."is" or c.p_i_2p
c.p_i_3p = op and "ven"..es.."ven" or tR.."én"..es..tR.._i.."é".._d.."n"
c.pps_i_1s = op and "vi"..es.."v".._i.."i".._d or c.pps_i_1s
c.pps_i_3s = op and "vio"..es.."vi".._i.."o".._d or c.pps_i_3s
c.pi_i_1s, c.pi_i_2s = t.."ía"..es.._t.."ía", t.."ías"..es.._t.."ías"
c.pi_i_1p, c.pi_i_2p, c.pi_i_3p = t.."íamos"..es.._t.."íamos", t.."íais"..es.._t.."íais", t.."ían"..es.._t.."ían"
c.p_s_1s, c.p_s_2s = t.."a"..es.._t.."a", t.."as"..es.._t.."as"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.p_i_2vs, c.pi_i_3s, c.p_s_3s = c.p_i_2s, c.pi_i_1s, c.p_s_1s
c.imp_2s, c.imp_2vs, c._imp_2vs = c.p_i_3s, op and "ve" or tR.."é", op and "v".._i.."e".._d or tR.."é"
c.imp_pron_2s = tR.."e"
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.notas = [=[<!--
--><li>Wszystkie czasowniki tego modelu tworzą <i>participio</i> poprzez dodanie grupy <b>"ist"</b> do rdzenia</li><!--
--><li>Rdzeń otrzymuje końcową samogłoskę <b>"e"</b> przed głoskami [a], [o] i grupą <b>"ía"</b> (</i>pretérito imperfecto de indicativo</i>)</li><!--
-->]=]..((verbo == "ver") and '<li>Zgodnie z regułą pisowni nie akcentuje się wyrazów jednosylabowych: <i>veis, vi, vio, ve</i></li>' or
'<li>Formy <i>presente de indicativo</i> (oprócz 1. os.)'..((esPron) and '' or ' i lp. <i>imperativo (tú)</i>')..' są akcentowane na ostatniej sylabie, przybierając zatem akcent graficzny</li>')
return c
end
modelos.yacer = function (C, _conj, modelo)
if modelo == "yacer" then
return nil, [=[<b>wybierz wzór deklinacyjny:</b><!--
--><ul><li><tt>"model=agradecer"</tt>: <i>]=].._i..C.pref.."azco, "..C.pref.."azca".._d..[=[</i></li><!--
--><li><tt>"model=yacer1"</tt>: <i>]=].._i..C.pref.."azgo, "..C.pref.."azga".._d..[=[</i></li><!--
--><li><tt>"model=yacer2"</tt>: <i>]=].._i..C.pref.."ago, "..C.pref.."aga".._d..[=[</i></li></ul>]=]
end
local op = (modelo == "yacer1") and true or false
local aux= op and "zg" or "g"
local auxT = _i..aux.._d
-- t = yazc-/yag-, tT = yázc-/yág-
local t, _t = C.pref.."a"..aux, C.pref.."a"..auxT
local tT, _tT = C.pref.."á"..aux, C.pref.."á"..auxT
local c, es = conjug[2](C), "#es|"
c.modelo = "yacer"
c.p_i_1s = t.."o"..es.._t.."o"
c.p_s_1s, c.p_s_2s, c.p_s_3s = t.."a"..es.._t.."a", t.."as"..es.._t.."as", t.."a"..es.._t.."a"
c.p_s_1p, c.p_s_2p, c.p_s_3p = t.."amos"..es.._t.."amos", t.."áis"..es.._t.."áis", t.."an"..es.._t.."an"
c.p_s_3s, c.imp_2s, c.imp_pron_2s, c._imp_pron_2s = c.p_s_1s, C.pref.."az"..es..C.pref.."a".._i.."z".._d, C.pref.."az", C.pref.."a".._i.."z".._d
c.imp_pron_3s, c.imp_pron_1p, c.imp_pron_3p = tT.."a", t.."á", tT.."an"
c._imp_pron_3s, c._imp_pron_1p, c._imp_pron_3p = _tT.."a", _t.."á", _tT.."an"
c.imp_ast = "*"
c.notas = [=[<!--
--><li>Rdzeń kończy się spółgłoską <b>"c"</b>, która przybiera formę grupy liter <b>"]=]..aux..[=["</b> przed głoskami [a], [o]</li><!--
--><li>Traci końcówkę fleksyjną dla formy 2. os. lp. <i>imperativo (tú)</i>, przybierając końcową spółgłoskę <b>"z"</b> zamiast <b>"c"<b></li>]=]
return c
end
-- MODELOS EQUIVALENTES
-- REGULARES (isoptongos)
modelos.adeudar = modelos.reg
modelos.anunciar = modelos.reg
modelos.averiguar = modelos.reg
modelos.bailar = modelos.reg
modelos.causar = modelos.reg
modelos.coitar = modelos.reg
modelos.peinar = modelos.reg
-- REGULARES (tíldicos)
modelos.actuar = modelos.reg_tilde
modelos.aislar = modelos.reg_tilde
modelos.aunar = modelos.reg_tilde
modelos.descafeinar = modelos.reg_tilde
modelos.enviar = modelos.reg_tilde
modelos.prohibir = modelos.reg_tilde
modelos.prohijar = modelos.reg_tilde
modelos.rehusar = modelos.reg_tilde
modelos.reunir = modelos.reg_tilde
-- REGULARES con alternancia para mantener el sonido
modelos.cazar = modelos.reg
modelos.delinquir = modelos.reg
modelos.desaguar = modelos.reg
modelos.dirigir = modelos.reg
modelos.distinguir = modelos.reg
modelos.esparcir = modelos.reg
modelos.pagar = modelos.reg
modelos.proteger = modelos.reg
modelos.sacar = modelos.reg
modelos.vencer = modelos.reg
-- IRREGULARES
modelos.caber = modelos.saber
modelos.discernir = modelos.adquirir
modelos.entender = modelos.adquirir
modelos.jugar = modelos.contar
modelos.lucir = modelos.agradecer
modelos.oler = modelos.mover
modelos["tañer"] = modelos.mullir
modelos.yacer1 = modelos.yacer
modelos.yacer2 = modelos.yacer
-- IRREGULARES con alternancia para mantener el sonido
modelos.cocer = modelos.mover
modelos.colgar = modelos.contar
modelos.elegir = modelos.pedir
modelos.empezar = modelos.acertar
modelos.forzar = modelos.contar
modelos.regar = modelos.acertar
modelos.seguir = modelos.pedir
modelos.volcar = modelos.contar
-- WIKITABLAS DE CONJUGACIÓN
-- paradigma general
local tabla_normal = function (c, esPronominal, conj, modelo, notas, visible, class, style, participio, alt, defect, imper, pron)
local part, es = participio or c.part, "#es|"
local part2 = (c._part or part)..(c.part_doble and " / "..c.part_doble or "") -- incluye el resaltado en color y, si procede, el participio doble
local _notas = (c.notas or "")..(notas and "<li>"..notas.."</li>" or "")
local _modelo = c.modelo or modelo
local eimorfo, imorfo, def, repet, def2
local imper_no = imper or c.imper_no or nil -- "true" si el verbo no admite imperativo
local _conj = ""
for i = 1, conj do _conj = _conj.."I" end -- obtiene el número de la conjugación en letras romanas
-- verbos defectivos
if defect then
if defect == "eimorfo" then
def, eimorfo = true, true
_notas = _notas.."<li>Stosuje się wyłącznie te formy, których końcówka fleksyjna rozpoczyna się głoską [e] lub [i]</li>"
elseif defect == "imorfo" then
def, imorfo = true, true
_notas = _notas.."<li>Stosuje się wyłącznie te formy, których końcówka fleksyjna rozpoczyna się głoską [i]</li>"
elseif ((defect == "soler") or (defect == "acostumbrar")) then
def, repet = true, true
_notas = _notas.."<li>Stosuje się wyłącznie czasy wyrażające zwyczaj lub czynność powtarzającą się</li>"
elseif ((defect == "embaír") or (defect == "desvaír")) then
def, def2 = true, true
_notas = _notas..[=[<!--
--><li>Stosuje się wyłącznie te formy, których końcówka fleksyjna rozpoczyna się głoską [i]</li><!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską [a] rdzenia, otrzymując akcent graficzny (<b>"aí"</b>)</li>]=]
end
end
-- si el verbo es eimorfo o imorfo, no indica la alternancia para preservar el sonido
if ((not c.alt) or eimorfo or imorfo) then alt = nil end
-- incluye una nota si no se usa el imperativo
if imper_no then _notas = _notas.."<li>Brak form trybu rozkazującego <i>(imperativo)</i></li>" end
-- pronombres proclíticos
local aux = pron and "[["..pron.."#es|"..pron.."]] " or ""
local _me = esPronominal and "[[me#es|me]] "..aux or aux
local _te = esPronominal and "[[te#es|te]] "..aux or aux
local _se = esPronominal and "[[se#es|se]] "..aux or aux
local _nos = esPronominal and "[[nos#es|nos]] "..aux or aux
local _os = esPronominal and "[[os#es|os]] "..aux or aux
local esEnclit = esPronominal or (pron and true or nil)
local _esEnclit = esPronominal and (pron and true or nil)
-- pronombres enclíticos
local _pron_me = (esPronominal and "me" or "")..(pron or "")
local _pron_te = (esPronominal and "te" or "")..(pron or "")
local _pron_se = (esPronominal and "se" or "")..(pron or "")
local _pron_nos = (esPronominal and "nos" or "")..(pron or "")
local _pron_mos = "mos"..(pron or "")
local _pron_monos = (esPronominal and "monos" or "")..(pron or "")
local _pron_os = (esPronominal and "os" or "")..(pron or "")
-- asteriscos para indicar irregularidades en ciertas formas verbales
local ger_, pps_, pps2_, f_c_, pi_f_, imp_ = c.ger_ast, c.pps_ast, c.pps2_ast, c.f_c_ast, c.pi_f_ast, c.imp_ast
local aux0 = (not visible) and [=[<!--
-->[[Aneks:Język hiszpański - koniugacja ]=].._conj..[=[|koniugacja ]=].._conj..[=[]]: czasownik <!--
-->]=]..((_modelo == "reg") and "" or "nie")..[=[regularny<!--
-->]=]..(def and " ułomny ([[verbo defectivo#es|defectivo]])" or "")..[=[<!--
-->]=]..((_modelo == "reg") and "" or ", model [[Aneks:Język hiszpański - odmiana czasownika ".._modelo.."|".._modelo.."]]")..[=[<!--
-->]=]..(alt and " z przemianą <b>"..alt.."</b> ([[Aneks:Język hiszpański - odmiana czasownika "..c.alt.."|"..c.alt.."]])" or "")..[=[<!--
-->]=]..(c.tild and (alt and " i " or " z ").."akcentuacją rozziewu ([[Aneks:Język hiszpański - odmiana czasownika "..c.tild.."|"..c.tild.."]])" or "")..[=[<!--
-->]=]..(c.dipt and (alt and " i " or " ze ").."stałą dwugłoską ([[Aneks:Język hiszpański - odmiana czasownika "..c.dipt.."|"..c.dipt.."]]"..(c.dipt2
and ", [[Aneks:Język hiszpański - odmiana czasownika "..c.dipt2.."|"..c.dipt2.."]]" or "")..")" or "")..[=[<!--
-->]=]..((participio or c.part_irr or c.part_doble)
and (c.part_doble and ", imiesłów bierny podwójny <b>"..c.part.." / "..c.part_doble.."</b>"
or (", imiesłów bierny <b>"..(participio or c.part).."</b>"..[=[<!--
-->]=]..(c.part_ipto and ", <i>(Argentyna, Urugwaj)</i> <b>"..c.part_ipto.."</b>" or ""))) or "")..[=[<!--
--><div class="NavFrame collapse-odmiana" style="display:inline"><!--
--><div class="NavHead" style="background:transparent; text-align:left; padding-right:55px; display:inline"> </div><!--
--><div class="NavContent" style="text-align: left; display:inline;"><!--]=] or "<!--"
local aux1 = [=[
--><table class="]=]..(class or "")..[=[" style="]=]..style..[=[">]=]..((_notas == "") and "" or [=[<!--
--><tr><td colspan="7" style="padding:0;border:none;width:100%"><!--
--><table class="wikitable odmiana collapsible collapsed" style="width:100%; margin:0 0 5px 0;"><!--
--><tr><th> notas</th></tr><!--
--><tr><td style="text-align:left"><ul>]=].._notas..[=[</ul></td></tr><!--
--></table></td></tr>]=])..[=[<!--
--><tr><!--
--><th>[[forma no personal#es|formas no personales]]</th><!--
--><th colspan="2">[[infinitivo#es|infinitivo]]</th><!--
--><th colspan="2">[[gerundio#es|gerundio]]</th><!--
--><th colspan="2">[[participio#es|participio]]</th><!--
--></tr><!--
--><tr><!--
--><th>[[simple#es|simples]]</th><!--
--><td colspan="2">]=]..(_esEnclit and c.inf2.._pron_se or c.inf.._pron_se)..[=[</td><!--
--><td colspan="2">]=]..((c.no_part or def2) and "—" or (ger_ or "").."[["..(esEnclit and c.ger2.._pron_se..es..(c._ger2 or c.ger2).._pron_se or c.ger).."]]")..[=[</td><!--
--><td colspan="2">]=]..(c.no_part and "—" or "[["..part..es..(c._part or part).."]]".. (c.part_doble and " / [["..c.part_doble..es..c.part_doble.."]]" or ""))..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[compuesto#es|compuestas]]</th><!--
--><td colspan="2">]=]..(c.no_part and "—" or (esEnclit and "[[haber#es|haber".._pron_se.."]] " or "[[haber#es|haber]] ")..part2)..[=[</td><!--
--><td colspan="2">]=]..(c.no_part and "—" or (esEnclit and "[[haber#es|habiéndo".._pron_se.."]] " or "[[haber#es|habiendo]] ")..part2)..[=[</td><!--
--><td colspan="2">—</td><!--
--></tr><!--
--><tr><td colspan="7" style="padding:0; border:none; height:5px; background:#FFFFFF"></td></tr><!--
--><tr><!--
--><th>[[forma personal#es|formas personales]]</th><!--
--><th colspan="3">[[número singular#es|número singular]]</th><!--
--><th colspan="3">[[número plural#es|número plural]]</th><!--
--></tr><!--
]=]
local aux2 = [=[
--><tr><!--
--><th style="font-weight:bold">[[modo indicativo#es|modo indicativo]]</th><!--
--><th width="13%">[[yo#es|yo]]</th><!--
--><th width="13%">]=]..((c.p_i_2s == c.p_i_2vs) and "[[tú#es|tú]], [[vos#es|vos]]" or "[[tú#es|tú]] / [[vos#es|vos]]")..[=[</th><!--
--><th width="13%">[[él#es|él]], [[ella#es|ella]]</br>[[usted#es|usted]]</th><!--
--><th width="13%">[[nosotros#es|nosotros]]</br>[[nosotras#es|nosotras]]</th><!--
--><th width="13%">[[vosotros#es|vosotros]]</br>[[vosotras#es|vosotras]]</th><!--
--><th width="13%">[[ellos#es|ellos]], [[ellas#es|ellas]]</br>[[ustedes#es|ustedes]]</th><!--
--></tr><!--
--><tr><!--
--><th>[[presente#es|presente]]</th><!--
--><td>]=]..((eimorfo or imorfo or def2) and "—" or _me.."[["..c.p_i_1s.."]]")..[=[</td><!--
--><td>]=]..((imorfo or def2) and "—" or _te.."[["..c.p_i_2s.."]]")..[=[<!--
-->]=]..((c.p_i_2s == c.p_i_2vs) and "" or "</br>".._te.."[["..c.p_i_2vs.."]]")..[=[</td><!--
--><td>]=]..((imorfo or def2) and "—" or _se.."[["..c.p_i_3s.."]]")..[=[</td><!--
--><td>]=].._nos.."[["..c.p_i_1p..[=[]]</td><!--
--><td>]=].._os.."[["..c.p_i_2p..[=[]]</td><!--
--><td>]=]..((imorfo or def2) and "—" or _se.."[["..c.p_i_3p.."]]")..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito imperfecto#es|pretérito imperfecto]]</th><!--
--><td>]=].._me.."[["..c.pi_i_1s..[=[]]</td><!--
--><td>]=].._te.."[["..c.pi_i_2s..[=[]]</td><!--
--><td>]=].._se.."[["..c.pi_i_3s..[=[]]</td><!--
--><td>]=].._nos.."[["..c.pi_i_1p..[=[]]</td><!--
--><td>]=].._os.."[["..c.pi_i_2p..[=[]]</td><!--
--><td>]=].._se.."[["..c.pi_i_3p..[=[]]</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito perfecto simple#es|pretérito perfecto simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me.."[["..c.pps_i_1s..[=[]]</td><!--
--><td>]=].._te.."[["..c.pps_i_2s..[=[]]</td><!--
--><td>]=]..(def2 and "—" or _se..(pps_ or "").."[["..c.pps_i_3s.."]]")..[=[</td><!--
--><td>]=].._nos.."[["..c.pps_i_1p..[=[]]</td><!--
--><td>]=].._os.."[["..c.pps_i_2p..[=[]]</td><!--
--><td>]=]..(def2 and "—" or _se..(pps_ or pps2_ or "").."[["..c.pps_i_3p.."]]")..[=[</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[futuro simple#es|futuro simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me..(f_c_ or "").."[["..c.f_i_1s..[=[]]</td><!--
--><td>]=].._te..(f_c_ or "").."[["..c.f_i_2s..[=[]]</td><!--
--><td>]=].._se..(f_c_ or "").."[["..c.f_i_3s..[=[]]</td><!--
--><td>]=].._nos..(f_c_ or "").."[["..c.f_i_1p..[=[]]</td><!--
--><td>]=].._os..(f_c_ or "").."[["..c.f_i_2p..[=[]]</td><!--
--><td>]=].._se..(f_c_ or "").."[["..c.f_i_3p..[=[]]</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[condicional simple#es|condicional simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me..(f_c_ or "").."[["..c.c_i_1s..[=[]]</td><!--
--><td>]=].._te..(f_c_ or "").."[["..c.c_i_2s..[=[]]</td><!--
--><td>]=].._se..(f_c_ or "").."[["..c.c_i_3s..[=[]]</td><!--
--><td>]=].._nos..(f_c_ or "").."[["..c.c_i_1p..[=[]]</td><!--
--><td>]=].._os..(f_c_ or "").."[["..c.c_i_2p..[=[]]</td><!--
--><td>]=].._se..(f_c_ or "").."[["..c.c_i_3p..[=[]]</td>]=])..[=[<!--
--></tr><!--
]=]
local aux3 = c.no_part and "" or [=[
--><tr><!--
--><td colspan="7" style="padding:0;border:none;"><!--
--><table class="wikitable ]=]..class..[=[ collapsible collapsed" style="width:100%; margin:5px 0 5px 0;"><!--
--><tr><th colspan="7"> [[tiempo compuesto#es|tiempos compuestos]]</th></tr><!--
--><tr><!--
--><th>[[pretérito perfecto compuesto#es|pretérito perfecto compuesto]]</th><!--
--><td width="13%">]=].._me.."[[haber#es|he]] "..part2..[=[</td><!--
--><td width="13%">]=].._te.."[[haber#es|has]] "..part2..[=[</td><!--
--><td width="13%">]=].._se.."[[haber#es|ha]] "..part2..[=[</td><!--
--><td width="13%">]=].._nos.."[[haber#es|hemos]] "..part2..[=[</td><!--
--><td width="13%">]=].._os.."[[haber#es|habéis]] "..part2..[=[</td><!--
--><td width="13%">]=].._se.."[[haber#es|han]] "..part2..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito pluscuamperfecto#es|pretérito pluscuamperfecto]]</th><!--
--><td>]=].._me.."[[haber#es|había]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|habías]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|había]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|habíamos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|habíais]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|habían]] "..part2..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito anterior#es|pretérito anterior]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me.."[[haber#es|hube]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|hubiste]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubo]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|hubimos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|hubisteis]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubieron]] "..part2..[=[</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[futuro compuesto#es|futuro compuesto]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me.."[[haber#es|habré]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|habrás]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|habrá]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|habremos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|habréis]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|habrán]] "..part2..[=[</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[condicional compuesto#es|condicional compuesto]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me.."[[haber#es|habría]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|habrías]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|habría]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|habríamos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|habríais]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|habrían]] "..part2..[=[</td>]=])..[=[<!--
--></tr><!--
--></table></td></tr><!--
]=]
local aux4 = [=[
--><tr><!--
--><th style="font-weight:bold">[[modo subjuntivo#es|modo subjuntivo]]</th><!--
--><th>[[yo#es|yo]]</th><!--
--><th>[[tú#es|tú]], [[vos#es|vos]]</th><!--
--><th>[[él#es|él]], [[ella#es|ella]]</br>[[usted#es|usted]]</th><!--
--><th>[[nosotros#es|nosotros]]</br>[[nosotras#es|nosotras]]</th><!--
--><th>[[vosotros#es|vosotros]]</br>[[vosotras#es|vosotras]]</th><!--
--><th>[[ellos#es|ellos]], [[ellas#es|ellas]]</br>[[ustedes#es|ustedes]]</th><!--
--></tr><!--
--><tr><!--
--><th>[[presente#es|presente]]</th><!--
-->]=]..((eimorfo or imorfo or def2) and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me.."[["..c.p_s_1s.."]]"..[=[</td><!--
--><td>]=].._te.."[["..c.p_s_2s.."]]"..[=[</td><!--
--><td>]=].._se.."[["..c.p_s_3s.."]]"..[=[</td><!--
--><td>]=].._nos.."[["..c.p_s_1p.."]]"..[=[</td><!--
--><td>]=].._os.."[["..c.p_s_2p.."]]"..[=[</td><!--
--><td>]=].._se.."[["..c.p_s_3p.."]]"..[=[</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th rowspan="2">[[pretérito imperfecto#es|pretérito imperfecto]]</th><!--
-->]=]..(def2 and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me..(pi_f_ or "").."[["..c.pi1_s_1s..[=[]]</td><!--
--><td>]=].._te..(pi_f_ or "").."[["..c.pi1_s_2s..[=[]]</td><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.pi1_s_3s..[=[]]</td><!--
--><td>]=].._nos..(pi_f_ or "").."[["..c.pi1_s_1p..[=[]]</td><!--
--><td>]=].._os..(pi_f_ or "").."[["..c.pi1_s_2p..[=[]]</td><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.pi1_s_3p..[=[]]</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
-->]=]..(def2 and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me..(pi_f_ or "").."[["..c.pi2_s_1s..[=[]]</td><!--
--><td>]=].._te..(pi_f_ or "").."[["..c.pi2_s_2s..[=[]]</td><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.pi2_s_3s..[=[]]</td><!--
--><td>]=].._nos..(pi_f_ or "").."[["..c.pi2_s_1p..[=[]]</td><!--
--><td>]=].._os..(pi_f_ or "").."[["..c.pi2_s_2p..[=[]]</td><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.pi2_s_3p..[=[]]</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[futuro simple#es|futuro simple]]</th><!--
-->]=]..((def2 or repet) and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me..(pi_f_ or "").."[["..c.f_s_1s..[=[]]</td><!--
--><td>]=].._te..(pi_f_ or "").."[["..c.f_s_2s..[=[]]</td><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.f_s_3s..[=[]]</td><!--
--><td>]=].._nos..(pi_f_ or "").."[["..c.f_s_1p..[=[]]</td><!--
--><td>]=].._os..(pi_f_ or "").."[["..c.f_s_2p..[=[]]</td><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.f_s_3p..[=[]]</td>]=])..[=[<!--
--></tr><!--
]=]
local aux5 = c.no_part and "" or [=[
--><tr><!--
--><td colspan="7" style="padding:0;border:none;"><!--
--><table class="wikitable ]=]..class..[=[ collapsible collapsed" style="width:100%; margin:5px 0 5px 0;"><!--
--><tr><th colspan="7"> [[tiempo compuesto#es|tiempos compuestos]]</th></tr><!--
--><tr><!--
--><th>[[pretérito perfecto#es|pretérito perfecto]]</th><!--
--><td width="13%">]=].._me.."[[haber#es|haya]] "..part2..[=[</td><!--
--><td width="13%">]=].._te.."[[haber#es|hayas]] "..part2..[=[</td><!--
--><td width="13%">]=].._se.."[[haber#es|haya]] "..part2..[=[</td><!--
--><td width="13%">]=].._nos.."[[haber#es|hayamos]] "..part2..[=[</td><!--
--><td width="13%">]=].._os.."[[haber#es|hayáis]] "..part2..[=[</td><!--
--><td width="13%">]=].._se.."[[haber#es|hayan]] "..part2..[=[</td><!--
--></tr><!--
--><tr><!--
--><th rowspan="2">[[pretérito pluscuamperfecto#es|pretérito pluscuamperfecto]]</th><!--
--><td>]=].._me.."[[haber#es|hubiera]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|hubieras]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubiera]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|hubiéramos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|hubierais]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubieran]] "..part2..[=[</td><!--
--></tr><!--
--><tr><!--
--><td>]=].._me.."[[haber#es|hubiese]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|hubieses]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubiese]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|hubiésemos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|hubieseis]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubiesen]] "..part2..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[futuro compuesto#es|futuro compuesto]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=].._me.."[[haber#es|hubiere]] "..part2..[=[</td><!--
--><td>]=].._te.."[[haber#es|hubieres]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubiere]] "..part2..[=[</td><!--
--><td>]=].._nos.."[[haber#es|hubiéremos]] "..part2..[=[</td><!--
--><td>]=].._os.."[[haber#es|hubiereis]] "..part2..[=[</td><!--
--><td>]=].._se.."[[haber#es|hubieren]] "..part2..[=[</td>]=])..[=[<!--
--></tr><!--
--></table></td></tr><!--
]=]
local aux6 = [=[
--><tr><!--
--><th style="font-weight:bold">[[modo imperativo#es|modo imperativo]]</th><!--
--><th>[[tú#es|tú]]</th><!--
--><th>[[vos#es|vos]]</th><!--
--><th>[[usted#es|usted]]</th><!--
--><th>[[nosotros#es|nosotros]]</br>[[nosotras#es|nosotras]]</th><!--
--><th>[[vosotros#es|vosotros]]</br>[[vosotras#es|vosotras]]</th><!--
--><th>[[ustedes#es|ustedes]]</th><!--
--></tr><!--
--><tr><!--
--><th><i>[[presente#es|presente]]</i></th><!--
-->]=]..((imper_no or repet) and '<td>—</td><td>—</td><td>—</td><td>—</td><td>—</td><td>—</td>' or [=[<!--
--><td>]=]..((imorfo or def2) and "—" or (imp_ or "").."[["..(esEnclit and c.imp_pron_2s.._pron_te..es..(c._imp_pron_2s or c.imp_pron_2s).._pron_te or c.imp_2s).."]]")..[=[</td><!--
--><td>[[]=]..(_esEnclit and c.imp_2vs.._pron_te..es..(c._imp_2vs or c.imp_2vs).._pron_te or
(esEnclit and c.imp_pron_2vs.._pron_te..es..(c._imp_pron_2vs or c.imp_pron_2vs).._pron_te or c.imp_2vs..es..(c._imp_2vs or c.imp_2vs)))..[=[]]</td><!--
--><td><i>]=]..((eimorfo or imorfo or def2) and "—" or
"[["..(esEnclit and c.imp_pron_3s.._pron_se..es..(c._imp_pron_3s or c.imp_pron_3s).._pron_se or c.p_s_3s).."]]")..[=[</i></td><!--
--><td><i>]=]..((eimorfo or imorfo or def2) and "—" or
"[["..((not esEnclit) and c.p_s_1p or
((pron and not esPronominal) and
c.imp_pron_1p.._pron_mos..es..(c._imp_pron_1p or c.imp_pron_1p).._pron_mos or
c.imp_pron_1p.._pron_monos..es..(c._imp_pron_1p or c.imp_pron_1p).._pron_monos)).."]]")..[=[</i></td><!--
--><td>[[]=]..(_esEnclit and c.imp_2vs.._pron_os..es..c.imp_2vs.._pron_os or
(esPronominal and c.imp_pron_2p.._pron_os..es..(c._imp_pron_2p or c.imp_pron_2p).._pron_os or c.imp_2p.._pron_os..es..(c._imp_2p or c.imp_2p).._pron_os))..[=[]]</td><!--
--><td><i>]=]..((eimorfo or imorfo or def2) and "—" or
"[["..(esEnclit and c.imp_pron_3p.._pron_se..es..(c._imp_pron_3p or c.imp_pron_3p).._pron_se or c.p_s_3p).."]]")..[=[</i></td>]=])..[=[<!--
--></tr><!--
--></table>]=]..(not visible and "</div></div>" or "")
return aux0..aux1..aux2..aux3..aux4..aux5..aux6
end
-- verbos impersonales y terciopersonales
local tabla_terc_pers = function (c, esPronominal, conj, modelo, notas, visible, class, style, participio, alt, defect, terc_pers, pron)
local part, es = participio or c.part, "#es|"
local part2 = (c._part or part)..(c.part_doble and ", "..c.part_doble or "") -- incluye el resaltado en color y, si procede, el participio doble
local _notas = (c.notas or "")..(notas and "<li>"..notas.."</li>" or "")
local _modelo = c.modelo or modelo
local eimorfo, imorfo, def, repet
local impers = (terc_pers == "lp") and true or false
local _conj = ""
for i = 1, conj do _conj = _conj.."I" end -- obtiene el número de la conjugación en letras romanas
-- verbos defectivos
if defect then
if defect == "eimorfo" then
def, eimorfo = true, true
_notas = _notas.."<li>Stosuje się wyłącznie te formy, których końcówka fleksyjna rozpoczyna się głoską [e] lub [i]</li>"
elseif defect == "imorfo" then
def, imorfo = true, true
_notas = _notas.."<li>Stosuje się wyłącznie te formy, których końcówka fleksyjna rozpoczyna się głoską [i]</li>"
elseif ((defect == "soler") or (defect == "acostumbrar")) then
def, repet = true, true
_notas = _notas.."<li>Stosuje się wyłącznie czasy wyrażające zwyczaj lub czynność powtarzającą się</li>"
elseif ((defect == "embaír") or (defect == "desvaír")) then
def, def2 = true, true
_notas = _notas..[=[<!--
--><li>Stosuje się wyłącznie te formy, których końcówka fleksyjna rozpoczyna się głoską [i]</li><!--
--><li>Początkowa, akcentowana samogłoska <b>"i"</b> w końcówce tworzy rozziew z głoską [a] rdzenia, otrzymując akcent graficzny (<b>"aí"</b>)</li>]=]
end
end
-- si el verbo es eimorfo o imorfo, no indica la alternancia para preservar el sonido
if ((not c.alt) or eimorfo or imorfo) then alt = nil end
-- pronombres proclíticos
local aux = pron and "[["..pron.."#es|"..pron.."]] " or ""
local _se = esPronominal and "[[se#es|se]] "..aux or aux
local esEnclit = esPronominal or (pron and true or nil)
local _esEnclit = esPronominal and (pron and true or nil)
-- pronombres enclíticos
local _pron_se = (esPronominal and "se" or "")..(pron or "")
-- asteriscos para indicar irregularidades en ciertas formas verbales
local ger_, pps_, pps2_, pi_f_, f_c_ = c.ger_ast, c.pps_ast, c.pps2_ast, c.pi_f_ast, c.f_c_ast
local aux0 = (not visible) and [=[<!--
-->[[Aneks:Język hiszpański - koniugacja ]=].._conj..[=[|koniugacja ]=].._conj..[=[]]: czasownik <!--
-->]=]..((_modelo == "reg") and "" or "nie")..[=[regularny<!--
-->]=]..(impers and " nieosobowy ([[verbo impersonal#es|impersonal]])" or " trzecioosobowy ([[verbo terciopersonal#es|terciopersonal]])")..[=[<!--
-->]=]..((def or c.no_part) and " ułomny ([[verbo defectivo#es|defectivo]])" or "")..[=[<!--
-->]=]..((_modelo == "reg") and "" or ", model [[Aneks:Język hiszpański - odmiana czasownika ".._modelo.."|".._modelo.."]]")..[=[<!--
-->]=]..(alt and " z przemianą <b>"..alt.."</b> ([[Aneks:Język hiszpański - odmiana czasownika "..c.alt.."|"..c.alt.."]])" or "")..[=[<!--
-->]=]..(c.tild and (alt and " i " or " z ").."akcentuacją rozziewu ([[Aneks:Język hiszpański - odmiana czasownika "..c.tild.."|"..c.tild.."]])" or "")..[=[<!--
-->]=]..(c.dipt and (alt and " i " or " ze ").."stałą dwugłoską ([[Aneks:Język hiszpański - odmiana czasownika "..c.dipt.."|"..c.dipt.."]]"..(c.dipt2
and ", [[Aneks:Język hiszpański - odmiana czasownika "..c.dipt2.."|"..c.dipt2.."]]" or "")..")" or "")..[=[<!--
-->]=]..((participio or c.part_irr or c.part_doble)
and (c.part_doble and ", imiesłów bierny podwójny <b>"..c.part.." / "..c.part_doble.."</b>"
or (", imiesłów bierny <b>"..(participio or c.part).."</b>"..[=[<!--
-->]=]..(c.part_ipto and ", <i>(Argentyna, Urugwaj)</i> <b>"..c.part_ipto.."</b>" or ""))) or "")..[=[<!--
--><div class="NavFrame collapse-odmiana" style="display:inline"><!--
--><div class="NavHead" style="background:transparent; text-align:left; padding-right:55px; display:inline"> </div><!--
--><div class="NavContent" style="text-align: left; display:inline;"><!--]=] or "<!--"
local aux1 = [=[
--><table class="]=]..(class or "")..[=[" style="]=]..style..[=[">]=]..((_notas == "") and "" or [=[<!--
--><tr><td colspan="6" style="padding:0;border:none;width:100%"><!--
--><table class="wikitable odmiana collapsible collapsed" style="width:100%; margin:0 0 5px 0;"><!--
--><tr><th> notas</th></tr><!--
--><tr><td style="text-align:left"><ul>]=].._notas..[=[</ul></td></tr><!--
--></table></td></tr>]=])..[=[<!--
--><tr><!--
--><th>[[forma no personal#es|formas no personales]]</th><!--
--><th colspan="2">[[infinitivo#es|infinitivo]]</th><!--
--><th>[[gerundio#es|gerundio]]</th><!--
--><th colspan="2">[[participio#es|participio]]</th><!--
--></tr><!--
--><tr><!--
--><th>[[simple#es|simples]]</th><!--
--><td colspan="2">]=]..(_esEnclit and c.inf2.._pron_se or c.inf.._pron_se)..[=[</td><!--
--><td>]=]..(c.no_part and "—" or (ger_ or "").."[["..(esEnclit and c.ger2.._pron_se..es..(c._ger2 or c.ger2).._pron_se or c.ger).."]]")..[=[</td><!--
--><td colspan="2">]=]..(c.no_part and "—" or "[["..part..es..(c._part or part).."]]".. (c.part_doble and ", [["..c.part_doble..es..c.part_doble.."]]" or ""))..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[compuesto#es|compuestas]]</th><!--
--><td colspan="2">]=]..(c.no_part and "—" or (esEnclit and "[[haber#es|haber".._pron_se.."]] " or "[[haber#es|haber]] ")..part2)..[=[</td><!--
--><td>]=]..(c.no_part and "—" or (esEnclit and "[[haber#es|habiéndo".._pron_se.."]] " or "[[haber#es|habiendo]] ")..part2)..[=[</td><!--
--><td colspan="2">—</td><!--
--></tr><!--
--><tr><td colspan="6" style="padding:0; border:none; height:5px; background:#FFFFFF"></td></tr><!--
--><tr><th colspan="6">[[forma personal#es|formas personales]]</th></tr><!--
]=]
local aux2 = [=[
--><tr><!--
--><th style="font-weight:bold" width="24%" rowspan="2">[[modo indicativo#es|modo indicativo]]</th><!--
--><th colspan="2">[[tercero#es|tercera]] [[persona#es|persona]]</th><!--
--><th style="font-weight:bold" width="24%" rowspan="2">[[modo subjuntivo#es|modo subjuntivo]]</th><!--
--><th colspan="2">[[tercero#es|tercera]] [[persona#es|persona]]</th><!--
--></tr><!--
--><tr><!--
--><th width="13%">[[singular#es|singular]]</th><!--
--><th width="13%">[[plural#es|plural]]</th><!--
--><th width="13%">[[singular#es|singular]]</th><!--
--><th width="13%">[[plural#es|plural]]</th><!--
--></tr><!--
--><tr><!--
--><th>[[presente#es|presente]]</th><!--
--><td>]=]..(imorfo and "—" or _se.."[["..c.p_i_3s.."]]")..[=[</td><!--
--><td>]=]..((impers or imorfo) and "—" or _se.."[["..c.p_i_3p.."]]")..[=[</td><!--
--><th>[[presente#es|presente]]</th><!--
--><td>]=]..((eimorfo or imorfo) and "—" or _se.."[["..c.p_s_3s.."]]")..[=[</td><!--
--><td>]=]..((impers or eimorfo or imorfo) and "—" or _se.."[["..c.p_s_3p.."]]")..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito imperfecto#es|pretérito imperfecto]]</th><!--
--><td>]=].._se.."[["..c.pi_i_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se.."[["..c.pi_i_3p.."]]")..[=[</td><!--
--><th rowspan="2">[[pretérito imperfecto#es|pretérito imperfecto]]</th><!--
--><td>]=].._se..(pi_f_ or "").."[["..c.pi1_s_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se..(pi_f_ or "").."[["..c.pi1_s_3p.."]]")..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito perfecto simple#es|pretérito perfecto simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se..(pps_ or "").."[["..c.pps_i_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se..(pps_ or pps2_ or "").."[["..c.pps_i_3p.."]]")..[=[</td>]=])..[=[<!--
--><td>]=].._se..(pi_f_ or "").."[["..c.pi2_s_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se..(pi_f_ or "").."[["..c.pi2_s_3p.."]]")..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[futuro simple#es|futuro simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se..(f_c_ or "").."[["..c.f_i_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se..(f_c_ or "").."[["..c.f_i_3p.."]]")..[=[</td>]=])..[=[<!--
--><th>[[futuro simple#es|futuro simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se..(pi_f_ or "").."[["..c.f_s_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se..(pi_f_ or "").."[["..c.f_s_3p.."]]")..[=[</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[condicional simple#es|condicional simple]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se..(f_c_ or "").."[["..c.c_i_3s..[=[]]</td><!--
--><td>]=]..(impers and "—" or _se..(f_c_ or "").."[["..c.c_i_3p.."]]")..[=[</td>]=])..[=[<!--
--><th colspan="3"></th><!--
--></tr><!--
]=]
local aux3 = c.no_part and "" or [=[
--><tr><!--
--><td colspan="6" style="padding:0;border:none;"><!--
--><table class="wikitable ]=]..class..[=[ collapsible collapsed" style="width:100%; margin:5px 0 5px 0;"><!--
--><tr><th colspan="6"> [[tiempo compuesto#es|tiempos compuestos]]</th></tr><!--
--><tr><!--
--><th width="24%">[[pretérito perfecto compuesto#es|pretérito perfecto compuesto]]</th><!--
--><td width="13%">]=].._se.."[[haber#es|ha]] "..part2..[=[</td><!--
--><td width="13%">]=]..(impers and "—" or _se.."[[haber#es|han]] "..part2)..[=[</td><!--
--><th width="24%">[[pretérito perfecto#es|pretérito perfecto]]</th><!--
--><td width="13%">]=].._se.."[[haber#es|haya]] "..part2..[=[</td><!--
--><td width="13%">]=]..(impers and "—" or _se.."[[haber#es|hayan]] "..part2)..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito pluscuamperfecto#es|pretérito pluscuamperfecto]]</th><!--
--><td>]=].._se.."[[haber#es|había]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|habían]] "..part2)..[=[</td><!--
--><th rowspan="2">[[pretérito pluscuamperfecto#es|pretérito pluscuamperfecto]]</th><!--
--><td>]=].._se.."[[haber#es|hubiera]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|hubieran]] "..part2)..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[pretérito anterior#es|pretérito anterior]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se.."[[haber#es|hubo]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|hubieron]] "..part2)..[=[</td>]=])..[=[<!--
--><td>]=].._se.."[[haber#es|hubiese]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|hubiesen]] "..part2)..[=[</td><!--
--></tr><!--
--><tr><!--
--><th>[[futuro compuesto#es|futuro compuesto]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se.."[[haber#es|habrá]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|habrán]] "..part2)..[=[</td>]=])..[=[<!--
--><th>[[futuro compuesto#es|futuro compuesto]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se.."[[haber#es|hubiere]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|hubieren]] "..part2)..[=[</td>]=])..[=[<!--
--></tr><!--
--><tr><!--
--><th>[[condicional compuesto#es|condicional compuesto]]</th><!--
-->]=]..(repet and '<td>—</td><td>—</td>' or [=[<!--
--><td>]=].._se.."[[haber#es|habría]] "..part2..[=[</td><!--
--><td>]=]..(impers and "—" or _se.."[[haber#es|habrían]] "..part2)..[=[</td>]=])..[=[<!--
--><th colspan="3"></th><!--
--></tr><!--
--></table></td></tr><!--
]=]
local aux4 = '--></table>'..(not visible and "</div></div>" or "")
return aux0..aux1..aux2..aux3..aux4
end
-- RUTINA PRINCIPAL
function p.main(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that transcludes the template
local verbo, modelo = args.verbo or config.verbo, args.modelo
local notas, visible, participio = args.notas, args.visible, args.participio
local terc_pers, defect, imper, pron = args["3.os"], args.defectivo, args.imperativo, args.zaimek
local namespace, class, style = config.namespace, config.class, config.style
-- el modelo especificado no existe o no está definido
if not modelos[modelo] then return mensaje(verbo)..'[[Kategoria:odmiana-czasownik-hiszpański/błędy]]' end
-- analiza el verbo y lo descompone en unidades más básicas
local componentes, esPronominal, conj = analizarCadena(verbo, modelo)
-- no reconoce la conjugación
if not conj then return 'Nieprawidłowa końcówka bezokolicznika: -ar/-er/-ir/-ír (-se)[[Kategoria:odmiana-czasownik-hiszpański/błędy]]' end
-- determina si la plantilla de conjugación se encuentra en ns:0 y/o puede ser incluido en una categoría
local ns = ((not pron) and (namespace == "tak")) and true or false
-- suprime, en caso de ser un verbo pronominal, el "-se" final
verbo = esPronominal and subString(verbo, 1, -3) or verbo
-- obtiene las formas verbales
local formas, salida = modelos[modelo](componentes, conj, modelo, verbo, terc_pers, esPronominal)
-- determina la presencia o no de alternancias consonánticas (g-j, g-gu...)
local alt = (componentes.suf1 ~= "") and "„"..componentes.suf1.." – "..componentes.suf2.."”" or nil
-- pasa los argumentos a la función "tabla_..." correspondiente
if salida then
return salida -- devuelve la tabla con la conjugación u otra salida especificada en la subrutina del modelo
-- verbos impersonales/terciopersonales
elseif terc_pers then
return tabla_terc_pers(formas, esPronominal, conj, modelo, notas, (visible == "si"), class, style, participio, alt, defect, terc_pers, pron)..(ns and
"[[Kategoria:Czasowniki hiszpańskie]]" or "")
-- para el resto de los verbos
else
return tabla_normal(formas, esPronominal, conj, modelo, notas, (visible == "si"), class, style, participio, alt, defect, (imper == 'nie'), pron)..(ns and
"[[Kategoria:Czasowniki hiszpańskie]]" or "")
end
end
--local temp = p.analizarCadena("argüir", "construir")
--for i, v in pairs(temp) do print(i,v) end
--verbo, modelo, notas, visible, class, style, participio, namespace, terc_pers, defect, imper, pron
--print(p.main("predecir", "decir", nil, "no", "wikitable odmiana", "text-align:center; border:none; margin:0.5em 0em", nil, "tak", nil, "no", "si", nil))
return p