diff options
Diffstat (limited to 'repo/www/helpers.py')
| -rw-r--r-- | repo/www/helpers.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/repo/www/helpers.py b/repo/www/helpers.py index 6dc5bad..16cd496 100644 --- a/repo/www/helpers.py +++ b/repo/www/helpers.py @@ -1,6 +1,7 @@ from collections import defaultdict from dataclasses import dataclass, field from os import path +from subprocess import run from typing import Iterator @@ -52,3 +53,17 @@ def deserialize_directories(directories): return { k: Directory.deserialize(v) for k, v in directories.items() } + + +def pandoc(page, output, template, title=None, site_title=None): + cmd = ( + 'pandoc', '-s', page, '-o', output, '--template', template, + '--lua-filter', 'convert-internal-links.lua' + ) + + if title is not None: + cmd += ('-M', f'title={title}') + if site_title is not None: + cmd += ('-T', site_title) + + run(cmd, check=True) |
