aboutsummaryrefslogtreecommitdiff
path: root/reploy.hs
diff options
context:
space:
mode:
authorMirek Kratochvil <miroslav.kratochvil@uni.lu>2023-10-20 09:04:58 +0200
committerMirek Kratochvil <miroslav.kratochvil@uni.lu>2023-10-20 09:04:58 +0200
commit4fb6f81d8314140ad65a6099209106c92db3cfba (patch)
tree57423493e546c4984ba8607e5dcbdbf4453fdcf1 /reploy.hs
parent7cd0443f9cf34a5278fa5bb90a5ca9bfce425890 (diff)
downloadreploy-4fb6f81d8314140ad65a6099209106c92db3cfba.tar.gz
reploy-4fb6f81d8314140ad65a6099209106c92db3cfba.tar.bz2
support multiple template directories
closes #17
Diffstat (limited to 'reploy.hs')
-rw-r--r--reploy.hs19
1 files changed, 9 insertions, 10 deletions
diff --git a/reploy.hs b/reploy.hs
index 8f94c40..2b431ae 100644
--- a/reploy.hs
+++ b/reploy.hs
@@ -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