From 30dbb570e5dce1d6e0982db64e8677fe3188045f Mon Sep 17 00:00:00 2001 From: Jens Maier <jens@elberet.de> Date: Wed, 10 Sep 2014 12:59:21 +0200 Subject: [PATCH] FIX: fix dialect block ordering --- app/assets/javascripts/discourse/dialects/dialect.js | 5 +++++ test/javascripts/lib/markdown-test.js.es6 | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/app/assets/javascripts/discourse/dialects/dialect.js b/app/assets/javascripts/discourse/dialects/dialect.js index 07ebc7947..5f6c754b1 100644 --- a/app/assets/javascripts/discourse/dialects/dialect.js +++ b/app/assets/javascripts/discourse/dialects/dialect.js @@ -21,6 +21,11 @@ var parser = window.BetterMarkdown, **/ function initializeDialects() { MD.buildBlockOrder(dialect.block); + var index = dialect.block.__order__.indexOf("code"); + if (index > -1) { + dialect.block.__order__.splice(index, 1); + dialect.block.__order__.unshift("code"); + } MD.buildInlinePatterns(dialect.inline); initialized = true; } diff --git a/test/javascripts/lib/markdown-test.js.es6 b/test/javascripts/lib/markdown-test.js.es6 index 56639193e..a07d3b077 100644 --- a/test/javascripts/lib/markdown-test.js.es6 +++ b/test/javascripts/lib/markdown-test.js.es6 @@ -379,6 +379,14 @@ test("Code Blocks", function() { cooked("```\nline1\n```\n```\nline2\n\nline3\n```", "<p><pre><code class=\"lang-auto\">line1</code></pre></p>\n\n<p><pre><code class=\"lang-auto\">line2\n\nline3</code></pre></p>", "it does not consume next block's trailing newlines"); + + cooked(" <pre>test</pre>", + "<pre><code><pre>test</pre></code></pre>", + "it does not parse other block types in markdown code blocks"); + + cooked(" [quote]test[/quote]", + "<pre><code>[quote]test[/quote]</code></pre>", + "it does not parse other block types in markdown code blocks"); }); test("sanitize", function() {