Module:Ressources/repetition
Apparence
Fonction servant à répéter un texte (qui peut être aussi bien une seule lettre qu'une phrase entière) un certain nombre de fois.
ressources.repetition( "test", 3 )
donne : testtesttest
Un troisième paramètre sert à renseigner la couleur. Par défaut la couleur dépend de l'élément supérieur (inherit), ce qui signifie la plupart du temps que le texte sera noir.
ressources.repetition( "salut", 2, "red" )
donne : salutsalut
Enfin, le dernier paramètre définit ce que la fonction renvoie si le nombre de répétition est 0.
ressources.repetition( "hey !", 2, nil, "rien à dire" )
donne : hey !hey !
ressources.repetition( "hey !", 0, "green", "rien à dire" )
donne : rien à dire
return function( el, nbr, couleur, zero )
if nbr == 0 and zero then return zero end
local resultat = {}
if el == nil then el = "" end
if nbr == nil then nbr = 1 end
if couleur ~= nil then
local frame = mw.getCurrentFrame()
couleur = frame:expandTemplate{ title = 'Couleur', args = { couleur } }
table.insert(resultat, '<span style="color: ' .. couleur .. '">')
end
local i = 1
while i <= nbr do
table.insert(resultat, el)
i = i + 1
end
if couleur ~= nil then table.insert(resultat, '</span>') end
return table.concat(resultat, "")
end