Welcome to
TiddlyWiki5, an interactive wiki
under development in
JavaScript to run in the browser or under node.js. It is a reboot of
TiddlyWiki, the now venerable, reusable non-linear personal web notebook first released in 2004.
Over the years,
TiddlyWiki has earned an enduring role as a tool that people
love using for its rich, interactive interface to
manipulate complex data with structure that doesn't easily fit into conventional tools like spreadsheets and wordprocessors. Because people can use it without needing any complicated server infrastructure, and because it is
open source, it has bought unprecedented freedom to people to keep their precious information under their own control.
TiddlyWiki was originally created by
JeremyRuston and is now a thriving
open source project with a busy
Community of independent developers.
Usage
TiddlyWiki5 can be used on the command line to perform an extensive set of operations based on
RecipeFiles,
TiddlerFiles and
TiddlyWikiFiles.
Usage:
node tiddlywiki.js <options>
The command line options are processed sequentially from left to right. Processing pauses during long operations, like loading a
recipe file and all the subrecipes and
tiddlers that it references. The following options are available:
--recipe <filepath> | Loads a specfied .recipe file |
--load <filepath> | Load additional tiddlers from TiddlyWiki files (.html ), .tiddler , .tid , .json or other files |
--savewiki <dirpath> | Saves all the loaded tiddlers as a single file TiddlyWiki called index.html and an RSS feed called index.xml |
--savetiddler <title> <filename> [<type>] | Save an individual tiddler as a specified MIME type, defaults to text/html |
--savetiddlers <outdir> | Saves all the loaded tiddlers as .tid files in the specified directory |
--servewiki <port> | Serve the cooked TiddlyWiki over HTTP at / |
--servetiddlers <port> | Serve individual tiddlers over HTTP at /tiddlertitle |
--wikitest <dir> | Run wikification tests against the tiddlers in the given directory |
--dumpstore | Dump the TiddlyWiki store in JSON format |
--dumprecipe | Dump the current recipe in JSON format |
--verbose | verbose output, useful for debugging |
Examples
This example loads the tiddlers from a
TiddlyWiki HTML file and makes them available over HTTP:
node tiddlywiki.js --load mywiki.html --servewiki 127.0.0.1:8000
This example cooks a
TiddlyWiki from a recipe:
node tiddlywiki.js --recipe tiddlywiki.com/index.recipe --savewiki tmp/
This example ginsus a
TiddlyWiki into its constituent tiddlers:
node tiddlywiki.js --load mywiki.html --savetiddlers tmp/tiddlers
Notes
--servewiki
and
--servertiddlers
are for different purposes and should not be used together. The former is for
TiddlyWiki core developers who want to be able to edit the
TiddlyWiki source files in a text editor and view the results in the browser by clicking refresh; it is slow because it reloads all the
TiddlyWiki JavaScript files each time the page is loaded. The latter is for experimenting with the new wikification engine.
--wikitest
looks for
*.tid
files in the specified folder. It then wikifies the tiddlers to both "text/plain" and "text/html" format and checks the results against the content of the
*.html
and
*.txt
files in the same directory.
Testing
test.sh
contains a simple test script that cooks the main tiddlywiki.com recipe and compares it with the results of the old build process (ie, running cook.rb and then opening the file in a browser and performing a 'save changes' operation). It also runs a series of wikifications tests that work off the data in test/wikitests/
.
Planned WikiText Features
It is proposed to extend the existing
TiddlyWiki wikitext syntax with the following extensions
1. Addition of
**bold**
character formatting
2. Addition of
`backtick for code`
character formatting
4. Addition of
WikiCreole-style forced line break, e.g.
force\\linebreak
3. Addition of
WikiCreole-style headings, e.g.
==Heading
5. Addition of
WikiCreole-style headings in tables, e.g.
|=|=table|=header|
6. Addition of white-listed HTML tags intermixed with wikitext
7. Addition of
WikiCreole-style pretty links, e.g.
[[description -> link]]
8. Addition of multiline macros, e.g.
<<myMacro
param1: Parameter value
param2: value
"unnamed parameter"
param4: ((
A multiline parameter that can go on for as long as it likes
and contain linebreaks.
))
>>
This readme
file was automatically generated by TiddlyWiki5