From a9b232e3fc3431ae4d5f75b00c2415f471ff5c9f48979655889a145291b8665b Mon Sep 17 00:00:00 2001 From: Nicholas Johnson Date: Mon, 20 May 2024 00:00:00 +0000 Subject: Fix Gemini incorrectly rendering (un)ordered lists --- layouts/_default/single.gmi | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'layouts/_default') diff --git a/layouts/_default/single.gmi b/layouts/_default/single.gmi index b871d67..c6b7356 100644 --- a/layouts/_default/single.gmi +++ b/layouts/_default/single.gmi @@ -72,18 +72,19 @@ {{ $rendered_text = $rendered_text | replaceRE `(?m)^[\t ]*(\S.+?)[\t ]*\n\=+$` "# $1" -}} {{ $rendered_text = $rendered_text | replaceRE `(?m)^[\t ]*(\S.+?)[\t ]*\n\-+$` "## $1" -}} - {{/* remove bold and italics asterisk symbols */ -}} - {{/* note: this operation is performed in 3 steps to handle nested bold and italics */ -}} - {{ $rendered_text = $rendered_text | replaceRE `\*{3}(\S(?:.*\S)?)\*{3}` "$1" -}} - {{ $rendered_text = $rendered_text | replaceRE `\*{2}(\S(?:.*\S)?)\*{2}` "$1" -}} - {{ $rendered_text = $rendered_text | replaceRE `\*{1}(\S(?:.*\S)?)\*{1}` "$1" -}} - {{/* convert Markdown alternative unordered list syntax to gemtext unordered list syntax */ -}} {{ $rendered_text = $rendered_text | replaceRE `(?m)^[-+] ` "* " -}} {{/* convert Markdown ordered list items to gemtext unordered list items */ -}} {{ $rendered_text = $rendered_text | replaceRE `(?m)^[1-9]\d*\.[\t ]+(.*?)[\t ]*$` "* $1" -}} + {{/* remove bold and italics asterisk symbols */ -}} + {{/* note: this operation is performed in 3 steps to handle nested bold and italics */ -}} + {{/* note: this operation is performed last to avoid incorrectly rendering (un)ordered lists */ -}} + {{ $rendered_text = $rendered_text | replaceRE `\*{3}(\S(?:.*\S)?)\*{3}` "$1" -}} + {{ $rendered_text = $rendered_text | replaceRE `\*{2}(\S(?:.*\S)?)\*{2}` "$1" -}} + {{ $rendered_text = $rendered_text | replaceRE `\*{1}(\S(?:.*\S)?)\*{1}` "$1" -}} + {{ $rendered_text = $rendered_text | emojify -}} {{/* demux regex matches above and below preformatted text */ -}} -- cgit v1.2.3