From d44d1664312f0d05ada61eb49a678ef8a04d90d0 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Wed, 7 Aug 2013 08:43:42 -0700 Subject: Allow YAML title blocks to contain only comments. --- src/Text/Pandoc/Readers/Markdown.hs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/Text/Pandoc/Readers') diff --git a/src/Text/Pandoc/Readers/Markdown.hs b/src/Text/Pandoc/Readers/Markdown.hs index a880c09de..251554de1 100644 --- a/src/Text/Pandoc/Readers/Markdown.hs +++ b/src/Text/Pandoc/Readers/Markdown.hs @@ -231,7 +231,9 @@ yamlTitleBlock = try $ do pos <- getPosition string "---" blankline - rawYaml <- unlines <$> manyTill anyLine stopLine + rawYamlLines <- manyTill anyLine stopLine + -- by including --- and ..., we allow yaml blocks with just comments: + let rawYaml = unlines ("---" : (rawYamlLines ++ ["..."])) optional blanklines opts <- stateOptions <$> getState case Yaml.decodeEither' $ UTF8.fromString rawYaml of @@ -241,6 +243,7 @@ yamlTitleBlock = try $ do then f else B.setMeta (T.unpack k) (yamlToMeta opts v) . f) id hashmap + Right Yaml.Null -> return $ return id Right _ -> do addWarning (Just pos) "YAML header is not an object" return $ return id -- cgit v1.2.3