From c2bea8a4c4aeba440b8a7b043d7ece6343a9d263 Mon Sep 17 00:00:00 2001
From: derfalx <kschneider@falx.tech>
Date: Thu, 08 Jan 2026 01:30:42 +0000
Subject: [PATCH] fix(citation): Language parameter for non en-US settings (#2075)

---
 quartz/plugins/emitters/aliases.ts |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/quartz/plugins/emitters/aliases.ts b/quartz/plugins/emitters/aliases.ts
index 327cde8..9cb9bd5 100644
--- a/quartz/plugins/emitters/aliases.ts
+++ b/quartz/plugins/emitters/aliases.ts
@@ -1,14 +1,21 @@
-import { resolveRelative, simplifySlug } from "../../util/path"
+import { FullSlug, isRelativeURL, resolveRelative, simplifySlug } from "../../util/path"
 import { QuartzEmitterPlugin } from "../types"
 import { write } from "./helpers"
 import { BuildCtx } from "../../util/ctx"
 import { VFile } from "vfile"
+import path from "path"
 
 async function* processFile(ctx: BuildCtx, file: VFile) {
   const ogSlug = simplifySlug(file.data.slug!)
 
-  for (const slug of file.data.aliases ?? []) {
-    const redirUrl = resolveRelative(slug, file.data.slug!)
+  for (const aliasTarget of file.data.aliases ?? []) {
+    const aliasTargetSlug = (
+      isRelativeURL(aliasTarget)
+        ? path.normalize(path.join(ogSlug, "..", aliasTarget))
+        : aliasTarget
+    ) as FullSlug
+
+    const redirUrl = resolveRelative(aliasTargetSlug, ogSlug)
     yield write({
       ctx,
       content: `
@@ -23,7 +30,7 @@
         </head>
         </html>
         `,
-      slug,
+      slug: aliasTargetSlug,
       ext: ".html",
     })
   }

--
Gitblit v1.10.0