diff options
| author | Alexey Kreshchuk <akrsch@gmail.com> | 2014-01-22 00:11:51 +0400 |
|---|---|---|
| committer | Alexey Kreshchuk <akrsch@gmail.com> | 2014-01-22 00:11:51 +0400 |
| commit | dbabe0325b9d7bca3b14c2b33e686b8151fa79aa (patch) | |
| tree | 797c4edad131143455f86f7d0226a7a040b1c02e /src/Hakyll/Core/Provider | |
| parent | d406db44e39d310a72ca6bb014ed882f0e883995 (diff) | |
| download | hakyll-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.hs | 12 |
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') |
