diff options
author | cel 🌸 <cel@blos.sm> | 2024-07-18 01:37:00 +0100 |
---|---|---|
committer | cel 🌸 <cel@blos.sm> | 2024-07-18 01:37:00 +0100 |
commit | 6c6319c3ecfb9606c32b3c6c9b487da33911f8b6 (patch) | |
tree | a4acdd5843e8e440d01b1ab2bfa4ba0370d04c5e /site.hs | |
parent | 43ea12ee41d39f387bf4338b5709fffdb1650f0e (diff) | |
download | infoculture.pub-6c6319c3ecfb9606c32b3c6c9b487da33911f8b6.tar.gz infoculture.pub-6c6319c3ecfb9606c32b3c6c9b487da33911f8b6.tar.bz2 infoculture.pub-6c6319c3ecfb9606c32b3c6c9b487da33911f8b6.zip |
add resources dir
Diffstat (limited to '')
-rw-r--r-- | site.hs | 42 |
1 files changed, 36 insertions, 6 deletions
@@ -69,18 +69,46 @@ main = hakyll $ do route idRoute compile getResourceBody + match "resources/*" $ do + route $ setExtension "html" `composeRoutes` + appendIndex + compile $ pandocCompiler + >>= saveSnapshot "article-text" + >>= loadAndApplyTemplate "templates/resource.html" postCtx + >>= saveSnapshot "content" + >>= loadAndApplyTemplate "templates/base.html" postCtx + >>= relativizeUrls + + match "resources/*" $ version "raw" $ do + route idRoute + compile getResourceBody + + create ["resources.html"] $ do + route appendIndex + compile $ do + resources <- loadAll ("resources/*" .&&. hasNoVersion) + let resourcesCtx = + listField "resources" postCtx (return resources) `mappend` + constField "title" "resources" `mappend` + defaultContext + + makeItem "" + >>= loadAndApplyTemplate "templates/resources.html" resourcesCtx + >>= loadAndApplyTemplate "templates/base.html" resourcesCtx + >>= relativizeUrls + create ["archives.html"] $ do route appendIndex compile $ do posts <- recentFirst =<< loadAll ("posts/*" .&&. hasNoVersion) - let archiveCtx = + let archivesCtx = listField "posts" postCtx (return posts) `mappend` constField "title" "archives" `mappend` defaultContext makeItem "" - >>= loadAndApplyTemplate "templates/archives.html" archiveCtx - >>= loadAndApplyTemplate "templates/base.html" archiveCtx + >>= loadAndApplyTemplate "templates/archives.html" archivesCtx + >>= loadAndApplyTemplate "templates/base.html" archivesCtx >>= relativizeUrls @@ -104,7 +132,8 @@ main = hakyll $ do compile $ do let feedCtx = postCtx `mappend` bodyField "description" posts <- fmap (take 10) . recentFirst =<< - loadAllSnapshots ("posts/*" .&&. hasNoVersion) "content" + loadAllSnapshots (("resources/*" .&&. hasNoVersion) .||. ("posts/*" .&&. hasNoVersion)) "content" + renderAtom feedConfig feedCtx posts create ["sitemap.xml"] $ do @@ -112,12 +141,13 @@ main = hakyll $ do compile $ do -- load and sort the posts posts <- recentFirst =<< loadAll "posts/*" + resources <- recentFirst =<< loadAll "resources/*" -- load individual pages from a list (globs DO NOT work here) - singlePages <- loadAll (fromList ["about.md", "contact.md", "archives.html", "feed.xml"]) + singlePages <- loadAll (fromList ["about.md", "contact.md", "archives.html", "resources.html", "feed.xml"]) -- mappend the posts and singlePages together - let pages = posts <> singlePages + let pages = posts <> resources <> singlePages -- create the `pages` field with the postCtx -- and return the `pages` value for it |