Skip to content

Commit 514187d

Browse files
authored
syntax highlight for svelte block in markdown (#301)
1 parent cc6cac0 commit 514187d

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed

packages/svelte-vscode/package.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,16 @@
233233
"source.js": "javascript",
234234
"source.ts": "typescript"
235235
}
236+
},
237+
{
238+
"scopeName": "markdown.svelte.codeblock",
239+
"path": "./syntaxes/markdown-svelte.json",
240+
"injectTo": [
241+
"text.html.markdown"
242+
],
243+
"embeddedLanguages": {
244+
"meta.embedded.block.svelte": "svelte"
245+
}
236246
}
237247
],
238248
"commands": [
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
"scopeName": "markdown.svelte.codeblock",
3+
"fileTypes": [],
4+
"injectionSelector": "L:text.html.markdown",
5+
"patterns": [
6+
{
7+
"include": "#svelte-code-block"
8+
}
9+
],
10+
"repository": {
11+
"svelte-code-block": {
12+
"begin": "(^|\\G)(\\s*)(\\`{3,}|~{3,})\\s*(?i:(svelte|sv)(\\s+[^`~]*)?$)",
13+
"name": "markup.fenced_code.block.markdown",
14+
"end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
15+
"beginCaptures": {
16+
"3": {
17+
"name": "punctuation.definition.markdown"
18+
},
19+
"5": {
20+
"name": "fenced_code.block.language"
21+
},
22+
"6": {
23+
"name": "fenced_code.block.language.attributes"
24+
}
25+
},
26+
"endCaptures": {
27+
"3": {
28+
"name": "punctuation.definition.markdown"
29+
}
30+
},
31+
"patterns": [
32+
{
33+
"begin": "(^|\\G)(\\s*)(.*)",
34+
"while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
35+
"contentName": "meta.embedded.block.svelte",
36+
"patterns": [
37+
{
38+
"include": "source.svelte"
39+
}
40+
]
41+
}
42+
]
43+
}
44+
}
45+
}

0 commit comments

Comments
 (0)