X-Git-Url: http://git.scottworley.com/paperdoorknob/blobdiff_plain/929db57622c6b8756ed341d7ae2862126a7c638f..e10b5b6f112c057ab33ad46f8a3385d3bcd23e1d:/args.py diff --git a/args.py b/args.py index 1931d42..f343a84 100644 --- a/args.py +++ b/args.py @@ -13,6 +13,7 @@ from typing import Iterator from xdg_base_dirs import xdg_cache_home +from domfilter import ApplyDOMFilters, DOMFilters from fetch import CachingFetcher from htmlfilter import ApplyHTMLFilters, HTMLFilters from spec import Spec @@ -26,6 +27,17 @@ def _command_line_parser() -> ArgumentParser: metavar='PATH', help='Where to keep the http cache (instead of %(default)s)', default=os.path.join(xdg_cache_home(), "paperdoorknob")) + parser.add_argument( + '--domfilters', + help='Which DOM filters to use (default: %(default)s)', + default=','.join(f[0] for f in DOMFilters)) + parser.add_argument( + '--geometry', + help='''Page size and margin control +See https://faculty.bard.edu/bloch/geometry.pdf for details +(default: %(default)s)''', + default='paperwidth=5.5in,paperheight=8.5in,nohead,' + + 'tmargin=15mm,hmargin=15mm,bmargin=17mm,foot=4mm') parser.add_argument( '--htmlfilters', help='Which HTML filters to use (default: %(default)s)', @@ -40,7 +52,9 @@ def _command_line_parser() -> ArgumentParser: '--timeout', help='How long to wait for HTTP requests, in seconds', default=30) - parser.add_argument('url', help='URL to retrieve') + parser.add_argument( + 'url', + help='URL to retrieve (example: https://www.projectlawful.com/posts/4582 )') return parser @@ -53,5 +67,7 @@ def spec_from_commandline_args() -> Iterator[Spec]: args.url, fetcher, lambda x: ApplyHTMLFilters(args.htmlfilters, x), + lambda x: ApplyDOMFilters(args.domfilters, x), PandocTexifier(args.pandoc or 'pandoc'), + args.geometry, texout)