Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.
Version datée du 22 février 2026 à 08:56 par Hiob (discussion | contributions) (Page créée avec « local p = {} function p.regle(frame) local args = frame:getParent().args local numero = mw.text.trim(args[1] or "") local texte = mw.text.trim(args[2] or "") if numero == "" then return "" end -- Détection du niveau selon le nombre de points local _, points = string.gsub(numero, "%.", "") local niveau = points + 1 -- niveau 1 = "1" (section) -- niveau 2 = "1.1" (sous-section) -- niveau 3 = "1.1.1" (article)... »)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)

La documentation pour ce module peut être créée à Module:Règle/doc

local p = {}

function p.regle(frame)
    local args   = frame:getParent().args
    local numero = mw.text.trim(args[1] or "")
    local texte  = mw.text.trim(args[2] or "")

    if numero == "" then return "" end

    -- Détection du niveau selon le nombre de points
    local _, points = string.gsub(numero, "%.", "")
    local niveau = points + 1
    -- niveau 1 = "1"      (section)
    -- niveau 2 = "1.1"    (sous-section)
    -- niveau 3 = "1.1.1"  (article)

    niveau = math.min(niveau, 3)

    -- Ancre propre : remplace les points par des tirets
    local ancre = "r-" .. string.gsub(numero, "%.", "-")

    -- Construction HTML
    local div = mw.html.create("div")
    div:addClass("regle-item")
       :addClass("regle-niveau-" .. niveau)
       :attr("id", ancre)

    -- Lien auto-référent sur le numéro
    div:tag("a")
       :addClass("regle-numero")
       :attr("href", "#" .. ancre)
       :wikitext(\u{00A0}" .. numero)
       :done()

    div:tag("span")
       :addClass("regle-texte")
       :wikitext(texte)
       :done()

    return tostring(div)
end

return p
Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.