From 5e286443a879e8cb65b77d0dbd209306c22f3f57 Mon Sep 17 00:00:00 2001 From: Robin Ward <robin.ward@gmail.com> Date: Sat, 24 Aug 2013 13:24:27 -0400 Subject: [PATCH] FIX: Code blocks were trimming leading spaces sometimes when they should have only trimmed trailing spaces. --- .../javascripts/discourse/dialects/github_code_dialect.js | 2 +- test/javascripts/components/markdown_test.js | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/dialects/github_code_dialect.js b/app/assets/javascripts/discourse/dialects/github_code_dialect.js index ffa747e58..515c4d0ed 100644 --- a/app/assets/javascripts/discourse/dialects/github_code_dialect.js +++ b/app/assets/javascripts/discourse/dialects/github_code_dialect.js @@ -61,7 +61,7 @@ Discourse.Dialect.on("register", function(event) { next.unshift(MD.mk_block(n[2])); } - codeContents.push(n[1].trim()); + codeContents.push(n[1].replace(/\s+$/, "")); break; } else { codeContents.push(b); diff --git a/test/javascripts/components/markdown_test.js b/test/javascripts/components/markdown_test.js index 877ecb6dd..8bea0094c 100644 --- a/test/javascripts/components/markdown_test.js +++ b/test/javascripts/components/markdown_test.js @@ -217,6 +217,10 @@ test("Code Blocks", function() { cooked(" ```\n hello\n ```", "<pre><code>```\nhello\n```</code></pre>", "only detect ``` at the begining of lines"); + + cooked("```ruby\ndef self.parse(text)\n\n text\nend\n```", + "<p><pre><code class=\"ruby\">def self.parse(text)\n\n text\nend</code></pre></p>", + "it allows leading spaces on lines in a code block."); }); test("SanitizeHTML", function() {