1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2025-02-10 16:10:02 +00:00

Docs updates

This commit is contained in:
Jermolene 2013-12-12 09:48:08 +00:00
parent c610161455
commit b9faadbbc9
15 changed files with 92 additions and 74 deletions

View File

@ -1,5 +1,5 @@
created: 20130824141800000 created: 20130824141800000
modified: 20131206163714703 modified: 20131212093542990
tags: introduction tags: introduction
title: Docs title: Docs
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
@ -9,7 +9,7 @@ type: text/vnd.tiddlywiki
<ul><$list filter="[tag[$tag$]]"><li><$link to={{!!title}}><$view field="title"/></$link></li></$list></ul> <ul><$list filter="[tag[$tag$]]"><li><$link to={{!!title}}><$view field="title"/></$link></li></$list></ul>
\end \end
This is the main documentation hub for TiddlyWiki. See also the DeveloperDocs. This is the main documentation hub for TiddlyWiki. See also [[TiddlyWiki for Developers]].
! How to use ~TiddlyWiki5 ! How to use ~TiddlyWiki5

View File

@ -1,13 +1,13 @@
created: 20131119194500000 created: 20131119194500000
modified: 20131129094606811 modified: 20131212094150331
tags: introduction tags: introduction
title: Download title: Download
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
Download single file editions of version ''<<version>>'' of TiddlyWiki5: Download single file editions of version ''<<version>>'' of TiddlyWiki:
|{{$:/editions/tw5.com/snippets/download-empty-button}}|Get started with an empty wiki | |{{$:/editions/tw5.com/snippets/download-empty-button}}|Get started with an empty wiki |
|{{$:/snippets/download-wiki-button}}|Download a full copy of this site, including all the documentation | |{{$:/snippets/download-wiki-button}}|Download a full copy of this site, including all the documentation |
For more advanced configurations, you can run [[TiddlyWiki5 on Node.js]]. For more advanced configurations, you can run [[TiddlyWiki on Node.js]].

View File

@ -1,9 +1,10 @@
created: 20131129090249275 created: 20131129090249275
modified: 20131211131149978 modified: 20131212094132526
tags: introduction
title: GettingStarted title: GettingStarted
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
TiddlyWiki is highly flexible, and there are many different ways to use it. Here we're focusing on using it as a standalone file in the browser, which is a good choice for most users as it doesn't require any special knowledge or tools. For more options you can also run [[TiddlyWiki5 on Node.js]]. TiddlyWiki is highly flexible, and there are many different ways to use it. Here we're focusing on using it as a standalone file in the browser, which is a good choice for most users as it doesn't require any special knowledge or tools. For more options you can also run [[TiddlyWiki on Node.js]].
[[Video Tutorials]] are available, too. [[Video Tutorials]] are available, too.
@ -19,7 +20,7 @@ Saving changes as described above is quite inconvenient because of the degree of
! Other ways of saving changes ! Other ways of saving changes
[[Saving with Encryption]] explains how to use TiddlyWiki5's built-in encryption to protect your content with a password. [[Saving with Encryption]] explains how to use TiddlyWiki's built-in encryption to protect your content with a password.
You can also try: You can also try:

View File

