Module:Dièse couleur web

Cette page fait l’objet d’une mesure de semi-protection étendue.
Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 12 janvier 2022 à 09:48 et modifiée en dernier par Od1n (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

 Documentation[voir] [modifier] [historique] [purger]

Ce module Lua est utilisé par le modèle {{Dièse couleur web}}.

local p = {}

function p.couleur( value )
    if value:sub( 1, 1 ) == '#' then
        return value -- déjà un code hexadécimal précédé du "#"
    elseif ( #value == 6 or #value == 3 or #value == 8 or #value == 4 ) and value:match( '^%x+$' ) then
        return '#' .. value -- code hexadécimal auquel on ajoute le "#" manquant
    else
        return value -- nom de couleur HTML
    end
end

function p.main( frame )
    local value = mw.text.trim( frame.args[ 1 ] )
    local result = p.couleur( value )
    -- échappement de l'éventuel "#" en début de résultat, en raison de [[phab:T14974]]
    if result:sub( 1, 1 ) == '#' then
        result = '#' .. result:sub( 2 )
    end
    return result
end

return p