[SOLVED] Transclusion de tiddler identique à {{MyTiddler}}

Bonjour :slight_smile: ,

J’aurai besoin d’afficher un tiddler de la même façon que {{MyTiddler}} comme ici. Exemple avec ce code qui ne marche evidemment pas :

<$wikify name=var text="""{{!!in_test}}""">
  {{<var>}}
</$wikify>

Code testé

  • Via filtered translusion {{{ [title<tiddler>]||<tiddler> }}}: Le problème ici est le second <tiddler> car il ne fait pas la « transclusion ».

    <$wikify name=tiddler text="""{{!!in_test}}""">
      {{{ [title<tiddler>]||<tiddler> }}}
    </$wikify>
    
  • Via transclude: affiche bien le tiddler mais le problème vient des macros qui sont exécutées dans ce tiddler qui utilise le <<currentTiddler>> du tiddler racine et non du tiddler affiché, ce qui casse tout mon affichage :\ .

    <$wikify name=tiddler text="""{{!!in_tiddler_selected}}""">
      <$transclude $tiddler=<<tiddler>> />
    </$wikify>
    

Code complet fonctionnel

  • {{{ [title<tiddler>]||template }}}: template est un tiddler contenant <$transclude <<currentTiddler>> /> se qui affiche bien le contenu de mon tiddler. Cependant cette solution me semble bien complexe et je ne suis pas sur que ce soit la « bonne pratique »
\define select-transclude-tiddler(tag:"mon_tiddler" )
	<$select field="in_test" default='none'>
		<option value="none">Select a tiddler</option>
		<$list filter='[tag[$tag$]sort[title]]'>
			<option value=<<currentTiddler>>><$view field='title'/></option>
		</$list>
	</$select>
	
	<$wikify name=tiddler text="""{{!!in_test}}""">
		{{{ [title<tiddler>]||template }}}
	</$wikify>
\end

Si quelqu’un a une autre solution, je suis preneur :slight_smile:

Merci d’avance :slight_smile:

j’ai tout cassé mon tiddlywiki :cold_face: :sob:

EDIT: Bon j’ai du repartir d’un backup et en ai profité pour versionner un peu tout ça avec git normalement ça devrait être mieux ^^

par contre je ne sais pas comment mettre en place cette fonctionnalité pour le coup

Bonjour

J’utiliserais un <$transclude mode="block"/> en ayant pris soin de filtrer avec ListWidget (ou définit avec TiddlerWidget) le tiddler sélectionné avant

1 « J'aime »

Tout simplement, Merci MatthieuM :slight_smile:

## Solution
<$list filter="[title{!!in_test}]">
	<$transclude $tiddler=<<currentTiddler>> />
</$list>