+{-# LANGUAGE ScopedTypeVariables #-}
module Main
where
+import Data.Maybe (fromJust)
+import Text.XML.HXT.Core -- (SysConfigList, IOStateArrow, XmlTree, readDocument)
+
+import Epublishable
+import LWN.ArticlePage
+import LWN.FullPage
+
+my_read :: String -> IOStateArrow s b XmlTree
+my_read =
+ readDocument [ withValidate no,
+ withParseHTML yes,
+ withInputEncoding utf8,
+ withWarnings no ]
main :: IO ()
main = do
- putStrLn "Hello, world."
+ let article_html = my_read "test/fixtures/501317-article.html"
+ ioap <- parse article_html
+ let article_page :: ArticlePage = fromJust $ ioap
+ epublish article_page "single_article.epub"
+
+ let page_html = my_read "test/fixtures/500848-page.html"
+ ioap_f <- parse page_html
+ let full_page :: FullPage = fromJust $ ioap_f
+ epublish full_page "full_page.epub"
+
+ let bigpage_html = my_read "test/fixtures/50844-bigpage.html"
+ ioap_bp <- parse bigpage_html
+ let bigpage :: FullPage = fromJust $ ioap_bp
+ epublish bigpage "bigpage.epub"
+
+ putStrLn "Done."