diff --git a/quartz/plugins/transformers/frontmatter.ts b/quartz/plugins/transformers/frontmatter.ts index 625cf607a..9679bd1ec 100644 --- a/quartz/plugins/transformers/frontmatter.ts +++ b/quartz/plugins/transformers/frontmatter.ts @@ -67,7 +67,8 @@ export const FrontMatter: QuartzTransformerPlugin> = (userOpts) [remarkFrontmatter, ["yaml", "toml"]], () => { return (_, file) => { - const { data } = matter(Buffer.from(file.value), { + const fileData = Buffer.from(file.value as Uint8Array) + const { data } = matter(fileData, { ...opts, engines: { yaml: (s) => yaml.load(s, { schema: yaml.JSON_SCHEMA }) as object, diff --git a/quartz/processors/parse.ts b/quartz/processors/parse.ts index 479313f49..15e559dc7 100644 --- a/quartz/processors/parse.ts +++ b/quartz/processors/parse.ts @@ -95,7 +95,7 @@ export function createFileParser(ctx: BuildCtx, fps: FilePath[]) { // Text -> Text transforms for (const plugin of cfg.plugins.transformers.filter((p) => p.textTransform)) { - file.value = plugin.textTransform!(ctx, file.value.toString()) + file.value = plugin.textTransform!(ctx, Buffer.from(file.value as Uint8Array)) } // base data properties that plugins may use