]> git.scottworley.com Git - paperdoorknob/blame - spec.py
Handle Unicode characters ≈ and ◁
[paperdoorknob] / spec.py
CommitLineData
23f31879
SW
1# paperdoorknob: Print glowfic
2#
3# This program is free software: you can redistribute it and/or modify it
4# under the terms of the GNU General Public License as published by the
5# Free Software Foundation, version 3.
6
7
8from dataclasses import dataclass
9
929db576 10from typing import Callable, IO
23f31879 11
8be20b9d
SW
12from bs4.element import Tag
13
23f31879 14from fetch import Fetcher
cfd0b634 15from images import ImageStore
bbfe8e52 16from texify import Texifier
23f31879
SW
17
18
432bb83b 19# pylint: disable=too-many-instance-attributes
23f31879
SW
20@dataclass(frozen=True)
21class Spec:
22 url: str
23 fetcher: Fetcher
cfd0b634 24 images: ImageStore
929db576 25 htmlfilter: Callable[[bytes], bytes]
8be20b9d 26 domfilter: Callable[[Tag], None]
bbfe8e52 27 texifier: Texifier
131deef1 28 texfilter: Callable[[bytes], bytes]
9afdb32a 29 icon_size: float
1fac41bf 30 layout: bytes
e10b5b6f 31 geometry: str | None
23f31879 32 texout: IO[bytes]
c594c8bf 33 log: Callable[[str], None]