Modulo:Chiarimento

Questo è un modulo scritto in Lua. Le istruzioni che seguono sono contenute nella sottopagina Modulo:Chiarimento/man (modifica · cronologia)
Sandbox: Modulo:Chiarimento/sandbox (modifica · cronologia) · Sottopagine: lista · Test: Modulo:Chiarimento/test (modifica · cronologia · Esegui)
Modulo che implementa le funzionalità del template {{Chiarimento}}.
Ha una sottopagina CSS: Modulo:Chiarimento/styles.css.
--[[
Modulo che implementa le funzionalità del template {{Chiarimento}}.
Impedisce conflitti col software Mediawiki per evitare errori HTML.
]]
local p = {}
function p.main(frame)
local result = {}
local style = {
background = '#ffeaea',
color = '#444444'
}
frame.args[2] = '[<i>' .. (frame.args[2] or '{{{2}}}') .. '</i>]'
local sup = mw.html.create('sup')
sup
:addClass('noprint')
:tag('span')
:attr('title', frame.args[3])
:css('color', 'red')
:wikitext(frame.args[2])
-- individua le sequenze di testo separate da una riga vuota
local lines = mw.text.split(frame.args[1] or '', '\n%s*\n')
for i, v in ipairs(lines) do
-- procede alla prima sequenza e a quelle successive esistenti
if #v > 0 or i == 1 then
-- converte le andate a capo in uno spazio, come il software Mediawiki
v = mw.ustring.gsub( v, '\n', ' ' )
local span = mw.html.create('span')
span
:attr('title', frame.args[3])
:css(style)
:wikitext(v)
table.insert(result, tostring(span) .. tostring(sup))
end
end
return table.concat(result, '\n\n')
end
return p