github-linguist 4.8.9 → 4.8.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/git-linguist +2 -2
- data/grammars/source.ats.json +58 -128
- data/grammars/source.autoit.json +158 -153
- data/grammars/source.awk.json +333 -383
- data/grammars/source.batchfile.json +194 -0
- data/grammars/source.c.platform.json +359 -22
- data/grammars/source.changelogs.rpm-spec.json +99 -0
- data/grammars/source.clojure.json +9 -3
- data/grammars/source.dockerfile.json +67 -78
- data/grammars/source.elm.json +20 -379
- data/grammars/source.emacs.lisp.json +656 -0
- data/grammars/source.gdscript.json +233 -228
- data/grammars/source.graphql.json +75 -10
- data/grammars/source.js.json +2 -2
- data/grammars/source.js.jsx.json +247 -839
- data/grammars/source.js.regexp.json +1 -1
- data/grammars/source.nginx.json +882 -768
- data/grammars/source.nsis.json +151 -143
- data/grammars/source.objc.json +3 -0
- data/grammars/source.objc.platform.json +174 -104
- data/grammars/source.puppet.json +429 -396
- data/grammars/source.pyjade.json +11 -0
- data/grammars/source.regexp.babel.json +1 -1
- data/grammars/source.rpm-spec.json +770 -0
- data/grammars/source.systemverilog.json +1110 -961
- data/grammars/source.ts.json +57 -57
- data/grammars/source.tsx.json +57 -57
- data/grammars/text.dart-analysis-output.json +67 -152
- data/grammars/text.error-list.json +54 -0
- data/grammars/text.find-refs.json +927 -0
- data/grammars/text.html.basic.json +1 -1
- data/grammars/text.html.mediawiki.elm-build-output.json +108 -0
- data/grammars/text.html.mediawiki.elm-documentation.json +22 -0
- data/grammars/text.html.vue.json +35 -0
- data/grammars/text.jade.json +34 -12
- data/grammars/text.roff.json +1 -1
- data/lib/linguist/heuristics.rb +16 -4
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +25 -5
- data/lib/linguist/samples.json +1367 -163
- data/lib/linguist/version.rb +1 -1
- metadata +10 -3
- data/grammars/source.dosbatch.json +0 -70
@@ -11,6 +11,18 @@
|
|
11
11
|
{
|
12
12
|
"include": "#comment"
|
13
13
|
},
|
14
|
+
{
|
15
|
+
"include": "#typeDef"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"include": "#typeDefImplements"
|
19
|
+
},
|
20
|
+
{
|
21
|
+
"include": "#unionOptions"
|
22
|
+
},
|
23
|
+
{
|
24
|
+
"include": "#directive"
|
25
|
+
},
|
14
26
|
{
|
15
27
|
"name": "meta.fragment",
|
16
28
|
"comment": "a fragment definintion",
|
@@ -26,7 +38,7 @@
|
|
26
38
|
"name": "keyword.operator"
|
27
39
|
},
|
28
40
|
"4": {
|
29
|
-
"name": "support.
|
41
|
+
"name": "support.class"
|
30
42
|
}
|
31
43
|
}
|
32
44
|
},
|
@@ -71,9 +83,20 @@
|
|
71
83
|
}
|
72
84
|
]
|
73
85
|
},
|
74
|
-
"
|
75
|
-
"
|
76
|
-
"
|
86
|
+
"variableDefinition": {
|
87
|
+
"match": "(\\$[_A-Za-z][_0-9A-Za-z]*)\\:\\s*([_A-Za-z][_0-9A-Za-z]*)",
|
88
|
+
"captures": {
|
89
|
+
"1": {
|
90
|
+
"name": "constant.other.symbol"
|
91
|
+
},
|
92
|
+
"2": {
|
93
|
+
"name": "support.class"
|
94
|
+
}
|
95
|
+
}
|
96
|
+
},
|
97
|
+
"variableUsage": {
|
98
|
+
"match": "\\$[_A-Za-z][_0-9A-Za-z]*",
|
99
|
+
"name": "constant.other.symbol"
|
77
100
|
},
|
78
101
|
"boolean": {
|
79
102
|
"name": "constant.language.boolean",
|
@@ -85,15 +108,15 @@
|
|
85
108
|
},
|
86
109
|
"directive": {
|
87
110
|
"name": "storage.modifier",
|
88
|
-
"match": "@[
|
111
|
+
"match": "@[_A-Za-z][_0-9A-Za-z]+"
|
89
112
|
},
|
90
113
|
"argument": {
|
91
114
|
"name": "variable.parameter",
|
92
115
|
"match": "[_A-Za-z][_0-9A-Za-z]*:"
|
93
116
|
},
|
94
117
|
"enum": {
|
95
|
-
"
|
96
|
-
"
|
118
|
+
"match": "([A-Z][A-Z_]+)",
|
119
|
+
"name": "support.constant.enum"
|
97
120
|
},
|
98
121
|
"fragmentSpread": {
|
99
122
|
"match": "(\\.\\.\\.)\\s*([_A-Za-z][_0-9A-Za-z]*)\\s*(on\\s*)?([_A-Za-z][_0-9A-Za-z]*)?",
|
@@ -108,7 +131,7 @@
|
|
108
131
|
"name": "keyword.operator"
|
109
132
|
},
|
110
133
|
"4": {
|
111
|
-
"name": "support.
|
134
|
+
"name": "support.class"
|
112
135
|
}
|
113
136
|
}
|
114
137
|
},
|
@@ -122,7 +145,7 @@
|
|
122
145
|
"name": "keyword.operator"
|
123
146
|
},
|
124
147
|
"3": {
|
125
|
-
"name": "support.
|
148
|
+
"name": "support.class"
|
126
149
|
}
|
127
150
|
}
|
128
151
|
},
|
@@ -151,7 +174,10 @@
|
|
151
174
|
"include": "#boolean"
|
152
175
|
},
|
153
176
|
{
|
154
|
-
"include": "#
|
177
|
+
"include": "#variableDefinition"
|
178
|
+
},
|
179
|
+
{
|
180
|
+
"include": "#variableUsage"
|
155
181
|
},
|
156
182
|
{
|
157
183
|
"include": "#number"
|
@@ -159,6 +185,9 @@
|
|
159
185
|
{
|
160
186
|
"include": "#enum"
|
161
187
|
},
|
188
|
+
{
|
189
|
+
"include": "#directive"
|
190
|
+
},
|
162
191
|
{
|
163
192
|
"include": "#comment"
|
164
193
|
}
|
@@ -202,6 +231,9 @@
|
|
202
231
|
},
|
203
232
|
{
|
204
233
|
"include": "#builtInField"
|
234
|
+
},
|
235
|
+
{
|
236
|
+
"include": "#enum"
|
205
237
|
}
|
206
238
|
]
|
207
239
|
},
|
@@ -220,6 +252,39 @@
|
|
220
252
|
"fieldAlias": {
|
221
253
|
"match": "[_A-Za-z][_0-9A-Za-z]*:",
|
222
254
|
"name": "variable.other.alias.graphql"
|
255
|
+
},
|
256
|
+
"typeDef": {
|
257
|
+
"match": "(type|interface|union|scalar|enum|input|directive|extend|schema)\\s+([_A-Za-z][_0-9A-Za-z]*)?",
|
258
|
+
"captures": {
|
259
|
+
"1": {
|
260
|
+
"name": "keyword.operator"
|
261
|
+
},
|
262
|
+
"2": {
|
263
|
+
"name": "support.class"
|
264
|
+
}
|
265
|
+
}
|
266
|
+
},
|
267
|
+
"typeDefImplements": {
|
268
|
+
"match": "(implements)\\s+([_A-Za-z][_0-9A-Za-z,\\s]*)",
|
269
|
+
"captures": {
|
270
|
+
"1": {
|
271
|
+
"name": "keyword.operator"
|
272
|
+
},
|
273
|
+
"2": {
|
274
|
+
"name": "support.class"
|
275
|
+
}
|
276
|
+
}
|
277
|
+
},
|
278
|
+
"unionOptions": {
|
279
|
+
"match": "(=|\\||on)\\s+([_A-Za-z][_0-9A-Za-z]*)",
|
280
|
+
"captures": {
|
281
|
+
"1": {
|
282
|
+
"name": "keyword.operator"
|
283
|
+
},
|
284
|
+
"2": {
|
285
|
+
"name": "support.class"
|
286
|
+
}
|
287
|
+
}
|
223
288
|
}
|
224
289
|
}
|
225
290
|
}
|
data/grammars/source.js.json
CHANGED
@@ -1671,7 +1671,7 @@
|
|
1671
1671
|
"name": "storage.type.class.jsdoc"
|
1672
1672
|
},
|
1673
1673
|
{
|
1674
|
-
"match": "(?x)\n({(
|
1674
|
+
"match": "(?x)\n(?:(?<=@param)|(?<=@type))\n\\s+\n({(?:\n \\* | # {*} any type\n \\? | # {?} unknown type\n\n (?: # Check for a prefix\n \\? | # {?string} nullable type\n ! | # {!string} non-nullable type\n \\.{3} # {...string} variable number of parameters\n )?\n\n (?:\n \\( # Opening bracket of multiple types with parenthesis {(string|number)}\n [a-zA-Z_$]+\n (?:\n (?:\n [\\w$]*\n (?:\\[\\])? # {(string[]|number)} type application, an array of strings or a number\n ) |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n (?:\n [\\.|~] # {Foo.bar} namespaced, {string|number} multiple, {Foo~bar} class-specific callback\n [a-zA-Z_$]+\n (?:\n (?:\n [\\w$]*\n (?:\\[\\])? # {(string|number[])} type application, a string or an array of numbers\n ) |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n )*\n \\) |\n [a-zA-Z_$]+\n (?:\n (?:\n [\\w$]*\n (?:\\[\\])? # {string[]|number} type application, an array of strings or a number\n ) |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n (?:\n [\\.|~] # {Foo.bar} namespaced, {string|number} multiple, {Foo~bar} class-specific callback\n [a-zA-Z_$]+\n (?:\n [\\w$]* |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n )*\n )\n # Check for suffix\n (?:\\[\\])? # {string[]} type application, an array of strings\n =? # {string=} optional parameter\n)})\n\\s+\n(\n \\[ # [foo] optional parameter\n \\s*\n (?:\n [a-zA-Z_$][\\w$]*\n (?:\n (?:\\[\\])? # Foo[].bar properties within an array\n \\. # Foo.Bar namespaced parameter\n [a-zA-Z_$][\\w$]*\n )*\n (?:\n \\s*\n = # [foo=bar] Default parameter value\n \\s*\n [\\w$\\s]*\n )?\n )\n \\s*\n \\] |\n (?:\n [a-zA-Z_$][\\w$]*\n (?:\n (?:\\[\\])? # Foo[].bar properties within an array\n \\. # Foo.Bar namespaced parameter\n [a-zA-Z_$][\\w$]*\n )*\n )?\n)\n\\s+\n((?:(?!\\*\\/).)*) # The type description",
|
1675
1675
|
"captures": {
|
1676
1676
|
"0": {
|
1677
1677
|
"name": "other.meta.jsdoc"
|
@@ -1688,7 +1688,7 @@
|
|
1688
1688
|
}
|
1689
1689
|
},
|
1690
1690
|
{
|
1691
|
-
"match": "(?x)\n(
|
1691
|
+
"match": "(?x)\n({(?:\n \\* | # {*} any type\n \\? | # {?} unknown type\n\n (?: # Check for a prefix\n \\? | # {?string} nullable type\n ! | # {!string} non-nullable type\n \\.{3} # {...string} variable number of parameters\n )?\n\n (?:\n \\( # Opening bracket of multiple types with parenthesis {(string|number)}\n [a-zA-Z_$]+\n (?:\n [\\w$]* |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n (?:\n [\\.|~] # {Foo.bar} namespaced, {string|number} multiple, {Foo~bar} class-specific callback\n [a-zA-Z_$]+\n (?:\n [\\w$]* |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n )*\n \\) |\n [a-zA-Z_$]+\n (?:\n [\\w$]* |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n (?:\n [\\.|~] # {Foo.bar} namespaced, {string|number} multiple, {Foo~bar} class-specific callback\n [a-zA-Z_$]+\n (?:\n [\\w$]* |\n <[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application\n )\n )*\n )\n # Check for suffix\n (?:\\[\\])? # {string[]} type application, an array of strings\n =? # {string=} optional parameter\n)})\n\\s+\n((?:(?!\\*\\/).)*) # The type description",
|
1692
1692
|
"captures": {
|
1693
1693
|
"0": {
|
1694
1694
|
"name": "other.meta.jsdoc"
|
data/grammars/source.js.jsx.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "Babel ES6 JavaScript",
|
3
3
|
"scopeName": "source.js.jsx",
|
4
|
-
"foldingStartMarker": "(
|
4
|
+
"foldingStartMarker": "(/\\*|\\{|\\()",
|
5
5
|
"foldingEndMarker": "(\\*/|\\}|\\))",
|
6
6
|
"firstLineMatch": "^#!\\s*/.*\\b(node|js)$\\n?",
|
7
7
|
"fileTypes": [
|
@@ -105,8 +105,7 @@
|
|
105
105
|
"include": "#literal-language-variable"
|
106
106
|
},
|
107
107
|
{
|
108
|
-
"include": "#literal-object"
|
109
|
-
"comment": "before literal-module as it traps default {"
|
108
|
+
"include": "#literal-object"
|
110
109
|
},
|
111
110
|
{
|
112
111
|
"include": "#literal-module"
|
@@ -147,7 +146,7 @@
|
|
147
146
|
"comment": "so set at arbitary 1000 chars to avoid parsing minified files",
|
148
147
|
"patterns": [
|
149
148
|
{
|
150
|
-
"match": "
|
149
|
+
"match": "^(?:).{1000,}"
|
151
150
|
}
|
152
151
|
]
|
153
152
|
},
|
@@ -157,7 +156,7 @@
|
|
157
156
|
"comment": "e.g. play: function(arg1, arg2) { }",
|
158
157
|
"name": "meta.function.json.js",
|
159
158
|
"begin": "(?<=^|{|,)\\s*+([_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(?:(async)\\s+)?\\s*+((?<!\\.)\\bfunction\\b)\\s*+(?:(\\*)\\s*)?\\s*(?=\\(|<)",
|
160
|
-
"end": "(
|
159
|
+
"end": "(?=\\{)",
|
161
160
|
"applyEndPatternLast": 1,
|
162
161
|
"beginCaptures": {
|
163
162
|
"1": {
|
@@ -185,8 +184,8 @@
|
|
185
184
|
{
|
186
185
|
"comment": "e.g. 'play': function(arg1, arg2) { }",
|
187
186
|
"name": "meta.function.json.js",
|
188
|
-
"begin": "(?<=^|{|,)\\s*+(('
|
189
|
-
"end": "(
|
187
|
+
"begin": "(?<=^|{|,)\\s*+(('|\\\")([^\"']*)(\\k<-3>))\\s*+(:)\\s*+(async)?\\s*+((?<!\\.)\\bfunction\\b)\\s*(\\*\\s*)?\\s*(?=\\(|<)",
|
188
|
+
"end": "(?=\\{)",
|
190
189
|
"applyEndPatternLast": 1,
|
191
190
|
"beginCaptures": {
|
192
191
|
"1": {
|
@@ -227,7 +226,7 @@
|
|
227
226
|
{
|
228
227
|
"comment": "e.g. play: async <T>(args) => { }",
|
229
228
|
"name": "meta.function.json.arrow.js",
|
230
|
-
"begin": "(?<=^|{|,)\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+((
|
229
|
+
"begin": "(?<=^|{|,)\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
231
230
|
"end": "\\s*(=>)",
|
232
231
|
"beginCaptures": {
|
233
232
|
"1": {
|
@@ -254,7 +253,7 @@
|
|
254
253
|
{
|
255
254
|
"comment": "e.g. play: arg => { }",
|
256
255
|
"name": "meta.function.json.arrow.js",
|
257
|
-
"begin": "(?<=^|{|,)\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+((
|
256
|
+
"begin": "(?<=^|{|,)\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
258
257
|
"end": "\\s*(=>)",
|
259
258
|
"beginCaptures": {
|
260
259
|
"1": {
|
@@ -284,7 +283,7 @@
|
|
284
283
|
{
|
285
284
|
"comment": "e.g. 'play': (args) => { }",
|
286
285
|
"name": "meta.function.json.arrow.js",
|
287
|
-
"begin": "(?<=^|{|,)\\s*+(('
|
286
|
+
"begin": "(?<=^|{|,)\\s*+(('|\\\")([^\"']*)(\\k<-3>))\\s*(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
288
287
|
"end": "\\s*(=>)",
|
289
288
|
"applyEndPatternLast": 1,
|
290
289
|
"endCaptures": {
|
@@ -321,7 +320,7 @@
|
|
321
320
|
{
|
322
321
|
"comment": "e.g. 'play': arg => { }",
|
323
322
|
"name": "meta.function.json.arrow.js",
|
324
|
-
"begin": "(?<=^|{|,)\\s*+(('
|
323
|
+
"begin": "(?<=^|{|,)\\s*+(('|\\\")([^\"']*)(\\k<-3>))\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
325
324
|
"end": "\\s*(=>)",
|
326
325
|
"beginCaptures": {
|
327
326
|
"1": {
|
@@ -363,7 +362,7 @@
|
|
363
362
|
"patterns": [
|
364
363
|
{
|
365
364
|
"comment": "string as a property name",
|
366
|
-
"match": "\\s*+(?<!\\.|\\?|\\?\\s|\\?\\s\\s)(((
|
365
|
+
"match": "\\s*+(?<!\\.|\\?|\\?\\s|\\?\\s\\s)(((\\\")(\\\\.|[^\\\\\"])*(\\\"))|((')(\\\\.|[^\\\\'])*(')))\\s*+(:)",
|
367
366
|
"captures": {
|
368
367
|
"1": {
|
369
368
|
"name": "constant.other.object.key.js"
|
@@ -434,6 +433,7 @@
|
|
434
433
|
"include": "#literal-keyword-storage"
|
435
434
|
},
|
436
435
|
{
|
436
|
+
"name": "keyword.control.flow.js",
|
437
437
|
"match": "\\s*+(?<!\\.)\\b(yield)\\b(?:\\s*+(\\*))?",
|
438
438
|
"captures": {
|
439
439
|
"1": {
|
@@ -445,36 +445,20 @@
|
|
445
445
|
}
|
446
446
|
},
|
447
447
|
{
|
448
|
-
"
|
449
|
-
"
|
450
|
-
"1": {
|
451
|
-
"name": "keyword.control.flow.js"
|
452
|
-
}
|
453
|
-
}
|
448
|
+
"name": "keyword.control.flow.js",
|
449
|
+
"match": "\\s*+(?<!\\.)\\b(await|return)\\b"
|
454
450
|
},
|
455
451
|
{
|
456
|
-
"
|
457
|
-
"
|
458
|
-
"1": {
|
459
|
-
"name": "keyword.control.conditional.js"
|
460
|
-
}
|
461
|
-
}
|
452
|
+
"name": "keyword.control.conditional.js",
|
453
|
+
"match": "\\s*+(?<!\\.)\\b(if|else)\\b"
|
462
454
|
},
|
463
455
|
{
|
464
|
-
"
|
465
|
-
"
|
466
|
-
"1": {
|
467
|
-
"name": "keyword.control.trycatch.js"
|
468
|
-
}
|
469
|
-
}
|
456
|
+
"name": "keyword.control.trycatch.js",
|
457
|
+
"match": "\\s*+(?<!\\.)\\b(catch|finally|throw|try)\\b"
|
470
458
|
},
|
471
459
|
{
|
472
|
-
"
|
473
|
-
"
|
474
|
-
"1": {
|
475
|
-
"name": "keyword.control.loop.js"
|
476
|
-
}
|
477
|
-
}
|
460
|
+
"name": "keyword.control.loop.js",
|
461
|
+
"match": "\\s*+(?<!\\.)\\b(break|continue|do|goto|while)\\b"
|
478
462
|
}
|
479
463
|
]
|
480
464
|
},
|
@@ -483,9 +467,9 @@
|
|
483
467
|
{
|
484
468
|
"name": "meta.for.js",
|
485
469
|
"begin": "\\s*+(?<!\\.)\\b(for)\\b",
|
486
|
-
"end": "\\s
|
470
|
+
"end": "\\s*\\)",
|
487
471
|
"endCaptures": {
|
488
|
-
"
|
472
|
+
"0": {
|
489
473
|
"name": "meta.brace.round.js"
|
490
474
|
}
|
491
475
|
},
|
@@ -496,10 +480,10 @@
|
|
496
480
|
},
|
497
481
|
"patterns": [
|
498
482
|
{
|
499
|
-
"begin": "\\s
|
483
|
+
"begin": "\\s*+\\(",
|
500
484
|
"end": "\\s*(?=\\))",
|
501
485
|
"beginCaptures": {
|
502
|
-
"
|
486
|
+
"0": {
|
503
487
|
"name": "meta.brace.round.js"
|
504
488
|
}
|
505
489
|
},
|
@@ -524,14 +508,14 @@
|
|
524
508
|
{
|
525
509
|
"name": "meta.switch.js",
|
526
510
|
"begin": "\\s*+(?<!\\.)\\b(switch)\\b",
|
527
|
-
"end": "\\s
|
511
|
+
"end": "\\s*\\}",
|
528
512
|
"beginCaptures": {
|
529
513
|
"1": {
|
530
514
|
"name": "keyword.control.switch.js"
|
531
515
|
}
|
532
516
|
},
|
533
517
|
"endCaptures": {
|
534
|
-
"
|
518
|
+
"0": {
|
535
519
|
"name": "meta.brace.curly.js"
|
536
520
|
}
|
537
521
|
},
|
@@ -540,10 +524,10 @@
|
|
540
524
|
"include": "#round-brackets"
|
541
525
|
},
|
542
526
|
{
|
543
|
-
"begin": "\\s
|
527
|
+
"begin": "\\s*+\\{",
|
544
528
|
"end": "\\s*(?=})",
|
545
529
|
"beginCaptures": {
|
546
|
-
"
|
530
|
+
"0": {
|
547
531
|
"name": "meta.brace.curly.js"
|
548
532
|
}
|
549
533
|
},
|
@@ -594,14 +578,14 @@
|
|
594
578
|
{
|
595
579
|
"comment": "try to avoid ternary operators which have a '? some chars :'",
|
596
580
|
"begin": "(^|:|;|=|(?<=:|;|=))\\s*+(\\((?=((\"|').*?(?<=[^\\\\])\\k<-1>|[^?:])*(:|\\?\\s*+:)))",
|
597
|
-
"end": "\\s
|
581
|
+
"end": "\\s*\\)",
|
598
582
|
"beginCaptures": {
|
599
583
|
"2": {
|
600
584
|
"name": "meta.brace.round.js"
|
601
585
|
}
|
602
586
|
},
|
603
587
|
"endCaptures": {
|
604
|
-
"
|
588
|
+
"0": {
|
605
589
|
"name": "meta.brace.round.js"
|
606
590
|
}
|
607
591
|
},
|
@@ -615,15 +599,15 @@
|
|
615
599
|
]
|
616
600
|
},
|
617
601
|
{
|
618
|
-
"begin": "\\s
|
619
|
-
"end": "\\s
|
602
|
+
"begin": "\\s*+\\(",
|
603
|
+
"end": "\\s*\\)",
|
620
604
|
"endCaptures": {
|
621
|
-
"
|
605
|
+
"0": {
|
622
606
|
"name": "meta.brace.round.js"
|
623
607
|
}
|
624
608
|
},
|
625
609
|
"beginCaptures": {
|
626
|
-
"
|
610
|
+
"0": {
|
627
611
|
"name": "meta.brace.round.js"
|
628
612
|
}
|
629
613
|
},
|
@@ -638,15 +622,15 @@
|
|
638
622
|
"square-brackets": {
|
639
623
|
"patterns": [
|
640
624
|
{
|
641
|
-
"begin": "\\s
|
642
|
-
"end": "\\s
|
625
|
+
"begin": "\\s*+\\[",
|
626
|
+
"end": "\\s*\\]",
|
643
627
|
"endCaptures": {
|
644
|
-
"
|
628
|
+
"0": {
|
645
629
|
"name": "meta.brace.square.js"
|
646
630
|
}
|
647
631
|
},
|
648
632
|
"beginCaptures": {
|
649
|
-
"
|
633
|
+
"0": {
|
650
634
|
"name": "meta.brace.square.js"
|
651
635
|
}
|
652
636
|
},
|
@@ -661,15 +645,15 @@
|
|
661
645
|
"curly-brackets": {
|
662
646
|
"patterns": [
|
663
647
|
{
|
664
|
-
"begin": "\\s
|
665
|
-
"end": "\\s
|
648
|
+
"begin": "\\s*+\\{",
|
649
|
+
"end": "\\s*\\}",
|
666
650
|
"endCaptures": {
|
667
|
-
"
|
651
|
+
"0": {
|
668
652
|
"name": "meta.brace.curly.js"
|
669
653
|
}
|
670
654
|
},
|
671
655
|
"beginCaptures": {
|
672
|
-
"
|
656
|
+
"0": {
|
673
657
|
"name": "meta.brace.curly.js"
|
674
658
|
}
|
675
659
|
},
|
@@ -702,21 +686,15 @@
|
|
702
686
|
},
|
703
687
|
"comments": {
|
704
688
|
"patterns": [
|
705
|
-
{
|
706
|
-
"include": "#flowtype-comments"
|
707
|
-
},
|
708
689
|
{
|
709
690
|
"include": "#special-comments-conditional-compilation"
|
710
691
|
},
|
711
692
|
{
|
712
|
-
"
|
713
|
-
"begin": "\\s
|
714
|
-
"end": "
|
693
|
+
"name": "comment.block.documentation.js",
|
694
|
+
"begin": "\\s*+/\\*\\*(?!/)",
|
695
|
+
"end": "\\s*\\*/",
|
715
696
|
"captures": {
|
716
|
-
"
|
717
|
-
"name": "comment.block.documentation.js"
|
718
|
-
},
|
719
|
-
"2": {
|
697
|
+
"0": {
|
720
698
|
"name": "punctuation.definition.comment.js"
|
721
699
|
}
|
722
700
|
},
|
@@ -727,45 +705,32 @@
|
|
727
705
|
]
|
728
706
|
},
|
729
707
|
{
|
730
|
-
"
|
731
|
-
"begin": "\\s
|
732
|
-
"end": "
|
708
|
+
"name": "comment.block.js",
|
709
|
+
"begin": "\\s*+/\\*",
|
710
|
+
"end": "\\s*\\*/",
|
733
711
|
"captures": {
|
734
|
-
"
|
735
|
-
"name": "comment.block.js"
|
736
|
-
},
|
737
|
-
"2": {
|
712
|
+
"0": {
|
738
713
|
"name": "punctuation.definition.comment.js"
|
739
714
|
}
|
740
715
|
}
|
741
716
|
},
|
742
717
|
{
|
743
|
-
"
|
718
|
+
"name": "comment.block.html.js",
|
719
|
+
"match": "\\s*+(<!--|-->)",
|
744
720
|
"captures": {
|
745
|
-
"
|
746
|
-
"name": "comment.block.html.js"
|
747
|
-
},
|
748
|
-
"2": {
|
721
|
+
"0": {
|
749
722
|
"name": "punctuation.definition.comment.js"
|
750
723
|
}
|
751
724
|
}
|
752
725
|
},
|
753
726
|
{
|
754
|
-
"
|
755
|
-
"begin": "\\s*+(
|
727
|
+
"name": "comment.line.double-slash.js",
|
728
|
+
"begin": "\\s*+(//)",
|
756
729
|
"end": "\\s*$",
|
757
730
|
"beginCaptures": {
|
758
731
|
"1": {
|
759
|
-
"name": "comment.line.double-slash.js"
|
760
|
-
},
|
761
|
-
"2": {
|
762
732
|
"name": "punctuation.definition.comment.js"
|
763
733
|
}
|
764
|
-
},
|
765
|
-
"endCaptures": {
|
766
|
-
"0": {
|
767
|
-
"name": "comment.line.double-slash.js"
|
768
|
-
}
|
769
734
|
}
|
770
735
|
},
|
771
736
|
{
|
@@ -782,14 +747,11 @@
|
|
782
747
|
"special-comments-conditional-compilation": {
|
783
748
|
"patterns": [
|
784
749
|
{
|
785
|
-
"
|
786
|
-
"begin": "\\s
|
750
|
+
"name": "comment.block.conditional.js",
|
751
|
+
"begin": "\\s*+/\\*(?=@)",
|
787
752
|
"end": "\\s*\\*/",
|
788
753
|
"captures": {
|
789
|
-
"
|
790
|
-
"name": "comment.block.conditional.js"
|
791
|
-
},
|
792
|
-
"2": {
|
754
|
+
"0": {
|
793
755
|
"name": "punctuation.definition.comment.js"
|
794
756
|
}
|
795
757
|
},
|
@@ -844,24 +806,16 @@
|
|
844
806
|
"literal-semi-colon": {
|
845
807
|
"patterns": [
|
846
808
|
{
|
847
|
-
"
|
848
|
-
"
|
849
|
-
"1": {
|
850
|
-
"name": "punctuation.terminator.statement.js"
|
851
|
-
}
|
852
|
-
}
|
809
|
+
"name": "punctuation.terminator.statement.js",
|
810
|
+
"match": "\\s*+\\;"
|
853
811
|
}
|
854
812
|
]
|
855
813
|
},
|
856
814
|
"literal-comma": {
|
857
815
|
"patterns": [
|
858
816
|
{
|
859
|
-
"
|
860
|
-
"
|
861
|
-
"1": {
|
862
|
-
"name": "meta.delimiter.comma.js"
|
863
|
-
}
|
864
|
-
}
|
817
|
+
"name": "meta.delimiter.comma.js",
|
818
|
+
"match": "\\s*+,"
|
865
819
|
}
|
866
820
|
]
|
867
821
|
},
|
@@ -869,7 +823,7 @@
|
|
869
823
|
"patterns": [
|
870
824
|
{
|
871
825
|
"begin": "\\s*+(?<!\\.)\\b(const|let|var)\\b",
|
872
|
-
"end": "\\s*(
|
826
|
+
"end": "\\s*(?=\\;|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|})",
|
873
827
|
"beginCaptures": {
|
874
828
|
"1": {
|
875
829
|
"name": "storage.type.js"
|
@@ -879,7 +833,7 @@
|
|
879
833
|
{
|
880
834
|
"comment": "other variables",
|
881
835
|
"begin": "\\s*",
|
882
|
-
"end": "\\s*((,)|(?=(
|
836
|
+
"end": "\\s*((,)|(?=(\\;)|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|}))",
|
883
837
|
"endCaptures": {
|
884
838
|
"2": {
|
885
839
|
"name": "punctuation.terminator.statement.js"
|
@@ -901,7 +855,7 @@
|
|
901
855
|
"comment": "e.g. function play<T>(arg1, arg2) { }",
|
902
856
|
"name": "meta.function.js",
|
903
857
|
"begin": "\\s*+(?:\\b(async)\\b\\s+)?\\s*+(?:(?<=\\.\\.\\.)|(?<!\\.))(\\bfunction\\b)\\s*+(\\*?)\\s*+([_$a-zA-Z][$\\w]*)?\\s*+(?=\\(|<)",
|
904
|
-
"end": "\\s*(
|
858
|
+
"end": "\\s*(?=\\;|{|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|})",
|
905
859
|
"applyEndPatternLast": 1,
|
906
860
|
"beginCaptures": {
|
907
861
|
"1": {
|
@@ -927,7 +881,7 @@
|
|
927
881
|
"comment": "e.g. play = function(arg1, arg2) { }",
|
928
882
|
"name": "meta.function.js",
|
929
883
|
"begin": "\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(?:(async)\\s+)?\\s*+((?<!\\.)\\bfunction\\b)\\s*+(\\*?)\\s*+([_$a-zA-Z][$\\w]*)?\\s*+(?=\\(|<)",
|
930
|
-
"end": "\\s*(
|
884
|
+
"end": "\\s*(?=\\;|{|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|})",
|
931
885
|
"applyEndPatternLast": 1,
|
932
886
|
"beginCaptures": {
|
933
887
|
"1": {
|
@@ -959,7 +913,7 @@
|
|
959
913
|
"comment": "e.g. Sound.prototype.play = function(arg1, arg2) { }",
|
960
914
|
"name": "meta.prototype.function.js",
|
961
915
|
"begin": "\\s*+(\\b_?[A-Z][$\\w]*)?(\\.)(prototype)(\\.)([_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(?:(async)\\s+)?\\s*+((?<!\\.)\\bfunction\\b)\\s*+(\\*?)\\s*+([_$a-zA-Z][$\\w]*)?\\s*+(?=\\(|<)",
|
962
|
-
"end": "\\s*(
|
916
|
+
"end": "\\s*(?=\\;|{|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|})",
|
963
917
|
"applyEndPatternLast": 1,
|
964
918
|
"beginCaptures": {
|
965
919
|
"1": {
|
@@ -1003,7 +957,7 @@
|
|
1003
957
|
"comment": "e.g. Sound.play = function(arg1, arg2) { }",
|
1004
958
|
"name": "meta.function.static.js",
|
1005
959
|
"begin": "\\s*+(\\b_?[A-Z][$\\w]*)?(\\.)([_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(?:(async)\\s+)?\\s*+((?<!\\.)\\bfunction\\b)\\s*+(\\*?)\\s*+([_$a-zA-Z][$\\w]*)?\\s*+(?=\\(|<)",
|
1006
|
-
"end": "\\s*(
|
960
|
+
"end": "\\s*(?=\\;|{|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|})",
|
1007
961
|
"applyEndPatternLast": 1,
|
1008
962
|
"beginCaptures": {
|
1009
963
|
"1": {
|
@@ -1123,9 +1077,6 @@
|
|
1123
1077
|
}
|
1124
1078
|
},
|
1125
1079
|
"patterns": [
|
1126
|
-
{
|
1127
|
-
"include": "#html-template"
|
1128
|
-
},
|
1129
1080
|
{
|
1130
1081
|
"include": "#literal-function-labels"
|
1131
1082
|
},
|
@@ -1154,71 +1105,36 @@
|
|
1154
1105
|
"literal-operators": {
|
1155
1106
|
"patterns": [
|
1156
1107
|
{
|
1157
|
-
"
|
1158
|
-
|
1159
|
-
{
|
1160
|
-
"match": "\\s*+(?<!\\.)\\b(delete|in|instanceof|new|of|typeof|void|with)\\b",
|
1161
|
-
"captures": {
|
1162
|
-
"1": {
|
1163
|
-
"name": "keyword.operator.js"
|
1164
|
-
}
|
1165
|
-
}
|
1108
|
+
"name": "keyword.operator.js",
|
1109
|
+
"match": "\\s*+(?<!\\.)\\b(delete|in|instanceof|new|of|typeof|void|with)\\b"
|
1166
1110
|
},
|
1167
1111
|
{
|
1168
|
-
"
|
1169
|
-
"
|
1170
|
-
"1": {
|
1171
|
-
"name": "keyword.operator.logical.js"
|
1172
|
-
}
|
1173
|
-
}
|
1112
|
+
"name": "keyword.operator.logical.js",
|
1113
|
+
"match": "\\s*+(!(?!=)|&&|\\|\\|)"
|
1174
1114
|
},
|
1175
1115
|
{
|
1176
|
-
"
|
1177
|
-
"
|
1178
|
-
"1": {
|
1179
|
-
"name": "keyword.operator.assignment.js"
|
1180
|
-
}
|
1181
|
-
}
|
1116
|
+
"name": "keyword.operator.assignment.js",
|
1117
|
+
"match": "\\s*+(=(?!(=|>)))"
|
1182
1118
|
},
|
1183
1119
|
{
|
1184
|
-
"
|
1185
|
-
"
|
1186
|
-
"1": {
|
1187
|
-
"name": "keyword.operator.assignment.augmented.js"
|
1188
|
-
}
|
1189
|
-
}
|
1120
|
+
"name": "keyword.operator.assignment.augmented.js",
|
1121
|
+
"match": "\\s*+(%=|&=|\\*=|\\+=|-=|/=|\\^=|\\|=|<<=|>>=|>>>=)"
|
1190
1122
|
},
|
1191
1123
|
{
|
1192
|
-
"
|
1193
|
-
"
|
1194
|
-
"1": {
|
1195
|
-
"name": "keyword.operator.bitwise.js"
|
1196
|
-
}
|
1197
|
-
}
|
1124
|
+
"name": "keyword.operator.bitwise.js",
|
1125
|
+
"match": "\\s*+(~|<<|>>>|>>|&|\\^|\\|)"
|
1198
1126
|
},
|
1199
1127
|
{
|
1200
|
-
"
|
1201
|
-
"
|
1202
|
-
"1": {
|
1203
|
-
"name": "keyword.operator.relational.js"
|
1204
|
-
}
|
1205
|
-
}
|
1128
|
+
"name": "keyword.operator.relational.js",
|
1129
|
+
"match": "\\s*+(<=|>=|<|>)"
|
1206
1130
|
},
|
1207
1131
|
{
|
1208
|
-
"
|
1209
|
-
"
|
1210
|
-
"1": {
|
1211
|
-
"name": "keyword.operator.comparison.js"
|
1212
|
-
}
|
1213
|
-
}
|
1132
|
+
"name": "keyword.operator.comparison.js",
|
1133
|
+
"match": "\\s*+(===|!==|==|!=)"
|
1214
1134
|
},
|
1215
1135
|
{
|
1216
|
-
"
|
1217
|
-
"
|
1218
|
-
"1": {
|
1219
|
-
"name": "keyword.operator.arithmetic.js"
|
1220
|
-
}
|
1221
|
-
}
|
1136
|
+
"name": "keyword.operator.arithmetic.js",
|
1137
|
+
"match": "\\s*+(--|\\+\\+|/(?!/|\\*)|%|\\*(?<!/\\*)|\\+|-)"
|
1222
1138
|
},
|
1223
1139
|
{
|
1224
1140
|
"comment": "ternary operator - make sure end : is consumed to avoid mistake as flow type",
|
@@ -1241,12 +1157,8 @@
|
|
1241
1157
|
]
|
1242
1158
|
},
|
1243
1159
|
{
|
1244
|
-
"
|
1245
|
-
"
|
1246
|
-
"1": {
|
1247
|
-
"name": "keyword.operator.spread.js"
|
1248
|
-
}
|
1249
|
-
}
|
1160
|
+
"name": "keyword.operator.spread.js",
|
1161
|
+
"match": "\\s*+(?<!\\.)\\.\\.\\."
|
1250
1162
|
},
|
1251
1163
|
{
|
1252
1164
|
"name": "keyword.operator.accessor.js",
|
@@ -1340,84 +1252,56 @@
|
|
1340
1252
|
"literal-language-constant": {
|
1341
1253
|
"patterns": [
|
1342
1254
|
{
|
1343
|
-
"
|
1344
|
-
"
|
1345
|
-
|
1346
|
-
|
1347
|
-
|
1348
|
-
|
1349
|
-
|
1350
|
-
|
1351
|
-
|
1352
|
-
|
1353
|
-
|
1354
|
-
|
1355
|
-
|
1356
|
-
|
1357
|
-
|
1358
|
-
|
1359
|
-
|
1360
|
-
|
1255
|
+
"name": "constant.language.boolean.true.js",
|
1256
|
+
"match": "\\s*+(?<!\\.)\\btrue\\b"
|
1257
|
+
},
|
1258
|
+
{
|
1259
|
+
"name": "constant.language.boolean.false.js",
|
1260
|
+
"match": "\\s*+(?<!\\.)\\bfalse\\b"
|
1261
|
+
},
|
1262
|
+
{
|
1263
|
+
"name": "constant.language.null.js",
|
1264
|
+
"match": "\\s*+(?<!\\.)\\bnull\\b"
|
1265
|
+
},
|
1266
|
+
{
|
1267
|
+
"name": "constant.language.undefined.js",
|
1268
|
+
"match": "\\s*+(?<!\\.)\\bundefined\\b"
|
1269
|
+
},
|
1270
|
+
{
|
1271
|
+
"name": "constant.language.nan.js",
|
1272
|
+
"match": "\\s*+(?<!\\.)\\bNaN\\b"
|
1361
1273
|
}
|
1362
1274
|
]
|
1363
1275
|
},
|
1364
1276
|
"support": {
|
1365
1277
|
"patterns": [
|
1366
1278
|
{
|
1367
|
-
"
|
1368
|
-
"
|
1369
|
-
"1": {
|
1370
|
-
"name": "support.class.builtin.js"
|
1371
|
-
}
|
1372
|
-
}
|
1279
|
+
"name": "support.class.builtin.js",
|
1280
|
+
"match": "\\s*+\\b(Array|ArrayBuffer|Boolean|DataView|Date|Float(32|64)Array|Int(8|16|32)Array|Function|GeneratorFunction|Map|Math|Number|Object|Promise|Proxy|RegExp|Set|String|Uint(8|16|32)Array|Uint8ClampedArray|WeakMap|WeakSet)\\b"
|
1373
1281
|
},
|
1374
1282
|
{
|
1375
|
-
"
|
1376
|
-
"
|
1377
|
-
"1": {
|
1378
|
-
"name": "support.function.js"
|
1379
|
-
}
|
1380
|
-
}
|
1283
|
+
"name": "support.function.js",
|
1284
|
+
"match": "\\s*+(?<!\\.)\\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|eval|isFinite|isNaN|parseFloat|parseInt|unescape)\\b"
|
1381
1285
|
},
|
1382
1286
|
{
|
1383
|
-
"
|
1384
|
-
"
|
1385
|
-
"1": {
|
1386
|
-
"name": "support.function.mutator.js"
|
1387
|
-
}
|
1388
|
-
}
|
1287
|
+
"name": "support.function.mutator.js",
|
1288
|
+
"match": "(?<=\\.)(shift|sort|splice|unshift|pop|push|reverse)\\b"
|
1389
1289
|
},
|
1390
1290
|
{
|
1391
|
-
"
|
1392
|
-
"
|
1393
|
-
"1": {
|
1394
|
-
"name": "support.class.error.js"
|
1395
|
-
}
|
1396
|
-
}
|
1291
|
+
"name": "support.class.error.js",
|
1292
|
+
"match": "\\s*+(?<!\\.)\\b((Eval|Range|Reference|Syntax|Type|URI)?Error)\\b"
|
1397
1293
|
},
|
1398
1294
|
{
|
1399
|
-
"
|
1400
|
-
"
|
1401
|
-
"1": {
|
1402
|
-
"name": "keyword.other.js"
|
1403
|
-
}
|
1404
|
-
}
|
1295
|
+
"name": "keyword.other.js",
|
1296
|
+
"match": "\\s*+(?<!\\.)\\b(debugger)\\b"
|
1405
1297
|
},
|
1406
1298
|
{
|
1407
|
-
"
|
1408
|
-
"
|
1409
|
-
"1": {
|
1410
|
-
"name": "support.type.object.dom.js"
|
1411
|
-
}
|
1412
|
-
}
|
1299
|
+
"name": "support.type.object.dom.js",
|
1300
|
+
"match": "\\s*+(?<!\\.)\\b(document|window)\\b"
|
1413
1301
|
},
|
1414
1302
|
{
|
1415
|
-
"
|
1416
|
-
"
|
1417
|
-
"1": {
|
1418
|
-
"name": "support.constant.dom.js"
|
1419
|
-
}
|
1420
|
-
}
|
1303
|
+
"name": "support.constant.dom.js",
|
1304
|
+
"match": "\\s*+\\b(ELEMENT_NODE|ATTRIBUTE_NODE|TEXT_NODE|CDATA_SECTION_NODE|ENTITY_REFERENCE_NODE|ENTITY_NODE|PROCESSING_INSTRUCTION_NODE|COMMENT_NODE|DOCUMENT_NODE|DOCUMENT_TYPE_NODE|DOCUMENT_FRAGMENT_NODE|NOTATION_NODE|INDEX_SIZE_ERR|DOMSTRING_SIZE_ERR|HIERARCHY_REQUEST_ERR|WRONG_DOCUMENT_ERR|INVALID_CHARACTER_ERR|NO_DATA_ALLOWED_ERR|NO_MODIFICATION_ALLOWED_ERR|NOT_FOUND_ERR|NOT_SUPPORTED_ERR|INUSE_ATTRIBUTE_ERR)\\b"
|
1421
1305
|
},
|
1422
1306
|
{
|
1423
1307
|
"match": "\\s*+(?<!\\.)\\b(console)(?:(\\.)(warn|info|log|error|time|timeEnd|assert))?\\b",
|
@@ -1476,30 +1360,17 @@
|
|
1476
1360
|
}
|
1477
1361
|
},
|
1478
1362
|
{
|
1479
|
-
"
|
1480
|
-
"
|
1481
|
-
"1": {
|
1482
|
-
"name": "support.type.object.node.js"
|
1483
|
-
}
|
1484
|
-
}
|
1363
|
+
"name": "support.type.object.node.js",
|
1364
|
+
"match": "\\s*+(?<!\\.)\\b(global|GLOBAL|root|__dirname|__filename)\\b"
|
1485
1365
|
},
|
1486
1366
|
{
|
1487
|
-
"
|
1488
|
-
"
|
1489
|
-
"1": {
|
1490
|
-
"name": "support.class.node.js"
|
1491
|
-
}
|
1492
|
-
}
|
1367
|
+
"name": "support.class.node.js",
|
1368
|
+
"match": "\\s*+\\b(Buffer|EventEmitter|Server|Pipe|Socket|REPLServer|ReadStream|WriteStream|Stream|Inflate|Deflate|InflateRaw|DeflateRaw|GZip|GUnzip|Unzip|Zip)\\b"
|
1493
1369
|
},
|
1494
1370
|
{
|
1495
|
-
"
|
1496
|
-
"begin": "\\s*+
|
1497
|
-
"end": "
|
1498
|
-
"captures": {
|
1499
|
-
"1": {
|
1500
|
-
"name": "meta.tag.mustache.js"
|
1501
|
-
}
|
1502
|
-
}
|
1371
|
+
"name": "meta.tag.mustache.js",
|
1372
|
+
"begin": "\\s*+{{",
|
1373
|
+
"end": "\\s*}}"
|
1503
1374
|
}
|
1504
1375
|
]
|
1505
1376
|
},
|
@@ -1507,24 +1378,24 @@
|
|
1507
1378
|
"patterns": [
|
1508
1379
|
{
|
1509
1380
|
"comment": "Classes",
|
1510
|
-
"begin": "\\s*+(?<!\\.)\\b(
|
1381
|
+
"begin": "\\s*+(?<!\\.)\\b(class)\\s+",
|
1511
1382
|
"end": "\\s*(?<=})",
|
1512
1383
|
"beginCaptures": {
|
1513
|
-
"
|
1384
|
+
"0": {
|
1514
1385
|
"name": "meta.class.js"
|
1515
1386
|
},
|
1516
|
-
"
|
1387
|
+
"1": {
|
1517
1388
|
"name": "storage.type.class.js"
|
1518
1389
|
}
|
1519
1390
|
},
|
1520
1391
|
"patterns": [
|
1521
1392
|
{
|
1522
|
-
"match": "\\s*+\\b(
|
1393
|
+
"match": "\\s*+\\b(extends)\\b\\s*+",
|
1523
1394
|
"captures": {
|
1524
|
-
"
|
1395
|
+
"0": {
|
1525
1396
|
"name": "meta.class.extends.js"
|
1526
1397
|
},
|
1527
|
-
"
|
1398
|
+
"1": {
|
1528
1399
|
"name": "storage.type.extends.js"
|
1529
1400
|
}
|
1530
1401
|
}
|
@@ -1532,21 +1403,17 @@
|
|
1532
1403
|
{
|
1533
1404
|
"comment": "look for classes names but dont assume uppercase start char",
|
1534
1405
|
"match": "(?<!\\.)\\s*+([$_\\p{L}](?:[$\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}])*+)",
|
1535
|
-
"
|
1536
|
-
"1": {
|
1537
|
-
"name": "entity.name.class.js"
|
1538
|
-
}
|
1539
|
-
}
|
1406
|
+
"name": "entity.name.class.js"
|
1540
1407
|
},
|
1541
1408
|
{
|
1542
1409
|
"include": "#flowtype-polymorphs"
|
1543
1410
|
},
|
1544
1411
|
{
|
1545
|
-
"begin": "\\s*+
|
1412
|
+
"begin": "\\s*+{",
|
1546
1413
|
"end": "\\s*(})",
|
1547
1414
|
"contentName": "meta.class.body.js",
|
1548
1415
|
"beginCaptures": {
|
1549
|
-
"
|
1416
|
+
"0": {
|
1550
1417
|
"name": "punctuation.section.class.begin.js"
|
1551
1418
|
}
|
1552
1419
|
},
|
@@ -1601,12 +1468,8 @@
|
|
1601
1468
|
]
|
1602
1469
|
},
|
1603
1470
|
{
|
1604
|
-
"match": "\\s
|
1605
|
-
"
|
1606
|
-
"1": {
|
1607
|
-
"name": "storage.modifier.js"
|
1608
|
-
}
|
1609
|
-
}
|
1471
|
+
"match": "\\s*+\\b(?<!\\.)static\\b(?!\\.)",
|
1472
|
+
"name": "storage.modifier.js"
|
1610
1473
|
},
|
1611
1474
|
{
|
1612
1475
|
"include": "#flowtype-variable"
|
@@ -1692,60 +1555,32 @@
|
|
1692
1555
|
"literal-language-variable": {
|
1693
1556
|
"patterns": [
|
1694
1557
|
{
|
1695
|
-
"
|
1696
|
-
"
|
1697
|
-
"1": {
|
1698
|
-
"name": "variable.language.arguments.js"
|
1699
|
-
}
|
1700
|
-
}
|
1558
|
+
"name": "variable.language.arguments.js",
|
1559
|
+
"match": "\\s*+(?<!(?<!\\.\\.)\\.)\\b(arguments)\\b"
|
1701
1560
|
},
|
1702
1561
|
{
|
1703
|
-
"
|
1704
|
-
"
|
1705
|
-
"1": {
|
1706
|
-
"name": "variable.language.super.js"
|
1707
|
-
}
|
1708
|
-
}
|
1562
|
+
"name": "variable.language.super.js",
|
1563
|
+
"match": "\\s*+(?<!(?<!\\.\\.)\\.)\\b(super)\\b\\s*+(?!\\()"
|
1709
1564
|
},
|
1710
1565
|
{
|
1711
|
-
"
|
1712
|
-
"
|
1713
|
-
"1": {
|
1714
|
-
"name": "variable.language.this.js"
|
1715
|
-
}
|
1716
|
-
}
|
1566
|
+
"name": "variable.language.this.js",
|
1567
|
+
"match": "\\s*+(?<!(?<!\\.\\.)\\.)\\b(this)\\b"
|
1717
1568
|
},
|
1718
1569
|
{
|
1719
|
-
"
|
1720
|
-
"
|
1721
|
-
"1": {
|
1722
|
-
"name": "variable.language.self.js"
|
1723
|
-
}
|
1724
|
-
}
|
1570
|
+
"name": "variable.language.self.js",
|
1571
|
+
"match": "\\s*+(?<!(?<!\\.\\.)\\.)\\b(self)\\b\\s*+(?!\\()"
|
1725
1572
|
},
|
1726
1573
|
{
|
1727
|
-
"
|
1728
|
-
"
|
1729
|
-
"1": {
|
1730
|
-
"name": "variable.language.proto.js"
|
1731
|
-
}
|
1732
|
-
}
|
1574
|
+
"name": "variable.language.proto.js",
|
1575
|
+
"match": "\\s*+(?<=\\.)\\b(__proto__)\\b"
|
1733
1576
|
},
|
1734
1577
|
{
|
1735
|
-
"
|
1736
|
-
"
|
1737
|
-
"1": {
|
1738
|
-
"name": "variable.language.constructor.js"
|
1739
|
-
}
|
1740
|
-
}
|
1578
|
+
"name": "variable.language.constructor.js",
|
1579
|
+
"match": "\\s*+(?<=\\.)\\b(constructor)\\b\\s*+(?!\\()"
|
1741
1580
|
},
|
1742
1581
|
{
|
1743
|
-
"
|
1744
|
-
"
|
1745
|
-
"1": {
|
1746
|
-
"name": "variable.language.prototype.js"
|
1747
|
-
}
|
1748
|
-
}
|
1582
|
+
"name": "variable.language.prototype.js",
|
1583
|
+
"match": "\\s*+(?<=\\.)\\b(prototype)\\b"
|
1749
1584
|
}
|
1750
1585
|
]
|
1751
1586
|
},
|
@@ -1761,7 +1596,7 @@
|
|
1761
1596
|
},
|
1762
1597
|
{
|
1763
1598
|
"name": "constant.character.escape",
|
1764
|
-
"match": "\\\\u(({[0-9a-fA-F]+\\})|[0-9a-fA-F]{4})"
|
1599
|
+
"match": "\\\\u((\\{[0-9a-fA-F]+\\})|[0-9a-fA-F]{4})"
|
1765
1600
|
},
|
1766
1601
|
{
|
1767
1602
|
"name": "constant.character.escape",
|
@@ -1822,7 +1657,7 @@
|
|
1822
1657
|
{
|
1823
1658
|
"comment": "e.g. (args) => { }",
|
1824
1659
|
"name": "meta.function.arrow.js",
|
1825
|
-
"begin": "\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+((
|
1660
|
+
"begin": "\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
1826
1661
|
"end": "\\s*(=>)",
|
1827
1662
|
"applyEndPatternLast": 1,
|
1828
1663
|
"endCaptures": {
|
@@ -1860,7 +1695,7 @@
|
|
1860
1695
|
{
|
1861
1696
|
"comment": "e.g. play = (args) => { }",
|
1862
1697
|
"name": "meta.function.arrow.js",
|
1863
|
-
"begin": "\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+((
|
1698
|
+
"begin": "\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
1864
1699
|
"end": "\\s*(=>)",
|
1865
1700
|
"applyEndPatternLast": 1,
|
1866
1701
|
"beginCaptures": {
|
@@ -1910,7 +1745,7 @@
|
|
1910
1745
|
{
|
1911
1746
|
"comment": "Sound.prototype.play = (args) => { }",
|
1912
1747
|
"name": "meta.prototype.function.arrow.js",
|
1913
|
-
"begin": "\\s*+(\\b[A-Z][$\\w]*)?(\\.)(prototype)(\\.)([_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+((
|
1748
|
+
"begin": "\\s*+(\\b[A-Z][$\\w]*)?(\\.)(prototype)(\\.)([_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
1914
1749
|
"end": "\\s*(=>)",
|
1915
1750
|
"applyEndPatternLast": 1,
|
1916
1751
|
"beginCaptures": {
|
@@ -1984,7 +1819,7 @@
|
|
1984
1819
|
{
|
1985
1820
|
"comment": "e.g. Sound.play = (args) => { }",
|
1986
1821
|
"name": "meta.function.static.arrow.js",
|
1987
|
-
"begin": "\\s*+(\\b_?[A-Z][$\\w]*)?(\\.)([_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+((
|
1822
|
+
"begin": "\\s*+(\\b_?[A-Z][$\\w]*)?(\\.)([_$a-zA-Z][$\\w]*)\\s*+(=)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*=>)",
|
1988
1823
|
"end": "\\s*(=>)",
|
1989
1824
|
"applyEndPatternLast": 1,
|
1990
1825
|
"beginCaptures": {
|
@@ -2051,7 +1886,7 @@
|
|
2051
1886
|
{
|
2052
1887
|
"comment": "e.g. play<T,T>(arg1, arg2): Type<T> { }",
|
2053
1888
|
"name": "meta.function.method.js",
|
2054
|
-
"begin": "(?:^|;)\\s*+(\\bstatic\\b)?\\s*+(\\basync\\b)?\\s*+(\\*?)\\s*+(?<!\\.)(?!\\b(break|case|catch|continue|do|else|finally|for|function|if|export|import|package|return|switch|throw|try|while|with)\\b)([_$a-zA-Z][$\\w]*)\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+({(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s
|
1889
|
+
"begin": "(?:^|;)\\s*+(\\bstatic\\b)?\\s*+(\\basync\\b)?\\s*+(\\*?)\\s*+(?<!\\.)(?!\\b(break|case|catch|continue|do|else|finally|for|function|if|export|import|package|return|switch|throw|try|while|with)\\b)([_$a-zA-Z][$\\w]*)\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*:(\\s*+(&|\\|)?(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*+)*\\s*\\{)",
|
2055
1890
|
"end": "\\s*(?=.)",
|
2056
1891
|
"applyEndPatternLast": 1,
|
2057
1892
|
"beginCaptures": {
|
@@ -2107,7 +1942,7 @@
|
|
2107
1942
|
{
|
2108
1943
|
"comment": "e.g. 'play'<T,T>(arg1, arg2): Type<T> { }",
|
2109
1944
|
"name": "meta.function.method.js",
|
2110
|
-
"begin": "(?<!:)\\s*+(\\bstatic\\b)?\\s*+(\\basync\\b)?\\s*+(\\*?)\\s*+(?<!\\.)(('
|
1945
|
+
"begin": "(?<!:)\\s*+(\\bstatic\\b)?\\s*+(\\basync\\b)?\\s*+(\\*?)\\s*+(?<!\\.)(('|\\\")([^\"']*)(\\k<-3>))\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?(\\())",
|
2111
1946
|
"end": "\\s*(?=.)",
|
2112
1947
|
"applyEndPatternLast": 1,
|
2113
1948
|
"beginCaptures": {
|
@@ -2305,209 +2140,16 @@
|
|
2305
2140
|
"literal-module": {
|
2306
2141
|
"patterns": [
|
2307
2142
|
{
|
2308
|
-
"
|
2143
|
+
"name": "keyword.control.module.js",
|
2144
|
+
"match": "\\s*+(?<!\\.)\\b(import|export|default)\\b"
|
2309
2145
|
},
|
2310
2146
|
{
|
2311
|
-
"
|
2147
|
+
"name": "keyword.control.module.reference.js",
|
2148
|
+
"match": "\\s*+(?<!\\.)\\b(from|as)\\b"
|
2312
2149
|
}
|
2313
2150
|
]
|
2314
2151
|
},
|
2315
|
-
"literal-
|
2316
|
-
"begin": "\\s*+(?<!\\.)\\b(import)(?!\\s*:)\\b",
|
2317
|
-
"end": "\\s*(?:(?:(\\bfrom\\b)?+\\s++(('|\")([^\"']*)(\\k<-3>)))|(?=;|^\\s*\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|}))",
|
2318
|
-
"beginCaptures": {
|
2319
|
-
"1": {
|
2320
|
-
"name": "keyword.control.module.js"
|
2321
|
-
}
|
2322
|
-
},
|
2323
|
-
"endCaptures": {
|
2324
|
-
"1": {
|
2325
|
-
"name": "keyword.control.module.js"
|
2326
|
-
},
|
2327
|
-
"3": {
|
2328
|
-
"name": "punctuation.definition.string.begin.js"
|
2329
|
-
},
|
2330
|
-
"4": {
|
2331
|
-
"name": "string.quoted.module.js"
|
2332
|
-
},
|
2333
|
-
"5": {
|
2334
|
-
"name": "punctuation.definition.string.begin.js"
|
2335
|
-
}
|
2336
|
-
},
|
2337
|
-
"patterns": [
|
2338
|
-
{
|
2339
|
-
"match": "\\s*\\b(default)\\b",
|
2340
|
-
"captures": {
|
2341
|
-
"1": {
|
2342
|
-
"name": "keyword.control.module.js"
|
2343
|
-
}
|
2344
|
-
}
|
2345
|
-
},
|
2346
|
-
{
|
2347
|
-
"match": "\\s*\\b(typeof|type)\\b\\s++(?={|[$_a-zA-Z])(?!\\b(instanceof|in|as)\\b|,)",
|
2348
|
-
"captures": {
|
2349
|
-
"1": {
|
2350
|
-
"name": "keyword.other.typedef.flowtype"
|
2351
|
-
}
|
2352
|
-
}
|
2353
|
-
},
|
2354
|
-
{
|
2355
|
-
"name": "keyword.operator.module.all.js",
|
2356
|
-
"match": "\\*"
|
2357
|
-
},
|
2358
|
-
{
|
2359
|
-
"include": "#literal-module-as"
|
2360
|
-
},
|
2361
|
-
{
|
2362
|
-
"include": "#literal-module-brackets"
|
2363
|
-
},
|
2364
|
-
{
|
2365
|
-
"include": "#literal-variable"
|
2366
|
-
},
|
2367
|
-
{
|
2368
|
-
"include": "#comments"
|
2369
|
-
},
|
2370
|
-
{
|
2371
|
-
"include": "#literal-comma"
|
2372
|
-
}
|
2373
|
-
]
|
2374
|
-
},
|
2375
|
-
"literal-module-export": {
|
2376
|
-
"patterns": [
|
2377
|
-
{
|
2378
|
-
"comment": "e.g. export let variable =, export type a=",
|
2379
|
-
"match": "\\s*+(?<!\\.)\\b(export)(?!\\s*:)\\b(?=\\s++(let|type|typeof)\\s++[$_a-zA-Z])",
|
2380
|
-
"captures": {
|
2381
|
-
"1": {
|
2382
|
-
"name": "keyword.control.module.js"
|
2383
|
-
}
|
2384
|
-
}
|
2385
|
-
},
|
2386
|
-
{
|
2387
|
-
"comment": "export { or export * or export var from module",
|
2388
|
-
"begin": "\\s*+(?<!\\.)\\b(export)\\b(?=\\s++({|\\*|[$_a-zA-Z][$_\\w]*(\\s++from\\b|\\s*,)))",
|
2389
|
-
"end": "\\s*(?:(?:(\\bfrom\\b)?+\\s++(('|\")([^\"']*)(\\k<-3>)))|(?=;|^\\s*\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b|\\)|}))",
|
2390
|
-
"beginCaptures": {
|
2391
|
-
"1": {
|
2392
|
-
"name": "keyword.control.module.js"
|
2393
|
-
}
|
2394
|
-
},
|
2395
|
-
"endCaptures": {
|
2396
|
-
"1": {
|
2397
|
-
"name": "keyword.control.module.js"
|
2398
|
-
},
|
2399
|
-
"3": {
|
2400
|
-
"name": "punctuation.definition.string.begin.js"
|
2401
|
-
},
|
2402
|
-
"4": {
|
2403
|
-
"name": "string.quoted.module.js"
|
2404
|
-
},
|
2405
|
-
"5": {
|
2406
|
-
"name": "punctuation.definition.string.begin.js"
|
2407
|
-
}
|
2408
|
-
},
|
2409
|
-
"patterns": [
|
2410
|
-
{
|
2411
|
-
"name": "keyword.operator.module.all.js",
|
2412
|
-
"match": "\\*"
|
2413
|
-
},
|
2414
|
-
{
|
2415
|
-
"include": "#literal-module-as"
|
2416
|
-
},
|
2417
|
-
{
|
2418
|
-
"include": "#literal-module-brackets"
|
2419
|
-
},
|
2420
|
-
{
|
2421
|
-
"include": "#literal-variable"
|
2422
|
-
},
|
2423
|
-
{
|
2424
|
-
"include": "#comments"
|
2425
|
-
},
|
2426
|
-
{
|
2427
|
-
"include": "#literal-comma"
|
2428
|
-
}
|
2429
|
-
]
|
2430
|
-
},
|
2431
|
-
{
|
2432
|
-
"comment": "trap expressions among - export function* () {}",
|
2433
|
-
"match": "\\s*+(?<!\\.)\\b(export|default)(?!\\s*:)\\b",
|
2434
|
-
"captures": {
|
2435
|
-
"1": {
|
2436
|
-
"name": "keyword.control.module.js"
|
2437
|
-
}
|
2438
|
-
}
|
2439
|
-
}
|
2440
|
-
]
|
2441
|
-
},
|
2442
|
-
"literal-module-as": {
|
2443
|
-
"match": "\\s*+(?:(\\*)|([$_a-zA-Z][$_\\w]*))\\s++(\\bas\\b)\\s++(?:(\\bdefault\\b)|([$_a-zA-Z][$_\\w]*))",
|
2444
|
-
"captures": {
|
2445
|
-
"1": {
|
2446
|
-
"name": "keyword.operator.module.all.js"
|
2447
|
-
},
|
2448
|
-
"2": {
|
2449
|
-
"name": "variable.other.readwrite.js"
|
2450
|
-
},
|
2451
|
-
"3": {
|
2452
|
-
"name": "keyword.control.module.reference.js"
|
2453
|
-
},
|
2454
|
-
"4": {
|
2455
|
-
"name": "keyword.control.module.js"
|
2456
|
-
},
|
2457
|
-
"5": {
|
2458
|
-
"name": "variable.other.readwrite.js"
|
2459
|
-
}
|
2460
|
-
}
|
2461
|
-
},
|
2462
|
-
"literal-module-brackets": {
|
2463
|
-
"patterns": [
|
2464
|
-
{
|
2465
|
-
"begin": "\\s*+(?:({)|(\\[))",
|
2466
|
-
"end": "\\s*(?:(\\})|(\\]))",
|
2467
|
-
"beginCaptures": {
|
2468
|
-
"1": {
|
2469
|
-
"name": "meta.brace.curly.js"
|
2470
|
-
},
|
2471
|
-
"2": {
|
2472
|
-
"name": "meta.brace.square.js"
|
2473
|
-
}
|
2474
|
-
},
|
2475
|
-
"endCaptures": {
|
2476
|
-
"1": {
|
2477
|
-
"name": "meta.brace.curly.js"
|
2478
|
-
},
|
2479
|
-
"2": {
|
2480
|
-
"name": "meta.brace.square.js"
|
2481
|
-
}
|
2482
|
-
},
|
2483
|
-
"patterns": [
|
2484
|
-
{
|
2485
|
-
"name": "keyword.operator.module.all.js",
|
2486
|
-
"match": "\\*"
|
2487
|
-
},
|
2488
|
-
{
|
2489
|
-
"include": "#literal-module-as"
|
2490
|
-
},
|
2491
|
-
{
|
2492
|
-
"include": "#literal-module-brackets"
|
2493
|
-
},
|
2494
|
-
{
|
2495
|
-
"include": "#literal-variable"
|
2496
|
-
},
|
2497
|
-
{
|
2498
|
-
"include": "#literal-string"
|
2499
|
-
},
|
2500
|
-
{
|
2501
|
-
"include": "#comments"
|
2502
|
-
},
|
2503
|
-
{
|
2504
|
-
"include": "#literal-comma"
|
2505
|
-
}
|
2506
|
-
]
|
2507
|
-
}
|
2508
|
-
]
|
2509
|
-
},
|
2510
|
-
"literal-variable": {
|
2152
|
+
"literal-variable": {
|
2511
2153
|
"patterns": [
|
2512
2154
|
{
|
2513
2155
|
"comment": "e.g. CONSTANT",
|
@@ -2614,24 +2256,11 @@
|
|
2614
2256
|
}
|
2615
2257
|
]
|
2616
2258
|
},
|
2617
|
-
"es7-function-bind": {
|
2618
|
-
"patterns": [
|
2619
|
-
{
|
2620
|
-
"comment": "https://github.com/zenparsing/es-function-bind#examples",
|
2621
|
-
"match": "\\s*(::)",
|
2622
|
-
"captures": {
|
2623
|
-
"1": {
|
2624
|
-
"name": "keyword.operator.accessor.js"
|
2625
|
-
}
|
2626
|
-
}
|
2627
|
-
}
|
2628
|
-
]
|
2629
|
-
},
|
2630
2259
|
"jsx": {
|
2631
2260
|
"comment": "Avoid < operator expressions as best we can using Zertosh's regex",
|
2632
2261
|
"patterns": [
|
2633
2262
|
{
|
2634
|
-
"begin": "(?<=\\(
|
2263
|
+
"begin": "(?<=\\(|\\{|\\[|,|&&|\\|\\||\\?|:|=|=>|\\Wreturn|^return|\\Wdefault|^)\\s*+(?=<[$_\\p{L}])",
|
2635
2264
|
"end": "(?=.)",
|
2636
2265
|
"applyEndPatternLast": 1,
|
2637
2266
|
"patterns": [
|
@@ -2647,7 +2276,6 @@
|
|
2647
2276
|
{
|
2648
2277
|
"comment": "Tags that end > are trapped in #jsx-tag-termination",
|
2649
2278
|
"name": "meta.tag.jsx",
|
2650
|
-
"contentName": "JSXAttrs",
|
2651
2279
|
"begin": "\\s*+(<)((\\p{Ll}[\\p{Ll}0-9]*)|((?:[$_\\p{L}\\p{Nl}][$_\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}-]*?:)?+(?:[$_\\p{L}\\p{Nl}](?:[$_\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}\\.-](?<!\\.\\.))*+)+))(?=[ />\\s])(?![:])(?<!\\.|:)",
|
2652
2280
|
"end": "\\s*(?<=</)((\\4)|\\2)(>)|(/>)|((?<=</)[\\S ]*?)>",
|
2653
2281
|
"beginCaptures": {
|
@@ -2693,7 +2321,6 @@
|
|
2693
2321
|
"patterns": [
|
2694
2322
|
{
|
2695
2323
|
"comment": "uses non consuming search for </ in </tag>",
|
2696
|
-
"contentName": "JSXNested",
|
2697
2324
|
"begin": "(>)",
|
2698
2325
|
"end": "(</)",
|
2699
2326
|
"beginCaptures": {
|
@@ -2823,52 +2450,32 @@
|
|
2823
2450
|
]
|
2824
2451
|
},
|
2825
2452
|
"jsx-evaluated-code": {
|
2453
|
+
"name": "meta.embedded.expression.js",
|
2454
|
+
"begin": "{",
|
2455
|
+
"end": "}",
|
2456
|
+
"beginCaptures": {
|
2457
|
+
"0": {
|
2458
|
+
"name": "punctuation.section.embedded.begin.jsx"
|
2459
|
+
}
|
2460
|
+
},
|
2461
|
+
"endCaptures": {
|
2462
|
+
"0": {
|
2463
|
+
"name": "punctuation.section.embedded.end.jsx"
|
2464
|
+
}
|
2465
|
+
},
|
2466
|
+
"contentName": "source.js.jsx",
|
2826
2467
|
"patterns": [
|
2827
2468
|
{
|
2828
|
-
"
|
2829
|
-
"contentName": "comment.embedded.jsx",
|
2830
|
-
"begin": "^\\s*({/\\*)",
|
2831
|
-
"end": "\\s*(\\*/})",
|
2832
|
-
"beginCaptures": {
|
2833
|
-
"1": {
|
2834
|
-
"name": "punctuation.section.embedded.begin.jsx"
|
2835
|
-
}
|
2836
|
-
},
|
2837
|
-
"endCaptures": {
|
2838
|
-
"1": {
|
2839
|
-
"name": "punctuation.section.embedded.end.jsx"
|
2840
|
-
}
|
2841
|
-
}
|
2469
|
+
"include": "#jsx-string-double-quoted"
|
2842
2470
|
},
|
2843
2471
|
{
|
2844
|
-
"
|
2845
|
-
|
2846
|
-
|
2847
|
-
"
|
2848
|
-
|
2849
|
-
|
2850
|
-
|
2851
|
-
}
|
2852
|
-
},
|
2853
|
-
"endCaptures": {
|
2854
|
-
"0": {
|
2855
|
-
"name": "punctuation.section.embedded.end.jsx"
|
2856
|
-
}
|
2857
|
-
},
|
2858
|
-
"patterns": [
|
2859
|
-
{
|
2860
|
-
"include": "#jsx-string-double-quoted"
|
2861
|
-
},
|
2862
|
-
{
|
2863
|
-
"include": "#jsx-string-single-quoted"
|
2864
|
-
},
|
2865
|
-
{
|
2866
|
-
"include": "#jsx-spread-attribute"
|
2867
|
-
},
|
2868
|
-
{
|
2869
|
-
"include": "#expression"
|
2870
|
-
}
|
2871
|
-
]
|
2472
|
+
"include": "#jsx-string-single-quoted"
|
2473
|
+
},
|
2474
|
+
{
|
2475
|
+
"include": "#jsx-spread-attribute"
|
2476
|
+
},
|
2477
|
+
{
|
2478
|
+
"include": "#expression"
|
2872
2479
|
}
|
2873
2480
|
]
|
2874
2481
|
},
|
@@ -2928,32 +2535,10 @@
|
|
2928
2535
|
}
|
2929
2536
|
},
|
2930
2537
|
"patterns": [
|
2931
|
-
{
|
2932
|
-
"include": "#flowtype-predicate"
|
2933
|
-
},
|
2934
2538
|
{
|
2935
2539
|
"include": "#flowtype-parse-types"
|
2936
2540
|
}
|
2937
2541
|
]
|
2938
|
-
},
|
2939
|
-
{
|
2940
|
-
"include": "#flowtype-predicate"
|
2941
|
-
}
|
2942
|
-
]
|
2943
|
-
},
|
2944
|
-
"flowtype-predicate": {
|
2945
|
-
"comment": "flow predicate checks",
|
2946
|
-
"begin": "\\s*\\b(checks)\\b(?=(\\s*(\\((?:(?>[^()]+)|\\g<-1>)*\\))?)?\\s*(=>|{|;|$))",
|
2947
|
-
"end": "(?=.)",
|
2948
|
-
"applyEndPatternLast": 1,
|
2949
|
-
"beginCaptures": {
|
2950
|
-
"1": {
|
2951
|
-
"name": "entity.name.function.predicate.flowtype"
|
2952
|
-
}
|
2953
|
-
},
|
2954
|
-
"patterns": [
|
2955
|
-
{
|
2956
|
-
"include": "#round-brackets"
|
2957
2542
|
}
|
2958
2543
|
]
|
2959
2544
|
},
|
@@ -2961,7 +2546,7 @@
|
|
2961
2546
|
"patterns": [
|
2962
2547
|
{
|
2963
2548
|
"comment": "e.g. let a: ()=>null = function() {return null}",
|
2964
|
-
"match": "(?<!\\.)\\s*+([$_\\p{L}](?:[$.\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}])*+)\\s*+(\\??)\\s*+(?=:\\s*(
|
2549
|
+
"match": "(?<!\\.)\\s*+([$_\\p{L}](?:[$.\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}])*+)\\s*+(\\??)\\s*+(?=:\\s*(\\bFunction\\b|(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*=>|\\(\\s*$))",
|
2965
2550
|
"captures": {
|
2966
2551
|
"1": {
|
2967
2552
|
"name": "storage.type.function.js"
|
@@ -2995,30 +2580,18 @@
|
|
2995
2580
|
"patterns": [
|
2996
2581
|
{
|
2997
2582
|
"comment": "flowtype optional arg/parameter e.g. protocol? : string",
|
2998
|
-
"
|
2999
|
-
"
|
3000
|
-
"1": {
|
3001
|
-
"name": "punctuation.type.flowtype"
|
3002
|
-
}
|
3003
|
-
}
|
2583
|
+
"name": "punctuation.type.flowtype",
|
2584
|
+
"match": "\\s*+\\?"
|
3004
2585
|
},
|
3005
2586
|
{
|
3006
2587
|
"comment": "Type Unions |",
|
3007
|
-
"
|
3008
|
-
"
|
3009
|
-
"1": {
|
3010
|
-
"name": "kewyword.operator.union.flowtype"
|
3011
|
-
}
|
3012
|
-
}
|
2588
|
+
"name": "kewyword.operator.union.flowtype",
|
2589
|
+
"match": "\\s*+\\|"
|
3013
2590
|
},
|
3014
2591
|
{
|
3015
2592
|
"comment": "intersection of types &",
|
3016
|
-
"
|
3017
|
-
"
|
3018
|
-
"1": {
|
3019
|
-
"name": "kewyword.operator.intersection.flowtype"
|
3020
|
-
}
|
3021
|
-
}
|
2593
|
+
"name": "kewyword.operator.intersection.flowtype",
|
2594
|
+
"match": "\\s*+\\&"
|
3022
2595
|
},
|
3023
2596
|
{
|
3024
2597
|
"comment": "typed entity :",
|
@@ -3041,7 +2614,7 @@
|
|
3041
2614
|
},
|
3042
2615
|
{
|
3043
2616
|
"comment": "An Iterator prefix?",
|
3044
|
-
"match": "\\s
|
2617
|
+
"match": "\\s*+@@"
|
3045
2618
|
},
|
3046
2619
|
{
|
3047
2620
|
"begin": "\\s*+(=>)",
|
@@ -3083,20 +2656,12 @@
|
|
3083
2656
|
"patterns": [
|
3084
2657
|
{
|
3085
2658
|
"comment": "Maybe types",
|
3086
|
-
"
|
3087
|
-
"
|
3088
|
-
"1": {
|
3089
|
-
"name": "keyword.operator.maybe.flowtype"
|
3090
|
-
}
|
3091
|
-
}
|
2659
|
+
"name": "keyword.operator.maybe.flowtype",
|
2660
|
+
"match": "\\s*+\\?"
|
3092
2661
|
},
|
3093
2662
|
{
|
3094
|
-
"
|
3095
|
-
"
|
3096
|
-
"1": {
|
3097
|
-
"name": "keyword.operator.flowtype"
|
3098
|
-
}
|
3099
|
-
}
|
2663
|
+
"name": "keyword.operator.flowtype",
|
2664
|
+
"match": "\\s*+\\btypeof\\b\\s*+"
|
3100
2665
|
},
|
3101
2666
|
{
|
3102
2667
|
"comment": "primitive flowtypes",
|
@@ -3139,40 +2704,23 @@
|
|
3139
2704
|
},
|
3140
2705
|
{
|
3141
2706
|
"comment": "Type Unions |",
|
3142
|
-
"
|
3143
|
-
"
|
3144
|
-
"1": {
|
3145
|
-
"name": "kewyword.operator.union.flowtype"
|
3146
|
-
}
|
3147
|
-
}
|
2707
|
+
"name": "kewyword.operator.union.flowtype",
|
2708
|
+
"match": "\\s*+\\|"
|
3148
2709
|
},
|
3149
2710
|
{
|
3150
2711
|
"comment": "intersection of types &",
|
3151
|
-
"
|
3152
|
-
"
|
3153
|
-
"1": {
|
3154
|
-
"name": "kewyword.operator.intersection.flowtype"
|
3155
|
-
}
|
3156
|
-
}
|
2712
|
+
"name": "kewyword.operator.intersection.flowtype",
|
2713
|
+
"match": "\\s*+\\&"
|
3157
2714
|
},
|
3158
2715
|
{
|
3159
2716
|
"comment": "as per React declares in flowtype github",
|
3160
|
-
"
|
3161
|
-
"
|
3162
|
-
"1": {
|
3163
|
-
"name": "kewyword.operator.existential.flowtype"
|
3164
|
-
}
|
3165
|
-
}
|
2717
|
+
"name": "kewyword.operator.existential.flowtype",
|
2718
|
+
"match": "\\s*+\\*"
|
3166
2719
|
},
|
3167
2720
|
{
|
3168
2721
|
"comment": "types of type marker e.g. <T: number | string>",
|
3169
2722
|
"name": "punctuation.type.flowtype",
|
3170
|
-
"match": "\\s*+(:)"
|
3171
|
-
"captures": {
|
3172
|
-
"1": {
|
3173
|
-
"name": "support.type.builtin.primitive.flowtype"
|
3174
|
-
}
|
3175
|
-
}
|
2723
|
+
"match": "\\s*+(:)"
|
3176
2724
|
},
|
3177
2725
|
{
|
3178
2726
|
"comment": "call back with a form ) => type",
|
@@ -3220,9 +2768,6 @@
|
|
3220
2768
|
}
|
3221
2769
|
},
|
3222
2770
|
"patterns": [
|
3223
|
-
{
|
3224
|
-
"include": "#flowtype-polymorphs"
|
3225
|
-
},
|
3226
2771
|
{
|
3227
2772
|
"include": "#flowtype-variable"
|
3228
2773
|
}
|
@@ -3302,7 +2847,7 @@
|
|
3302
2847
|
},
|
3303
2848
|
"flowtype-parse-objects": {
|
3304
2849
|
"comment": "object literal flowtype preceded by either => : | & ? symbols",
|
3305
|
-
"begin": "(?<=:|\\||&|\\?|=>|<)\\s*+({)",
|
2850
|
+
"begin": "(?<=:|\\||&|\\?|=>|<)\\s*+(\\{)",
|
3306
2851
|
"end": "\\s*(\\})",
|
3307
2852
|
"applyEndPatternLast": 1,
|
3308
2853
|
"beginCaptures": {
|
@@ -3324,13 +2869,19 @@
|
|
3324
2869
|
"flowtype-object-property": {
|
3325
2870
|
"patterns": [
|
3326
2871
|
{
|
3327
|
-
"
|
3328
|
-
|
3329
|
-
|
3330
|
-
|
2872
|
+
"comment": "name of property which can be a string",
|
2873
|
+
"match": "\\s*+(((\"|').*?(?<=[^\\\\])\\k<-1>)|([$_\\p{L}](?:[$.\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}])*+))\\s*+(\\??)\\s*+(?=:)",
|
2874
|
+
"captures": {
|
2875
|
+
"1": {
|
2876
|
+
"name": "variable.other.property.flowtype"
|
2877
|
+
},
|
2878
|
+
"5": {
|
2879
|
+
"name": "keyword.operator.optional.parameter.flowtype"
|
2880
|
+
}
|
2881
|
+
}
|
3331
2882
|
},
|
3332
2883
|
{
|
3333
|
-
"include": "#flowtype-
|
2884
|
+
"include": "#flowtype-vars-and-props"
|
3334
2885
|
}
|
3335
2886
|
]
|
3336
2887
|
},
|
@@ -3358,10 +2909,13 @@
|
|
3358
2909
|
"patterns": [
|
3359
2910
|
{
|
3360
2911
|
"comment": "type aliases for export but avoid type instaceof or type in operators",
|
3361
|
-
"begin": "(
|
3362
|
-
"end": "\\s*(
|
2912
|
+
"begin": "\\s*+(?:\\b(import|export))?\\b\\s*(type)\\b\\s*(?!(instanceof|in)\\b)(?=[$_A-Za-z{\\[])",
|
2913
|
+
"end": "\\s*(\\;)|\\b(?=if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare|interface)\\b",
|
3363
2914
|
"beginCaptures": {
|
3364
2915
|
"1": {
|
2916
|
+
"name": "keyword.control.module.js"
|
2917
|
+
},
|
2918
|
+
"2": {
|
3365
2919
|
"name": "keyword.other.typedef.flowtype"
|
3366
2920
|
}
|
3367
2921
|
},
|
@@ -3375,17 +2929,31 @@
|
|
3375
2929
|
"match": "\\s*+="
|
3376
2930
|
},
|
3377
2931
|
{
|
3378
|
-
"begin": "\\s*+
|
3379
|
-
"end": "\\s*
|
2932
|
+
"begin": "\\s*+{",
|
2933
|
+
"end": "\\s*}",
|
3380
2934
|
"applyEndPatternLast": 1,
|
3381
|
-
"
|
3382
|
-
"
|
2935
|
+
"beginCaptures": {
|
2936
|
+
"0": {
|
2937
|
+
"name": "meta.brace.curly.js"
|
2938
|
+
}
|
2939
|
+
},
|
2940
|
+
"endCaptures": {
|
2941
|
+
"0": {
|
3383
2942
|
"name": "meta.brace.curly.js"
|
3384
2943
|
}
|
3385
2944
|
},
|
3386
2945
|
"patterns": [
|
3387
2946
|
{
|
3388
|
-
"include": "#flowtype
|
2947
|
+
"include": "#flowtype"
|
2948
|
+
},
|
2949
|
+
{
|
2950
|
+
"include": "#flowtype-variable"
|
2951
|
+
},
|
2952
|
+
{
|
2953
|
+
"include": "#comments"
|
2954
|
+
},
|
2955
|
+
{
|
2956
|
+
"include": "#flowtype-function-name"
|
3389
2957
|
}
|
3390
2958
|
]
|
3391
2959
|
},
|
@@ -3423,11 +2991,11 @@
|
|
3423
2991
|
"include": "#flowtype-polymorphs"
|
3424
2992
|
},
|
3425
2993
|
{
|
3426
|
-
"begin": "\\s*+
|
2994
|
+
"begin": "\\s*+{",
|
3427
2995
|
"end": "\\s*(})",
|
3428
2996
|
"contentName": "meta.class.body.js",
|
3429
2997
|
"beginCaptures": {
|
3430
|
-
"
|
2998
|
+
"0": {
|
3431
2999
|
"name": "punctuation.section.class.begin.js"
|
3432
3000
|
}
|
3433
3001
|
},
|
@@ -3450,7 +3018,7 @@
|
|
3450
3018
|
"flowtype-declare": {
|
3451
3019
|
"patterns": [
|
3452
3020
|
{
|
3453
|
-
"match": "\\s*+(?<!\\.)\\b(declare)(?=\\
|
3021
|
+
"match": "\\s*+(?<!\\.)\\b(declare)\\b\\s++(?=\\b(function|var|type|interface)\\s++)",
|
3454
3022
|
"captures": {
|
3455
3023
|
"1": {
|
3456
3024
|
"name": "keyword.other.declare.flowtype"
|
@@ -3480,9 +3048,6 @@
|
|
3480
3048
|
}
|
3481
3049
|
},
|
3482
3050
|
"patterns": [
|
3483
|
-
{
|
3484
|
-
"include": "#flowtype-parse-objects"
|
3485
|
-
},
|
3486
3051
|
{
|
3487
3052
|
"include": "#flowtype-parse-types"
|
3488
3053
|
}
|
@@ -3507,11 +3072,7 @@
|
|
3507
3072
|
{
|
3508
3073
|
"comment": "look for module names but dont assume uppercase start char",
|
3509
3074
|
"match": "(?<!\\.)\\s*+([$_\\p{L}](?:[$\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}])*+)",
|
3510
|
-
"
|
3511
|
-
"1": {
|
3512
|
-
"name": "entity.name.class.js"
|
3513
|
-
}
|
3514
|
-
}
|
3075
|
+
"name": "entity.name.class.js"
|
3515
3076
|
},
|
3516
3077
|
{
|
3517
3078
|
"comment": "look for module names in quoted string forms",
|
@@ -3589,18 +3150,14 @@
|
|
3589
3150
|
"name": "entity.name.class.js"
|
3590
3151
|
},
|
3591
3152
|
{
|
3592
|
-
"include": "#literal-
|
3153
|
+
"include": "#literal-coma"
|
3593
3154
|
}
|
3594
3155
|
]
|
3595
3156
|
},
|
3596
3157
|
{
|
3597
3158
|
"comment": "look for class names but dont assume uppercase start char",
|
3598
3159
|
"match": "(?<!\\.)\\s*+([$_\\p{L}](?:[$\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}])*+)",
|
3599
|
-
"
|
3600
|
-
"1": {
|
3601
|
-
"name": "entity.name.class.js"
|
3602
|
-
}
|
3603
|
-
}
|
3160
|
+
"name": "entity.name.class.js"
|
3604
3161
|
},
|
3605
3162
|
{
|
3606
3163
|
"begin": "\\s*+({)",
|
@@ -3667,7 +3224,7 @@
|
|
3667
3224
|
"flowtype-typecast": {
|
3668
3225
|
"patterns": [
|
3669
3226
|
{
|
3670
|
-
"begin": "\\s
|
3227
|
+
"begin": "\\s*+:",
|
3671
3228
|
"end": "(?=\\s*+\\))",
|
3672
3229
|
"patterns": [
|
3673
3230
|
{
|
@@ -3677,106 +3234,6 @@
|
|
3677
3234
|
}
|
3678
3235
|
]
|
3679
3236
|
},
|
3680
|
-
"flowtype-comments": {
|
3681
|
-
"patterns": [
|
3682
|
-
{
|
3683
|
-
"begin": "\\s*+(/\\*)\\s*(::)",
|
3684
|
-
"end": "\\s*(\\*/)",
|
3685
|
-
"beginCaptures": {
|
3686
|
-
"1": {
|
3687
|
-
"name": "punctuation.definition.comment.js"
|
3688
|
-
},
|
3689
|
-
"2": {
|
3690
|
-
"name": "punctuation.type.flowtype"
|
3691
|
-
}
|
3692
|
-
},
|
3693
|
-
"endCaptures": {
|
3694
|
-
"1": {
|
3695
|
-
"name": "punctuation.definition.comment.js"
|
3696
|
-
}
|
3697
|
-
},
|
3698
|
-
"patterns": [
|
3699
|
-
{
|
3700
|
-
"include": "#flowtype-comments-optional-parameter"
|
3701
|
-
},
|
3702
|
-
{
|
3703
|
-
"include": "#literal-module"
|
3704
|
-
},
|
3705
|
-
{
|
3706
|
-
"include": "#flowtype-keywords"
|
3707
|
-
},
|
3708
|
-
{
|
3709
|
-
"include": "#flowtype-parse-types"
|
3710
|
-
}
|
3711
|
-
]
|
3712
|
-
},
|
3713
|
-
{
|
3714
|
-
"begin": "\\s*+(/\\*)\\s*(flow-include)\\b",
|
3715
|
-
"end": "\\s*(\\*/)",
|
3716
|
-
"beginCaptures": {
|
3717
|
-
"1": {
|
3718
|
-
"name": "punctuation.definition.comment.js"
|
3719
|
-
},
|
3720
|
-
"2": {
|
3721
|
-
"name": "punctuation.definition.variable.flowtype"
|
3722
|
-
}
|
3723
|
-
},
|
3724
|
-
"endCaptures": {
|
3725
|
-
"1": {
|
3726
|
-
"name": "punctuation.definition.comment.js"
|
3727
|
-
}
|
3728
|
-
},
|
3729
|
-
"patterns": [
|
3730
|
-
{
|
3731
|
-
"include": "#flowtype-comments-optional-parameter"
|
3732
|
-
},
|
3733
|
-
{
|
3734
|
-
"include": "#literal-module"
|
3735
|
-
},
|
3736
|
-
{
|
3737
|
-
"include": "#flowtype-keywords"
|
3738
|
-
},
|
3739
|
-
{
|
3740
|
-
"include": "#flowtype-parse-types"
|
3741
|
-
}
|
3742
|
-
]
|
3743
|
-
},
|
3744
|
-
{
|
3745
|
-
"begin": "\\s*+(/\\*)\\s*(:)",
|
3746
|
-
"end": "\\s*(\\*/)",
|
3747
|
-
"beginCaptures": {
|
3748
|
-
"1": {
|
3749
|
-
"name": "punctuation.definition.comment.js"
|
3750
|
-
},
|
3751
|
-
"2": {
|
3752
|
-
"name": "punctuation.type.flowtype"
|
3753
|
-
}
|
3754
|
-
},
|
3755
|
-
"endCaptures": {
|
3756
|
-
"1": {
|
3757
|
-
"name": "punctuation.definition.comment.js"
|
3758
|
-
}
|
3759
|
-
},
|
3760
|
-
"patterns": [
|
3761
|
-
{
|
3762
|
-
"include": "#flowtype-parse-types"
|
3763
|
-
}
|
3764
|
-
]
|
3765
|
-
}
|
3766
|
-
]
|
3767
|
-
},
|
3768
|
-
"flowtype-comments-optional-parameter": {
|
3769
|
-
"patterns": [
|
3770
|
-
{
|
3771
|
-
"match": "(?<=::|flow-include)\\s*(\\?)",
|
3772
|
-
"captures": {
|
3773
|
-
"1": {
|
3774
|
-
"name": "keyword.operator.optional.parameter.flowtype"
|
3775
|
-
}
|
3776
|
-
}
|
3777
|
-
}
|
3778
|
-
]
|
3779
|
-
},
|
3780
3237
|
"miscellaneous": {
|
3781
3238
|
"comment": "trap miscellaneous stuff",
|
3782
3239
|
"patterns": [
|
@@ -3790,55 +3247,6 @@
|
|
3790
3247
|
}
|
3791
3248
|
}
|
3792
3249
|
]
|
3793
|
-
},
|
3794
|
-
"html-template": {
|
3795
|
-
"comment": "Assume object properties of template: `some html` contain html",
|
3796
|
-
"begin": "(?:(?:^|(?<=,|{))\\s*\\b((template))\\b\\s*(:)\\s*(`))",
|
3797
|
-
"end": "\\s*(`)",
|
3798
|
-
"beginCaptures": {
|
3799
|
-
"1": {
|
3800
|
-
"name": "constant.other.object.key.js"
|
3801
|
-
},
|
3802
|
-
"2": {
|
3803
|
-
"name": "string.unquoted.js"
|
3804
|
-
},
|
3805
|
-
"3": {
|
3806
|
-
"name": "punctuation.separator.key-value.js"
|
3807
|
-
},
|
3808
|
-
"4": {
|
3809
|
-
"name": "punctuation.definition.quasi.begin.js"
|
3810
|
-
}
|
3811
|
-
},
|
3812
|
-
"endCaptures": {
|
3813
|
-
"1": {
|
3814
|
-
"name": "punctuation.definition.quasi.end.js"
|
3815
|
-
}
|
3816
|
-
},
|
3817
|
-
"patterns": [
|
3818
|
-
{
|
3819
|
-
"name": "entity.quasi.element.js",
|
3820
|
-
"begin": "(?<!\\\\)\\${",
|
3821
|
-
"end": "\\s*}",
|
3822
|
-
"beginCaptures": {
|
3823
|
-
"0": {
|
3824
|
-
"name": "punctuation.quasi.element.begin.js"
|
3825
|
-
}
|
3826
|
-
},
|
3827
|
-
"endCaptures": {
|
3828
|
-
"0": {
|
3829
|
-
"name": "punctuation.quasi.element.end.js"
|
3830
|
-
}
|
3831
|
-
},
|
3832
|
-
"patterns": [
|
3833
|
-
{
|
3834
|
-
"include": "#expression"
|
3835
|
-
}
|
3836
|
-
]
|
3837
|
-
},
|
3838
|
-
{
|
3839
|
-
"include": "text.html.mustache"
|
3840
|
-
}
|
3841
|
-
]
|
3842
3250
|
}
|
3843
3251
|
}
|
3844
3252
|
}
|