Skip to content

插件配置

vitePlugins

内置 Vite 插件配置。

Teeker 内置的 Vite 插件详细介绍请看 Vite 插件

ts
const tkConfig = tkThemeConfig({
  vitePlugins: {
    sidebar: true, // 是否启用 sidebar 插件
    sidebarOption: {}, // sidebar 插件配置项
    permalink: true, // 是否启用 permalink 插件
    permalinkOption: {}, // permalinks 插件配置项
    mdH1: true, // 是否启用 mdH1 插件
    catalogueOption: {}, // catalogues 插件配置项
    docAnalysis: true, // 是否启用 docAnalysis 插件
    docAnalysisOption: {}, // docAnalysis 插件配置项
    fileContentLoaderIgnore: [], // fileContentLoader 插件扫描 markdown 文档时,指定忽略路径,格式为 glob 表达式,如 **/test/**
    autoFrontmatter: true, // 是否启用 autoFrontmatter 插件
    autoFrontmatterOption: {}, // autoFrontmatter 插件配置项
  },
});
ts
import type { PermalinkOption } from "vitepress-plugin-permalink";
import type { SidebarOption } from "vitepress-plugin-sidebar-resolve";
import type { CatalogueOption } from "vitepress-plugin-catalogue";
import type { DocAnalysisOption } from "vitepress-plugin-doc-analysis";
import type { AutoFrontmatterOption } from "plugins/vitepress-plugin-auto-frontmatter";
import type { VNode } from "vue";

interface TkThemeConfig {
  /**
   * 内置 Vite 插件配置
   */
  vitePlugins?: Plugins;
}

interface Plugins {
  /**
   * 是否启用 sidebar 插件
   *
   * @default true
   */
  sidebar?: boolean;
  /**
   * sidebar 插件配置项
   */
  sidebarOption?: SidebarOption;
  /**
   * 是否启用 permalink 插件
   *
   * @default true
   */
  permalink?: boolean;
  /**
   * permalinks 插件配置项
   */
  permalinkOption?: PermalinkOption;
  /**
   * 是否启用 mdH1 插件
   *
   * @default true
   */
  mdH1?: boolean;
  /**
   * catalogues 插件配置项
   */
  catalogueOption?: CatalogueOption;
  /**
   * 是否启用 docAnalysis 插件
   *
   * @default true
   */
  docAnalysis?: boolean;
  /**
   * docAnalysis 插件配置项
   */
  docAnalysisOption?: DocAnalysisOption;
  /**
   * fileContentLoader 插件扫描 markdown 文档时,指定忽略路径,格式为 glob 表达式,如 test/**
   *
   * @default []
   */
  fileContentLoaderIgnore?: string[];
  /**
   * 是否启用 autoFrontmatter 插件
   *
   * @default false
   */
  autoFrontmatter?: boolean;
  /**
   * autoFrontmatter 插件配置项,并拓展出其他配置项
   *
   * permalinkPrefix 为自动生成 permalink 的固定前缀,如 pages、pages/demo。当禁用 permalink 插件后,不会自动生成 permalink
   * categories 为是否自动生成 categories
   *
   * @default '{ permalinkPrefix: "pages", categories: true }'
   */
  autoFrontmatterOption?: AutoFrontmatterOption & { permalinkPrefix?: string; categories?: boolean };
}

markdownPlugins

Markdown 插件列表,请不要在使用 vitepress.markdown.config 配置 md 插件,因为 config 是一个函数,Vitepress 并没有做多个 config 合并,因此使用 vitepress.markdown.config 配置会覆盖主题内置 md 插件。

Teeker 内置的 Markdown 插件详细介绍请看 Markdown 拓展

ts
import myMdPlugin from "my-md-plugin";

const tkConfig = tkThemeConfig({
  markdownPlugins: [myMdPlugin],
});
ts
  /**
   * markdown 插件列表,请不要在使用 vitepress.markdown.config 配置 md 插件,因为 config 是一个函数,vitepress 并没有做多个 config 合并,因此使用 vitepress.markdown.config 配置会覆盖主题内置 md 插件
   */
  markdownPlugins?: any[];