From 99cd029dcecbb80a519d3213ec12e98eb3db835f Mon Sep 17 00:00:00 2001 From: ville rantanen Date: Wed, 13 Oct 2021 11:22:23 +0300 Subject: [PATCH] format with markdown if available --- web/SimpleWebPage.py | 47 ++++++++++++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 13 deletions(-) diff --git a/web/SimpleWebPage.py b/web/SimpleWebPage.py index ea502a1..d1ef95f 100755 --- a/web/SimpleWebPage.py +++ b/web/SimpleWebPage.py @@ -14,6 +14,11 @@ from glob import fnmatch import base64 import random from pprint import pprint +try: + import markdown + MARKDOWN_AVAILABLE = True +except ImportError: + MARKDOWN_AVAILABLE = False VERSION = "20211002" IMAGE_EXTENSIONS = ["png", "gif", "jpg", "jpeg", "tif", "tiff"] @@ -461,14 +466,24 @@ def get_readme(path, no_read): if not os.path.exists("README.md"): return "" with open("README.md", "rt") as fp: - return "

README.md

{}
".format( - re.sub( - r"(https?:\/\/[\w\.,\-\@?^=%&:/~\+#]+)", - '\\1', - fp.read().strip(), - flags=re.IGNORECASE, + if MARKDOWN_AVAILABLE: + return "
{}
".format( + markdown.markdown( + fp.read().strip(), + extensions=['extra'] + ) + ) + + else: + sys.stderr.write("import markdown failed, using simple regex\n") + return "
{}
".format( + re.sub( + r"(https?:\/\/[\w\.,\-\@?^=%&:/~\+#]+)", + '\\1', + fp.read().strip(), + flags=re.IGNORECASE, + ) ) - ) def get_header(opts): @@ -802,17 +817,14 @@ function alternate(table) { css_style = """ """ header = ( @@ -913,7 +934,7 @@ function alternate(table) {
-

{title}

+

{title}

""" ).format(
NameSizeSize BModified