This page is part of a static HTML representation of the TiddlyWiki at https://tiddlywiki.com/

Modes d'analyse du WikiTexte : exemples de transclusions

19 avril 2022 à 22h40

En utilisant le tiddler table-example qui contient :

|cellule une|cellule deux|
|cellule trois|cellule quatre|
dans une transclusion, alors :
ce WikiTexteaffichera ceci
1
* {{table-example}}
  • |cellule une|cellule deux| |cellule trois|cellule quatre|
2
* <div>

{{table-example}}
</div>
  • cellule unecellule deux
    cellule troiscellule quatre
3
* <$transclude tiddler=table-example/>
  • |cellule une|cellule deux| |cellule trois|cellule quatre|
4
* <$transclude tiddler=table-example></$transclude>
  • |cellule une|cellule deux| |cellule trois|cellule quatre|
5
* <$transclude tiddler=table-example>

</$transclude>
  • cellule unecellule deux
    cellule troiscellule quatre
6
* <$transclude tiddler=table-example mode=block/>
  • cellule unecellule deux
    cellule troiscellule quatre

Dans le code ci-dessus, la syntaxe de liste à puce est reconnue en mode bloc, puis son contenu est interprété en mode en ligne. Quand l'interpréteur rencontre une Transclusion en WikiTexte il utilise le mode courant pour analyser le contenu du tiddler transclus. Le tiddler d'exemple contient une définition de table qui n'est reconnue qu'en mode bloc.

De ce fait, dans la ligne n°1 ci-dessus, la syntaxe de table n'est pas reconnue. Dans la ligne n°2, la ligne vide après la balise <div> bascule l'interpréteur en mode bloc et le contenu transclus en hérite, donc la table est reconnue.

En utilisant le Widget Transclude, le mode d'analyse reste le mode en ligne (exemples des lignes n°3 et 4 ci-dessus) jusqu'à ce que la balise ouvrante soit suivie d'une ligne vide (exemple n°5 ci-dessus).

Pour voir d'autres exemples similaires, consultez Modes d'analyse du WikiTexte : exemples de macros. La seule différence est qu'ici l'exemple de la ligne n°6 utilise l'attribut mode du widget $transclude pour forcer explicitement le mode d'analyse plutôt que de de laisser le contenu de la balise le déterminer.


Dans les exemples suivants, les transclusions sont directes, au lieu d'être incluses dans des listes à puces :

ce WikiTexteaffichera ceci
1
{{table-example}}
cellule unecellule deux
cellule troiscellule quatre
2
<div>

{{table-example}}
</div>
cellule unecellule deux
cellule troiscellule quatre
3
<$transclude tiddler=table-example/>

|cellule une|cellule deux| |cellule trois|cellule quatre|

4
<$transclude tiddler=table-example></$transclude>

|cellule une|cellule deux| |cellule trois|cellule quatre|

5
<$transclude tiddler=table-example>

</$transclude>
cellule unecellule deux
cellule troiscellule quatre
6
<$transclude tiddler=table-example mode=inline/>

|cellule une|cellule deux| |cellule trois|cellule quatre|

Parmi ces exemples, seuls les deux widgets $transclude dont la balise d'ouverture n'est pas suivie d'une ligne vide ainsi que l'appel qui comporte l'attribut mode=inline (lignes n°3, 4 et 6) sont analysés en mode en ligne.

Voir aussi Modes d'analyse du WikiTexte : exemples de macros pour d'autres exemples similaires.