diff options
author | John MacFarlane <jgm@berkeley.edu> | 2010-12-10 17:30:32 -0800 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2010-12-10 17:30:32 -0800 |
commit | 9602f73f2a943c21a5d1593e99cdbcbde08f6dcb (patch) | |
tree | fb02a56fde28169aa7d81b8150d6ced81a287df4 /src/Text | |
parent | de6452c0d1696767c2b08b031e44cbce4df8bc58 (diff) | |
download | pandoc-9602f73f2a943c21a5d1593e99cdbcbde08f6dcb.tar.gz |
Moved 'readers' and 'writers' to Text.Pandoc.
This allows library users to avoid repetitive case statements...
Diffstat (limited to 'src/Text')
-rw-r--r-- | src/Text/Pandoc.hs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/Text/Pandoc.hs b/src/Text/Pandoc.hs index ab1e3cd03..0ac558663 100644 --- a/src/Text/Pandoc.hs +++ b/src/Text/Pandoc.hs @@ -57,6 +57,9 @@ module Text.Pandoc ( -- * Definitions module Text.Pandoc.Definition + -- * Lists of readers and writers + , readers + , writers -- * Readers: converting /to/ Pandoc format , readMarkdown , readRST @@ -132,3 +135,42 @@ import Paths_pandoc (version) -- | Version number of pandoc library. pandocVersion :: String pandocVersion = showVersion version + +-- | Association list of formats and readers. +readers :: [(String, ParserState -> String -> Pandoc)] +readers = [("native" , \_ -> read) + ,("markdown" , readMarkdown) + ,("markdown+lhs" , readMarkdown) + ,("rst" , readRST) + ,("textile" , readTextile) -- TODO : textile+lhs + ,("rst+lhs" , readRST) + ,("html" , readHtml) + ,("latex" , readLaTeX) + ,("latex+lhs" , readLaTeX) + ] + +-- | Association list of formats and writers (omitting the +-- binary writers, odt and epub). +writers :: [ ( String, WriterOptions -> Pandoc -> String ) ] +writers = [("native" , writeNative) + ,("html" , writeHtmlString) + ,("html+lhs" , writeHtmlString) + ,("s5" , writeHtmlString) + ,("slidy" , writeHtmlString) + ,("docbook" , writeDocbook) + ,("opendocument" , writeOpenDocument) + ,("latex" , writeLaTeX) + ,("latex+lhs" , writeLaTeX) + ,("context" , writeConTeXt) + ,("texinfo" , writeTexinfo) + ,("man" , writeMan) + ,("markdown" , writeMarkdown) + ,("markdown+lhs" , writeMarkdown) + ,("plain" , writePlain) + ,("rst" , writeRST) + ,("rst+lhs" , writeRST) + ,("mediawiki" , writeMediaWiki) + ,("textile" , writeTextile) + ,("rtf" , writeRTF) + ,("org" , writeOrg) + ] |