{-# LANGUAGE ScopedTypeVariables, RecordWildCards #-} module Main where import Data.Maybe (fromJust) import System.Console.CmdArgs (cmdArgsRun) import Text.XML.HXT.Core import CommandLine (Args(..), apply_args) 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 Args{..} <- apply_args print article -- 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."