diff --git a/quartz/plugins/filters/excalidraw.ts b/quartz/plugins/filters/excalidraw.ts new file mode 100644 index 000000000..a9a9edde5 --- /dev/null +++ b/quartz/plugins/filters/excalidraw.ts @@ -0,0 +1,9 @@ +import { QuartzFilterPlugin } from "../types" + +export const RemoveExcalidrawMarkdown: QuartzFilterPlugin = () => ({ + name: "RemoveExcalidrawMarkdown", + shouldPublish(_ctx, [_tree, vfile]) { + const publishFlag: boolean = !vfile.basename?.match(/\.excalidraw\./) || false + return !publishFlag + }, +}) diff --git a/quartz/plugins/filters/index.ts b/quartz/plugins/filters/index.ts index d93714342..6a9eb14a9 100644 --- a/quartz/plugins/filters/index.ts +++ b/quartz/plugins/filters/index.ts @@ -1,2 +1,3 @@ export { RemoveDrafts } from "./draft" +export { RemoveExcalidrawMarkdown } from "./excalidraw" export { ExplicitPublish } from "./explicit" diff --git a/quartz/plugins/transformers/ofm.ts b/quartz/plugins/transformers/ofm.ts index 0dea89384..acaa84755 100644 --- a/quartz/plugins/transformers/ofm.ts +++ b/quartz/plugins/transformers/ofm.ts @@ -226,6 +226,11 @@ export const ObsidianFlavoredMarkdown: QuartzTransformerPlugin> const anchor = rawHeader?.trim() ?? "" const alias = rawAlias?.slice(1).trim() + // excalidraw + if (fp.match(/\.excalidraw\./)) { + fp.replace(".excalidraw", "") + } + // embed cases if (value.startsWith("!")) { const ext: string = path.extname(fp).toLowerCase()