From 30dbb570e5dce1d6e0982db64e8677fe3188045f Mon Sep 17 00:00:00 2001
From: Jens Maier
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 07ebc7947d..5f6c754b15 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 56639193ef..a07d3b0775 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```",
"line1
\n\nline2\n\nline3
",
"it does not consume next block's trailing newlines");
+
+ cooked(" test
",
+ "<pre>test</pre>
",
+ "it does not parse other block types in markdown code blocks");
+
+ cooked(" [quote]test[/quote]",
+ "[quote]test[/quote]
",
+ "it does not parse other block types in markdown code blocks");
});
test("sanitize", function() {