diff options
-rw-r--r-- | src/Text/Pandoc/Readers/Muse.hs | 4 | ||||
-rw-r--r-- | test/Tests/Readers/Muse.hs | 15 |
2 files changed, 16 insertions, 3 deletions
diff --git a/src/Text/Pandoc/Readers/Muse.hs b/src/Text/Pandoc/Readers/Muse.hs index a89bc629d..7504a33ca 100644 --- a/src/Text/Pandoc/Readers/Muse.hs +++ b/src/Text/Pandoc/Readers/Muse.hs @@ -237,9 +237,7 @@ parseAmuseDirective = do many blankline return (key, value) where - endOfDirective = lookAhead $ try (eof <|> - void (newline >> blankline) <|> - void (newline >> parseDirectiveKey)) + endOfDirective = lookAhead $ eof <|> try (newline >> (void blankline <|> void parseDirectiveKey)) directive :: PandocMonad m => MuseParser m () directive = do diff --git a/test/Tests/Readers/Muse.hs b/test/Tests/Readers/Muse.hs index 5f379c44b..faa21513a 100644 --- a/test/Tests/Readers/Muse.hs +++ b/test/Tests/Readers/Muse.hs @@ -537,6 +537,21 @@ tests = , test emacsMuse "Disable tables" ("#disable-tables t" =?> Pandoc (setMeta "disable-tables" (MetaInlines $ toList "t") nullMeta) mempty) + , "Multiple directives" =: + T.unlines [ "#title Document title" + , "#subtitle Document subtitle" + ] =?> + Pandoc (setMeta "title" (MetaInlines $ toList "Document title") $ + setMeta "subtitle" (MetaInlines $ toList "Document subtitle") nullMeta) mempty + , "Multiline directive" =: + T.unlines [ "#title Document title" + , "#notes First line" + , "and second line" + , "#author Name" + ] =?> + Pandoc (setMeta "title" (MetaInlines $ toList "Document title") $ + setMeta "notes" (MetaInlines $ toList "First line\nand second line") $ + setMeta "author" (MetaInlines $ toList "Name") nullMeta) mempty ] , testGroup "Anchors" [ "Anchor" =: |