diff options
author | David Luevano Alvarado <david@luevano.xyz> | 2021-06-05 03:13:59 -0600 |
---|---|---|
committer | David Luevano Alvarado <david@luevano.xyz> | 2021-06-05 03:13:59 -0600 |
commit | 045eb5986ea11174b2ee39dc8476b365d734d37d (patch) | |
tree | 35b3d63df25bae33857fe3614501155940f24236 /src/pyssg/pyssg.py | |
parent | 81bf1f33c34bd37ebcef4dc8f76d881248a22832 (diff) |
refactor code and add image_url parsingv0.5.3
Diffstat (limited to 'src/pyssg/pyssg.py')
-rw-r--r-- | src/pyssg/pyssg.py | 34 |
1 files changed, 7 insertions, 27 deletions
diff --git a/src/pyssg/pyssg.py b/src/pyssg/pyssg.py index 76361f5..75f0fe4 100644 --- a/src/pyssg/pyssg.py +++ b/src/pyssg/pyssg.py @@ -4,21 +4,16 @@ from argparse import ArgumentParser, Namespace from typing import Union from jinja2 import Environment, FileSystemLoader from markdown import Markdown -from importlib.metadata import version from importlib.resources import path -from datetime import datetime, timezone from .configuration import Configuration from .database import Database -from .builder import HTMLBuilder +from .builder import Builder from .page import Page from .rss import RSSBuilder from .sitemap import SitemapBuilder -VERSION = version('pyssg') - - def get_options() -> Namespace: parser = ArgumentParser(prog='pyssg', description='''Static Site Generator that reads @@ -58,6 +53,10 @@ def get_options() -> Namespace: default='', type=str, help='''base static url without trailing slash''') + parser.add_argument('--default-image-url', + default='', + type=str, + help='''default image url''') parser.add_argument('--title', default='Blog', type=str, @@ -107,7 +106,7 @@ def main() -> None: config.fill_missing(opts) if opts['version']: - print(f'pyssg v{VERSION}') + print(f'pyssg v{config.version}') return if opts['init']: @@ -147,27 +146,8 @@ def main() -> None: md: Markdown = Markdown(extensions=['extra', 'meta', 'sane_lists', 'smarty', 'toc', 'wikilinks'], output_format='html5') - builder: HTMLBuilder = HTMLBuilder(config, - env, - db, - md) + builder: Builder = Builder(config, env, db, md) builder.build() - # get all parsed pages and tags for rss and sitemap construction - all_pages: list[Page] = builder.all_pages - all_tags: list[tuple[str]] = builder.all_tags - - rss_builder: RSSBuilder = RSSBuilder(config, - env, - all_pages, - all_tags) - rss_builder.build() - - sm_builder: SitemapBuilder = SitemapBuilder(config, - env, - all_pages, - all_tags) - sm_builder.build() - db.write() return |