diff --git a/eorg/generate.py b/eorg/generate.py index 1a641df..d22e6ce 100644 --- a/eorg/generate.py +++ b/eorg/generate.py @@ -5,7 +5,7 @@ from pygments.lexers import PythonLexer from pygments.lexers import get_lexer_by_name from pygments.formatters import HtmlFormatter -def src(doc, code, cls=''): +def src(doc, code, cls='', root=True): try: lexer = get_lexer_by_name(code.attrs.get('language', 'shell')) except pygments.util.ClassNotFound as e: @@ -13,7 +13,7 @@ def src(doc, code, cls=''): return highlight(code.value, lexer, HtmlFormatter(linenos=True)) -def img(doc, item, cls=''): +def img(doc, item, cls='', root=True): caption = doc.previous('CAPTION') text = '' if caption: @@ -22,10 +22,15 @@ def img(doc, item, cls=''): def parse_text_html(doc, token, cls='', root=True): - if not isinstance(token.value, list): - return f'{token.value}

' - print('test') + print(token) + # if its the start of a text body wrap html tags + # else more complicated so return the tags + if isinstance(token.value, str): + if root is True: + return f'{token.value}

' + return f'{token.value}' + response = StringIO() @@ -37,6 +42,8 @@ def parse_text_html(doc, token, cls='', root=True): response.write(handle_token(doc, item, False)) response.write(f'

') + response.seek(0) + print(response.read()) response.seek(0) return response.read()