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 $ "" <> contents <> "" 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*bar" , "strong emphasis after emphasis" =: emph (text "foo") <> strong (emph (text "bar")) =?> "*foo**bar*" , "strong in the end of emphasis" =: emph (text "foo" <> strong (text "bar")) =?> "*foobar*" + , "switch to lightweight markup after tag" =: + strong (str "foo") <> emph (str "bar") <> strong (str "baz") =?> + "**foo**bar**baz**" , "strikeout" =: strikeout (text "foo") =?> "foo" , "space at the beginning of emphasis" =: emph (text " foo") =?> " foo" , "space at the end of emphasis" =: emph (text "foo ") =?> "foo "