From 983efab94c31bb19b532e120f2f70f45f788b7c8 Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Mon, 13 Feb 2023 00:46:11 +0000
Subject: [PATCH] fix: recent notes partial sorting

---
 layouts/partials/textprocessing.html |   48 ++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 44 insertions(+), 4 deletions(-)

diff --git a/layouts/partials/textprocessing.html b/layouts/partials/textprocessing.html
index 7b82f32..c918247 100644
--- a/layouts/partials/textprocessing.html
+++ b/layouts/partials/textprocessing.html
@@ -42,7 +42,24 @@
     <!-- remove subfolder from title -->
     {{$display := index (last 1 (split $display "/")) 0}}
 
-    {{$curpage := $page.GetPage $title}}
+    <!-- attempt to get title -->
+    {{$searchtitle := $title }}
+    {{$curpage := $page.GetPage $searchtitle }}
+    <!-- attempt to search md file instead  -->
+    {{ if (eq $curpage.String "nopPage") }}
+      {{$searchtitle = (add $title ".md") }}
+      {{$curpage = $page.GetPage $searchtitle }}
+    {{ end }}
+    <!-- attempt to reverse typographer behaviour  -->
+    {{ if (eq $curpage.String "nopPage") }}
+      {{$searchtitle = (replace $searchtitle "&amp;" "&") }}
+      {{$searchtitle = (replace $searchtitle "&quot;" "\"") }}
+      {{$searchtitle = (replace $searchtitle "&rdquo;" "\"") }}
+      {{$searchtitle = (replace $searchtitle "&ldquo;" "\"") }}
+      {{$searchtitle = (replace $searchtitle "&rsquo;" "'") }}
+      {{$searchtitle = (replace $searchtitle "&lsquo;" "'") }}
+      {{$curpage = $page.GetPage $searchtitle }}
+    {{ end }}
     {{$relpath := relURL $path}}
 
     <!-- If path to Hugo page -->
@@ -60,9 +77,31 @@
       {{$href := printf "/%s/%s" $dirname $basename}}
       <!-- Embedded? -->
       {{if (hasPrefix . "!")}}
-        {{$width := index $split 1}}
-        {{$link := printf "<img src=\"%s\" width=\"%s\" />" $href (default "auto" $width)}}
-        {{$content = replace $content . $link}}
+        {{ $embed_ext := lower (path.Ext $href) }}
+        <!-- Image -->
+        {{if in ".png .jpg .jpeg .gif .bmp .svg" $embed_ext }}
+          {{$width := default "auto" (index $split 1) }}
+          {{$link := printf "<img src=\"%s\" width=\"%s\" />" $href $width}}
+          {{$content = replace $content . $link}}
+        <!-- Video -->
+        {{else if in ".mp4 .webm .ogv .mov .mkv" $embed_ext}}
+          {{$link := printf "<video src=\"%s\" style=\"width: -webkit-fill-available;\" controls></video>" $href}}
+          {{$content = replace $content . $link}}
+        <!-- Audio -->
+        {{else if in ".mp3 .webm .wav .m4a .ogg .3gp .flac" $embed_ext}}
+          {{$link := printf "<audio src=\"%s\" controls></audio>" $href}}
+          {{$content = replace $content . $link}}
+        <!-- PDF -->
+        {{else if in ".pdf" $embed_ext }}
+          {{$src_link := printf "<a href=\"%s\" rel=\"noopener\" class=\"internal-link\">[source]</a>" $href}}
+          {{$iframe_link := printf "<iframe src=\"%s\" style=\"height: -webkit-fill-available; width: -webkit-fill-available;\"></iframe>" $href}}
+          {{$link := printf "%s<br>%s" $src_link $iframe_link}}
+          {{$content = replace $content . $link}}
+        <!-- other -->
+        {{else}}
+          {{$link := printf "<a href=\"%s\" rel=\"noopener\" class=\"internal-link\">%s</a>" $href $href}}
+          {{$content = replace $content . $link}}
+        {{end}}
       {{else}}
         {{$link := printf "<a href=\"%s\" rel=\"noopener\" class=\"internal-link\">%s</a>" $href $display}}
         {{$content = replace $content . $link}}
@@ -110,6 +149,7 @@
   {{end}}
   {{ $content = $content | replaceRE `\[![a-zA-Z]+\][-\+]?` "" }}
   {{ $content = $content | replaceRE "blockquote class=callout" "blockquote" }}
+  {{ $content = $content | replaceRE `(?s)(<blockquote class="\S+-callout">.*?)<br>(.*?<\/blockquote)` `${1}</p><p>${2}` }}
 {{end}}
 
 {{/* Make ==text== into <mark>text</mark> */}}

--
Gitblit v1.10.0