summaryrefslogtreecommitdiff
path: root/src/Hakyll/Core/Provider
diff options
context:
space:
mode:
authorAlexey Kreshchuk <akrsch@gmail.com>2014-01-22 00:11:51 +0400
committerAlexey Kreshchuk <akrsch@gmail.com>2014-01-22 00:11:51 +0400
commitdbabe0325b9d7bca3b14c2b33e686b8151fa79aa (patch)
tree797c4edad131143455f86f7d0226a7a040b1c02e /src/Hakyll/Core/Provider
parentd406db44e39d310a72ca6bb014ed882f0e883995 (diff)
downloadhakyll-dbabe0325b9d7bca3b14c2b33e686b8151fa79aa.tar.gz
Unified code for global and external metadata
Didn't clean up unused code though
Diffstat (limited to 'src/Hakyll/Core/Provider')
-rw-r--r--src/Hakyll/Core/Provider/Metadata.hs12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/Hakyll/Core/Provider/Metadata.hs b/src/Hakyll/Core/Provider/Metadata.hs
index a54b84a..889291f 100644
--- a/src/Hakyll/Core/Provider/Metadata.hs
+++ b/src/Hakyll/Core/Provider/Metadata.hs
@@ -46,7 +46,7 @@ loadMetadata p identifier = do
gmd <- loadGlobalMetadata p identifier
- return (M.unions [md, emd, gmd], body)
+ return (M.unions [md, gmd], body)
where
normal = setVersion Nothing identifier
fp = resourceFilePath p identifier
@@ -154,11 +154,13 @@ loadGlobalMetadata p fp = liftM M.fromList $ loadgm fp where
concatMap snd . filter (flip matches fp . fromGlob . normalise . combine dir . fst)
namedMetadata :: Parser [(String, [(String, String)])]
-namedMetadata = P.many namedMetadataBlock
+namedMetadata = liftA2 (:) (namedMetadataBlock False) $ P.many $ namedMetadataBlock True
-namedMetadataBlock :: Parser (String, [(String, String)])
-namedMetadataBlock = do
- name <- P.many1 (P.char '-') *> P.many inlineSpace *> P.manyTill P.anyChar newline
+namedMetadataBlock :: Bool -> Parser (String, [(String, String)])
+namedMetadataBlock isNamed = do
+ name <- if isNamed
+ then P.many1 (P.char '-') *> P.many inlineSpace *> P.manyTill P.anyChar newline
+ else pure "**"
metadata' <- metadata
P.skipMany P.space
return (name, metadata')