« Module:Dièse couleur web » : différence entre les versions
Modèle:Infobox_Musique_(artiste)>Od1n (ajout d'un paramètre optionnel, pour spécifier une valeur par défaut si le 1er paramètre est vide ; voir aussi la modif dans le modèle : 199529813) |
m (1 version importée) |
||
| (3 versions intermédiaires par 2 utilisateurs non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
local p = {} | local p = {} | ||
| Ligne 31 : | Ligne 26 : | ||
function p.main( frame ) | function p.main( frame ) | ||
local value = trim( | local args = frame.args | ||
local value = mw.text.trim( args[ 1 ] or '' ) | |||
if value == '' then | if value == '' then | ||
value = trim( | value = mw.text.trim( args[ 2 ] or '' ) | ||
end | end | ||
-- paramètre "echappe" à true, | -- paramètre "echappe" à true, | ||
-- pour échappement de l'éventuel "#" en début de résultat, en raison de [[phab:T14974]] | -- pour échappement de l'éventuel "#" en début de résultat, en raison de [[phab:T14974]] | ||
Version actuelle datée du 22 mars 2024 à 19:16
La documentation pour ce module peut être créée à Module:Dièse couleur web/doc
local p = {}
function p.couleur( value, echappe )
if echappe == nil then
echappe = false
end
if value:sub( 1, 1 ) == '#' then
-- déjà un code hexadécimal précédé du "#"
if echappe then
return '#' .. value:sub( 2 )
else
return value
end
elseif ( #value == 6 or #value == 3 or #value == 8 or #value == 4 ) and value:match( '^%x+$' ) then
-- code hexadécimal auquel on ajoute le "#" manquant
if echappe then
return '#' .. value
else
return '#' .. value
end
else
-- nom de couleur HTML
return value
end
end
function p.main( frame )
local args = frame.args
local value = mw.text.trim( args[ 1 ] or '' )
if value == '' then
value = mw.text.trim( args[ 2 ] or '' )
end
-- paramètre "echappe" à true,
-- pour échappement de l'éventuel "#" en début de résultat, en raison de [[phab:T14974]]
return p.couleur( value, true )
end
return p