git.iko.soy/typeable/pandoc
on master help sign in
Org reader: give precedence to later meta lines
75df104Albert Krewinkel
src/Text/Pandoc/Readers/Org/Meta.hs+1−1
@@ -59,7 +59,7 @@ declarationLine = try $ do
59 value <- metaValue key
59 value <- metaValue key
60 updateState $ \st ->
60 updateState $ \st ->
61 let meta' = B.setMeta key <$> value <*> pure nullMeta
61 let meta' = B.setMeta key <$> value <*> pure nullMeta
62− in st { orgStateMeta = orgStateMeta st <> meta' }
62+ in st { orgStateMeta = meta' <> orgStateMeta st }
63
63
64metaKey :: OrgParser String
64metaKey :: OrgParser String
65metaKey = map toLower <$> many1 (noneOf ": \n\r")
65metaKey = map toLower <$> many1 (noneOf ": \n\r")
tests/Tests/Readers/Org.hs+8
@@ -496,6 +496,14 @@ tests =
496 ] =?>
496 ] =?>
497 (mempty::Blocks)
497 (mempty::Blocks)
498
498
499+ , "later meta definitions take precedence" =:
500+ unlines [ "#+AUTHOR: this will not be used"
501+ , "#+author: Max"
502+ ] =?>
503+ let author = MetaInlines [Str "Max"]
504+ meta = setMeta "author" (MetaList [author]) $ nullMeta
505+ in Pandoc meta mempty
506+
499 , "Logbook drawer" =:
507 , "Logbook drawer" =:
500 unlines [ " :LogBook:"
508 unlines [ " :LogBook:"
501 , " - State \"DONE\" from \"TODO\" [2014-03-03 Mon 11:00]"
509 , " - State \"DONE\" from \"TODO\" [2014-03-03 Mon 11:00]"