« Modèle:Abbr » : différence entre les versions
De Oniropædia
Aller à la navigationAller à la recherche
m (Essai de double ancre) |
m (Correction d'un saut de ligne erroné après la zone de commentaire) |
||
(8 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
<noinclude>{{Indexation|Composant d'article|Modèle}}{{Syntaxe}}</noinclude>{{#switch: {{lc:{{PAGENAME}}}} | <noinclude>{{Indexation|Composant d'article|Modèle}}{{Syntaxe}}</noinclude>{{#switch: {{lc:{{PAGENAME}}}} | ||
|abbr={{#if:{{{def|}}} | |abbr=<!-- | ||
| | {{#if:{{{def|}}}|;<span id="{{{idlink|{{{abbr|{{{1|}}}}}}}}}">{{{abbr|{{{1|}}}}}}</span>:{{{title|{{{2|}}}}}} | ||
;<span id=" | |{{#if:{{{lien|}}}|[[Abréviations#{{{abbr|{{{1|}}}}}}|{{{abbr|{{{1|}}}}}}]]|}}}}--> | ||
|{{#if:{{{lien|}}}|[[Abréviations#{{{abbr|{{{1|}}}}}}|{{{abbr|{{{1|}}}}}}]]|}}}} | |||
|abréviation | |abréviation | ||
|abréviations={{#ifexpr: {{isDef|{{{abbr|{{{1|}}}}}}}} and {{isDef|{{{title|{{{2|}}}}}}}} | |abréviations={{#ifexpr: {{isDef|{{{abbr|{{{1|}}}}}}}} and {{isDef|{{{title|{{{2|}}}}}}}} | ||
| | |<dl>{{#foreach:idlink$n$| | ||
<dt><span id="{{{idlink$n$}}}">{{{idlink$n$}}}</span></dt> | |||
}}<dt><span id="{{{abbr|{{{1|}}}}}}">{{{abbr|{{{1|}}}}}}</span></dt><dd>{{{title|{{{2|}}}}}}</dd></dl> | |||
|<span style="color:red;">'''Attention !''' Paramètrage incomplet : <nowiki>{{</nowiki>abbr{{#if:{{{abbr|{{{1|}}}}}} | |<span style="color:red;">'''Attention !''' Paramètrage incomplet : <nowiki>{{</nowiki>abbr{{#if:{{{abbr|{{{1|}}}}}} | ||
||{{{abbr|{{{1|}}}}}}||''Abbréviation''}}{{#if:{{{title|{{{2|}}}}}} | ||{{{abbr|{{{1|}}}}}}||''Abbréviation''}}{{#if:{{{title|{{{2|}}}}}} | ||
|{{{title|{{{2|}}}}}}||''Signification de l'abbréviation''}}<nowiki>}}</nowiki></span>}} | |{{{title|{{{2|}}}}}}||''Signification de l'abbréviation''}}<nowiki>}}</nowiki></span>}} | ||
|#default={{#if: {{{abbr|{{{1|}}}}}}|[[Abréviations#{{{abbr|{{{1|}}}}}}|{{{abbr|{{{1|}}}}}}]]|<span style="color:red;">'''Attention !''' Paramètre manquant</span>}} | |#default={{#if: {{{abbr|{{{1|}}}}}}|[[Abréviations#{{{abbr|{{{1|}}}}}}|{{{abbr|{{{1|}}}}}}]]|<span style="color:red;">'''Attention !''' Paramètre manquant</span>}} | ||
}} | }}<!-- | ||
Voici un mini explicatif du code ci-dessus, pour ceux qui voudrait comprendre : | |||
Par défaut : ce modèle insère un lien vers l'article Abréviation avec comme point d'ancrage le nom de l'abréviation/acronyme. | |||
A l'aide du #switch wiki nous détectons le nom de la page courante. Il y a en effet 3 noms de pages d'articles qui seront détectés comme spécifique par ce modèle : abbr (dans toutes ses variantes de case), abréviation et abréviations. | |||
Voici ce qui est prévu par ce modèle : | |||
* Article 'abbr' : cette page contient des containers de texte permettant de définir les abréviations comme id de ceux-ci (appel avec le paramètre |def), il est aussi possible d'y définir un lien vers l'article abréviation avec comme point d'ancrage l'abréviation (appel avec le paramètre |lien) | |||
* Articles 'Abréviation' et 'Abréviations' (j'ai en effet souhaité bloqué les deux articles en cas de renommage pour mise au singulier, et j'utilise abondamment le dernier) : cette page contient sous forme de liste de description (<dl><dt>...</dt><dd>...</dd></dt></dl>) l'ensemble des abréviations définis dans ce site. | |||
Pour ce faire, je vérifie que l'appel à la fonction est correcte (grâce aux isDef) et que cela soit via un appel par arguments nommés ou par position (1 et 2). Si ce n'est pas le cas, message d'erreur (cf. span style="color:red;"), sinon je crée une liste de description (<dl>...</dl>), avec comme valeurs d'ancrage les différents idlink les titres de description(<dt id="idlink">...</dt>). La description (<dd>...</dd>) concluant le tout avec comme titre le champ abbr (qui est lui-même point d'ancrage). | |||
Limitation connue : il n'y a aucune vérification quand à l'unicité d'un idlink, ainsi que du abbr durant l'appel et la mise ne place. | |||
Cette tâche est laissé aux rédacteurs de la page, qui doivent justement vérifier que celle-ci n'a pas d'erreur. | |||
--> |
Dernière version du 8 juillet 2008 à 17:24
La syntaxe et l’éventuel exemple de l’utilisation de ce modèle sont situés sur sa page de discussion. Vous pouvez néanmoins ajouter des questions et commentaires à la suite de l’aide.