Tiddlers can be stored in text files in several different formats. Files containing single tiddlers can also have an auxiliary .meta
file formatted as a sequence of name:value pairs:
title: TheTitle
modifier: someone
TiddlyWeb-style .tid files
These files consist of a sequence of lines containing name:value pairs, a blank line and then the text of the tiddler. For example:
title: MyTiddler
modifier: Jeremy
This is the text of my tiddler.
Note that many text editors require that files include a terminating newline. If you want to avoid including the terminating newline in the text of the tiddler you can use this alternative syntax:
title: MyTiddler
modifier: Jeremy
text: This is the text of my tiddler.
The ContentType application/x-tiddler
is used internally for these files
TiddlyWiki <DIV>
.tiddler files
In TiddlyWiki 5, *.tiddler
files look like this:
<div title="AnotherExampleStyleSheet" modifier="blaine" created="201102111106" modified="201102111310" tags="examples" creator="psd">
<pre>Note that there is an embedded <pre> tag, and line feeds are not escaped.
And, weirdly, there is no HTML encoding of the body.</pre>
</div>
These *.tiddler
files are not exactly the same as the tiddlers inside a TiddlyWiki HTML file where they are HTML encoded.
Older *.tiddler
files more closely matched the store format used by TiddlyWiki at the time:
<div tiddler="AnotherExampleStyleSheet" modifier="JeremyRuston" modified="200508181432" created="200508181432" tags="examples">This is an old-school .tiddler file, without an embedded <pre> tag.\nNote how the body is "HTML encoded" and new lines are escaped to \\n</div>
The ContentType application/x-tiddler-html-div
is used internally for these files
TiddlyWeb-style JSON files
These files are a straightforward array of hashmaps of name:value
properties. All field values must be specified as strings.
For example:
[
{
"title": "First Tiddler",
"text": "Text of first tiddler",
"tags": "one two [[t h r e e]]"
},{
"title": "Second Tiddler",
"text": "Text of second tiddler",
"modified": "20150216171751154"
}
]
The ContentType application/json
is used internally for these files.
Note that JSON files that do not conform to the tiddler structure will instead be imported as a single tiddler containing the JSON data.
New JSON-based format for TiddlyWiki HTML files
The new format for TiddlyWiki HTML files embeds the tiddlers in JSON format within a script tag:
<script class="tiddlywiki-tiddler-store" type="application/json">[
{"title": "A","text": "One"},
{"title": "B","text": "Two"}
]</script>
Old DIV-based format for TiddlyWiki HTML files
TiddlyWiki Classic and TiddlyWiki 5 prior to version v5.2.0 stored tiddlers encoded in <DIV>
format.
For TiddlyWiki to import an unencrypted DIV-based HTML file, it requires a <div id="storeArea">
containing tiddler DIVs as explained above. For example:
<div id="storeArea">
<div created="20130302085406905" modified="20130302084548184" tags="Examples" title="A tiddler title">
<pre>HTML encoded text of tiddler
</pre>
</div>
<div created="20140315085406905" modified="20140321084548184" tags="One Two [[Three with Space]]" title="Another title" customfield="field value">
<pre>Text of this tiddler
</pre>
</div>
</div>