From 40d02812b15af9e1027b51beda565f35bd7867d7 Mon Sep 17 00:00:00 2001 From: Thiago Veronezi Date: Wed, 16 Nov 2016 12:49:47 -0500 Subject: [PATCH] reverting commit in order to create a new branch for this fix. --- src/js/simplemde.js | 44 +++++++++++++++++--------------------------- 1 file changed, 17 insertions(+), 27 deletions(-) diff --git a/src/js/simplemde.js b/src/js/simplemde.js index f72df0c..016d693 100644 --- a/src/js/simplemde.js +++ b/src/js/simplemde.js @@ -999,35 +999,25 @@ function _toggleBlock(editor, type, start_chars, end_chars) { } function _cleanBlock(cm) { - if(/editor-preview-active/.test(cm.getWrapperElement().lastChild.className)) { + if(/editor-preview-active/.test(cm.getWrapperElement().lastChild.className)) return; + + var startPoint = cm.getCursor("start"); + var endPoint = cm.getCursor("end"); + var text; + + for(var line = startPoint.line; line <= endPoint.line; line++) { + text = cm.getLine(line); + text = text.replace(/^[ ]*([# ]+|\*|\-|[> ]+|[0-9]+(.|\)))[ ]*/, ""); + + cm.replaceRange(text, { + line: line, + ch: 0 + }, { + line: line, + ch: 99999999999999 + }); } - // split the selection in lines - var selections = cm.getSelection().split("\n"); - var removeTags = function(selection) { - var html = marked(selection); - // create a div... - var tmp = document.createElement("DIV"); - // .. with the new generated html code... - tmp.innerHTML = html; - // ... now read the text of the generated code. - // This way the browser does the job of removing the tags. - var result = selection; - if(tmp.textContent) { - result = tmp.textContent; - } else if(tmp.innerText) { - result = tmp.innerText; - } - // removing trailing "new line" - return result.split("\n").join(""); - }; - var result = []; - for(var i = 0; i < selections.length; i++) { - result.push(removeTags(selections[i])); - } - // Add removed "new lines" back to the resulting string. - // Replace the selection with the new clean selection. - cm.replaceSelection(result.join("\n")); } // Merge the properties of one object into another.