From ef6073fcc5457ede8781d3bfcfe437bf0244ad3c Mon Sep 17 00:00:00 2001 From: Ari Archer Date: Tue, 21 Jun 2022 13:27:59 +0300 Subject: [PATCH] update @ Tue 21 Jun 13:27:59 EEST 2022 Signed-off-by: Ari Archer --- .gitignore | 2 +- scripts/blog | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 86ee665..8d63947 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,5 @@ index.html .mypy_cache/ .blog_history venv/ -*.old +/backups/ diff --git a/scripts/blog b/scripts/blog index 3205677..7adcbc3 100755 --- a/scripts/blog +++ b/scripts/blog @@ -16,7 +16,7 @@ from html import escape as html_escape from shutil import rmtree from threading import Thread from timeit import default_timer as code_timer -from typing import Dict, List, Set, Tuple +from typing import Dict, List, Optional, Set, Tuple from warnings import filterwarnings as filter_warnings from css_html_js_minify import html_minify # type: ignore @@ -274,7 +274,15 @@ def new_blog(config: Dict) -> Tuple[int, Dict]: def build(config: Dict) -> Tuple[int, Dict]: """Build, minimise and generate site""" - if len(config["blogs"]) < 1: + latest_blog_id: Optional[str] = next( + filter( + lambda bid: bid if not config["blogs"][bid]["hidden"] else None, + tuple(config["blogs"].keys())[::-1], + ), + None, + ) + + if not config["blogs"] or latest_blog_id is None: return log("Cannot build no blogs"), config if os.path.isdir(config["blog-dir"]): @@ -369,7 +377,6 @@ def build(config: Dict) -> Tuple[int, Dict]: log("Building blog index...", "INFO") with open("index.html", "w") as index: - latest_blog_id: str = tuple(config["blogs"].keys())[-1] lastest_blog: Dict = config["blogs"][latest_blog_id] lastest_blog_time: str = format_time(lastest_blog["time"])