@@ -64,7 +64,7 @@ module Text.Pandoc
6464 -- * Lists of readers and writers
6565 , readers
6666 -- , writers
67− , writers'
67+ , writers
6868 -- * Readers: converting /to/ Pandoc format
6969 , Reader (..)
7070 , mkStringReader
@@ -88,8 +88,7 @@ module Text.Pandoc
8888 , readTxt2TagsNoMacros
8989 , readEPUB
9090 -- * Writers: converting /from/ Pandoc format
91− -- , Writer (..)
92− , Writer'(..)
91+ , Writer(..)
9392 , writeNative
9493 , writeJSON
9594 , writeMarkdown
@@ -124,8 +123,7 @@ module Text.Pandoc
124123 , module Text.Pandoc.Templates
125124 -- * Miscellaneous
126125 , getReader
127− -- , getWriter
128− , getWriter'
126+ , getWriter
129127 , getDefaultExtensions
130128 , ToJsonFilter(..)
131129 , pandocVersion
@@ -335,67 +333,67 @@ readers = [ ("native" , StringReader $ \_ s -> return $ readNative s)
335333-- ,("tei" , PureStringWriter writeTEI)
336334-- ]
337335
338−data Writer' m = StringWriter' (WriterOptions -> Pandoc -> m String)
339− | ByteStringWriter' (WriterOptions -> Pandoc -> m BL.ByteString)
336+data Writer m = StringWriter (WriterOptions -> Pandoc -> m String)
337+ | ByteStringWriter (WriterOptions -> Pandoc -> m BL.ByteString)
340338
341339-- | Association list of formats and writers.
342−writers' :: PandocMonad m => [ ( String, Writer' m) ]
343−writers' = [
344− ("native" , StringWriter' writeNative)
345− ,("json" , StringWriter' $ \o d -> return $ writeJSON o d)
346− ,("docx" , ByteStringWriter' writeDocx)
347− ,("odt" , ByteStringWriter' writeODT)
348− ,("epub" , ByteStringWriter' $ \o ->
340+writers :: PandocMonad m => [ ( String, Writer m) ]
341+writers = [
342+ ("native" , StringWriter writeNative)
343+ ,("json" , StringWriter $ \o d -> return $ writeJSON o d)
344+ ,("docx" , ByteStringWriter writeDocx)
345+ ,("odt" , ByteStringWriter writeODT)
346+ ,("epub" , ByteStringWriter $ \o ->
349347 writeEPUB o{ writerEpubVersion = Just EPUB2 })
350− ,("epub3" , ByteStringWriter' $ \o ->
348+ ,("epub3" , ByteStringWriter $ \o ->
351349 writeEPUB o{ writerEpubVersion = Just EPUB3 })
352− ,("fb2" , StringWriter' writeFB2)
353− ,("html" , StringWriter' writeHtmlString)
354− ,("html5" , StringWriter' $ \o ->
350+ ,("fb2" , StringWriter writeFB2)
351+ ,("html" , StringWriter writeHtmlString)
352+ ,("html5" , StringWriter $ \o ->
355353 writeHtmlString o{ writerHtml5 = True })
356− ,("icml" , StringWriter' writeICML)
357− ,("s5" , StringWriter' $ \o ->
354+ ,("icml" , StringWriter writeICML)
355+ ,("s5" , StringWriter $ \o ->
358356 writeHtmlString o{ writerSlideVariant = S5Slides
359357 , writerTableOfContents = False })
360− ,("slidy" , StringWriter' $ \o ->
358+ ,("slidy" , StringWriter $ \o ->
361359 writeHtmlString o{ writerSlideVariant = SlidySlides })
362− ,("slideous" , StringWriter' $ \o ->
360+ ,("slideous" , StringWriter $ \o ->
363361 writeHtmlString o{ writerSlideVariant = SlideousSlides })
364− ,("dzslides" , StringWriter' $ \o ->
362+ ,("dzslides" , StringWriter $ \o ->
365363 writeHtmlString o{ writerSlideVariant = DZSlides
366364 , writerHtml5 = True })
367− ,("revealjs" , StringWriter' $ \o ->
365+ ,("revealjs" , StringWriter $ \o ->
368366 writeHtmlString o{ writerSlideVariant = RevealJsSlides
369367 , writerHtml5 = True })
370− ,("docbook" , StringWriter' writeDocbook)
371− ,("docbook5" , StringWriter' $ \o ->
368+ ,("docbook" , StringWriter writeDocbook)
369+ ,("docbook5" , StringWriter $ \o ->
372370 writeDocbook o{ writerDocbook5 = True })
373− ,("opml" , StringWriter' writeOPML)
374− ,("opendocument" , StringWriter' writeOpenDocument)
375− ,("latex" , StringWriter' writeLaTeX)
376− ,("beamer" , StringWriter' $ \o ->
371+ ,("opml" , StringWriter writeOPML)
372+ ,("opendocument" , StringWriter writeOpenDocument)
373+ ,("latex" , StringWriter writeLaTeX)
374+ ,("beamer" , StringWriter $ \o ->
377375 writeLaTeX o{ writerBeamer = True })
378− ,("context" , StringWriter' writeConTeXt)
379− ,("texinfo" , StringWriter' writeTexinfo)
380− ,("man" , StringWriter' writeMan)
381− ,("markdown" , StringWriter' writeMarkdown)
382− ,("markdown_strict" , StringWriter' writeMarkdown)
383− ,("markdown_phpextra" , StringWriter' writeMarkdown)
384− ,("markdown_github" , StringWriter' writeMarkdown)
385− ,("markdown_mmd" , StringWriter' writeMarkdown)
386− ,("plain" , StringWriter' writePlain)
387− ,("rst" , StringWriter' writeRST)
388− ,("mediawiki" , StringWriter' writeMediaWiki)
389− ,("dokuwiki" , StringWriter' writeDokuWiki)
390− ,("zimwiki" , StringWriter' writeZimWiki)
391− ,("textile" , StringWriter' writeTextile)
392− ,("rtf" , StringWriter' $ \o ->
376+ ,("context" , StringWriter writeConTeXt)
377+ ,("texinfo" , StringWriter writeTexinfo)
378+ ,("man" , StringWriter writeMan)
379+ ,("markdown" , StringWriter writeMarkdown)
380+ ,("markdown_strict" , StringWriter writeMarkdown)
381+ ,("markdown_phpextra" , StringWriter writeMarkdown)
382+ ,("markdown_github" , StringWriter writeMarkdown)
383+ ,("markdown_mmd" , StringWriter writeMarkdown)
384+ ,("plain" , StringWriter writePlain)
385+ ,("rst" , StringWriter writeRST)
386+ ,("mediawiki" , StringWriter writeMediaWiki)
387+ ,("dokuwiki" , StringWriter writeDokuWiki)
388+ ,("zimwiki" , StringWriter writeZimWiki)
389+ ,("textile" , StringWriter writeTextile)
390+ ,("rtf" , StringWriter $ \o ->
393391 writeRTFWithEmbeddedImages o)
394− ,("org" , StringWriter' writeOrg)
395− ,("asciidoc" , StringWriter' writeAsciiDoc)
396− ,("haddock" , StringWriter' writeHaddock)
397− ,("commonmark" , StringWriter' writeCommonMark)
398− ,("tei" , StringWriter' writeTEI)
392+ ,("org" , StringWriter writeOrg)
393+ ,("asciidoc" , StringWriter writeAsciiDoc)
394+ ,("haddock" , StringWriter writeHaddock)
395+ ,("commonmark" , StringWriter writeCommonMark)
396+ ,("tei" , StringWriter writeTEI)
399397 ]
400398
401399getDefaultExtensions :: String -> Set Extension
@@ -433,35 +431,17 @@ getReader s =
433431 r o{ readerExtensions = setExts $
434432 getDefaultExtensions readerName }
435433
436−-- | Retrieve writer based on formatSpec (format+extensions).
437−-- getWriter :: String -> Either String Writer
438−-- getWriter s
439−-- = case parseFormatSpec s of
440−-- Left e -> Left $ intercalate "\n" [m | Message m <- errorMessages e]
441−-- Right (writerName, setExts) ->
442−-- case lookup writerName writers of
443−-- Nothing -> Left $ "Unknown writer: " ++ writerName
444−-- Just (PureStringWriter r) -> Right $ PureStringWriter $
445−-- \o -> r o{ writerExtensions = setExts $
446−-- getDefaultExtensions writerName }
447−-- Just (IOStringWriter r) -> Right $ IOStringWriter $
448−-- \o -> r o{ writerExtensions = setExts $
449−-- getDefaultExtensions writerName }
450−-- Just (IOByteStringWriter r) -> Right $ IOByteStringWriter $
451−-- \o -> r o{ writerExtensions = setExts $
452−-- getDefaultExtensions writerName }
453−
454−getWriter' :: PandocMonad m => String -> Either String (Writer' m)
455−getWriter' s
434+getWriter :: PandocMonad m => String -> Either String (Writer m)
435+getWriter s
456436 = case parseFormatSpec s of
457437 Left e -> Left $ intercalate "\n" [m | Message m <- errorMessages e]
458438 Right (writerName, setExts) ->
459− case lookup writerName writers' of
439+ case lookup writerName writers of
460440 Nothing -> Left $ "Unknown writer: " ++ writerName
461− Just (StringWriter' r) -> Right $ StringWriter' $
441+ Just (StringWriter r) -> Right $ StringWriter $
462442 \o -> r o{ writerExtensions = setExts $
463443 getDefaultExtensions writerName }
464− Just (ByteStringWriter' r) -> Right $ ByteStringWriter' $
444+ Just (ByteStringWriter r) -> Right $ ByteStringWriter $
465445 \o -> r o{ writerExtensions = setExts $
466446 getDefaultExtensions writerName }
467447