summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Text/Pandoc/Readers/Muse.hs5
-rw-r--r--test/Tests/Readers/Muse.hs3
2 files changed, 6 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Readers/Muse.hs b/src/Text/Pandoc/Readers/Muse.hs
index a9c0162d2..b64d877b3 100644
--- a/src/Text/Pandoc/Readers/Muse.hs
+++ b/src/Text/Pandoc/Readers/Muse.hs
@@ -658,8 +658,9 @@ inlineTag :: PandocMonad m
=> (Inlines -> Inlines)
-> String
-> MuseParser m (F Inlines)
-inlineTag f s = try $ do
- res <- parseHtmlContent s inline
+inlineTag f tag = try $ do
+ htmlTag (~== TagOpen tag [])
+ res <- manyTill inline (void $ htmlTag (~== TagClose tag))
return $ f <$> mconcat res
strongTag :: PandocMonad m => MuseParser m (F Inlines)
diff --git a/test/Tests/Readers/Muse.hs b/test/Tests/Readers/Muse.hs
index 36b08c3a2..0ceed0322 100644
--- a/test/Tests/Readers/Muse.hs
+++ b/test/Tests/Readers/Muse.hs
@@ -171,6 +171,9 @@ tests =
, "Verbatim tag after text" =: "Foo <verbatim>bar</verbatim>" =?> para "Foo bar"
+ -- <em> tag should match with the last </em> tag, not verbatim one
+ , "Nested \"</em>\" inside em tag" =: "<em>foo<verbatim></em></verbatim>bar</em>" =?> para (emph ("foo</em>bar"))
+
, testGroup "Links"
[ "Link without description" =:
"[[https://amusewiki.org/]]" =?>