summaryrefslogtreecommitdiff
path: root/src/Hakyll/Web/Page.hs
diff options
context:
space:
mode:
authorJasper Van der Jeugt <jaspervdj@gmail.com>2011-02-15 22:15:02 +0100
committerJasper Van der Jeugt <jaspervdj@gmail.com>2011-02-15 22:15:02 +0100
commitd00026366c78ef8578f7a9503ced4915b1d4ec28 (patch)
tree633074bd3e9cf2d961be5b1429ee19d35e68b439 /src/Hakyll/Web/Page.hs
parent3346123ca661d578ccb458e7135f8b68867bf107 (diff)
downloadhakyll-d00026366c78ef8578f7a9503ced4915b1d4ec28.tar.gz
defaultPageRead → defaultPageCompiler
Diffstat (limited to 'src/Hakyll/Web/Page.hs')
-rw-r--r--src/Hakyll/Web/Page.hs15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/Hakyll/Web/Page.hs b/src/Hakyll/Web/Page.hs
index 03995cd..30578e9 100644
--- a/src/Hakyll/Web/Page.hs
+++ b/src/Hakyll/Web/Page.hs
@@ -51,14 +51,15 @@ module Hakyll.Web.Page
, fromBody
, fromMap
, toMap
- , pageRead
+ , readPageCompiler
+ , defaultPageCompiler
, addDefaultFields
, sortByBaseName
) where
import Prelude hiding (id)
import Control.Category (id)
-import Control.Arrow ((>>^), (&&&), (>>>))
+import Control.Arrow (arr, (>>^), (&&&), (>>>))
import System.FilePath (takeBaseName, takeDirectory)
import Data.Monoid (Monoid, mempty)
import Data.Map (Map)
@@ -72,6 +73,8 @@ import Hakyll.Core.ResourceProvider
import Hakyll.Web.Page.Internal
import Hakyll.Web.Page.Read
import Hakyll.Web.Page.Metadata
+import Hakyll.Web.Pandoc
+import Hakyll.Web.Template
import Hakyll.Web.Util.String
-- | Create a page from a body, without metadata
@@ -91,8 +94,12 @@ toMap (Page m b) = M.insert "body" b m
-- | Read a page (do not render it)
--
-pageRead :: Compiler Resource (Page String)
-pageRead = getResourceString >>^ readPage
+readPageCompiler :: Compiler Resource (Page String)
+readPageCompiler = getResourceString >>^ readPage
+
+defaultPageCompiler :: Compiler Resource (Page String)
+defaultPageCompiler = cached "Hakyll.Web.Page.defaultPageCompiler" $
+ readPageCompiler >>> addDefaultFields >>> arr applySelf >>> pageRenderPandoc
-- | Add a number of default metadata fields to a page. These fields include:
--