From e898f0abef48a79d5bf64a8c17cdf94cf8f1b258 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Mon, 31 Jan 2011 20:42:49 -0800 Subject: Improved fix to markdown noteBlock parser. The last patch did not handle cases with > 4 spaces. Also added a more general test case. --- src/Tests/Readers/Markdown.hs | 11 +++-------- src/Text/Pandoc/Readers/Markdown.hs | 2 +- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/Tests/Readers/Markdown.hs b/src/Tests/Readers/Markdown.hs index 021ef7fa5..bfd3602e0 100644 --- a/src/Tests/Readers/Markdown.hs +++ b/src/Tests/Readers/Markdown.hs @@ -27,13 +27,8 @@ tests = [ testGroup "inline code" =?> para (codeWith ("",["haskell","special"],[("x","7")]) "*") ] , testGroup "footnotes" - [ "indent followed by newline" =: [_LIT| -[^1] - -[^1]: my note - - -not in note -|] =?> para (note (para "my note")) +++ para "not in note" + [ "indent followed by newline" =: + "[^1]\n\n[^1]: my note\n\n \nnot in note\n" + =?> para (note (para "my note")) +++ para "not in note" ] ] diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index 6a9753987..2bfb742bd 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -264,7 +264,7 @@ noteBlock = try $ do optional blankline optional indentSpaces raw <- sepBy rawLines (try (blankline >> indentSpaces >> - notFollowedBy newline)) + notFollowedBy blankline)) optional blanklines endPos <- getPosition let newnote = (ref, (intercalate "\n" raw) ++ "\n\n") -- cgit v1.2.3