1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| import { QuartzTransformerPlugin } from "../types"
| import rehypePrettyCode, { Options as CodeOptions } from "rehype-pretty-code"
|
| export const SyntaxHighlighting: QuartzTransformerPlugin = () => ({
| name: "SyntaxHighlighting",
| markdownPlugins() {
| return []
| },
| htmlPlugins() {
| return [[rehypePrettyCode, {
| theme: 'css-variables',
| onVisitLine(node) {
| if (node.children.length === 0) {
| node.children = [{ type: 'text', value: ' ' }]
| }
| },
| onVisitHighlightedLine(node) {
| node.properties.className.push('highlighted')
| },
| onVisitHighlightedWord(node) {
| node.properties.className = ['word']
| },
| } satisfies Partial<CodeOptions>]]
| }
| })
|
|