From 588bc550c00165aa0c034f7237d3fcb223db398a Mon Sep 17 00:00:00 2001 From: Jeremy Ruston Date: Sat, 3 Mar 2012 18:07:09 +0000 Subject: [PATCH] Added plain text parser Now we display plain text tiddlers properly --- js/App.js | 2 ++ js/PlainTextParser.js | 27 +++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 js/PlainTextParser.js diff --git a/js/App.js b/js/App.js index 59af86f32..da03978c2 100644 --- a/js/App.js +++ b/js/App.js @@ -15,6 +15,7 @@ var WikiStore = require("./WikiStore.js").WikiStore, tiddlerOutput = require("./TiddlerOutput.js"), Renderer = require("./Renderer.js").Renderer, WikiTextParser = require("./WikiTextParser.js").WikiTextParser, + PlainTextParser = require("./PlainTextParser.js").PlainTextParser, JavaScriptParser = require("./JavaScriptParser.js").JavaScriptParser, JSONParser = require("./JSONParser.js").JSONParser, ImageParser = require("./ImageParser.js").ImageParser; @@ -27,6 +28,7 @@ var App = function() { this.store = new WikiStore(); // Register the parsers this.store.registerParser("text/x-tiddlywiki",new WikiTextParser({store: this.store})); + this.store.registerParser("text/plain",new PlainTextParser({store: this.store})); this.store.registerParser(["image/svg+xml",".svg","image/jpg",".jpg","image/jpeg",".jpeg","image/png",".png","image/gif",".gif"],new ImageParser({store: this.store})); this.store.registerParser(["application/javascript",".js"],new JavaScriptParser({store: this.store})); this.store.registerParser(["application/json",".json"],new JSONParser({store: this.store})); diff --git a/js/PlainTextParser.js b/js/PlainTextParser.js new file mode 100644 index 000000000..acf09d8d6 --- /dev/null +++ b/js/PlainTextParser.js @@ -0,0 +1,27 @@ +/*\ +title: js/PlainTextParser.js + +Renders plain text tiddlers + +\*/ +(function(){ + +/*jslint node: true */ +"use strict"; + +var WikiTextParseTree = require("./WikiTextParseTree.js").WikiTextParseTree, + Renderer = require("./Renderer.js").Renderer, + Dependencies = require("./Dependencies.js").Dependencies, + utils = require("./Utils.js"); + +var PlainTextParser = function(options) { + this.store = options.store; +}; + +PlainTextParser.prototype.parse = function(type,text) { + return new WikiTextParseTree([Renderer.ElementNode("pre",{},[Renderer.TextNode(text)])],new Dependencies(),this.store); +}; + +exports.PlainTextParser = PlainTextParser; + +})();