git.iko.soy/typeable/pandoc
on master help sign in
Clean up Text.Pandoc
04545c9Jesse Rosenthal
pandoc.hs+5−5
@@ -915,7 +915,7 @@ options =
915 let allopts = unwords (concatMap optnames options)
915 let allopts = unwords (concatMap optnames options)
916 UTF8.hPutStrLn stdout $ printf tpl allopts
916 UTF8.hPutStrLn stdout $ printf tpl allopts
917 (unwords (map fst readers))
917 (unwords (map fst readers))
918− (unwords (map fst (writers' :: [(String, Writer' PandocIO)])))
918+ (unwords (map fst (writers :: [(String, Writer PandocIO)])))
919 (unwords $ map fst highlightingStyles)
919 (unwords $ map fst highlightingStyles)
920 ddir
920 ddir
921 exitSuccess ))
921 exitSuccess ))
@@ -932,7 +932,7 @@ options =
932 , Option "" ["list-output-formats"]
932 , Option "" ["list-output-formats"]
933 (NoArg
933 (NoArg
934 (\_ -> do
934 (\_ -> do
935− let writers'names = sort (map fst (writers' :: [(String, Writer' PandocIO)]))
935+ let writers'names = sort (map fst (writers :: [(String, Writer PandocIO)]))
936 mapM_ (UTF8.hPutStrLn stdout) writers'names
936 mapM_ (UTF8.hPutStrLn stdout) writers'names
937 exitSuccess ))
937 exitSuccess ))
938 ""
938 ""
@@ -1274,7 +1274,7 @@ convertWithOpts opts args = do
1274 writer <- if ".lua" `isSuffixOf` format
1274 writer <- if ".lua" `isSuffixOf` format
1275 -- note: use non-lowercased version writerName
1275 -- note: use non-lowercased version writerName
1276 then error "custom writers disabled for now"
1276 then error "custom writers disabled for now"
1277− else case getWriter' writerName' of
1277+ else case getWriter writerName' of
1278 Left e -> err 9 $
1278 Left e -> err 9 $
1279 if format == "pdf"
1279 if format == "pdf"
1280 then e ++
1280 then e ++
@@ -1481,8 +1481,8 @@ convertWithOpts opts args = do
1481
1481
1482 case writer of
1482 case writer of
1483 -- StringWriter f -> f writerOptions doc' >>= writerFn outputFile
1483 -- StringWriter f -> f writerOptions doc' >>= writerFn outputFile
1484− ByteStringWriter' f -> (runIOorExplode $ f writerOptions doc') >>= writeFnBinary outputFile
1484+ ByteStringWriter f -> (runIOorExplode $ f writerOptions doc') >>= writeFnBinary outputFile
1485− StringWriter' f
1485+ StringWriter f
1486 | pdfOutput -> do
1486 | pdfOutput -> do
1487 -- make sure writer is latex or beamer or context or html5
1487 -- make sure writer is latex or beamer or context or html5
1488 unless (laTeXOutput || conTeXtOutput || html5Output) $
1488 unless (laTeXOutput || conTeXtOutput || html5Output) $
src/Text/Pandoc.hs+53−73
@@ -64,7 +64,7 @@ module Text.Pandoc
64 -- * Lists of readers and writers
64 -- * Lists of readers and writers
65 , readers
65 , readers
66 -- , writers
66 -- , writers
67− , writers'
67+ , writers
68 -- * Readers: converting /to/ Pandoc format
68 -- * Readers: converting /to/ Pandoc format
69 , Reader (..)
69 , Reader (..)
70 , mkStringReader
70 , mkStringReader
@@ -88,8 +88,7 @@ module Text.Pandoc
88 , readTxt2TagsNoMacros
88 , readTxt2TagsNoMacros
89 , readEPUB
89 , readEPUB
90 -- * Writers: converting /from/ Pandoc format
90 -- * Writers: converting /from/ Pandoc format
91− -- , Writer (..)
92− , Writer'(..)
91+ , Writer(..)
93 , writeNative
92 , writeNative
94 , writeJSON
93 , writeJSON
95 , writeMarkdown
94 , writeMarkdown
@@ -124,8 +123,7 @@ module Text.Pandoc
124 , module Text.Pandoc.Templates
123 , module Text.Pandoc.Templates
125 -- * Miscellaneous
124 -- * Miscellaneous
126 , getReader
125 , getReader
127− -- , getWriter
128− , getWriter'
126+ , getWriter
129 , getDefaultExtensions
127 , getDefaultExtensions
130 , ToJsonFilter(..)
128 , ToJsonFilter(..)
131 , pandocVersion
129 , pandocVersion
@@ -335,67 +333,67 @@ readers = [ ("native" , StringReader $ \_ s -> return $ readNative s)
335-- ,("tei" , PureStringWriter writeTEI)
333-- ,("tei" , PureStringWriter writeTEI)
336-- ]
334-- ]
337
335
338−data Writer' m = StringWriter' (WriterOptions -> Pandoc -> m String)
336+data Writer m = StringWriter (WriterOptions -> Pandoc -> m String)
339− | ByteStringWriter' (WriterOptions -> Pandoc -> m BL.ByteString)
337+ | ByteStringWriter (WriterOptions -> Pandoc -> m BL.ByteString)
340
338
341-- | Association list of formats and writers.
339-- | Association list of formats and writers.
342−writers' :: PandocMonad m => [ ( String, Writer' m) ]
340+writers :: PandocMonad m => [ ( String, Writer m) ]
343−writers' = [
341+writers = [
344− ("native" , StringWriter' writeNative)
342+ ("native" , StringWriter writeNative)
345− ,("json" , StringWriter' $ \o d -> return $ writeJSON o d)
343+ ,("json" , StringWriter $ \o d -> return $ writeJSON o d)
346− ,("docx" , ByteStringWriter' writeDocx)
344+ ,("docx" , ByteStringWriter writeDocx)
347− ,("odt" , ByteStringWriter' writeODT)
345+ ,("odt" , ByteStringWriter writeODT)
348− ,("epub" , ByteStringWriter' $ \o ->
346+ ,("epub" , ByteStringWriter $ \o ->
349 writeEPUB o{ writerEpubVersion = Just EPUB2 })
347 writeEPUB o{ writerEpubVersion = Just EPUB2 })
350− ,("epub3" , ByteStringWriter' $ \o ->
348+ ,("epub3" , ByteStringWriter $ \o ->
351 writeEPUB o{ writerEpubVersion = Just EPUB3 })
349 writeEPUB o{ writerEpubVersion = Just EPUB3 })
352− ,("fb2" , StringWriter' writeFB2)
350+ ,("fb2" , StringWriter writeFB2)
353− ,("html" , StringWriter' writeHtmlString)
351+ ,("html" , StringWriter writeHtmlString)
354− ,("html5" , StringWriter' $ \o ->
352+ ,("html5" , StringWriter $ \o ->
355 writeHtmlString o{ writerHtml5 = True })
353 writeHtmlString o{ writerHtml5 = True })
356− ,("icml" , StringWriter' writeICML)
354+ ,("icml" , StringWriter writeICML)
357− ,("s5" , StringWriter' $ \o ->
355+ ,("s5" , StringWriter $ \o ->
358 writeHtmlString o{ writerSlideVariant = S5Slides
356 writeHtmlString o{ writerSlideVariant = S5Slides
359 , writerTableOfContents = False })
357 , writerTableOfContents = False })
360− ,("slidy" , StringWriter' $ \o ->
358+ ,("slidy" , StringWriter $ \o ->
361 writeHtmlString o{ writerSlideVariant = SlidySlides })
359 writeHtmlString o{ writerSlideVariant = SlidySlides })
362− ,("slideous" , StringWriter' $ \o ->
360+ ,("slideous" , StringWriter $ \o ->
363 writeHtmlString o{ writerSlideVariant = SlideousSlides })
361 writeHtmlString o{ writerSlideVariant = SlideousSlides })
364− ,("dzslides" , StringWriter' $ \o ->
362+ ,("dzslides" , StringWriter $ \o ->
365 writeHtmlString o{ writerSlideVariant = DZSlides
363 writeHtmlString o{ writerSlideVariant = DZSlides
366 , writerHtml5 = True })
364 , writerHtml5 = True })
367− ,("revealjs" , StringWriter' $ \o ->
365+ ,("revealjs" , StringWriter $ \o ->
368 writeHtmlString o{ writerSlideVariant = RevealJsSlides
366 writeHtmlString o{ writerSlideVariant = RevealJsSlides
369 , writerHtml5 = True })
367 , writerHtml5 = True })
370− ,("docbook" , StringWriter' writeDocbook)
368+ ,("docbook" , StringWriter writeDocbook)
371− ,("docbook5" , StringWriter' $ \o ->
369+ ,("docbook5" , StringWriter $ \o ->
372 writeDocbook o{ writerDocbook5 = True })
370 writeDocbook o{ writerDocbook5 = True })
373− ,("opml" , StringWriter' writeOPML)
371+ ,("opml" , StringWriter writeOPML)
374− ,("opendocument" , StringWriter' writeOpenDocument)
372+ ,("opendocument" , StringWriter writeOpenDocument)
375− ,("latex" , StringWriter' writeLaTeX)
373+ ,("latex" , StringWriter writeLaTeX)
376− ,("beamer" , StringWriter' $ \o ->
374+ ,("beamer" , StringWriter $ \o ->
377 writeLaTeX o{ writerBeamer = True })
375 writeLaTeX o{ writerBeamer = True })
378− ,("context" , StringWriter' writeConTeXt)
376+ ,("context" , StringWriter writeConTeXt)
379− ,("texinfo" , StringWriter' writeTexinfo)
377+ ,("texinfo" , StringWriter writeTexinfo)
380− ,("man" , StringWriter' writeMan)
378+ ,("man" , StringWriter writeMan)
381− ,("markdown" , StringWriter' writeMarkdown)
379+ ,("markdown" , StringWriter writeMarkdown)
382− ,("markdown_strict" , StringWriter' writeMarkdown)
380+ ,("markdown_strict" , StringWriter writeMarkdown)
383− ,("markdown_phpextra" , StringWriter' writeMarkdown)
381+ ,("markdown_phpextra" , StringWriter writeMarkdown)
384− ,("markdown_github" , StringWriter' writeMarkdown)
382+ ,("markdown_github" , StringWriter writeMarkdown)
385− ,("markdown_mmd" , StringWriter' writeMarkdown)
383+ ,("markdown_mmd" , StringWriter writeMarkdown)
386− ,("plain" , StringWriter' writePlain)
384+ ,("plain" , StringWriter writePlain)
387− ,("rst" , StringWriter' writeRST)
385+ ,("rst" , StringWriter writeRST)
388− ,("mediawiki" , StringWriter' writeMediaWiki)
386+ ,("mediawiki" , StringWriter writeMediaWiki)
389− ,("dokuwiki" , StringWriter' writeDokuWiki)
387+ ,("dokuwiki" , StringWriter writeDokuWiki)
390− ,("zimwiki" , StringWriter' writeZimWiki)
388+ ,("zimwiki" , StringWriter writeZimWiki)
391− ,("textile" , StringWriter' writeTextile)
389+ ,("textile" , StringWriter writeTextile)
392− ,("rtf" , StringWriter' $ \o ->
390+ ,("rtf" , StringWriter $ \o ->
393 writeRTFWithEmbeddedImages o)
391 writeRTFWithEmbeddedImages o)
394− ,("org" , StringWriter' writeOrg)
392+ ,("org" , StringWriter writeOrg)
395− ,("asciidoc" , StringWriter' writeAsciiDoc)
393+ ,("asciidoc" , StringWriter writeAsciiDoc)
396− ,("haddock" , StringWriter' writeHaddock)
394+ ,("haddock" , StringWriter writeHaddock)
397− ,("commonmark" , StringWriter' writeCommonMark)
395+ ,("commonmark" , StringWriter writeCommonMark)
398− ,("tei" , StringWriter' writeTEI)
396+ ,("tei" , StringWriter writeTEI)
399 ]
397 ]
400
398
401getDefaultExtensions :: String -> Set Extension
399getDefaultExtensions :: String -> Set Extension
@@ -433,35 +431,17 @@ getReader s =
433 r o{ readerExtensions = setExts $
431 r o{ readerExtensions = setExts $
434 getDefaultExtensions readerName }
432 getDefaultExtensions readerName }
435
433
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)
434+getWriter :: PandocMonad m => String -> Either String (Writer m)
455−getWriter' s
435+getWriter s
456 = case parseFormatSpec s of
436 = case parseFormatSpec s of
457 Left e -> Left $ intercalate "\n" [m | Message m <- errorMessages e]
437 Left e -> Left $ intercalate "\n" [m | Message m <- errorMessages e]
458 Right (writerName, setExts) ->
438 Right (writerName, setExts) ->
459− case lookup writerName writers' of
439+ case lookup writerName writers of
460 Nothing -> Left $ "Unknown writer: " ++ writerName
440 Nothing -> Left $ "Unknown writer: " ++ writerName
461− Just (StringWriter' r) -> Right $ StringWriter' $
441+ Just (StringWriter r) -> Right $ StringWriter $
462 \o -> r o{ writerExtensions = setExts $
442 \o -> r o{ writerExtensions = setExts $
463 getDefaultExtensions writerName }
443 getDefaultExtensions writerName }
464− Just (ByteStringWriter' r) -> Right $ ByteStringWriter' $
444+ Just (ByteStringWriter r) -> Right $ ByteStringWriter $
465 \o -> r o{ writerExtensions = setExts $
445 \o -> r o{ writerExtensions = setExts $
466 getDefaultExtensions writerName }
446 getDefaultExtensions writerName }
467
447