diff --git a/plugins/tiddlywiki/text-slicer/modules/rules/html-linear.tid b/plugins/tiddlywiki/text-slicer/modules/rules/html-linear.tid index 2dd7dc728..2163fd5aa 100644 --- a/plugins/tiddlywiki/text-slicer/modules/rules/html-linear.tid +++ b/plugins/tiddlywiki/text-slicer/modules/rules/html-linear.tid @@ -7,7 +7,22 @@ tags: $:/tags/text-slicer/slicer-rules [ { - "selector": "address,blockquote,center,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,iframe,isindex,noframes,noscript,ol,p,pre,table,ul", + "selector": "li > p", + "actions": { + "dontRenderTag": true + } + }, + { + "selector": "p", + "actions": { + "startNewChunk": { + "toc-type": "paragraph" + }, + "dontRenderTag": true + } + }, + { + "selector": "address,blockquote,center,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,hr,iframe,isindex,noframes,noscript,ol,pre,table,ul", "actions": { "startNewChunk": { "toc-type": "paragraph" @@ -25,19 +40,11 @@ tags: $:/tags/text-slicer/slicer-rules "isImage": true } }, - { - "selector": "head > title", - "actions": { - "dontRenderTag": true, - "startNewChunk": { - "toc-type": "title" - } - } - }, { "selector": "*", "actions": { - "dontRenderTag": true + "dontRenderTag": true, + "discard": true } } ] \ No newline at end of file diff --git a/plugins/tiddlywiki/text-slicer/modules/slicer.js b/plugins/tiddlywiki/text-slicer/modules/slicer.js index 077d4b321..14d463ddd 100644 --- a/plugins/tiddlywiki/text-slicer/modules/slicer.js +++ b/plugins/tiddlywiki/text-slicer/modules/slicer.js @@ -340,8 +340,12 @@ Slicer.prototype.onCloseTag = function(name) { Slicer.prototype.onText = function(text) { var self = this; - text = $tw.utils.htmlEncode(text); + // Discard the text if we're inside an element with actions.discard set true + if(this.elementStack.some(function(e) {return e.actions.discard;})) { + return; + } // Optionally escape common character sequences that might be parsed as wikitext + text = $tw.utils.htmlEncode(text); if(this.escapeWikiText) { $tw.utils.each(["[[","{{","__","''","//",",,","^^","~~","`","--","\"\"","@@"],function(str) { var replace = str.split("").map(function(c) {