summaryrefslogtreecommitdiff
path: root/src/Hakyll/Web/Template/Internal.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Hakyll/Web/Template/Internal.hs')
-rw-r--r--src/Hakyll/Web/Template/Internal.hs16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/Hakyll/Web/Template/Internal.hs b/src/Hakyll/Web/Template/Internal.hs
index 983bd16..6ccad74 100644
--- a/src/Hakyll/Web/Template/Internal.hs
+++ b/src/Hakyll/Web/Template/Internal.hs
@@ -142,7 +142,7 @@ template = mconcat <$> P.many (P.choice [ lift chunk
, lift escaped
, conditional
, for
- , lift partial
+ , partial
, lift expr
])
where lift = fmap (Template . (:[]))
@@ -246,12 +246,18 @@ for = P.try $ do
--------------------------------------------------------------------------------
-partial :: P.Parser TemplateElement
+partial :: P.Parser Template
partial = P.try $ do
- void $ P.string "$partial("
+ trimLPartial <- trimOpen
+ void $ P.string "partial("
e <- expr'
- void $ P.string ")$"
- return $ Partial e
+ void $ P.char ')'
+ trimRPartial <- trimClose
+
+ pure $ Template $ mconcat [ [TrimL | trimLPartial]
+ , [Partial e]
+ , [TrimR | trimRPartial]
+ ]
--------------------------------------------------------------------------------