1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-27 03:57:21 +00:00
A self-contained JavaScript wiki for the browser, Node.js, AWS Lambda etc.
Go to file
Jeremy Ruston 2323b15728 Cleaning up git
Aaargh, it seems that github tried to be smart when I copied files from
another repo
2011-12-03 11:50:11 +00:00
js Fixed problem with non-standard tiddler types (e.g. .jar) 2011-12-03 11:38:57 +00:00
node_modules/async Restored async.js module 2011-12-02 16:12:31 +00:00
test Cleaning up git 2011-12-03 11:50:11 +00:00
.gitignore Introduced tmp/ directory for test artefacts 2011-11-25 15:51:02 +00:00
cook.js A bunch of changes to keep JSHint happy 2011-12-01 10:30:17 +00:00
ginsu.js Minor refactoring, including switching to strict mode 2011-11-30 17:27:00 +00:00
readme.md Added comment in readme about bugs in cook.rb 2011-12-01 15:06:04 +00:00
server.js Minor corrections and refactorings 2011-11-30 19:35:01 +00:00
test.sh Revised test data 2011-12-03 11:41:25 +00:00

cook.js

This is an attempt to modernise TiddlyWiki's build system, which has been based on tools written in Ruby called Cook and Ginsu (see https://github.com/TiddlyWiki/cooker for details). They were first written in 2006 and have been heavily hacked since then.

This new version is written in JavaScript for node.js, with the intention that it can share code with TiddlyWiki itself.

The goal is to achieve byte-for-byte compatibility with the old tools, but only to support the features required by the recipe files that are currently in use by TiddlyWiki and TiddlySpace. One of the difficulties is that cook.rb is very buggy; the current build process for tiddlywiki.com relies on TiddlyWiki itself doing a save operation in the browser to clear up problems with duplicate tiddlers and badly formed attributes.

Usage

node cook.js <recipefile>

Cooks a recipe file and sends the output to STDOUT

node server.js <recipefile>

Cooks a recipe file and serves it over HTTP port 8000

node ginsu.js <tiddlywikifile> <outputdir>

Splits a TiddlyWiki file into separate .tid files and a split.recipe file.

Testing

test.sh contains a simple test that cooks the main tiddlywiki.com recipe, first with the old Ruby-based tool, and then the new one. It uses OS X's opendiff to display the differences between the two files.

Current status

As of 22nd November 2011, cook.js can now build a fully functional TiddlyWiki from the existing recipe files. There are still some minor differences in the layout of tiddler attributes, and some whitespace issues that prevent full byte-for-byte compatibility.