Hi FBachofner, 

TiddlyWiki has 3 basic types of tiddlers. 

 - Standard
 - System
 - Shadow

Standard tiddlers can be seen by everyone. They basically create "the 
content" of a tiddly wiki which can be read / "consumed" by users.

System tiddlers are an easy way to hide "framework tiddlers" form users. 
"Framework tiddlers" are created by content creators, that produce wiki's 
for others. The framework most of the time, should make work easier for the 
creator, but are not necessarily useful, for newbie users. To make the 
process easy for creators, System tiddlers use a $:/ prefix and are 
excluded from standard list filters, that are used by the TiddlyWiki core. 
So System tiddlers stay out of the way. 

Shadow tiddlers are also prefixed with $:/. So they are invisible by 
default. The whole TW core UI is built with shadow tiddlers. The power of 
shadow tiddlers is, that they can be overwritten, but _not_ deleted. So 
they can be changed by experienced users (eg: plugin authors). If a shadow 
tiddler is modified, it automatically becomes a System tiddler. So it stays 
out of the way, but allows the creator, to change the standard TW 
behaviour. The good thing with modified shadow tiddlers is: "If you mess up 
the function, you just delete the modified tiddler and the shadow tiddler 
takes over again" ... it was just overwritten! 

-----

If you open the ControlPanel: Info: Basic tab 
<http://tiddlywiki.com/#%24%3A%2FControlPanel>  you get a list of the 
different types, with numbers. There is the advanced search icon, which 
shows you the lists. ...

-----

Back to your question about the "best practice" or as you wrote the 
"preferred" way: 

If you create content for others, System tiddlers are a good way for you to 
"hide" stuff, that doesn't make sense to your users, but you need it to 
make your live easier. IMO you can safely hide it. 

In my opinion, hiding *content*, that makes sense for your users, generally 
is a bad idea. .... So you should really just hide your "framework stuff" 
from them.

Example: 
If you need eg: svg images, that you just "transclude into other tiddlers": 
*don't 
hide them*. It just makes your work harder and it has absolutely no impact 
on your users. Those images may be never changed again, so they will be 
listed at the very end of every list, or even fall out, if lists are 
limited. ... If you change them after 2 years, the image pops up and your 
users just see: "Ahhh, the image xyz.svg was changed." ... They'll have a 
short look at the new content and *get new valuable information*, without 
any additional work for you. If you would have hidden that image file you'd 
have to make an announcement, that you have changed that file. ... Just 
more work, which is probably never done ;)

As I wrote: "Hiding content is a bad idea" ... 

 - If you need to hide *content *from your users, why do you bother to 
create it?
* - Framework *that is confusing for newbies, should be hidden. 

--------------

Tobias mentioned some special prefixes: 

*$:/_/my tuff*
*$:/_FB/my tuff*

The underline in: *$:/_ *just takes care, that your system tiddlers is 
automatically at the top of the list, if you use standard sort order. ... 
This is a nice naming convention, that has proven to be useful. There is no 
special code in the core. Just a naming convention!

A second naming convention is called "namespaces" eg: $:/_FB/ ... Which 
would allow you to "namespace" your own system tiddlers and make them 
unique. So you can avoid duplicate names for common names. eg: settings


----- Ignore the following text if you don't want to dig deeper ;)

We use namespaces a lot! eg: core shadow tiddlers:

 - $:/core/xyz .. is used for the TW core stuff
 - $:/config/abc .. is used for configuration tiddlers
 - $:/language/... .. is used for translations  
 - ... and so on. 

Plugins have a "special naming convention" ... no law ... just a convention!

$:/plugins/<authorName>/<pluginName/code.js
$:/plugins/<authorName>/<pluginName/readme, license, content, content ... 

eg:

$:/plugins/tiddlywiki/browser-sniff 
<http://tiddlywiki.com/#%24%3A%2Fplugins%2Ftiddlywiki%2Fbrowser-sniff> 

see the ControlPanel: Plugins tab for more info. ... Plugins are *shadow 
tiddlers*. 


hope that helps!

have fun!
mario

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywiki@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/7566615f-4ca1-4370-a6c0-aab9699404b2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to