From 211f95c5277be05b0f1768d36ad8d9129241e663 Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Sun, 28 Jan 2024 06:49:57 +0000
Subject: [PATCH] fix: allow alt to be defined in wikilinks alongside dims
---
quartz/plugins/transformers/ofm.ts | 23 ++++++++++++++++-------
1 files changed, 16 insertions(+), 7 deletions(-)
diff --git a/quartz/plugins/transformers/ofm.ts b/quartz/plugins/transformers/ofm.ts
index 735d114..7c9b33b 100644
--- a/quartz/plugins/transformers/ofm.ts
+++ b/quartz/plugins/transformers/ofm.ts
@@ -116,13 +116,13 @@
export const arrowRegex = new RegExp(/-{1,2}>/, "g")
-// !? -> optional embedding
-// \[\[ -> open brace
-// ([^\[\]\|\#]+) -> one or more non-special characters ([,],|, or #) (name)
-// (#[^\[\]\|\#]+)? -> # then one or more non-special characters (heading link)
-// (|[^\[\]\|\#]+)? -> | then one or more non-special characters (alias)
+// !? -> optional embedding
+// \[\[ -> open brace
+// ([^\[\]\|\#]+) -> one or more non-special characters ([,],|, or #) (name)
+// (#[^\[\]\|\#]+)? -> # then one or more non-special characters (heading link)
+// (\|[^\[\]\#]+)? -> | then one or more non-special characters (alias)
export const wikilinkRegex = new RegExp(
- /!?\[\[([^\[\]\|\#]+)?(#+[^\[\]\|\#]+)?(\|[^\[\]\|\#]+)?\]\]/,
+ /!?\[\[([^\[\]\|\#]+)?(#+[^\[\]\|\#]+)?(\|[^\[\]\#]+)?\]\]/,
"g",
)
const highlightRegex = new RegExp(/==([^=]+)==/, "g")
@@ -222,7 +222,15 @@
const ext: string = path.extname(fp).toLowerCase()
const url = slugifyFilePath(fp as FilePath)
if ([".png", ".jpg", ".jpeg", ".gif", ".bmp", ".svg", ".webp"].includes(ext)) {
- const dims = alias ?? ""
+ // either |alt|dims or |dims
+ let [alt, dims] = (alias ?? "").split("|")
+
+ // |dims case, treat first alt slot as dims
+ if (dims === undefined) {
+ dims = alt
+ alt = ""
+ }
+
let [width, height] = dims.split("x", 2)
width ||= "auto"
height ||= "auto"
@@ -233,6 +241,7 @@
hProperties: {
width,
height,
+ alt,
},
},
}
--
Gitblit v1.10.0