返回 slidev
slidev.tmLanguage.json
根目录 / packages / vscode / syntaxes / slidev.tmLanguage.json
1 {
2 "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
3 "name": "Slidev",
4 "scopeName": "source.slidev",
5 "patterns": [],
6 "repository": {
7 "import-snippet": {
8 "match": "^(<<<)\\s*(\\S+)(\\s+[\\w-]+)?(?:\\s*(\\{)([^}]*)(\\}))?(?:\\s*(\\{.*\\}))?",
9 "name": "meta.import_snippet.block.slidev",
10 "captures": {
11 "1": {
12 "name": "punctuation.definition.slidev"
13 },
14 "2": {
15 "name": "string.path.snippet.slidev"
16 },
17 "3": {
18 "name": "import_snippet.block.language.slidev"
19 },
20 "4": {
21 "name": "punctuation.separator.range.slidev"
22 },
23 "5": {
24 "name": "meta.range_or_monaco.slidev",
25 "patterns": [
26 {
27 "include": "#monaco-type"
28 },
29 {
30 "include": "#monaco-write"
31 },
32 {
33 "include": "#range-with-steps"
34 }
35 ]
36 },
37 "6": {
38 "name": "punctuation.separator.range.slidev"
39 },
40 "7": {
41 "patterns": [
42 {
43 "include": "source.ts#object-literal"
44 }
45 ]
46 }
47 }
48 },
49 "range-with-steps": {
50 "match": "([^|]*)(\\|)?",
51 "captures": {
52 "1": {
53 "patterns": [
54 {
55 "include": "#range"
56 }
57 ]
58 },
59 "2": {
60 "name": "punctuation.separator.steps.slidev"
61 }
62 }
63 },
64 "range": {
65 "match": "(\\d+|\\*|all)([,-])?",
66 "captures": {
67 "1": {
68 "name": "constant.numeric.range.slidev"
69 },
70 "2": {
71 "name": "punctuation.separator.range.slidev"
72 }
73 }
74 },
75 "monaco-type": {
76 "match": "monaco(-(run|diff))?",
77 "name": "keyword.monaco.slidev"
78 },
79 "monaco-write": {
80 "match": "monaco-write",
81 "name": "keyword.monaco.slidev"
82 },
83 "slide-frontmatter": {
84 "begin": "(^|\\G)(---).*$",
85 "beginCaptures": {
86 "2": {
87 "name": "punctuation.definition.frontmatter.slidev"
88 }
89 },
90 "end": "(?=^\\s*$)",
91 "name": "markup.frontmatter.slidev",
92 "patterns": [
93 {
94 "begin": "(?=^(?!\\s*$))",
95 "end": "(?=^\\s*$)",
96 "patterns": [
97 {
98 "begin": "\\G",
99 "while": "^(?!(^|\\G)(---).*$)",
100 "contentName": "meta.embedded.block.yaml",
101 "patterns": [
102 {
103 "include": "source.yaml"
104 }
105 ]
106 }
107 ]
108 }
109 ]
110 }
111 }
112 }
113
113 lines JSON