diff options
author | Alexander Krotov <ilabdsf@gmail.com> | 2018-03-02 01:39:16 +0300 |
---|---|---|
committer | Alexander Krotov <ilabdsf@gmail.com> | 2018-03-02 01:45:01 +0300 |
commit | 9dbd59a7c120eee9a0bbe292a05dd144987fa0a0 (patch) | |
tree | 243afc9c834e448fb9fd8196b249343721fb3bc6 | |
parent | 177c5120a5d13c7019d99a3b79d3cc0981a00214 (diff) | |
download | pandoc-9dbd59a7c120eee9a0bbe292a05dd144987fa0a0.tar.gz |
Muse writer: join strings during inline normalization
-rw-r--r-- | src/Text/Pandoc/Writers/Muse.hs | 2 | ||||
-rw-r--r-- | test/Tests/Writers/Muse.hs | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Writers/Muse.hs b/src/Text/Pandoc/Writers/Muse.hs index 314e7a5c1..bf1f267fd 100644 --- a/src/Text/Pandoc/Writers/Muse.hs +++ b/src/Text/Pandoc/Writers/Muse.hs @@ -294,6 +294,8 @@ conditionalEscapeString s = normalizeInlineList :: [Inline] -> [Inline] normalizeInlineList (x : Str "" : xs) = normalizeInlineList (x:xs) +normalizeInlineList (Str x1 : Str x2 : xs) + = normalizeInlineList $ Str (x1 ++ x2) : xs normalizeInlineList (Emph x1 : Emph x2 : ils) = normalizeInlineList $ Emph (x1 ++ x2) : ils normalizeInlineList (Strong x1 : Strong x2 : ils) diff --git a/test/Tests/Writers/Muse.hs b/test/Tests/Writers/Muse.hs index a5a6986f2..0b8a08258 100644 --- a/test/Tests/Writers/Muse.hs +++ b/test/Tests/Writers/Muse.hs @@ -297,6 +297,7 @@ tests = [ testGroup "block elements" , "escape hash to avoid accidental anchors" =: text "#foo bar" =?> "<verbatim>#foo</verbatim> bar" , "escape definition list markers" =: str "::" =?> "<verbatim>::</verbatim>" + , "normalize strings before escaping" =: fromList [Str ":", Str ":"] =?> "<verbatim>::</verbatim>" -- We don't want colons to be escaped if they can't be confused -- with definition list item markers. , "do not escape colon" =: str ":" =?> ":" |