Sometimes I run into problems when converting things into plugins, that I did not intend to be plugins at first.
Apart from stupid namings I made the main problem is that shadowtiddlers do not appear in lists if they are not explicitly invited.
Is there a cure to track down these problems?
btw: Why are shadowtiddlers treated different than normal systemtiddlers here?
That is a design decision.
Plugin tiddlers are treated as “shadow tiddlers”. Internally they are in a physically different “shadow- store”. Independent of their name. The shadow store is built at wiki startup and then is immutable.
User created tiddlers prefixed with $:/
are system tiddlers, which are stored in the “wiki store”.
Tiddlers prefixed $:/
are excluded from standard lists. (A design decision)
Since most plugin tiddlers are prefixed with $:/
(by convention) they become system tiddlers if they are modified by users.
If they are modified, they will be cloned into the “wiki-store”. The “wiki-store” takes precedence over the “shadow store”. – The user always wins
If an overwritten (shadow)tiddler is deleted, the real shadow tiddler can take over again. – That’s one of the major mechanisms that make TW so “fault resistent”.
Since the shadow-store and the wiki-store are physically separated, we need a mechanism to “invite” shadows into lists. That’s
-
[all[shadows]]
… which only shows the shadows. -
[all[shadows+tiddlers]]
shows both stores and overwritten shadows will win
That’s the reason, why shadows need to be treated differently.
hope that makes sense
From that point of view it makes complete sense … it only starts to be a problem when a tiddler is turned into a plugin/shadow-tiddler and does not appear in a list anymore where it is needed - there it would be more usefull to treat shadows and system to appear in lists alike.
There is a discussion going on, Using tiddlywiki documentation when contained in a plugin which has the same problem.
So there may be light on the horizon