* feat: add user-defined options to syntax highlighting plugin * feat: add default syntax highlighting config to `quartz.config.ts` * chore: refactor according to @aarnphm's review Co-authored-by: Aaron Pham <29749331+aarnphm@users.noreply.github.com> * chore: run Prettier on `quartz/plugins/transformers/syntax.ts` * Update quartz/plugins/transformers/syntax.ts Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> * Update syntax.ts --------- Co-authored-by: Aaron Pham <29749331+aarnphm@users.noreply.github.com> Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
		
			
				
	
	
		
			91 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import { QuartzConfig } from "./quartz/cfg"
 | 
						|
import * as Plugin from "./quartz/plugins"
 | 
						|
 | 
						|
const config: QuartzConfig = {
 | 
						|
  configuration: {
 | 
						|
    pageTitle: "🪴 Quartz 4.0",
 | 
						|
    enableSPA: true,
 | 
						|
    enablePopovers: true,
 | 
						|
    analytics: {
 | 
						|
      provider: "plausible",
 | 
						|
    },
 | 
						|
    locale: "en-US",
 | 
						|
    baseUrl: "quartz.jzhao.xyz",
 | 
						|
    ignorePatterns: ["private", "templates", ".obsidian"],
 | 
						|
    defaultDateType: "created",
 | 
						|
    theme: {
 | 
						|
      cdnCaching: true,
 | 
						|
      typography: {
 | 
						|
        header: "Schibsted Grotesk",
 | 
						|
        body: "Source Sans Pro",
 | 
						|
        code: "IBM Plex Mono",
 | 
						|
      },
 | 
						|
      colors: {
 | 
						|
        lightMode: {
 | 
						|
          light: "#faf8f8",
 | 
						|
          lightgray: "#e5e5e5",
 | 
						|
          gray: "#b8b8b8",
 | 
						|
          darkgray: "#4e4e4e",
 | 
						|
          dark: "#2b2b2b",
 | 
						|
          secondary: "#284b63",
 | 
						|
          tertiary: "#84a59d",
 | 
						|
          highlight: "rgba(143, 159, 169, 0.15)",
 | 
						|
        },
 | 
						|
        darkMode: {
 | 
						|
          light: "#161618",
 | 
						|
          lightgray: "#393639",
 | 
						|
          gray: "#646464",
 | 
						|
          darkgray: "#d4d4d4",
 | 
						|
          dark: "#ebebec",
 | 
						|
          secondary: "#7b97aa",
 | 
						|
          tertiary: "#84a59d",
 | 
						|
          highlight: "rgba(143, 159, 169, 0.15)",
 | 
						|
        },
 | 
						|
      },
 | 
						|
    },
 | 
						|
  },
 | 
						|
  plugins: {
 | 
						|
    transformers: [
 | 
						|
      Plugin.FrontMatter(),
 | 
						|
      Plugin.CreatedModifiedDate({
 | 
						|
        // you can add 'git' here for last modified from Git
 | 
						|
        // if you do rely on git for dates, ensure defaultDateType is 'modified'
 | 
						|
        priority: ["frontmatter", "filesystem"],
 | 
						|
      }),
 | 
						|
      Plugin.Latex({ renderEngine: "katex" }),
 | 
						|
      Plugin.SyntaxHighlighting({
 | 
						|
        // uses themes bundled with Shikiji, see https://shikiji.netlify.app/themes
 | 
						|
        theme: {
 | 
						|
          light: "github-light",
 | 
						|
          dark: "github-dark",
 | 
						|
        },
 | 
						|
        // set this to 'true' to use the background color of the Shikiji theme
 | 
						|
        // if set to 'false', will use Quartz theme colors for background
 | 
						|
        keepBackground: false,
 | 
						|
      }),
 | 
						|
      Plugin.ObsidianFlavoredMarkdown({ enableInHtmlEmbed: false }),
 | 
						|
      Plugin.GitHubFlavoredMarkdown(),
 | 
						|
      Plugin.TableOfContents(),
 | 
						|
      Plugin.CrawlLinks({ markdownLinkResolution: "shortest" }),
 | 
						|
      Plugin.Description(),
 | 
						|
    ],
 | 
						|
    filters: [Plugin.RemoveDrafts()],
 | 
						|
    emitters: [
 | 
						|
      Plugin.AliasRedirects(),
 | 
						|
      Plugin.ComponentResources({ fontOrigin: "googleFonts" }),
 | 
						|
      Plugin.ContentPage(),
 | 
						|
      Plugin.FolderPage(),
 | 
						|
      Plugin.TagPage(),
 | 
						|
      Plugin.ContentIndex({
 | 
						|
        enableSiteMap: true,
 | 
						|
        enableRSS: true,
 | 
						|
      }),
 | 
						|
      Plugin.Assets(),
 | 
						|
      Plugin.Static(),
 | 
						|
      Plugin.NotFoundPage(),
 | 
						|
    ],
 | 
						|
  },
 | 
						|
}
 | 
						|
 | 
						|
export default config
 |