This as it should be?
Yes. Don’t forget that {{Foo}}
always sets the currentTiddler
variable; it is short for <$tiddler tiddler="Foo"><$transclude $tiddler="Foo"/></$tiddler>
.
<$transclude tiddler=Foo/>
The transclude widget always transcludes what <<currentTiddler>>
is at that moment.
The “tiddler” parameter in that widget is the “template tiddler” to use when transcluding the “current” tiddler.
So your transclusion is transcluding Bar, using Foo as a template.
So the content of Foo is rendered when Bar is rendered, but Bar is the current tiddler. So the content of Foo is rendered in that context (current tiddler = Bar).
i.e. <$transclude tiddler=Foo/>
gives the same result as {{ || Foo }}
(well, the transclude widget allows choosing a “mode”, block or inline)
The messy thoughts in my head about all of that: [tw5] Heads up: Transclude Widget does not behave as per documentation