add svelte rendering to markdown renderer (#4663)

* add `svelte` rendering to markdown renderer
resolves #4586
closes #4588

* linting
This commit is contained in:
Timothy Carambat 2025-11-19 14:09:24 -08:00 committed by GitHub
parent b3b261e15d
commit e892c9b9b8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 52 additions and 0 deletions

View File

@ -0,0 +1,48 @@
export default function hljsDefineSvelte(hljs) {
return {
subLanguage: "xml",
contains: [
hljs.COMMENT("<!--", "-->", {
relevance: 10,
}),
{
begin: /^(\s*)(<script(\s*context="module")?>)/gm,
end: /^(\s*)(<\/script>)/gm,
subLanguage: "javascript",
excludeBegin: true,
excludeEnd: true,
contains: [
{
begin: /^(\s*)(\$:)/gm,
end: /(\s*)/gm,
className: "keyword",
},
],
},
{
begin: /^(\s*)(<style.*>)/gm,
end: /^(\s*)(<\/style>)/gm,
subLanguage: "css",
excludeBegin: true,
excludeEnd: true,
},
{
begin: /\{/gm,
end: /\}/gm,
subLanguage: "javascript",
contains: [
{
begin: /[\{]/,
end: /[\}]/,
skip: true,
},
{
begin: /([#:\/@])(if|else|each|await|then|catch|debug|html)/gm,
className: "keyword",
relevance: 10,
},
],
},
],
};
}

View File

@ -7,6 +7,10 @@ import "./themes/github-dark.css";
import "./themes/github.css";
import { v4 } from "uuid";
// Register custom lanaguages
import hljsDefineSvelte from "./hljs-libraries/svelte";
hljs.registerLanguage("svelte", hljsDefineSvelte);
const markdown = markdownIt({
html: Appearance.get("renderHTML") ?? false,
typographer: true,