Module:Arbre
Ce module permet d'afficher une liste à plusieurs niveaux sous forme d'arbre. À la place des puces présentes à gauche de chaque élément dans une liste classique, il affiche des lignes connectant chaque élément à ses descendants directs. Il permet par exemple de créer des arbres généalogiques ou des cladogrammes.
Ce module est destiné à être utilisé via le modèle {{Arbre}}.
Utilisation
Fonctions exportables :
arbre(frame)
– fonction générant l'arbre. Prend un seul paramètrecontenu
, soit depuis l'appel du modèle, soit depuis l'appel du module (si le premier n'est pas présent − ce dernier cas est surtout utilisable pour du test). Pour les tests, accepte un paramètretemplatestyles
. La valeurnon
désactive l'inclusion de la balise<templatestyles>
dans le rendu.
Exemples
La syntaxe de l'arbre est une liste à puce, c'est-à-dire avec un ou plusieurs *
en début de ligne.
Note : le module conserve telles quelles toutes les lignes qui ne commencent pas par « * » ainsi que les lignes vides.
Exemple (note : ici il s'agit d'un appel direct au module, le paramètre vient de l'appel au modèle, normalement) :
{{#invoke:Arbre|arbre|contenu= * ''[[Panthera]]'' **** ''[[Panthera leo]]'' - Lion **** ''[[Panthera pardus]]'' - Léopard *** ''[[Panthera onca]]'' - Jaguar ** *** ''[[Panthera tigris]]'' - Tigre *** ''[[Panthera uncia]]'' - Panthère des neiges ou once }}
Et le résultat :
Erreur Lua à la ligne 15 : attempt to concatenate local 'data' (a nil value).
Tests
Voir Discussion module:Arbre/Test
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
--[[
Test de module pour générer des arbres (cf Modèle:Arbre début) avec
une syntaxe plus simple.
]]
-- structure
local p = {}
function p.arbre(frame)
local args = frame.args
local pargs = frame:getParent().args
local data = args[1] or pargs[1]
return "<nowiki>" .. data .. "</nowiki>"
end
-- retour
return p