slick-1.0.0.0: A quick & easy static site builder built with shake and pandoc.

Copyright(c) Chris Penner 2019
LicenseBSD3
Safe HaskellNone
LanguageHaskell2010

Slick.Pandoc

Description

 
Synopsis

Documentation

markdownToHTML :: Text -> Action Value Source #

Convert markdown text into a Value;

The Value has a "content" key containing rendered HTML.

Metadata is assigned on the respective keys in the Value

markdownToHTML' :: FromJSON a => Text -> Action a Source #

Like markdownToHTML but allows returning any JSON serializable object

markdownToHTMLWithOpts Source #

Arguments

:: ReaderOptions

Pandoc reader options to specify extensions or other functionality

-> WriterOptions

Pandoc writer options to modify output

-> Text

Text for conversion

-> Action Value 

Like markdownToHTML but allows returning any JSON serializable object

markdownToHTMLWithOpts' Source #

Arguments

:: FromJSON a 
=> ReaderOptions

Pandoc reader options to specify extensions or other functionality

-> WriterOptions

Pandoc writer options to modify output

-> Text

Text for conversion

-> Action a 

Like markdownToHTML but allows returning any JSON serializable object

makePandocReader :: PandocReader textType -> textType -> Action (Pandoc, Value) Source #

Given a reader from Readers this creates a loader which given the source document will read its metadata into a Value returning both the Pandoc object and the metadata within an Action

makePandocReader' :: FromJSON a => PandocReader textType -> textType -> Action (Pandoc, a) Source #

Like makePandocReader but will deserialize the metadata into any object which implements FromJSON. Failure to deserialize will fail the Shake build.

type PandocReader textType = textType -> PandocIO Pandoc Source #

loadUsing :: PandocReader textType -> PandocWriter -> textType -> Action Value Source #

Load in a source document using the given PandocReader, then render the Pandoc into text using the given PandocWriter. Returns a Value wherein the rendered text is set to the "content" key and any metadata is set to its respective key in the Value

loadUsing' :: FromJSON a => PandocReader textType -> PandocWriter -> textType -> Action a Source #

Like loadUsing but allows also deserializes the Value into any object which implements FromJSON. Failure to deserialize will fail the Shake build.

defaultMarkdownOptions :: ReaderOptions Source #

Reasonable options for reading a markdown file. Behaves similar to Github Flavoured Markdown

defaultHtml5Options :: WriterOptions Source #

Reasonable options for rendering to HTML. Includes default code highlighting rules

convert :: (FromJSON a, ToJSON a, FromJSON b) => a -> Action b Source #

Attempt to convert between two JSON serializable objects (or Values). Failure to deserialize fails the Shake build.

flattenMeta :: Meta -> Value Source #

Flatten a Pandoc Meta into a well-structured JSON object, rendering Pandoc text objects into plain strings along the way.