From bd3098691458c5747aaf32df5d07921350f9d7e9 Mon Sep 17 00:00:00 2001 From: wrmr Date: Tue, 23 Sep 2025 22:27:01 -0400 Subject: add h4 --- main.c | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/main.c b/main.c index eba5640..f52297d 100644 --- a/main.c +++ b/main.c @@ -142,6 +142,7 @@ typedef enum { LN_HDR1, LN_HDR2, LN_HDR3, + LN_HDR4, LN_NONE } LineType; @@ -173,6 +174,8 @@ int is_ol_item(Str s) { LineType classify_line(Str line, LineType prev) { if (line.n == 0) { return LN_NONE; + } else if (str_starts(line, S("####"))) { + return LN_HDR4; } else if (str_starts(line, S("###"))) { return LN_HDR3; } else if (str_starts(line, S("##"))) { @@ -213,15 +216,10 @@ LineType line_init(Line *l, Str txt, LineType t) { l->url = c.head; l->txt = c.tail; return has_image_ext(l->url) ? LN_IMG : LN_LINK; - case LN_HDR1: - l->txt = str_trim(str_skip(txt, 1)); - break; - case LN_HDR2: - l->txt = str_trim(str_skip(txt, 2)); - break; - case LN_HDR3: - l->txt = str_trim(str_skip(txt, 3)); - break; + case LN_HDR1: l->txt = str_trim(str_skip(txt, 1)); break; + case LN_HDR2: l->txt = str_trim(str_skip(txt, 2)); break; + case LN_HDR3: l->txt = str_trim(str_skip(txt, 3)); break; + case LN_HDR4: l->txt = str_trim(str_skip(txt, 4)); break; case LN_ULIST: l->txt = str_skip(txt, 2); break; @@ -474,15 +472,10 @@ void markup_block(Str *out, Block *blk, Arena *perm, Arena *scratch) { Otl("
"); -- cgit v1.2.3