@@ -35,7 +35,7 @@ import Data.List ( transpose, sortBy, intersperse, intercalate, elemIndex)
3535import qualified Data.Map as M
3636import Data.Scientific (coefficient, base10Exponent)
3737import Data.Ord ( comparing )
38−import Data.Char ( isAlphaNum, toLower )
38+import Data.Char ( isSpace, isAlphaNum, toLower )
3939import Data.Maybe
4040import Text.Pandoc.Definition
4141import qualified Data.Text as T
@@ -326,11 +326,14 @@ mmdTitleBlock = try $ do
326326kvPair :: MarkdownParser (String, MetaValue)
327327kvPair = try $ do
328328 key <- many1Till (alphaNum <|> oneOf "_- ") (char ':')
329+ skipMany1 spaceNoNewline
329330 val <- manyTill anyChar
330331 (try $ newline >> lookAhead (blankline <|> nonspaceChar))
331332 let key' = concat $ words $ map toLower key
332333 let val' = MetaBlocks $ B.toList $ B.plain $ B.text $ trim val
333334 return (key',val')
335+ where
336+ spaceNoNewline = satisfy (\x -> isSpace x && (x/='\n') && (x/='\r'))
334337
335338parseMarkdown :: MarkdownParser Pandoc
336339parseMarkdown = do