| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Hakyll.Web.Template.Internal
Synopsis
- data Template = Template {}
- template :: FilePath -> [TemplateElement] -> Template
- templateBodyCompiler :: Compiler (Item Template)
- templateCompiler :: Compiler (Item Template)
- applyTemplate :: Template -> Context a -> Item a -> Compiler (Item String)
- loadAndApplyTemplate :: Identifier -> Context a -> Item a -> Compiler (Item String)
- applyAsTemplate :: Context String -> Item String -> Compiler (Item String)
- readTemplate :: String -> Template
- compileTemplateItem :: Item String -> Compiler Template
- unsafeReadTemplateFile :: FilePath -> Compiler Template
- module Hakyll.Web.Template.Internal.Element
- module Hakyll.Web.Template.Internal.Trim
Documentation
Datatype used for template substitutions.
Constructors
| Template | |
Fields
| |
Instances
| IsString Template Source # | |
Defined in Hakyll.Web.Template.Internal Methods fromString :: String -> Template # | |
| Generic Template Source # | |
| Show Template Source # | |
| Binary Template Source # | |
| Eq Template Source # | |
| Writable Template Source # | |
| type Rep Template Source # | |
Defined in Hakyll.Web.Template.Internal type Rep Template = D1 ('MetaData "Template" "Hakyll.Web.Template.Internal" "hakyll-4.16.6.0-5rLbQmzhB1ICbZ1ZhqEJET" 'False) (C1 ('MetaCons "Template" 'PrefixI 'True) (S1 ('MetaSel ('Just "tplElements") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [TemplateElement]) :*: S1 ('MetaSel ('Just "tplOrigin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath))) | |
template :: FilePath -> [TemplateElement] -> Template Source #
Wrap the constructor to ensure trim is called.
Interpolate template expressions from context values in a page
Arguments
| :: Identifier | Template identifier |
| -> Context a | Context |
| -> Item a | Page |
| -> Compiler (Item String) | Resulting item |
The following pattern is so common:
tpl <- loadBody "templates/foo.html"
someCompiler
>>= applyTemplate tpl contextThat we have a single function which does this:
someCompiler
>>= loadAndApplyTemplate "templates/foo.html" contextArguments
| :: Context String | Context |
| -> Item String | Item and template |
| -> Compiler (Item String) | Resulting item |
It is also possible that you want to substitute $key$s within the body of
an item. This function does that by interpreting the item body as a template,
and then applying it to itself.
readTemplate :: String -> Template Source #
Deprecated: Use templateCompiler instead
Parse a string into a template.
You should prefer compileTemplateItem over this.