Modulo:Chiarimento: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
elimino controllo non più necessario, la nota nel tag sup è stata portata fuori
miglioro il riconoscimento e la gestione degli elenchi, da un'idea di Utente:Horcrux
 
(2 versioni intermedie di uno stesso utente non sono mostrate)
Riga 7:
 
function p.main(frame)
local resultret = {}
local substringargs = falseframe:getParent().args
local stylestyles = {'Modulo:Chiarimento/styles.css'
 
background = '#ffeaea',
color = '#444444'
}
frame.args[2] = '&#91;<i>' .. frame.args[2] .. '</i>&#93;'
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(mw.text.trim(frame.args[1]) or ''), '\n%s*\n')
for ik, v in ipairs(lines) do
local sub_result = {}
-- individua le sottosequenze separate da un'andata a capo
local sublines = mw.text.split( v, '\n' )
for _i, line in ipairs(sublines) do
local prefix = ''
local firstline = k == 1 and i == 1
if substring then
-- cerca e preserva escapei caratteri (*, :, #) a inizio sottosequenza con le
-- dovute precauzioni alla prima sequenza assoluta per [[phab:T14974]]
prefix = mw.ustring.match( line, '^[%*:%#]+') or ''
lineif =not firstline or mw.ustring.gsubmatch(sublines[2] lineor '', '^[%*:%#]+', '') )then
prefix = mw.ustring.match( line, '^[%*:%#]+') or ''
if firstline and prefix ~= '' then
prefix = '\n' .. prefix
end
line = mw.ustring.gsub(line, '^[%*:%#]+', '')
end
local span = mw.html.create('span')
span
:attraddClass('titlechiarimento', frame.args[3])
:cssattr(style'title', args[3])
:wikitext(line)
table.insert(sub_result,sublines[i] = prefix .. tostring(span))
substring = true
table.insert(sub_result, prefix .. tostring(span))
end
sub_result =table.insert(ret, table.concat(sub_resultsublines, '\n'))
table.insert(result, sub_result)
end
 
return table.concat(result, '\n\n') .. tostring(sup)
-- genera il testo in apice tra parentesi quadre
frame.args[2] = '&#91;<i>' .. frame.(args[2] or '') .. '</i>&#93;'
local sup = mw.html.create('sup')
sup
:addClass('noprint chiarimento-apice')
:attr('title', frame.args[3])
:wikitext(frame.args[2])
 
return frame:extensionTag{
name = 'templatestyles',
args = {src = styles}
return } .. table.concat(resultret, '\n\n') .. tostring(sup)
end