Library to translate markdown documents into HTML or LaTeX. The slightly restricted subset of the markdown syntax recognized by this implementation is documented in this page.
Author: Michael Hanus
Version: November 2023
fromMarkdownText
:: String -> [MarkdownElem]
Parse markdown document from its textual representation. |
removeEscapes
:: String -> String
Remove the backlash of escaped markdown characters in a string. |
markdownEscapeChars
:: String
Escape characters supported by markdown. |
markdownText2HTML
:: HTML a => String -> [a]
Translate a markdown text into a (partial) HTML document. |
markdownText2CompleteHTML
:: String -> String -> String
Translate a markdown text into a complete HTML text that can be viewed as a standalone document by a browser. |
markdownText2LaTeX
:: String -> String
Translate a markdown text into a (partial) LaTeX document. |
markdownText2LaTeXWithFormat
:: (String -> String) -> String -> String
Translate a markdown text into a (partial) LaTeX document where the first argument is a function to translate the basic text occurring in markdown elements to a LaTeX string. |
markdownText2CompleteLaTeX
:: String -> String
Translate a markdown text into a complete LaTeX document that can be formatted as a standalone document. |
formatMarkdownInputAsPDF
:: String -> IO ()
Format the standard input (containing markdown text) as PDF. |
formatMarkdownFileAsPDF
:: String -> String -> IO ()
Format a file containing markdown text as PDF. |
A markdown document is a list of markdown elements.
Type synonym: MarkdownDoc = [MarkdownElem]
The data type for representing the different elements occurring in a markdown document.
Constructors:
Text
:: String -> MarkdownElem
: a simple text in a markdown document
Emph
:: String -> MarkdownElem
: an emphasized text in a markdown document
Strong
:: String -> MarkdownElem
: a strongly emphaszed text in a markdown document
Code
:: String -> MarkdownElem
: a code string in a markdown document
HRef
:: String -> String -> MarkdownElem
: a reference to URL u
with text s
in a markdown document
Par
:: MarkdownDoc -> MarkdownElem
: a paragraph in a markdown document
CodeBlock
:: String -> MarkdownElem
: a code block in a markdown document
UList
:: [MarkdownDoc] -> MarkdownElem
: an unordered list in a markdown document
OList
:: [MarkdownDoc] -> MarkdownElem
: an ordered list in a markdown document
Quote
:: MarkdownDoc -> MarkdownElem
: a quoted paragraph in a markdown document
HRule
:: MarkdownElem
: a hoirzontal rule in a markdown document
Header
:: Int -> String -> MarkdownElem
: a level l
header with title s
in a markdown document
Parse markdown document from its textual representation. |
Remove the backlash of escaped markdown characters in a string. |
Escape characters supported by markdown.
|
Translate a markdown text into a (partial) HTML document. |
Translate a markdown text into a complete HTML text that can be viewed as a standalone document by a browser. The first argument is the title of the document. |
Translate a markdown text into a (partial) LaTeX document. All characters with a special meaning in LaTeX, like dollar or ampersand signs, are quoted. |
Translate a markdown text into a (partial) LaTeX document where the first argument is a function to translate the basic text occurring in markdown elements to a LaTeX string. For instance, one can use a translation operation that supports passing mathematical formulas in LaTeX style instead of quoting all special characters. |
Translate a markdown text into a complete LaTeX document that can be formatted as a standalone document. |
Format the standard input (containing markdown text) as PDF. |
Format a file containing markdown text as PDF. |