Render the report (top-level document) to TeX format.
Source code in sereto/report.py
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 | @validate_call
def render_report_to_tex(project_path: DirectoryPath, template: str, config: Config, version: ProjectVersion) -> str:
"""Render the report (top-level document) to TeX format."""
# Construct path to report template
template_path = project_path / f"layouts/{template}.tex.j2"
if not template_path.is_file():
raise SeretoPathError(f"template not found: '{template_path}'")
# Render Jinja2 template
return render_jinja2(
templates=[
project_path / "layouts/generated",
project_path / "layouts",
project_path / "includes",
project_path,
],
file=template_path,
vars={
"c": config.at_version(version=version),
"config": config,
"version": version,
"project_path": project_path,
},
)
|