La documentation pour ce module peut être créée à Module:passe-partout/Documentation
-- Test de modèle au succès incertain, qui créerait tout seul les catégories
-- d'une page, et donc permettrait de se passer théoriquement des paramètres de
-- code langue dans les cas les plus courants
local b = require('Module:bases')
local l = require('Module:langues')
local tri = require('Module:clé de tri2')
local page = mw.title.getCurrentTitle()
local p = {}
p.article = {}
p.clefs = {}
function parse()
local texte = page:getContent()
local lignes = mw.text.split( texte, "" )
local article = {}
article.langues = {}
article.contextes = {}
article.clefs = {}
local langue = ''
for i, ligne in ipairs( lignes ) do
-- Section de langue !
local s, e, tmp_langue, clef = mw.ustring.find( ligne, "== *\{\{langue\|(+)\|?(.*)\}\} *==" )
if tmp_langue then
langue = tmp_langue
table.insert( article.langues, tmp_langue)
article.contextes = {}
if clef ~= "" then
article.clefs = clef
end
end
-- Modèle de contexte sur une ligne de définition ?
local s, e, tmp_contexte = mw.ustring.find( ligne, "# *\{\{C\|(+)\}\}" )
if tmp_contexte then
-- Sépare chaque contexte
local contextes = mw.text.split( tmp_contexte, "\|" )
if langue ~= "" then
for i, contexte in ipairs( contextes ) do
contexte = mw.text.trim( contexte )
table.insert( article.contextes, contexte )
end
end
end
end
return article
end
function donne_les_clefs( langues, clefs )
local titre = page.text
local trousseau = {}
for i, langue in ipairs( langues ) do
trousseau = clefs or tri.clef( titre, langue ) or titre
end
return trousseau
end
-- Parse les pages (seulement si pages de contenu)
if b.page_de_contenu() or page.fullText == 'Utilisateur:Darkdadaah/Test/Délangage/test' then
p.article = parse()
p.clefs = donne_les_clefs( p.article.langues, p.article.clefs )
end
return p