From e0ebee5aa9b3646de722f139f1d8d15591df538e Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Sun, 02 Jul 2023 20:08:29 +0000
Subject: [PATCH] various polish
---
quartz.config.ts | 92 +++++++++++++++++++++++++++++++++++-----------
1 files changed, 70 insertions(+), 22 deletions(-)
diff --git a/quartz.config.ts b/quartz.config.ts
index 5795672..58c1d9c 100644
--- a/quartz.config.ts
+++ b/quartz.config.ts
@@ -1,11 +1,58 @@
-import { QuartzConfig } from "./quartz/cfg"
+import { PageLayout, QuartzConfig } from "./quartz/cfg"
import * as Component from "./quartz/components"
import * as Plugin from "./quartz/plugins"
+const sharedPageComponents = {
+ head: Component.Head(),
+ header: [],
+ footer: Component.Footer({
+ authorName: "Jacky",
+ links: {
+ "GitHub": "https://github.com/jackyzha0",
+ "Twitter": "https://twitter.com/_jzhao"
+ }
+ })
+}
+
+const contentPageLayout: PageLayout = {
+ beforeBody: [
+ Component.ArticleTitle(),
+ Component.ReadingTime(),
+ Component.TagList(),
+ ],
+ left: [
+ Component.PageTitle(),
+ Component.Search(),
+ Component.TableOfContents(),
+ Component.Darkmode()
+ ],
+ right: [
+ Component.Graph(),
+ Component.Backlinks(),
+ ],
+}
+
+const listPageLayout: PageLayout = {
+ beforeBody: [
+ Component.ArticleTitle()
+ ],
+ left: [
+ Component.PageTitle(),
+ Component.Search(),
+ Component.Darkmode()
+ ],
+ right: [],
+}
+
const config: QuartzConfig = {
configuration: {
- siteTitle: "🪴 Quartz 4.0",
+ pageTitle: "🪴 Quartz 4.0",
enableSPA: true,
+ enablePopovers: true,
+ analytics: {
+ provider: 'plausible',
+ },
+ canonicalUrl: "quartz.jzhao.xyz",
ignorePatterns: ["private", "templates"],
theme: {
typography: { // loaded from Google Fonts
@@ -40,40 +87,41 @@
plugins: {
transformers: [
Plugin.FrontMatter(),
- Plugin.Description(),
Plugin.TableOfContents(),
Plugin.CreatedModifiedDate({
priority: ['frontmatter', 'filesystem'] // you can add 'git' here for last modified from Git but this makes the build slower
}),
- Plugin.GitHubFlavoredMarkdown(),
Plugin.ObsidianFlavoredMarkdown(),
- Plugin.ResolveLinks(),
+ Plugin.GitHubFlavoredMarkdown(),
+ Plugin.CrawlLinks(),
Plugin.SyntaxHighlighting(),
Plugin.Katex(),
+ Plugin.Description(),
],
filters: [
- Plugin.RemoveDrafts()
+ Plugin.RemoveDrafts(),
],
emitters: [
Plugin.AliasRedirects(),
Plugin.ContentPage({
- head: Component.Head(),
- header: [Component.PageTitle(), Component.Spacer(), Component.Darkmode()],
- beforeBody: [
- Component.ArticleTitle(),
- Component.ReadingTime(),
- Component.TagList(),
- ],
- content: Component.Content(),
- left: [
- Component.TableOfContents(),
- ],
- right: [
- ],
- footer: []
+ ...sharedPageComponents,
+ ...contentPageLayout,
+ pageBody: Component.Content(),
}),
- Plugin.ContentIndex(), // you can exclude this if you don't plan on using popovers, graph, or backlinks,
- Plugin.CNAME({ domain: "yoursite.xyz" }) // set this to your final deployed domain
+ Plugin.FolderPage({
+ ...sharedPageComponents,
+ ...listPageLayout,
+ pageBody: Component.FolderContent(),
+ }),
+ Plugin.TagPage({
+ ...sharedPageComponents,
+ ...listPageLayout,
+ pageBody: Component.TagContent(),
+ }),
+ Plugin.ContentIndex({
+ enableSiteMap: true,
+ enableRSS: true,
+ }),
]
},
}
--
Gitblit v1.10.0