La documentazione per questo modulo può essere creata in Modulo:Es-conj/man
-- Questo modulo contiene il codice per il template:Es-conj, che genera la coniugazione di tutti i verbi spagnoli
-- La funzione esconj genera la tabella di coniugazione utilizzando i parametri passati dal template
p = {}
local function categorizza(cat, titolo) --funzione per categorizzare, by Wim_b
local NS = tostring(mw.title.getCurrentTitle().namespace);
if NS == '100' then
return string.format(']', mw.site.namespaces.name, cat, titolo)
else
return ''
end
end
function p.esconj(frame)
pframe = frame:getParent()
config = frame.args
args = pframe.args
titolo = mw.title.getCurrentTitle().subpageText --il titolo della pagina, senza 'Appendice/Coniugazioni/Spagnolo'
-- Argomenti passati dal template
radice = args
-- Inizializzazione di tutte le stringhe come nulle, per evitare errori di concatenazione
descr = ""; conjdescr = ""; conjcat = ""; reg_irreg = ""; irregolare = ""; irregolarecat = ""; irregolaredescr = ""
refl_exist = ""; refl_link = ""; refl_conjlink = ""
ausiliare = ""
inf = ""; ger = ""; par= ""; pp = ""; pplur = ""; pprifl = ""
pres1s = ""; pres1s2 = ""; pres2s=""; pres2sform = ""; pres3s = ""; pres1p = ""; pres2p = ""; pres3p = ""
imperf1s = ""; imperf2s=""; imperf3s = ""; imperf1p = ""; imperf2p = ""; imperf3p = ""
prem1s = ""; prem1s2 = ""; prem2s = ""; prem3s = ""; prem3s2 = ""; prem1p = ""; prem2p = ""; prem3p = ""; prem3p2 = ""
fut1s = ""; fut2s=""; fut3s = ""; fut1p =" "; fut2p = ""; fut3p = ""
cond1s = ""; cond2s=""; cond3s = ""; cond1p = ""; cond2p = ""; cond3p = ""
cong1s = ""; cong2s = ""; cong2sform = ""; cong3s = ""; cong1p = ""; cong2p = ""; cong3p = ""
congimp1s =""; congimp1s2 = ""; congimp2s = ""; congimp2s2 = ""; congimp3s = ""; congimp3s2 = ""; congimp1p = ""; congimp1p2 = ""; congimp2p = ""; congimp2p2 = ""; congimp3p = ""; congimp3p2 = ""
congfut1s = ""; congfut2s = ""; congfut3s = ""; congfut1p = ""; congfut2p = ""; congfut3p = ""
imp2s=""; imp2s2 = ""; imp2sform = ""; imp2sneg = ""; imp2s3 = ""; imp3s = ""; imp1p = ""; imp2p = ""; imp2pneg = "" imp3p = ""
me = ""; te = ""; se = ""; nos = ""; os = ""
paspros = ""; trappros = ""; traprem = ""; futant = ""; condpas = ""; congpas = ""; congtrap = ""
paspros1s = ""; paspros2s=""; paspros3s = ""; paspros1p = ""; paspros2p = ""; paspros3p = ""
trappros1s = ""; trappros2s=""; trappros3s = ""; trappros1p = ""; trappros2p = ""; trappros3p = ""
traprem1s = ""; traprem2s=""; traprem3s = ""; traprem1p = ""; traprem2p = ""; traprem3p = ""
futant1s = ""; futant2s=""; futant3s = ""; futant1p = ""; futant2p = ""; futant3p = ""
condpas1s = ""; condpas2s=""; condpas3s = ""; condpas1p = ""; condpas2p = ""; condpas3p = ""
congpas1s = ""; congpas2s=""; congpas3s = ""; congpas1p = ""; congpas2p = ""; congpas3p = ""
congtrap1s = ""; congtrap2s=""; congtrap3s = ""; congtrap1p = ""; congtrap2p = ""; congtrap3p = ""
congfutant1s = ""; congfutant2s=""; congfutant3s = ""; congfutant1p = ""; congfutant2p = ""; congfutant3p = ""
-- A partire dalla coniugazione, genera le forme coniugate standard per ciascuna tipologia di verbo
type = config
if type == nil then
inf = p.wiki(args)
elseif (type == "ar") or (type == "arse") then
inf = p.wiki(radice .. "ar")
ger = p.wiki(radice.."ando")
pp = p.wiki(radice .. "ado"); pplur = p.wiki(radice.."ados")
pres1s = p.wiki(radice .. "o"); pres2s = p.wiki(radice .. "as"); pres2sform = p.wiki(radice.."ás") pres3s = p.wiki(radice .. "a")
pres1p = p.wiki(radice .. "amos"); pres2p = p.wiki(radice .. "áis"); pres3p = p.wiki(radice .. "an")
imperf1s = p.wiki(radice .. "aba"); imperf2s = p.wiki(radice .. "abas"); imperf3s = p.wiki(radice .. "aba")
imperf1p = p.wiki(radice .. "ábamos"); imperf2p = p.wiki(radice .. "abais"); imperf3p = p.wiki(radice .. "aban")
prem1s = p.wiki(radice .. "é"); prem2s = p.wiki(radice .. "aste"); prem3s = p.wiki(radice .. "ó")
prem1p = p.wiki(radice .. "amos"); prem2p = p.wiki(radice .. "asteis"); prem3p = p.wiki(radice .. "aron")
fut1s = p.wiki(radice .. "aré"); fut2s = p.wiki(radice .. "arás"); fut3s = p.wiki(radice .. "ará")
fut1p = p.wiki(radice .. "aremos"); fut2p = p.wiki(radice .. "aréis"); fut3p = p.wiki(radice .. "arán")
cond1s = p.wiki(radice .. "aría"); cond2s = p.wiki(radice .. "arías"); cond3s = p.wiki(radice .. "aría")
cond1p = p.wiki(radice .. "aríamos"); cond2p = p.wiki(radice .. "aríais"); cond3p = p.wiki(radice .. "arían")
cong1s = p.wiki(radice .. "e"); cong2s = p.wiki(radice .. "es"); cong2sform = p.wiki(radice.. "és"); cong3s = p.wiki(radice .. "e")
cong1p = p.wiki(radice .. "emos"); cong2p = p.wiki(radice .. "éis"); cong3p = p.wiki(radice .. "en")
congimp1s_ra = p.wiki(radice .. "ara"); congimp2s_ra = p.wiki(radice.. "aras"); congimp3s_ra = p.wiki(radice .. "ara")
congimp1p_ra = p.wiki(radice .. "áramos"); congimp2p_ra = p.wiki(radice .. "arais"); congimp3p_ra = p.wiki(radice .. "aran")
congimp1s_se = p.wiki(radice .. "ase"); congimp2s_se = p.wiki(radice.. "ases"); congimp3s_se = p.wiki(radice .. "ase")
congimp1p_se = p.wiki(radice .. "ásemos"); congimp2p_se = p.wiki(radice .. "aseis"); congimp3p_se = p.wiki(radice .. "asen")
congfut1s = p.wiki(radice .. "are"); congfut2s = p.wiki(radice.. "ares"); congfut3s = p.wiki(radice .. "are")
congfut1p = p.wiki(radice .. "áremos"); congfut2p = p.wiki(radice .. "areis"); congfut3p = p.wiki(radice .. "aren")
imp2s = p.wiki(radice .. "a"); imp2sform = p.wiki(radice.."á"); imp3s = p.wiki(radice.."e")
imp1p = p.wiki(radice .. "emos"); imp2p = p.wiki(radice .. "ad"); imp3p = p.wiki(radice.."en")
imp2sneg = p.wiki(radice .. "es"); imp2pneg = p.wiki(radice.."éis")
elseif (type == "er") or (type == "erse") then
inf = p.wiki(radice .. "er")
ger = p.wiki(radice.."iendo")
pp = p.wiki(radice .. "ido"); pplur = p.wiki(radice.."idos")
pres1s = p.wiki(radice .. "o"); pres2s = p.wiki(radice .. "es"); pres2sform = p.wiki(radice.."és") pres3s = p.wiki(radice .. "e")
pres1p = p.wiki(radice .. "emos"); pres2p = p.wiki(radice .. "éis"); pres3p = p.wiki(radice .. "en")
imperf1s = p.wiki(radice .. "ía"); imperf2s = p.wiki(radice .. "ías"); imperf3s = p.wiki(radice .. "ía")
imperf1p = p.wiki(radice .. "íamos"); imperf2p = p.wiki(radice .. "íais"); imperf3p = p.wiki(radice .. "ían")
prem1s = p.wiki(radice .. "í"); prem2s = p.wiki(radice .. "iste"); prem3s = p.wiki(radice .. "ió")
prem1p = p.wiki(radice .. "imos"); prem2p = p.wiki(radice .. "isteis"); prem3p = p.wiki(radice .. "ieron")
fut1s = p.wiki(radice .. "eré"); fut2s = p.wiki(radice .. "erás"); fut3s = p.wiki(radice .. "erá")
fut1p = p.wiki(radice .. "eremos"); fut2p = p.wiki(radice .. "eréis"); fut3p = p.wiki(radice .. "erán")
cond1s = p.wiki(radice .. "ería"); cond2s = p.wiki(radice .. "erías"); cond3s = p.wiki(radice .. "ería")
cond1p = p.wiki(radice .. "eríamos"); cond2p = p.wiki(radice .. "eríais"); cond3p = p.wiki(radice .. "erían")
cong1s = p.wiki(radice .. "a"); cong2s = p.wiki(radice .. "as"); cong2sform = p.wiki(radice.. "ás"); cong3s = p.wiki(radice .. "a")
cong1p = p.wiki(radice .. "amos"); cong2p = p.wiki(radice .. "áis"); cong3p = p.wiki(radice .. "an")
congimp1s_ra = p.wiki(radice .. "iera"); congimp2s_ra = p.wiki(radice.. "ieras"); congimp3s_ra = p.wiki(radice .. "iera")
congimp1p_ra = p.wiki(radice .. "iéramos"); congimp2p_ra = p.wiki(radice .. "ierais"); congimp3p_ra = p.wiki(radice .. "ieran")
congimp1s_se = p.wiki(radice .. "iese"); congimp2s_se = p.wiki(radice.. "ieses"); congimp3s_se = p.wiki(radice .. "iese")
congimp1p_se = p.wiki(radice .. "iésemos"); congimp2p_se = p.wiki(radice .. "ieseis"); congimp3p_se = p.wiki(radice .. "iesen")
congfut1s = p.wiki(radice .. "iere"); congfut2s = p.wiki(radice.. "ieres"); congfut3s = p.wiki(radice .. "iere")
congfut1p = p.wiki(radice .. "iéremos"); congfut2p = p.wiki(radice .. "iereis"); congfut3p = p.wiki(radice .. "ieren")
imp2s = p.wiki(radice .. "e"); imp2sform = p.wiki(radice.."é"); imp3s = p.wiki(radice.."a")
imp1p = p.wiki(radice .. "amos"); imp2p = p.wiki(radice .. "ed"); imp3p = p.wiki(radice.."an")
imp2sneg = p.wiki(radice .. "as"); imp2pneg = p.wiki(radice.. "áis")
elseif (type == "ir") or (type == "irse") then
inf = p.wiki(radice .. "ir")
ger = p.wiki(radice.."iendo")
pp = p.wiki(radice .. "ido"); pplur = p.wiki(radice.."idos")
pres1s = p.wiki(radice .. "o"); pres2s = p.wiki(radice .. "es"); pres2sform = p.wiki(radice.."ís") pres3s = p.wiki(radice .. "e")
pres1p = p.wiki(radice .. "imos"); pres2p = p.wiki(radice .. "ís"); pres3p = p.wiki(radice .. "en")
imperf1s = p.wiki(radice .. "ía"); imperf2s = p.wiki(radice .. "ías"); imperf3s = p.wiki(radice .. "ía")
imperf1p = p.wiki(radice .. "íamos"); imperf2p = p.wiki(radice .. "íais"); imperf3p = p.wiki(radice .. "ían")
prem1s = p.wiki(radice .. "í"); prem2s = p.wiki(radice .. "iste"); prem3s = p.wiki(radice .. "ió")
prem1p = p.wiki(radice .. "imos"); prem2p = p.wiki(radice .. "isteis"); prem3p = p.wiki(radice .. "ieron")
fut1s = p.wiki(radice .. "iré"); fut2s = p.wiki(radice .. "irás"); fut3s = p.wiki(radice .. "irá")
fut1p = p.wiki(radice .. "iremos"); fut2p = p.wiki(radice .. "iréis"); fut3p = p.wiki(radice .. "irán")
cond1s = p.wiki(radice .. "iría"); cond2s = p.wiki(radice .. "irías"); cond3s = p.wiki(radice .. "iría")
cond1p = p.wiki(radice .. "iríamos"); cond2p = p.wiki(radice .. "iríais"); cond3p = p.wiki(radice .. "irían")
cong1s = p.wiki(radice .. "a"); cong2s = p.wiki(radice .. "as"); cong2sform = p.wiki(radice.. "ás"); cong3s = p.wiki(radice .. "a")
cong1p = p.wiki(radice .. "amos"); cong2p = p.wiki(radice .. "áis"); cong3p = p.wiki(radice .. "an")
congimp1s_ra = p.wiki(radice .. "iera"); congimp2s_ra = p.wiki(radice.. "ieras"); congimp3s_ra = p.wiki(radice .. "iera")
congimp1p_ra = p.wiki(radice .. "iéramos"); congimp2p_ra = p.wiki(radice .. "ierais"); congimp3p_ra = p.wiki(radice .. "ieran")
congimp1s_se = p.wiki(radice .. "iese"); congimp2s_se = p.wiki(radice.. "ieses"); congimp3s_se = p.wiki(radice .. "iese")
congimp1p_se = p.wiki(radice .. "iésemos"); congimp2p_se = p.wiki(radice .. "ieseis"); congimp3p_se = p.wiki(radice .. "iesen")
congfut1s = p.wiki(radice .. "iere"); congfut2s = p.wiki(radice.. "ieres"); congfut3s = p.wiki(radice .. "iere")
congfut1p = p.wiki(radice .. "iéremos"); congfut2p = p.wiki(radice .. "iereis"); congfut3p = p.wiki(radice .. "ieren")
imp2s = p.wiki(radice .. "e"); imp2sform = p.wiki(radice.."í"); imp3s = p.wiki(radice.."a")
imp1p = p.wiki(radice .. "amos"); imp2p = p.wiki(radice .. "id"); imp3p = p.wiki(radice.."an")
imp2sneg = p.wiki(radice .. "as"); imp2pneg = p.wiki(radice.. "áis")
else error("Verb type " .. type .. "not supported.")
end
--sistema automaticamente le particolarità della prima coniugazione
if type == "ar" or type == "arse" then
--VERBI IN -CAR: la -c- diventa qu davanti alle uscite in -e
if mw.ustring.sub(radice, -1) == "c" then
radice2 = mw.ustring.sub(radice, 1, -2).. "qu"
prem1s = p.wiki(radice2.. "é")
cong1s = p.wiki(radice2 .. "e"); cong2s = p.wiki(radice2 .. "es"); cong2sform = p.wiki(radice2.. "és"); cong3s = p.wiki(radice2 .. "e")
cong1p = p.wiki(radice2 .. "emos"); cong2p = p.wiki(radice2 .. "éis"); cong3p = p.wiki(radice2 .. "en")
imp3s = p.wiki(radice2.."e")
imp1p = p.wiki(radice2 .. "emos"); imp3s = p.wiki(radice2.."en")
end
end
-- Determina se il verbo è riflessivo
if type == "arse" or type == "erse" or type == "irse" then refl = true else refl = false end
-- Genera le voci verbali specifiche per i verbi riflessivi
if type == "arse" then
refl = true
inf = p.wiki(radice.. "arse")
elseif type == "erse" then
refl = true
inf = p.wiki(radice.. "erse")
elseif type == "irse" then
refl = true
inf = p.wiki(radice.. "irse")
end
-- Genera i pronomi riflessivi
if refl == true then
me = "me "; te = "te "; se = "se "; nos = "nos "; os = "os "
end
--genera il link ai riflessivi
if refl == false then
if mw.title.new("Appendice:Coniugazioni/Spagnolo/".. titolo.. "se").exists == true then
refl_exist = true; refl_link = p.wiki(titolo.. "se"); refl_conjlink = " (])" --se esiste il riflessivo, genera link al verbo in ns0 e alla relativa coniugazione in appendice
else
refl_exist = false; refl_link = ""; refl_conjlink = "" --se non esiste il riflessivo, annulla i link
end
elseif refl == true then
infattivo = mw.ustring.sub(titolo, 1, -3) --l'infinito del verbo attivo, uguale al titolo senza il "se" alla fine
if mw.title.new("Appendice:Coniugazioni/Spagnolo/".. infattivo).exists == true then
refl_exist = true; refl_link = p.wiki(infattivo); refl_conjlink = " (])" --se esiste il verbo attivo, genera link al verbo in ns0 e alla relativa coniugazione in appendice
else
refl_exist = false; refl_link = ""; refl_conjlink = "" --se non esiste il verbo attivo, annulla i link
end
end
-- Recupera le eventuali forme irregolari o varianti, rimpiazziandole o aggiungendole a quelle standard
-- Forme impersonali e participi
inf = p.over(inf,args)
ger = p.over(ger,args)
ger2 = p.wiki(args)
ger = p.alts(ger, ger2)
pp = p.over(pp,args)
pp2 = p.wiki(args); pp3 = p.wiki(args); pp3 = p.wiki(args); pp4 = p.wiki(args); pp5 = p.wiki(args)
pp = p.alts(pp, pp2); pp = p.alts(pp, pp3); pp = p.alts(pp, pp4); pp = p.alts(pp, pp5)
-- Presente indicativo
pres1s = p.over(pres1s,args); pres2s = p.over(pres2s,args); pres2sform = p.over(pres2sform,args); pres3s = p.over(pres3s,args)
pres1p = p.over(pres1p,args); pres2p = p.over(pres2p,args); pres3p = p.over(pres3p,args)
pres1s2 = p.wiki(args); pres2s2 = p.wiki(args); pres3s2 = p.wiki(args)
pres1p2 = p.wiki(args); pres2p2 = p.wiki(args); pres3p2 = p.wiki(args)
pres1s = p.alts(pres1s, pres1s2); pres2s = p.alts(pres2s, pres2s2); pres3s = p.alts(pres3s, pres3s2)
pres1p = p.alts(pres1p, pres1p2); pres2p = p.alts(pres2p, pres2p2); pres3p = p.alts(pres3p, pres3p2)
-- Imperfetto
imperf1s = p.over(imperf1s,args); imperf2s = p.over(imperf2s,args); imperf3s = p.over(imperf3s,args)
imperf1p = p.over(imperf1p,args); imperf2p = p.over(imperf2p,args); imperf3p = p.over(imperf3p,args)
imperf1s2 = p.wiki(args); imperf2s2 = p.wiki(args); imperf3s2 = p.wiki(args)
imperf1p2 = p.wiki(args); imperf2p2 = p.wiki(args); imperf3p2 = p.wiki(args)
imperf1s = p.alts(imperf1s, imperf1s2); imperf2s = p.alts(imperf2s, imperf2s2); imperf3s = p.alts(imperf3s, imperf3s2)
imperf1p = p.alts(imperf1p, imperf1p2); imperf2p = p.alts(imperf2p, imperf2p2); imperf3p = p.alts(imperf3p, imperf3p2)
-- Preterito (Passato REMoto)
prem1s = p.over(prem1s,args); prem2s = p.over(prem2s,args); prem3s = p.over(prem3s,args)
prem1p = p.over(prem1p,args); prem2p = p.over(prem2p,args); prem3p = p.over(prem3p,args)
prem1s = p.alts(prem1s, prem1s2); prem2s = p.alts(prem2s, prem2s2); prem3s = p.alts(prem3s, prem3s2)
prem1p = p.alts(prem1p, prem1p2); prem2p = p.alts(prem2p, prem2p2); prem3p = p.alts(prem3p, prem3p2)
-- Futuro
fut1s = p.over(fut1s,args); fut2s = p.over(fut2s,args); fut3s = p.over(fut3s,args)
fut1p = p.over(fut1p,args); fut2p = p.over(fut2p,args); fut3p = p.over(fut3p,args)
fut1s2 = p.wiki(args); fut2s2 = p.wiki(args); fut3s2 = p.wiki(args)
fut1p2 = p.wiki(args); fut2p2 = p.wiki(args); fut3p2 = p.wiki(args)
fut1s = p.alts(fut1s, fut1s2); fut2s = p.alts(fut2s, fut2s2); fut3s = p.alts(fut3s, fut3s2)
fut1p = p.alts(fut1p, fut1p2); fut2p = p.alts(fut2p, fut2p2); fut3p = p.alts(fut3p, fut3p2)
-- Condizionale
cond1s = p.over(cond1s,args); cond2s = p.over(cond2s,args); cond3s = p.over(cond3s,args)
cond1p = p.over(cond1p,args); cond2p = p.over(cond2p,args); cond3p = p.over(cond3p,args)
cond1s2 = p.wiki(args); cond2s2 = p.wiki(args); cond3s2 = p.wiki(args)
cond1p2 = p.wiki(args); cond2p2 = p.wiki(args); cond3p2 = p.wiki(args)
cond1s = p.alts(cond1s, cond1s2); cond2s = p.alts(cond2s, cond2s2); cond3s = p.alts(cond3s, cond3s2)
cond1p = p.alts(cond1p, cond1p2); cond2p = p.alts(cond2p, cond2p2); cond3p = p.alts(cond3p, cond3p2)
-- Presente congiuntivo
cong1s = p.over(cong1s,args); cong2s = p.over(cong2s,args); cong3s = p.over(cong3s,args)
cong1p = p.over(cong1p,args); cong2p = p.over(cong2p,args); cong3p = p.over(cong3p,args)
cong1s2 = p.wiki(args); cong2s2 = p.wiki(args); cong3s2 = p.wiki(args)
cong1p2 = p.wiki(args); cong2p2 = p.wiki(args); cong3p2 = p.wiki(args)
cong1s = p.alts(cong1s, cong1s2); cong2s = p.alts(cong2s, cong2s2) cong3s = p.alts(cong3s, cong3s2)
cong1p = p.alts(cong1p, cong1p2); cong2p = p.alts(cong2p, cong2p2); cong3p = p.alts(cong3p, cong3p2)
-- Imperfetto congiuntivo
congimp1s = p.over(congimp1s,args); congimp2s = p.over(congimp2s,args); congimp3s = p.over(congimp3s,args)
congimp1p = p.over(congimp1p,args); congimp2p = p.over(congimp2p,args); congimp3p = p.over(congimp3p,args)
congimp1s2 = p.wiki(args); congimp2s2 = p.wiki(args); congimp3s2 = p.wiki(args)
congimp1p2 = p.wiki(args); congimp2p2 = p.wiki(args); congimp3p2 = p.wiki(args)
congimp1s = p.alts(congimp1s, congimp1s2); congimp2s = p.alts(congimp2s, congimp2s2); congimp3s = p.alts(congimp3s, congimp3s2)
congimp1p = p.alts(congimp1p, congimp1p2); congimp2p = p.alts(congimp2p, congimp2p2); congimp3p = p.alts(congimp3p, congimp3p2)
-- Imperativo
imp2s = p.over(imp2s,args); imp3s = p.over(imp3s,args)
imp1p = p.over(imp1p,args); imp2p = p.over(imp2p,args); imp3p = p.over(imp3p,args)
imp2s2 = p.over(imp2s2, args); imp3s2 = p.wiki(args)
imp1p2 = p.wiki(args); imp2p2 = p.wiki(args); imp3p2 = p.wiki(args)
imp2s = p.alts(imp2s, imp2s2); imp3s = p.alts(imp3s, imp3s2)
imp1p = p.alts(imp1p, imp1p2); imp2p = p.alts(imp2p, imp2p2); imp3p = p.alts(imp3p, imp3p2)
-- Alternativa extra per l'imperativo
imp2s3 = p.over(imp2s3, args); imp2s = p.alts(imp2s, imp2s3)
--cerca se uno qualsiasi dei parametri è definito, e in base a questo definisce la stringa reg_irreg come "irregolare" o "regolare"
if
args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil or args ~= nil
then
if args == "no" then
irregolaredescr = ""; reg_irreg = " regolari "
else
irregolaredescr = " '''(irregolare)'''"; reg_irreg = " irregolari "
end
else --se nessun parametro è definito...
irregolaredescr = ""; reg_irreg = " regolari "
end
--in base alla desinenza "type", costruisce la descizione e aggiunge le categorie
if type == "ar" then
conjdescr = "'''verbo di prima coniugazione'''"; conjcat = categorizza("Coniugazioni dei verbi di prima coniugazione in spagnolo",titolo)
irregolarecat = categorizza("Coniugazioni dei verbi".. reg_irreg.. "in spagnolo",titolo).." "..categorizza("Coniugazioni dei verbi".. reg_irreg.. "di prima coniugazione in spagnolo",titolo)
elseif type == "er" then
conjdescr = "'''verbo di seconda coniugazione'''"; conjcat = categorizza("Coniugazioni dei verbi di seconda coniugazione in spagnolo", titolo)
irregolarecat = categorizza("Coniugazioni dei verbi".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi".. reg_irreg.. "di seconda coniugazione in spagnolo", titolo)
elseif type == "ir" then
conjdescr = "'''verbo di terza coniugazione'''"; conjcat = categorizza("Coniugazioni dei verbi di terza coniugazione in spagnolo", titolo)
irregolarecat = categorizza("Coniugazioni dei verbi".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi".. reg_irreg.. "di terza coniugazione in spagnolo", titolo)
elseif type == "arse" then
conjdescr = "'''verbo riflessivo pronominale di prima coniugazione'''"; conjcat = categorizza("Coniugazioni dei verbi di prima coniugazione in spagnolo",titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali di prima coniugazione in spagnolo", titolo)
irregolarecat = categorizza("Coniugazioni dei verbi".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi".. reg_irreg.. "di prima coniugazione in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali".. reg_irreg.. "di prima coniugazione in spagnolo", titolo)
irregolarecat = categorizza("Coniugazioni dei verbi".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi".. reg_irreg.. "di prima coniugazione in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali".. reg_irreg.. "di prima coniugazione in spagnolo", titolo)
elseif type == "erse" then
conjdescr = "'''verbo riflessivo pronominale di seconda coniugazione'''"; conjcat = categorizza("Coniugazioni dei verbi di seconda coniugazione in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali di seconda coniugazione in spagnolo", titolo)
irregolarecat = categorizza("Coniugazioni dei verbi".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi".. reg_irreg.. "di seconda coniugazione in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali".. reg_irreg.. "in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali".. reg_irreg.. "di seconda coniugazione in spagnolo", titolo)
elseif type == "irse" then
conjdescr = "'''verbo riflessivo pronominale di terza coniugazione'''"; conjcat = categorizza("Coniugazioni dei verbi di terza coniugazione in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali in spagnolo", titolo).." "..categorizza("Coniugazioni dei verbi riflessivi pronominali di terza coniugazione in spagnolo", titolo)
end
--stringa "descrizione", raggruppa tutte le stringhe definite prima per la descrizione e le categorie della coniugazione, regolari/irregolari e riflessivi
descrizione = categorizza("Coniugazioni in spagnolo", titolo).. conjdescr.. conjcat.. irregolaredescr.. irregolarecat
--tempi composti
if args ~= nil then pplur = ".. "s]]" end
if pp2 >= "a" then pplur2 = ".. "s]]" else pplur2 = "0" end
pplur = p.alts(pplur, pplur2)
ausiliare = "]"
if pp ~= "" then
--passato prossimo (pretérito perfecto)
paspros1s = "] ".. pp; paspros2s = "] ".. pp; paspros3s = "] ".. pp
paspros1p = "] ".. pp; paspros2p = "] ".. pp; paspros3p = "] ".. pp
--trapassato prossimo (pretérito pluscuamperfecto)
trappros1s = "] ".. pp; trappros2s = "] ".. pp; trappros3s = "] ".. pp
trappros1p = "] ".. pp; trappros2p = "] ".. pp; trappros3p = "] ".. pp
--trapassato remoto (pretérito anterior)
traprem1s = "] ".. pp; traprem2s = "] ".. pp; traprem3s = "] ".. pp
traprem1p = "] ".. pp; traprem2p = "] ".. pp; traprem3p = "] ".. pp
--futuro anteriore (futuro compuesto)
futant1s = "] ".. pp; futant2s = "] ".. pp; futant3s = "] ".. pp
futant1p = "] ".. pp; futant2p = "] ".. pp; futant3p = "] ".. pp
--condizionale passato (potencial compuesto)
condpas1s = "] ".. pp; condpas2s = "] ".. pp; condpas3s = "] ".. pp
condpas1p = "] ".. pp; condpas2p = "] ".. pp; condpas3p = "] ".. pp
--congiuntivo passato (subjunctivo pretérito perfecto)
congpas1s = "] ".. pp; congpas2s = "] ".. pp; congpas2sform = "]".. pp; congpas3s = "] ".. pp
congpas1p = "] ".. pp; congpas2p = "] ".. pp; congpas3p = "] ".. pp
--congiuntivo trapassato (subjunctivo pretérito pluscuamperfecto)
congtrap1s = "]/] ".. pp; congtrap2s = "]/] ".. pp; congtrap3s = "]/] ".. pp
congtrap1p = "]/] ".. pp; congtrap2p = "]/] ".. pp; congtrap3p = "]/] ".. pp
--congiuntivo futuro anteriore (subjunctivo futuro compuesto)
congfutant1s = "] ".. pp; congfutant2s = "] ".. pp; congfutant3s = "] ".. pp
congfutant1p = "] ".. pp; congfutant2p = "] ".. pp; congfutant3p = "] ".. pp
end
-- Genera i titolo dei cassetti per i tempi composti
if pp == "" then
paspros = "manca dei tempi composti"; trappros = "manca dei tempi composti"; traprem = "manca dei tempi composti"; futant = "manca dei tempi composti"; condpas = "manca dei tempi composti"; congpas = "manca dei tempi composti"; congtrap = "manca dei tempi composti"; congfutant = "manca dei tempi composti"
else
paspros = "ausiliare ''" .. ausiliare .. "'' coniugato all'indicativo presente seguito dal participio passato"
trappros = "ausiliare ''" .. ausiliare .. "'' coniugato all'indicativo imperfetto seguito dal participio passato"
traprem = "ausiliare ''" .. ausiliare .. "'' coniugato all'indicativo passato remoto seguito dal participio passato"
futant = "ausiliare ''" .. ausiliare .. "'' coniugato all'indicativo futuro seguito dal participio passato"
condpas = "ausiliare ''" .. ausiliare .. "'' coniugato al condizionale presente seguito dal participio passato"
congpas = "ausiliare ''" .. ausiliare .. "'' coniugato al congiuntivo presente seguito dal participio passato"
congtrap = "ausiliare ''" .. ausiliare .. "'' coniugato al congiuntivo imperfetto seguito dal participio passato"
congfutant = "ausiliare ''" .. ausiliare .. "'' coniugato al congiuntivo futuro seguito dal participio passato"
end
-- Costruisce la tabella di coniugazione
conj = '{| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px" class="inflection-table"\n'
conj = conj .. '|-\n'
conj = conj .. '| colspan="8" style="background:#ffe4c4; text-align:center" | ' .. descrizione .. '\n'
conj = conj .. '|-\n'
if refl_exist == true then --se esiste il riflessivo pronominale del verbo, o se il verbo È riflessivo, fa spazio in tabella per aggiungere i relativi link generati precedentemente
conj = conj .. '! colspan="1" style="background:#e2e4c0" | infinito\n'
conj = conj .. '| colspan="2" | ' .. inf .. '\n'
if refl == true then --ulteriore variabile, se il verbo è riflessivo la dicitura della casella è "forma attiva", se no "riflessivo pronominale"
conj = conj .. '! colspan="2" style="background:#e2e4c0" | foma attiva\n'
else
conj = conj .. '! colspan="2" style="background:#e2e4c0" | riflessivo pronominale\n'
end
conj = conj .. '| colspan="2" | ' .. refl_link .. refl_conjlink.. '\n'
conj = conj .. '|-\n'
else --se non esiste il riflessivo, la relativa cella si toglie di torno
conj = conj .. '! colspan="1" style="background:#e2e4c0" | infinito</br><small>infinitivo</small>\n'
conj = conj .. '| colspan="1" | ' .. inf .. '\n'
conj = conj .. '|-\n'
end
conj = conj .. '! colspan="1" style="background:#e2e4c0" | gerundio</br><small>gerundio</small>\n'
conj = conj .. '| colspan="3" | ' .. ger .. '\n'
conj = conj .. '|-\n'
conj = conj .. '! colspan="1" style="background:#e2e4c0" | participio passato</br><small>participio</small>\n'
conj = conj .. '| colspan="3" | ' .. pp .. '\n'
conj = conj .. '|-\n'
conj = conj .. '|-\n! colspan="1" rowspan="2" style="background:#C0C0C0" | persona\n'
conj = conj .. '! colspan="3" style="background:#C0C0C0" | singolare\n'
conj = conj .. '! colspan="3" style="background:#C0C0C0" | plurale\n'
conj = conj .. '|-\n! style="background:#C0C0C0;width:12.5%" | prima\n'
conj = conj .. '! style="background:#C0C0C0;width:12.5%" | seconda\n'
conj = conj .. '! style="background:#C0C0C0;width:12.5%" | terza\n'
conj = conj .. '! style="background:#C0C0C0;width:12.5%" | prima\n'
conj = conj .. '! style="background:#C0C0C0;width:12.5%" | seconda\n'
conj = conj .. '! style="background:#C0C0C0;width:12.5%" | terza\n'
conj = conj .. '|-\n! style="background:#c0cfe4" colspan="1" | indicativo</br><small>indicativo</small>\n'
conj = conj .. '! style="background:#c0cfe4" | yo\n'
conj = conj .. '! style="background:#c0cfe4" | tú</br>vos\n'
conj = conj .. '! style="background:#c0cfe4" | él/ella</br>usted\n'
conj = conj .. '! style="background:#c0cfe4" | nosotros</br>nosotras\n'
conj = conj .. '! style="background:#c0cfe4" | vosotros</br>vosotras\n'
conj = conj .. '! style="background:#c0cfe4" | ellos/ellas</br>ustedes\n|-\n'
conj = conj .. '! style="height:3em;background:#c0cfe4" colspan="1" | presente</br><small>presente</small>\n'
conj = conj .. '|' .. me .. pres1s .. '\n|' .. te .. pres2s .." <sup><small>tú</small></sup></br>".. te .. pres2sform .." <sup><small>vos</small></sup>".. '\n|' .. se .. pres3s .. '\n|' .. nos .. pres1p .. '\n|' .. os .. pres2p .. '\n|' .. se .. pres3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | imperfetto</br><small>pretérito imperfecto o copretérito</small>\n'
conj = conj .. '|' .. me .. imperf1s .. '\n|' .. te .. imperf2s .. '\n|' .. se .. imperf3s .. '\n|' .. nos .. imperf1p .. '\n|' .. os .. imperf2p .. '\n|' .. se .. imperf3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | preterito</br><small>pretérito indefinito</small>\n'
conj = conj .. '|' .. me .. prem1s .. '\n|' .. te .. prem2s .. '\n|' .. se .. prem3s .. '\n|' .. nos .. prem1p .. '\n|' .. os .. prem2p .. '\n|' .. se .. prem3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | futuro</br><small>futuro</small>\n'
conj = conj .. '|' .. me .. fut1s .. '\n|' .. te .. fut2s .. '\n|' .. se .. fut3s .. '\n|' .. nos .. fut1p .. '\n|' .. os .. fut2p .. '\n|' .. se .. fut3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | condizionale</br><small>potencial o condicional</small>\n'
conj = conj .. '|' .. me .. cond1s .. '\n|' .. te .. cond2s .. '\n|' .. se .. cond3s .. '\n|' .. nos .. cond1p .. '\n|' .. os .. cond2p .. '\n|' .. se .. cond3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | passato prossimo</br><small>pretérito perfecto o antepresente</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. paspros.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. paspros1s .. '||' .. te .. paspros2s .. '||' .. se .. paspros3s .. '||' .. nos .. paspros1p .. '||' .. os .. paspros2p .. '\n|' .. se .. paspros3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | trapassato prossimo</br><small>pretérito pluscuamperfecto o antecopretérito</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. trappros.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. trappros1s .. '\n|' .. te .. trappros2s .. '\n|' .. se .. trappros3s .. '\n|' .. nos .. trappros1p .. '\n|' .. os .. trappros2p .. '\n|' .. se .. trappros3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | trapassato remoto</br><small>pretérito anterior o antepréterito</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. traprem.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. traprem1s .. '\n|' .. te .. traprem2s .. '\n|' .. se .. traprem3s .. '\n|' .. nos .. traprem1p .. '\n|' .. os .. traprem2p .. '\n|' .. se .. traprem3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | futuro anteriore</br><small>futuro compuesto o perfecto</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. futant.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. futant1s .. '\n|' .. te .. futant2s .. '\n|' .. se .. futant3s .. '\n|' .. nos .. futant1p .. '\n|' .. os .. futant2p .. '\n|' .. se .. futant3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="height:3em;background:#c0cfe4" colspan="1" | condizionale passato</br><small>potencial o condicional compuesto</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. condpas.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. condpas1s .. '\n|' .. te .. condpas2s .. '\n|' .. se .. condpas3s .. '\n|' .. nos .. condpas1p .. '\n|' .. os .. condpas2p .. '\n|' .. se .. condpas3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="background:#c0e4c0" colspan="1" | congiuntivo</br><small>subjuntivo</small>\n'
conj = conj .. '! style="background:#c0e4c0" | yo\n'
conj = conj .. '! style="background:#c0e4c0" | tú</br>vos\n'
conj = conj .. '! style="background:#c0e4c0" | él/ella</br>usted\n'
conj = conj .. '! style="background:#c0e4c0" | nosotros</br>nosotras\n'
conj = conj .. '! style="background:#c0e4c0" | vosotros</br>vosotras\n'
conj = conj .. '! style="background:#c0e4c0" | ellos/ellas</br>ustedes\n|-\n'
conj = conj .. '! style="height:3em;background:#c0e4c0" | presente</br><small>presente</small>\n'
conj = conj .. '|' .. me .. cong1s .. '\n|' .. te .. cong2s .." <sup><small>tú</small></sup></br>".. te .. cong2sform .." <sup><small>vos</small></sup>".. '\n|' .. se .. cong3s .. '\n|' .. nos .. cong1p .. '\n|' .. os .. cong2p .. '\n|' .. se .. cong3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0e4c0" rowspan="2" | imperfetto</br><small>imperfecto o copretérito</small>\n'
conj = conj .. '|' .. me .. congimp1s_ra .. '\n|' .. te .. congimp2s_ra .. '\n|' .. se .. congimp3s_ra .. '\n|' .. nos .. congimp1p_ra .. '\n|' .. os .. congimp2p_ra .. '\n|' .. se .. congimp3p_ra .. '\n|-\n'
conj = conj .. '|' .. me .. congimp1s_se .. '\n|' .. te .. congimp2s_se .. '\n|' .. se .. congimp3s_se .. '\n|' .. nos .. congimp1p_se .. '\n|' .. os .. congimp2p_se .. '\n|' .. se .. congimp3p_se .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0e4c0" rowspan="1" | futuro</br><small>futuro</small>\n'
conj = conj .. '|' .. me .. congfut1s .. '\n|' .. te .. congfut2s .. '\n|' .. se .. congfut3s .. '\n|' .. nos .. congfut1p .. '\n|' .. os .. congfut2p .. '\n|' .. se .. congfut3p .. '\n'
conj = conj .. '|-\n! style="height:3em;background:#c0e4c0" colspan="1" | passato</br><small>perfecto</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. congpas.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. congpas1s .. '\n|' .. te .. congpas2s .. '\n|' .. se .. congpas3s .. '\n|' .. nos .. congpas1p .. '\n|' .. os .. congpas2p .. '\n|' .. se .. congpas3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="height:3em;background:#c0e4c0" colspan="1" | trapassato</br><small>pluscuamperfecto</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. congtrap.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. congtrap1s .. '\n|' .. te .. congtrap2s .. '\n|' .. se .. congtrap3s .. '\n|' .. nos .. congtrap1p .. '\n|' .. os .. congtrap2p .. '\n|' .. se .. congtrap3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! style="height:3em;background:#c0e4c0" colspan="1" | futuro compuesto o perfecto</br><small>pluscuamperfecto</small>\n'
conj = conj .. '| style="background:#F0F0F0" colspan="6" | <div class="NavFrame" style="border:0"><div class="NavHead">'.. congfutant.. '</div><div class="NavContent">\n {| style="background:#F0F0F0;border-collapse:separate;border-spacing:2px;width:100%" class="inflection-table" \n |- \n | ' .. me .. congfutant1s .. '\n|' .. te .. congfutant2s .. '\n|' .. se .. congfutant3s .. '\n|' .. nos .. congfutant1p .. '\n|' .. os .. congfutant2p .. '\n|' .. se .. congfutant3p .. '\n |- \n |}</div></div>\n'
conj = conj .. '|-\n! colspan="1" rowspan="2" style="height:3em;background:#e4d4c0" | imperativo</br><small>imperativo</small>\n'
conj = conj .. '! style="background:#e4d4c0" | yo\n'
conj = conj .. '! style="background:#e4d4c0" | tú</br>vos\n'
conj = conj .. '! style="background:#e4d4c0" | él/ella</br>usted\n'
conj = conj .. '! style="background:#e4d4c0" | nosotros</br>nosotras\n'
conj = conj .. '! style="background:#e4d4c0" | vosotros</br>vosotras\n'
conj = conj .. '! style="background:#e4d4c0" | ellos/ellas</br>ustedes\n|-\n'
conj = conj .. '|-\n|\n'
conj = conj .. '|' .. imp2s.." <sup><small>tú</small></sup></br>".. imp2sform .." <sup><small>vos</small></sup>".. '\n|' .. imp3s .. '\n|' .. imp1p .. '\n|' .. imp2p .. '\n|' .. imp3p .. '\n'
conj = conj .. '|-\n'
conj = conj .. '|}'
return conj
end
function p.over(x,over,xtra)
-- Utilizzato all'interno della funzione esconj
-- Rimpiazza una voce verbale standard con quella eventualmente indicata nel template (se quest'ultimo è un link rosso, aggiunge anche la relativa categoria)
if over == nil then return x end
if over < "a" then return '' end
if xtra == 0 then return over .. " " end -- for reflexive pronouns
if over >= "a" and mw.title.new(over).exists == false then
RedCat = categorizza("Verbi spagnoli con forme da scrivere", titolo)
else
RedCat = ""
end
if RedCat > "0" then
return RedCat.. " ]"
else
return "]"
end
end
function p.wiki(x)
-- Utilizzato all'interno della funzione esconj
if x == nil then return " " end
if x == "" then return " " end
-- aggiunge la categoria link rossi
if x == (radice.. "ar") or x == (radice.. "er") or x == (radice.. "ir") then --per la voce all'infinito
if x >= "a" and mw.title.new(x).exists == false then
RedCat = categorizza("Verbi spagnoli da scrivere", titolo)
else
RedCat = ""
end
else --per tutte le altre
if x >= "a" and mw.title.new(x).exists == false then
RedCat = categorizza("Verbi spagnoli con forme da scrivere", titolo)
else
RedCat = ""
end
end
-- Rende il suo argomento un wikilink, o lo rende nullo se non definito (per facilitare la concatenazione)
if RedCat > "0" then
return RedCat.. " ]"
else
return "]"
end
end
function p.alts(x,y)
-- Utilizzato all'interno della funzione esconj
-- Aggiunge le eventuali forme alternative, se specificate nel template, separandole da quelle base con una virgola
if y == nil then return x end
if y == '' then return x end
if y > "0" then return x .. ", " .. y end
return x
end
function p.plurale(pos, str, r)
-- Utilizzato all'interno della funzione esconj
--genera automaticamente il plurale del participio passato
return str:sub(1, pos-1) .. r
end
return p