Module:Multiparamètres

 Documentation

Fonctions fournies par ce module :

local mwTrim = mw.text.trimlocal p = {}function p.brut( frame )    return p._main( frame, function ( item )        return item    end )endfunction p.lien( frame )    return p._main( frame, function ( item )        return '[[' .. ( ( item:sub( 1, 1 ) == ':' ) and item or ':' .. item ) .. ']]'    end )endfunction p.lienAutomatique( frame )    return p._main( frame, function ( item )        if item:find( '[', nil, true ) then            return item        else            return '[[' .. ( ( item:sub( 1, 1 ) == ':' ) and item or ':' .. item ) .. ']]'        end    end )endfunction p.categorie( frame )    return p._main( frame, function ( item )        return '[[:Catégorie:' .. item .. '|' .. item .. ']]'    end )endfunction p.utilisateur( frame )    return p._main( frame, function ( item )        return '[[Utilisateur:' .. item .. '|' .. item .. ']]'    end )endfunction p._main( frame, formatter )    local args = frame:getParent().args    local gras = ( args.gras and args.gras ~= '' )    local items = {}    for i, v in ipairs( args ) do        local item = mwTrim( v )        if item ~= '' then            item = formatter( item )            if gras then                item = '<b>' .. item .. '</b>'            end            items[ #items + 1 ] = item        end    end    local dernierSeparateur = args.et and ( ' ' .. args.et .. ' ' )    -- le paramètre "et" peut être défini à vide, exemple : [[Modèle:Module biblio/responsabilité principale]]    if args.et == '' then        dernierSeparateur = ' '    end    return mw.text.listToText( items, ', ', dernierSeparateur )endreturn p