diff options
Diffstat (limited to 'src/Hakyll/Web.hs')
-rw-r--r-- | src/Hakyll/Web.hs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/Hakyll/Web.hs b/src/Hakyll/Web.hs index bc7710f..536abda 100644 --- a/src/Hakyll/Web.hs +++ b/src/Hakyll/Web.hs @@ -3,19 +3,30 @@ module Hakyll.Web ( defaultPageRead , defaultTemplateRead + , defaultRelativizeUrls ) where -import Control.Arrow (arr, (>>>), (>>^)) +import Prelude hiding (id) +import Control.Category (id) +import Control.Arrow (arr, (>>>), (>>^), (&&&)) import Hakyll.Core.Compiler import Hakyll.Web.Page import Hakyll.Web.Pandoc import Hakyll.Web.Template +import Hakyll.Web.RelativizeUrls +import Hakyll.Web.Util.String defaultPageRead :: Compiler () (Page String) defaultPageRead = cached "Hakyll.Web.defaultPageRead" $ pageRead >>> addDefaultFields >>> arr applySelf >>> pageRenderPandoc +defaultRelativizeUrls :: Compiler (Page String) (Page String) +defaultRelativizeUrls = getRoute &&& id >>^ uncurry relativize + where + relativize Nothing = id + relativize (Just r) = fmap (relativizeUrls $ toSiteRoot r) + defaultTemplateRead :: Compiler () Template defaultTemplateRead = cached "Hakyll.Web.defaultTemplateRead" $ getResourceString >>^ readTemplate |