diff options
Diffstat (limited to 'repo/www/generate-page.py')
| -rwxr-xr-x | repo/www/generate-page.py | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/repo/www/generate-page.py b/repo/www/generate-page.py index c9fa0e4..cb2317b 100755 --- a/repo/www/generate-page.py +++ b/repo/www/generate-page.py @@ -1,8 +1,12 @@ #!/usr/bin/env python3 from argparse import ArgumentParser +from os import path +from pathlib import Path -from helpers import pandoc +from git import Repo + +from helpers import generate_crumbs, pandoc def parse_arguments(): @@ -18,6 +22,10 @@ def parse_arguments(): help='Lua filter to run the page through.' ) parser.add_argument( + '--stylesheet', dest='css', action='append', + help='CSS stylesheet to link to.' + ) + parser.add_argument( '--title', help='Page title.' ) parser.add_argument( @@ -30,13 +38,21 @@ def parse_arguments(): def main(arguments): + repo_top = Repo(search_parent_directories=True).working_dir + path_to_top = path.relpath(repo_top, path.dirname(arguments.page)) + stylesheets = (path.join(path_to_top, s) for s in arguments.css) + + page_path = Path(arguments.page).resolve().relative_to(repo_top) + pandoc( arguments.page, arguments.output, arguments.template, arguments.filters, - title=arguments.title, - site_title=arguments.site_title + stylesheets, + variables={'crumbs': generate_crumbs(page_path)}, + metadata={'pagetitle': arguments.title, + 'sitetitle': arguments.site_title} ) |
