aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Readers/Muse.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Text/Pandoc/Readers/Muse.hs')
-rw-r--r--src/Text/Pandoc/Readers/Muse.hs11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/Text/Pandoc/Readers/Muse.hs b/src/Text/Pandoc/Readers/Muse.hs
index 3b089772f..f70085c54 100644
--- a/src/Text/Pandoc/Readers/Muse.hs
+++ b/src/Text/Pandoc/Readers/Muse.hs
@@ -223,7 +223,16 @@ header = try $ do
return $ B.headerWith attr level <$> content
exampleTag :: PandocMonad m => MuseParser m (F Blocks)
-exampleTag = liftM (return . uncurry B.codeBlockWith) $ htmlElement "example"
+exampleTag = do
+ (attr, contents) <- htmlElement "example"
+ return $ return $ B.codeBlockWith attr $ chop contents
+ where lchop s = case s of
+ '\n':ss -> ss
+ _ -> s
+ rchop = reverse . lchop . reverse
+ -- Trim up to one newline from the beginning and the end,
+ -- in case opening and/or closing tags are on separate lines.
+ chop = lchop . rchop
literal :: PandocMonad m => MuseParser m (F Blocks)
literal = liftM (return . rawBlock) $ htmlElement "literal"