markdown support for author notes

This commit is contained in:
mi
2025-11-12 11:12:29 +10:00
parent 4657d85dde
commit 8abb185c02
5 changed files with 49 additions and 0 deletions

21
app.py
View File

@@ -49,6 +49,17 @@ def format_comic_date(date_str):
return date_str
def get_author_note(date_str):
"""Load author note from markdown file if it exists, using date as filename"""
note_path = os.path.join(os.path.dirname(__file__), 'content', 'author_notes', f'{date_str}.md')
try:
with open(note_path, 'r', encoding='utf-8') as f:
content = f.read()
return markdown.markdown(content)
except FileNotFoundError:
return None
def enrich_comic(comic):
"""Add computed properties to comic data"""
if comic is None:
@@ -57,6 +68,16 @@ def enrich_comic(comic):
enriched['full_width'] = is_full_width(comic)
enriched['plain'] = is_plain(comic)
enriched['formatted_date'] = format_comic_date(comic['date'])
# Check for markdown author note, fall back to data field if not found
markdown_note = get_author_note(comic['date'])
if markdown_note:
enriched['author_note'] = markdown_note
enriched['author_note_is_html'] = True
else:
# No markdown file, use plain text from comic data if it exists
enriched['author_note_is_html'] = False
return enriched