@ -1,5 +1,5 @@
created: 20130822170200000 created: 20130822170200000
modified: 20131211124603186 modified: 20131212094254697
tags: introduction tags: introduction
title: HelloThere title: HelloThere
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
@ -17,5 +17,5 @@ This is version <<version>> of TiddlyWiki, a major reboot currently in beta (see
On this site, unless noted otherwise, "~TiddlyWiki" refers to the new version 5, and ~TiddlyWikiClassic is used to identify the older version. On this site, unless noted otherwise, "~TiddlyWiki" refers to the new version 5, and ~TiddlyWikiClassic is used to identify the older version.
The deep internal improvements mean that the new version of TiddlyWiki is not fully compatible with TiddlyWikiClassic. Existing content will need massaging, while plugins and themes will have to be completely rewritten. The upgrade path will get smoother as TiddlyWiki5 matures. The deep internal improvements mean that the new version of TiddlyWiki is not fully compatible with TiddlyWikiClassic. Existing content will need massaging, while plugins and themes will have to be completely rewritten. The upgrade path will get smoother as the new version matures.
</div> </div>

View File

@ -1,17 +1,17 @@
created: 20131202102427114 created: 20131202102427114
modified: 20131211142951319 modified: 20131212094500689
tags: howto tags: howto
title: Upgrading title: Upgrading
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
There are several methods for upgrading an existing TiddlyWiki5 document to a new release. There are several methods for upgrading an existing TiddlyWiki document to a new release.
! Online upgrading ! Online upgrading
Note that none of your personal data leaves your browser with this process. Note that none of your personal data leaves your browser with this process.
# Visit http://five.tiddlywiki.com/empty.html # Visit http://five.tiddlywiki.com/empty.html
# Drag your old TiddlyWiki5 HTML file into the browser window # Drag your old TiddlyWiki HTML file into the browser window
#* Your tiddlers should be imported #* Your tiddlers should be imported
# Save changes to save the new version. # Save changes to save the new version.

View File

@ -1,10 +1,10 @@
created: 20130825214200000 created: 20130825214200000
modified: 20131129095040600 modified: 20131212094058729
tags: dev tags: dev
title: TiddlyWikiFolders title: TiddlyWikiFolders
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
As well as traditional single file wikis, [[TiddlyWiki5 on Node.js]] supports wikis that are stored as a folder of individual tiddler files. As well as traditional single file wikis, [[TiddlyWiki on Node.js]] supports wikis that are stored as a folder of individual tiddler files.
! Wiki folder files and folders ! Wiki folder files and folders

View File

@ -1,5 +1,5 @@
created: 20131129094739786 created: 20131129094739786
modified: 20131129094745311 modified: 20131212094110082
tags: definitions tags: definitions
title: Node.js title: Node.js
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
@ -10,4 +10,4 @@ For TiddlyWiki, [[Node.js]] means that we can have a single code base that can r
For end users, [[Node.js]] is no more complicated to install than a web browser, but unlocks powerful capabilities such as the ability to run TiddlyWiki as a web server that you can connect to from other devices. For end users, [[Node.js]] is no more complicated to install than a web browser, but unlocks powerful capabilities such as the ability to run TiddlyWiki as a web server that you can connect to from other devices.
See [[TiddlyWiki5 on Node.js]] for more details. See [[TiddlyWiki on Node.js]] for more details.

View File

@ -0,0 +1,25 @@
created: 20131129094452285
modified: 20131212094211044
tags: howto
title: Building TiddlyWikiClassic
type: text/vnd.tiddlywiki
TiddlyWiki version 5 can be used to build older 2.x.x versions of TiddlyWikiClassic from their constituent components. Doing so involves these features:
* The `tiddlywiki/classictools` plugin, containing a deserializer module which allows tiddlers to be loaded from TiddlyWiki 2.x.x `.recipe` files
* The `stripcomments` format for the ViewWidget, which strips single line JavaScript comments starting `//#`
* The `stripTitlePrefix='yes'` attribute of the FieldsWidget, which removes prefixes wrapped in curly braces from the `title` attribute
** For example, `{tiddler}HelloThere` would be transformed to `HelloThere`
! Usage
TiddlyWikiClassic is built from the command line by running [[TiddlyWiki on Node.js]]. A typical usage would be:
```
node ../../tiddlywiki.js \
--verbose \
--load <path_to_recipe_file> \
--rendertiddler $:/core/templates/tiddlywiki2.template.html <path_to_write_index_file> text/plain \
|| exit 1
```

View File

@ -0,0 +1,17 @@
created: 20131211222303769
modified: 20131211225411570
tags: dev
title: JavaScript Macros
type: text/vnd.tiddlywiki
Macros can be implemented as JavaScript modules as well as via the [[wikitext syntax|Macros in WikiText]].
JavaScript macros are modules with their ''module-type'' field set to ''macro''. They must export these three properties:
* ''name'': A string giving the name used to invoke the macro
* ''params'': An array of objects with the following properties:
** //name//: name of the parameter
** //default//: (optional) default value for the parameter
* ''run'': Function called when the macro requires evaluation. The parameters are pulled from the macro call and arranged according to the ''params'' array. The ''run'' function should return the string value of the macro. When invoked, `this` points to the widget node invoking the macro.
Note that if the ''params'' array is missing or blank, then all the supplied parameters are passed to the `run()` method.

View File

@ -0,0 +1,26 @@
created: 20131203074550710
modified: 20131212093713249
tags: introduction dev
title: TiddlyWiki for Developers
type: text/vnd.tiddlywiki
TiddlyWiki is published as OpenSource which means that anyone can read the code and contribute to its development. It's a big, complex piece of software and can be overwhelming to newcomers.
! Resources
If you're interested in understanding more about the internal operation of TiddlyWiki, start by reviewing [[TiddlyWiki for Developers]] and then read the code -- start with the boot kernel [[$:/boot/boot.js]].
! The one thing you need to know
TiddlyWiki's architecture is very different from an HTML page written using jQuery. This section concisely explains what TiddlyWiki does differently. It may not make much sense on the first reading.
The key to understanding how it works internally is to see that the RefreshMechanism requires that any region of the DOM can be regenerated at any time. This means that the entire state of the user interface must reside in the tiddler store, and not in the DOM.
It also determines the standard UI flow:
# An event handler on a widget is triggered
# The event handler can manipulate the DOM nodes directly created by the widget, and/or modify the state of the tiddler store
# The core then issues a store change event which triggers the refresh cycle
# Each widget in the tree then gets a chance to refresh itself to reflect the changes in the store if they need to
From a technical perspective, TiddlyWiki is a fairly classic MVC architecture, with strict separation of concerns. The model is the tiddler store, the view is a rendering tree (such as the one created from [[$:/core/ui/PageMacros]] in startup.js), and the controller is the core code itself.

View File

@ -1,6 +1,6 @@
created: 20131129094353704 created: 20131129094353704
modified: 20131129100329076 modified: 20131212094217023
title: TiddlyWiki5 on Node.js title: TiddlyWiki on Node.js
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
! Installation ! Installation

View File

@ -1,24 +0,0 @@
created: 20131203074550710
modified: 20131203075203153
tags: introduction dev
title: TiddlyWiki5 for Developers
type: text/vnd.tiddlywiki
TiddlyWiki5 is published as OpenSource which means that anyone can read the code and contribute to its development. It's a big, complex piece of software and can be overwhelming to newcomers.
! Resources
! The one thing you need to know
TiddlyWiki5's architecture is very different from an HTML page written using jQuery. This section concisely explains what TiddlyWiki5 does differently. It may not make much sense on the first reading.
The key to understanding how TW5 works internally is to see that the RefreshMechanism requires that any region of the DOM can be regenerated at any time. This means that the entire state of the user interface must reside in the tiddler store, and not in the DOM.
It also determines the standard UI flow:
# An event handler on a widget is triggered
# The event handler can manipulate the DOM nodes directly created by the widget, and/or modify the state of the tiddler store
# The core then issues a store change event which triggers the refresh cycle
# Each widget in the tree then gets a chance to refresh itself to reflect the changes in the store if they need to
From a technical perspective, TiddlyWiki5 is a fairly classic MVC architecture, with strict separation of concerns. The model is the tiddler store, the view is a rendering tree (such as the one created from $:/core/ui/PageMacros in startup.js), and the controller is the TW5 core code itself.

View File

@ -1,5 +1,5 @@
created: 20130825162100000 created: 20130825162100000
modified: 20131203074943344 modified: 20131212093605368
tags: dev tags: dev
title: TiddlyWikiArchitecture title: TiddlyWikiArchitecture
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
@ -7,5 +7,3 @@ type: text/vnd.tiddlywiki
The heart of TiddlyWiki can be seen as an extensible representation transformation engine for text and images. Given the text of a tiddler and its associated ContentType, the engine can produce a rendering of the tiddler in a new ContentType. Furthermore, it can efficiently selectively update the rendering to track any changes in the tiddler or its dependents. The heart of TiddlyWiki can be seen as an extensible representation transformation engine for text and images. Given the text of a tiddler and its associated ContentType, the engine can produce a rendering of the tiddler in a new ContentType. Furthermore, it can efficiently selectively update the rendering to track any changes in the tiddler or its dependents.
The primary use of the engine is to convert raw `text/vnd.tiddlywiki` WikiText into a `text/html` or `text/plain` representation for display. The transclusion and templating features of WikiText allow the engine to also be used to generate TiddlyWiki HTML files from raw tiddlers. The primary use of the engine is to convert raw `text/vnd.tiddlywiki` WikiText into a `text/html` or `text/plain` representation for display. The transclusion and templating features of WikiText allow the engine to also be used to generate TiddlyWiki HTML files from raw tiddlers.
If you're interested in understanding more about the internal operation of TiddlyWiki, start by reviewing [[TiddlyWiki5 for Developers]] and then read the code -- start with the boot kernel [[$:/boot/boot.js]].

View File

@ -1,25 +0,0 @@
created: 20131129094452285
modified: 20131129094514823
tags: howto
title: Building classic TiddlyWiki with TiddlyWiki5
type: text/vnd.tiddlywiki
TiddlyWiki5 can be used to build older 2.x.x versions of TiddlyWiki from their constituent components. Doing so involves these additional features over and above those used for building TiddlyWiki5:
* The `tiddlywiki2/loadrecipe` plugin, containing a deserializer module which allows tiddlers to be loaded from TiddlyWiki 2.x.x `.recipe` files
* The `tiddlywiki2/stripcomments` plugin, containing a new viewer format for the `<$view>` widget that strips single line JavaScript comments starting `//#`
* The `stripTitlePrefix='yes'` attribute of the `<$fields>` widget, which removes prefixes wrapped in curly braces from the `title` attribute
** For example, `{tiddler}HelloThere` would be transformed to `HelloThere`
! Usage
TiddlyWikiClassic is built from the command line by running [[TiddlyWiki5 on Node.js]]. A typical usage would be:
```
node ../../tiddlywiki.js \
--verbose \
--load <path_to_recipe_file> \
--rendertiddler $:/core/templates/tiddlywiki2.template.html <path_to_write_index_file> text/plain \
|| exit 1
```

View File

@ -1,7 +1,7 @@
color: #8bbec7 color: #8bbec7
created: 20130824153100000 created: 20130824153100000
modified: 20131129094148475 modified: 20131212094158519
title: command title: command
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
When run under Node.js, TiddlyWiki supports a [[command line interface|TiddlyWiki5 on Node.js]] with these built-in commands. When run under Node.js, TiddlyWiki supports a [[command line interface|TiddlyWiki on Node.js]] with these built-in commands.