Module:Formatage du titre

 Documentation

Ce module est utilisé par le modèle {{Titre en italique}}, ainsi que par les briques d'infobox {{Infobox V3/Début}} et Module:Infobox/Titre.

Page à prévisualiser pour vérifier les modifications : Discussion module:Formatage du titre/Test.

Voir aussi

local yesno = require( 'Module:Yesno' )local p = {}function p.formatTitle(frame)    local args = frame.args    local title    if args.title then        title = mw.title.new(args.title)    else        title = mw.title.getCurrentTitle()    end    -- Découpe le titre en trois parties :    -- 1. prefix = espace de noms et éventuellement page mère (si c'est une sous-page)    -- 2. mainPart = partie à mettre en forme (page ou sous-page, sans partie entre parenthèses)    -- 3. disambig = partie entre parenthèses    local prefix = ''    if title.nsText ~= '' then        prefix = title.nsText .. ':'    end    if title.isSubpage then        prefix = prefix .. title.baseText .. '/'    end    local mainPart = title.subpageText    local disambig = ''    local disambigStart = mainPart:find(' %(.+%)$')    if disambigStart then        disambig = mainPart:sub(disambigStart)        mainPart = mainPart:sub(1, disambigStart - 1)    end    -- Recollement des trois parties en insérant une balise de langue et l'italique si besoin.    local lang = args.lang    if lang and lang ~= '' then        mainPart = '<span lang="' .. lang .. '">' .. mainPart .. '</span>'    end    local italic = args.italic    if italic and italic ~= '' and yesno(italic) then        mainPart = '<i>' .. mainPart .. '</i>'    end    return prefix .. mainPart .. disambigend--[[Change le format de la partie principale d'un titre de page.Les changements possibles sont la mise en italique et l'ajout d'une indication de langue.Paramètres (passés via frame)  lang : si non vide, insère une balise indiquant que la partie principale du titre est dans cette langue.  italic : si non vide, met en italique la partie principale du titre.  options : deuxième paramètre passé à DISPLAYTITLE. Les valeurs possibles sont "noreplace" et "noerror".--]]function p.setDisplayTitle(frame)    local displayTitle = p.formatTitle(frame)    if displayTitle == mw.title.getCurrentTitle().prefixedText then        return ''    end    return mw.getCurrentFrame():callParserFunction('DISPLAYTITLE', displayTitle, frame.args.options)endreturn p