From 04eeb2d10c2bb8cac595a879446c1dcbfac4d6a6 Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Thu, 01 Jun 2023 23:05:14 +0000
Subject: [PATCH] syntax higlighting

---
 quartz/plugins/transformers/links.ts |   20 ++++++++------------
 1 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/quartz/plugins/transformers/links.ts b/quartz/plugins/transformers/links.ts
index 07a76b2..d8248a0 100644
--- a/quartz/plugins/transformers/links.ts
+++ b/quartz/plugins/transformers/links.ts
@@ -1,6 +1,5 @@
 import { PluggableList } from "unified"
 import { QuartzTransformerPlugin } from "../types"
-import { remarkWikiLink } from "@flowershow/remark-wiki-link"
 import { relative, relativeToRoot, slugify } from "../../path"
 import path from "path"
 import { visit } from 'unist-util-visit'
@@ -18,7 +17,7 @@
   prettyLinks: true
 }
 
-export class LinkProcessing extends QuartzTransformerPlugin {
+export class ResolveLinks extends QuartzTransformerPlugin {
   name = "LinkProcessing"
   opts: Options
 
@@ -28,17 +27,15 @@
   }
 
   markdownPlugins(): PluggableList {
-    return [[remarkWikiLink, {
-      pathFormat: this.opts.markdownLinkResolution === "absolute" ? 'obsidian-absolute' : 'raw'
-    }]]
+    return []
   }
 
   htmlPlugins(): PluggableList {
     return [() => {
       return (tree, file) => {
-        const curSlug = file.data.slug! 
+        const curSlug = file.data.slug!
         const transformLink = (target: string) => {
-          const targetSlug = slugify(decodeURI(target))
+          const targetSlug = slugify(decodeURI(target).trim())
           if (this.opts.markdownLinkResolution === 'relative' && !path.isAbsolute(targetSlug)) {
             return './' + relative(curSlug, targetSlug)
           } else {
@@ -46,8 +43,8 @@
           }
         }
 
-        // rewrite all links
         visit(tree, 'element', (node, _index, _parent) => {
+          // rewrite all links
           if (
             node.tagName === 'a' &&
             node.properties &&
@@ -60,14 +57,13 @@
               node.properties.href = transformLink(node.properties.href)
             }
 
+            // rewrite link internals if prettylinks is on
             if (this.opts.prettyLinks && node.children.length === 1 && node.children[0].type === 'text') {
               node.children[0].value = path.basename(node.children[0].value)
             }
           }
-        })
 
-        // transform all images
-        visit(tree, 'element', (node, _index, _parent) => {
+          // transform all images
           if (
             node.tagName === 'img' &&
             node.properties &&
@@ -75,7 +71,7 @@
           ) {
             if (!isAbsoluteUrl(node.properties.src)) {
               const ext = path.extname(node.properties.src)
-              node.properties.src = transformLink("/assets/" + node.properties.src) + ext
+              node.properties.src = transformLink(path.join("assets", node.properties.src)) + ext
             }
           }
         })

--
Gitblit v1.10.0