diff --git a/core/modules/widgets/view/viewers/urlencoded.js b/core/modules/widgets/view/viewers/urlencoded.js new file mode 100644 index 000000000..ffa468539 --- /dev/null +++ b/core/modules/widgets/view/viewers/urlencoded.js @@ -0,0 +1,44 @@ +/*\ +title: $:/core/modules/widgets/view/viewers/urlencoded.js +type: application/javascript +module-type: fieldviewer + +A viewer for viewing tiddler fields as url encoded text + +\*/ +(function(){ + +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +var UrlEncodedViewer = function(viewWidget,tiddler,field,value) { + this.viewWidget = viewWidget; + this.tiddler = tiddler; + this.field = field; + this.value = value; +}; + +UrlEncodedViewer.prototype.render = function() { + // Get the value as a string + if(this.field !== "text" && this.tiddler) { + this.value = this.tiddler.getFieldString(this.field); + } + var value = ""; + if(this.value !== undefined && this.value !== null) { + value = this.value; + } + // Set the element details + this.viewWidget.tag = "span"; + this.viewWidget.attributes = { + "class": "tw-view-urlencoded" + }; + this.viewWidget.children = this.viewWidget.renderer.renderTree.createRenderers(this.viewWidget.renderer,[{ + type: "text", + text: encodeURIComponent(value) + }]); +}; + +exports.urlencoded = UrlEncodedViewer; + +})(); diff --git a/core/templates/split-recipe.tid b/core/templates/split-recipe.tid new file mode 100644 index 000000000..b4832667a --- /dev/null +++ b/core/templates/split-recipe.tid @@ -0,0 +1,5 @@ +title: $:/core/templates/split-recipe + +<$list filter="[!is[system]]"> +tiddler: <$view field="title" format="urlencoded"/>.tid + diff --git a/ginsu.sh b/ginsu.sh index 6cf457811..55f68440b 100755 --- a/ginsu.sh +++ b/ginsu.sh @@ -9,5 +9,6 @@ node ./tiddlywiki.js \ ./editions/empty \ --verbose \ --load $1 \ + --savetiddler $:/core/templates/split-recipe tmp/ginsu/split.recipe text/plain \ --savetiddlers [!is[system]] $:/core/templates/tid-tiddler tmp/ginsu text/plain .tid \ || exit 1