pytex/PyTeX/format/pytex_formatter.py

40 lines
1.2 KiB
Python
Raw Normal View History

2022-02-06 15:10:28 +01:00
from pathlib import Path
from typing import Optional, List
from .formatting_config import FormattingConfig
from .enums import TeXType, TeXFlavour
from .formatterif import FormatterIF
from .generic_text import GenericText
class PyTeXFormatter(FormatterIF):
def __init__(
self,
input_file: Optional[Path] = None,
config: Optional[FormattingConfig] = None,
tex_type: Optional[TeXType] = None,
tex_flavour: Optional[TeXFlavour] = None
):
super().__init__(
input_file=input_file,
config=config
)
self._config: Optional[FormattingConfig] = self._config
self._tex_type: Optional[TeXType] = tex_type
self._tex_flavour: Optional[TeXFlavour] = tex_flavour
self._header: Optional[GenericText] = None
self._formatted_header: Optional[str] = None
@property
def config(self) -> FormattingConfig:
if self._config is None:
raise NotImplementedError
return self._config
@property
def header(self) -> GenericText:
if self._header is None:
if not(
self.config.include_extra_header
or self.config.include_build_time
):
pass