From b379a2903a07fc6a7389d1fed40565b3551fecc5 Mon Sep 17 00:00:00 2001 From: Alexander Krotov Date: Wed, 28 Mar 2018 13:17:04 +0300 Subject: Muse writer: escape semicolons and markers after line break --- src/Text/Pandoc/Writers/Muse.hs | 2 +- test/Tests/Writers/Muse.hs | 1 + test/writer.muse | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Text/Pandoc/Writers/Muse.hs b/src/Text/Pandoc/Writers/Muse.hs index c4614113c..5b08f0d63 100644 --- a/src/Text/Pandoc/Writers/Muse.hs +++ b/src/Text/Pandoc/Writers/Muse.hs @@ -382,7 +382,7 @@ renderInlineList True [] = pure "" renderInlineList False [] = pure "" renderInlineList start (x:xs) = do r <- inlineToMuse x opts <- gets stOptions - lst' <- renderInlineList (x == SoftBreak && writerWrapText opts == WrapPreserve) xs + lst' <- renderInlineList ((x == SoftBreak && writerWrapText opts == WrapPreserve) || x == LineBreak) xs if start && fixOrEscape x then pure (text "" <> r <> lst') else pure (r <> lst') diff --git a/test/Tests/Writers/Muse.hs b/test/Tests/Writers/Muse.hs index 1412739cb..c1bec1ba2 100644 --- a/test/Tests/Writers/Muse.hs +++ b/test/Tests/Writers/Muse.hs @@ -323,6 +323,7 @@ tests = [ testGroup "block elements" ] , "escape ; to avoid accidental comments" =: text "; foo" =?> "; foo" , "escape ; after softbreak" =: text "foo" <> softbreak <> text "; bar" =?> "foo\n; bar" + , "escape ; after linebreak" =: text "foo" <> linebreak <> text "; bar" =?> "foo
\n; bar" ] , testGroup "emphasis" [ "emph" =: emph (text "foo") =?> "foo" diff --git a/test/writer.muse b/test/writer.muse index fe278af65..abb6b63fe 100644 --- a/test/writer.muse +++ b/test/writer.muse @@ -42,7 +42,7 @@ item. Here’s one with a bullet. * criminey. There should be a hard line break
-here. +here. ---- -- cgit v1.2.3