diff options
| author | Mirek Kratochvil <miroslav.kratochvil@uni.lu> | 2023-10-20 09:04:58 +0200 |
|---|---|---|
| committer | Mirek Kratochvil <miroslav.kratochvil@uni.lu> | 2023-10-20 09:04:58 +0200 |
| commit | 4fb6f81d8314140ad65a6099209106c92db3cfba (patch) | |
| tree | 57423493e546c4984ba8607e5dcbdbf4453fdcf1 /reploy.hs | |
| parent | 7cd0443f9cf34a5278fa5bb90a5ca9bfce425890 (diff) | |
| download | reploy-4fb6f81d8314140ad65a6099209106c92db3cfba.tar.gz reploy-4fb6f81d8314140ad65a6099209106c92db3cfba.tar.bz2 | |
support multiple template directories
closes #17
Diffstat (limited to 'reploy.hs')
| -rw-r--r-- | reploy.hs | 19 |
1 files changed, 9 insertions, 10 deletions
@@ -118,19 +118,18 @@ pageTemplates = do -- | Compile a single template in a directory compileTemplate :: - FilePath - -> FilePath - -> Site (Either Text.Parsec.Error.ParseError Mu.Template) -compileTemplate templdir templ = + FilePath -> Site (Either Text.Parsec.Error.ParseError Mu.Template) +compileTemplate templ = do + tds <- use templateDirs io $ do - putStrLn $ "T <- " ++ (templdir </> templ) - Mu.automaticCompile [templdir] templ + putStrLn $ "T <- " ++ templ + Mu.automaticCompile tds templ -- | Use a template set from a given directory. -sourceTemplates :: FilePath -> Site () -sourceTemplates templdir = do +sourceTemplates :: Site () +sourceTemplates = do ts <- pageTemplates - templs' <- fmap sequence . traverse (compileTemplate templdir) $ ts + templs' <- fmap sequence . traverse compileTemplate $ ts case templs' of Left err -> error $ "template compilation: " ++ show err Right templs -> templates .= M.fromList (zip ts templs) @@ -492,7 +491,7 @@ main = do use sourceDirs >>= traverse sourcePages use sourceDirs >>= traverse sourceTagMeta sourceTags - use templateDir >>= sourceTemplates + sourceTemplates use pages >>= traverse (uncurry installPage) . M.assocs renderTags renderLists |
