aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Krotov <ilabdsf@gmail.com>2018-10-21 20:19:29 +0300
committerAlexander Krotov <ilabdsf@gmail.com>2018-10-21 20:23:10 +0300
commita98e2b7c42d6ac9062677bf6d76caa3cf854dd9c (patch)
treee091fca33d4d1e79dc1161c6999db164c531e221
parent3ec0b78343c927cedb00eadf057e26bbd61494c2 (diff)
downloadpandoc-a98e2b7c42d6ac9062677bf6d76caa3cf854dd9c.tar.gz
Muse writer: use lightweight markup after </em> tag
-rw-r--r--src/Text/Pandoc/Writers/Muse.hs1
-rw-r--r--test/Tests/Writers/Muse.hs3
2 files changed, 4 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Writers/Muse.hs b/src/Text/Pandoc/Writers/Muse.hs
index 1374cdde3..8571ac402 100644
--- a/src/Text/Pandoc/Writers/Muse.hs
+++ b/src/Text/Pandoc/Writers/Muse.hs
@@ -548,6 +548,7 @@ inlineToMuse (Emph lst) = do
let lst' = normalizeInlineList lst
if useTags || null lst' || startsWithSpace lst' || endsWithSpace lst'
then do contents <- inlineListToMuse lst'
+ modify $ \st -> st { stUseTags = False }
return $ "<em>" <> contents <> "</em>"
else do contents <- local (\env -> env { envInsideAsterisks = True }) $ inlineListToMuse lst'
modify $ \st -> st { stUseTags = True }
diff --git a/test/Tests/Writers/Muse.hs b/test/Tests/Writers/Muse.hs
index f7287d57d..5a6d9c172 100644
--- a/test/Tests/Writers/Muse.hs
+++ b/test/Tests/Writers/Muse.hs
@@ -400,6 +400,9 @@ tests = [ testGroup "block elements"
, "strong after emphasis" =: emph (text "foo") <> strong (text "bar") =?> "*foo*<strong>bar</strong>"
, "strong emphasis after emphasis" =: emph (text "foo") <> strong (emph (text "bar")) =?> "*foo*<strong>*bar*</strong>"
, "strong in the end of emphasis" =: emph (text "foo" <> strong (text "bar")) =?> "*foo<strong>bar</strong>*"
+ , "switch to lightweight markup after <em> tag" =:
+ strong (str "foo") <> emph (str "bar") <> strong (str "baz") =?>
+ "**foo**<em>bar</em>**baz**"
, "strikeout" =: strikeout (text "foo") =?> "<del>foo</del>"
, "space at the beginning of emphasis" =: emph (text " foo") =?> "<em> foo</em>"
, "space at the end of emphasis" =: emph (text "foo ") =?> "<em>foo </em>"