Skip to content

Commit ffda84e

Browse files
author
Tom Mitchelmore
committed
Fix twig syntax highlighting
1 parent 9865b3e commit ffda84e

File tree

3 files changed

+25
-1
lines changed

3 files changed

+25
-1
lines changed

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,7 @@
88
"editor.formatOnSave": true,
99
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
1010
},
11+
"[typescript]": {
12+
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
13+
},
1114
}

docusaurus.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ const config: Config = {
170170
prism: {
171171
theme: prismThemes.vsLight,
172172
darkTheme: prismThemes.vsDark,
173-
additionalLanguages: ["diff", "php"],
173+
additionalLanguages: ["diff", "php", "twig"],
174174
},
175175
} satisfies Preset.ThemeConfig,
176176
};
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/* eslint-disable @typescript-eslint/no-require-imports */
2+
import siteConfig from "@generated/docusaurus.config";
3+
import type * as PrismNamespace from "prismjs";
4+
5+
export default function prismIncludeLanguages(
6+
PrismObject: typeof PrismNamespace,
7+
): void {
8+
const {
9+
themeConfig: { prism },
10+
} = siteConfig;
11+
const { additionalLanguages } = prism as { additionalLanguages: string[] };
12+
13+
globalThis.Prism = PrismObject;
14+
15+
additionalLanguages.forEach((lang) => {
16+
if (lang === "php" || lang === "twig") {
17+
require("prismjs/components/prism-markup-templating.js");
18+
}
19+
require(`prismjs/components/prism-${lang}`);
20+
});
21+
}

0 commit comments

Comments
 (0)