diff --git a/editions/tw5.com/tiddlers/editions/TiddlyWiki5_in_the_Sky_for_TiddlyWeb.tid b/editions/tw5.com/tiddlers/editions/TiddlyWiki5_in_the_Sky_for_TiddlyWeb.tid index a51139354..58fb8beb5 100644 --- a/editions/tw5.com/tiddlers/editions/TiddlyWiki5_in_the_Sky_for_TiddlyWeb.tid +++ b/editions/tw5.com/tiddlers/editions/TiddlyWiki5_in_the_Sky_for_TiddlyWeb.tid @@ -1,6 +1,7 @@ -title: TiddlyWiki5 in the Sky for TiddlyWeb -modifier: JeremyRuston tags: edition docs +modifier: JeremyRuston +title: TiddlyWiki5 in the Sky for TiddlyWeb +modified: 201305011456 The TiddlyWiki5 in the Sky for TiddlyWeb allows content to be synchronised between TiddlyWiki5 running in the browser and a TiddlyWeb (or TiddlySpace) server. Features include: @@ -18,6 +19,6 @@ The implementation is somewhat experimental, and includes these limitations: To try out TiddlyWiki5 in the Sky for TiddlyWeb: # If necessary, create an account at http://tiddlyspace.com/ -# Create a new space, eg `myspace` +# Create a new space, eg `` # Include the space `tw5tiddlyweb` -# Visit `http://myspace.tiddlyspace.com/tw5` +# Visit `http://.tiddlyspace.com/tw5` diff --git a/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid b/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid index e0fdb823f..8739e8ad7 100644 --- a/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid +++ b/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid @@ -1,11 +1,18 @@ -tags: docs mechanism +modified: 201305011454 title: PluginMechanism -modified: 201304152135 +tags: docs mechanism -[[Plugins]] are bundles of tiddlers that are distributed and managed as a single unit by being packed into a single JSON tiddler. If a tiddler isn't found in the main store, then the loaded plugins are searched for it instead. +[[Plugins]] are bundles of tiddlers that are distributed and managed as a single unit by being packed into a single JSON tiddler. If a tiddler isn't found in the main store, then the registered plugins are searched for it instead. Tiddlers within plugins behave something like shadow tiddlers in classic TiddlyWiki: they can be freely overwritten by creating a tiddler with the same title, but deleting that tiddler restores the underlying tiddler value from the plugin. +Plugins also have a `plugin-type` field that may be: + +* `plugin` //(default)// - a plain plugin +* `theme` - a theme plugin (see ThemeMechanism) + +Plugins can be used to package ordinary content, or can include JavaScript [[modules|Modules]] that extend and enhance the core TiddlyWiki5 functionality. + Plugins conventionally have a title of the form `$:/plugins/publisher/name`. Plugins that are part of the core TiddlyWiki distribution have titles of the form `$:/plugins/tiddlywiki/name`. Plugins that define macros, views or other named entities are expected to prefix the name with their publisher identifier, for example: `tiddlytools.slider`. @@ -24,34 +31,21 @@ The JSON structure for plugin tiddlers is as follows: "version": "1.2.3-alpha3", "coreVersion": ">=5.0.0", "source": "http://tiddlywiki.com/MyPlugin", + "plugin-type": "plugin", "tiddlers": { - "title1": {"type": "image/png", "text": ""}, + "$:/plugins/publisher/name/title1": {"type": "image/png", "text": ""}, "title2": {"text": "Text"} } } ``` -The titles of the individual tiddlers within a plugin are automatically prefixed with the title of the plugin itself and a slash `/`. Thus, in the example above the two tiddlers within the plugin will have the titles `$:/plugins/publisher/name/title1` and `$:/plugins/publisher/name/title2`. +The titles of the individual tiddlers are typically prefixed with the title of the containing plugin (as in the **title1** example above), but they are not restricted to do so (the second example specifies a tiddler with the raw title **title2**). ! Plugin folders -On the server, plugins can be stored as ordinary JSON tiddlers but it is often more convenient to store them as separate tiddler files within folders. Plugin folders must contain a `plugin.bundle` file that contains the metadata for the plugin. It can also optionally identify files external to the plugin folder that should be loaded as tiddlers. +On the server, plugins can be stored as ordinary JSON tiddlers but it is often more convenient to store them as separate tiddler files within folders. Plugin folders must contain a `plugin.info` file that contains the metadata for the plugin. It can also optionally identify files external to the plugin folder that should be loaded as tiddlers. -The `plugin.bundle` file should contain the following JSON structure: - -``` -{ - "metadata": { - - }, - "externalTiddlers": [ - {"file": "../MyFile.png", "fields": {"title": "MyTitle", "type": "image/png"}}, - {"file": "../MyFile.txt", "fields": {"title": "MyTitle2"}} - ] -} -``` - -The titles of the external tiddlers are again relative to the title of the plugin. Constituent tiddler files must specify the full title of the tiddler, including the name of the plugin. +The `plugin.info` file should contain the same JSON as given for plugin tiddlers above, with the `tiddlers` object omitted. ! Plugin library @@ -80,4 +74,4 @@ Plugins can also be included manually by copying them into the `plugins` subfold The wiki object keeps track of all of the currently loaded plugins. If a request for a tiddler isn't in the store then the wiki looks through the cascade of plugins to find the requested tiddler. It is a similar idea to the way that shadow tiddlers are implemented in classic TiddlyWiki. -In the browser, any constituent tiddlers that are static styles (ie shadow tiddlers of content type `text/css`) or JavaScript modules (ie shadow tiddlers of content type `application/javascript` and possessing the field `module-type`) are added to the DOM during startup processing. +In the browser, any constituent tiddlers that are JavaScript modules (ie shadow tiddlers of content type `application/javascript` and possessing the field `module-type`) are executed during startup processing. diff --git a/editions/tw5.com/tiddlers/roadmap/RoadMap.tid b/editions/tw5.com/tiddlers/roadmap/RoadMap.tid index d4468e211..ee685e1a7 100644 --- a/editions/tw5.com/tiddlers/roadmap/RoadMap.tid +++ b/editions/tw5.com/tiddlers/roadmap/RoadMap.tid @@ -1,7 +1,7 @@ -tags: docs planning -modifier: JeremyRuston +modified: 201305011440 title: RoadMap -modified: 201304212151 +modifier: JeremyRuston +tags: docs planning TiddlyWiki5 is currently an alpha release, meaning that it is incomplete and subject to change. @@ -18,7 +18,7 @@ Some of the features and fixes required before the beta is declared include: * ~~Saving changes to a file URI using Firefox~~ * ~~Lazy loading~~ * ~~Better handling of binary tiddlers~~ -* Usability improvements to sidebar +* ~~Usability improvements to sidebar~~ * A decent ReleaseProcess ! Beta Release @@ -41,6 +41,6 @@ Some of the additional features under consideration during the beta include: * Integration with the browser back and forwards buttons * Minification of plugins (JS and CSS) -! 1.0 Release +! 5.0 Release -Hopefully, TiddlyWiki5 will reach version 1.0 while we're still early in 2013. This is the point at which it is declared stable enough for general use. It will continue to improve and evolve after 1.0, although constrained to remain backwards compatible so that plugins and content created for version 1.0 will continue to work into the indefinite future. +Hopefully, TiddlyWiki5 will leave beta and become a full release while we're still in the middle of 2013. This is the point at which it is declared stable enough for general use. It will continue to improve and evolve after this point, although constrained to remain backwards compatible so that plugins and content created for version 5.0 will continue to work into the indefinite future.