github-linguist 6.4.1 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +5 -5
  2. data/bin/{linguist → github-linguist} +0 -0
  3. data/grammars/source.abap.json +35 -6
  4. data/grammars/source.apl.json +4 -8
  5. data/grammars/source.ballerina.json +82 -3
  6. data/grammars/source.bdf.json +419 -0
  7. data/grammars/source.c++.json +25 -3
  8. data/grammars/source.c.json +6 -3
  9. data/grammars/source.chapel.json +3 -3
  10. data/grammars/source.coq.json +2 -2
  11. data/grammars/source.cs.json +83 -73
  12. data/grammars/source.csound.json +1 -1
  13. data/grammars/source.dart.json +1 -1
  14. data/grammars/source.elixir.json +112 -137
  15. data/grammars/source.emacs.lisp.json +179 -4
  16. data/grammars/source.figctrl.json +252 -0
  17. data/grammars/source.figfont.json +121 -0
  18. data/grammars/source.fontdir.json +99 -0
  19. data/grammars/source.fstar.json +439 -0
  20. data/grammars/source.hx.json +27 -9
  21. data/grammars/source.j.json +260 -0
  22. data/grammars/source.julia.json +24 -12
  23. data/grammars/source.lisp.json +3 -3
  24. data/grammars/source.mupad.json +1 -1
  25. data/grammars/source.pony.json +3 -3
  26. data/grammars/source.powershell.json +2 -2
  27. data/grammars/source.protobuf.json +87 -5
  28. data/grammars/source.purescript.json +5 -2
  29. data/grammars/source.python.json +17 -12
  30. data/grammars/source.rascal.json +0 -1
  31. data/grammars/source.reg.json +159 -0
  32. data/grammars/source.slice.json +2755 -0
  33. data/grammars/source.solidity.json +2 -2
  34. data/grammars/source.ts.json +225 -132
  35. data/grammars/source.tsx.json +235 -142
  36. data/grammars/source.viml.json +4 -4
  37. data/grammars/source.xlfd.json +462 -0
  38. data/grammars/source.yasnippet.json +387 -0
  39. data/grammars/text.elixir.json +17 -5
  40. data/grammars/text.html.basic.json +622 -2264
  41. data/grammars/text.html.elixir.json +10 -1
  42. data/grammars/text.html.php.blade.json +7 -3
  43. data/grammars/version +1 -0
  44. data/lib/linguist.rb +2 -0
  45. data/lib/linguist/VERSION +1 -1
  46. data/lib/linguist/generated.rb +14 -1
  47. data/lib/linguist/heuristics.rb +77 -468
  48. data/lib/linguist/heuristics.yml +404 -0
  49. data/lib/linguist/languages.json +1 -1
  50. data/lib/linguist/languages.yml +86 -6
  51. data/lib/linguist/samples.json +2624 -483
  52. data/lib/linguist/strategy/xml.rb +30 -0
  53. metadata +20 -7
@@ -0,0 +1,387 @@
1
+ {
2
+ "name": "YASnippet",
3
+ "scopeName": "source.yasnippet",
4
+ "patterns": [
5
+ {
6
+ "include": "#main"
7
+ }
8
+ ],
9
+ "repository": {
10
+ "body": {
11
+ "name": "meta.snippet-body.yasnippet",
12
+ "begin": "^\\s*(#+)\\s*(--)\\s*$\\n?",
13
+ "end": "(?=A)B",
14
+ "patterns": [
15
+ {
16
+ "include": "#tab-stops"
17
+ },
18
+ {
19
+ "include": "#indentation-marker"
20
+ },
21
+ {
22
+ "include": "#placeholder-fields"
23
+ },
24
+ {
25
+ "include": "#escaped-characters"
26
+ },
27
+ {
28
+ "include": "#embedded-lisp"
29
+ }
30
+ ],
31
+ "beginCaptures": {
32
+ "0": {
33
+ "name": "comment.line.number-sign.yasnippet"
34
+ },
35
+ "1": {
36
+ "name": "punctuation.definition.comment.number-sign.yasnippet"
37
+ },
38
+ "2": {
39
+ "name": "punctuation.terminator.double-dash.yasnippet"
40
+ }
41
+ }
42
+ },
43
+ "directives": {
44
+ "patterns": [
45
+ {
46
+ "name": "meta.directive.snippet-$1.yasnippet",
47
+ "match": "(?\u003c=[\\s#])(key|name|group|uuid|contributor)\\s*(:)(?:\\s*(\\S.*))?",
48
+ "captures": {
49
+ "1": {
50
+ "name": "variable.assignment.$1.yasnippet"
51
+ },
52
+ "2": {
53
+ "name": "punctuation.separator.dictionary.key-value.colon.yasnippet"
54
+ },
55
+ "3": {
56
+ "name": "string.unquoted.yasnippet"
57
+ }
58
+ }
59
+ },
60
+ {
61
+ "name": "meta.directive.snippet-$1.yasnippet",
62
+ "match": "(?\u003c=[\\s#])(condition|expand-env)\\s*(:)(?:\\s*(\\S.*))?",
63
+ "captures": {
64
+ "1": {
65
+ "name": "variable.assignment.$1.yasnippet"
66
+ },
67
+ "2": {
68
+ "name": "punctuation.separator.dictionary.key-value.colon.yasnippet"
69
+ },
70
+ "3": {
71
+ "name": "source.embedded.emacs.lisp",
72
+ "patterns": [
73
+ {
74
+ "include": "source.emacs.lisp"
75
+ }
76
+ ]
77
+ }
78
+ }
79
+ },
80
+ {
81
+ "name": "meta.directive.keybinding.yasnippet",
82
+ "match": "(?\u003c=[\\s#])(binding)\\s*(:)(?:\\s*(\\S.*))?",
83
+ "captures": {
84
+ "1": {
85
+ "name": "variable.assignment.$1.yasnippet"
86
+ },
87
+ "2": {
88
+ "name": "punctuation.separator.dictionary.key-value.colon.yasnippet"
89
+ },
90
+ "3": {
91
+ "patterns": [
92
+ {
93
+ "include": "source.emacs.lisp#key-notation"
94
+ }
95
+ ]
96
+ }
97
+ }
98
+ },
99
+ {
100
+ "begin": "(?\u003c=[\\s#])(type)\\s*(:)(?:\\s*(command))(?=\\s*$)",
101
+ "end": "(?=A)B",
102
+ "patterns": [
103
+ {
104
+ "begin": "\\G",
105
+ "end": "^(?=\\s*#+\\s*--\\s*$)",
106
+ "patterns": [
107
+ {
108
+ "include": "#prologue-lines"
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "name": "meta.snippet-body.yasnippet",
114
+ "contentName": "source.embedded.emacs.lisp",
115
+ "begin": "^\\s*(#+)\\s*(--)\\s*$\\n?",
116
+ "end": "(?=A)B",
117
+ "patterns": [
118
+ {
119
+ "include": "source.emacs.lisp"
120
+ }
121
+ ],
122
+ "beginCaptures": {
123
+ "0": {
124
+ "name": "comment.line.number-sign.yasnippet"
125
+ },
126
+ "1": {
127
+ "name": "punctuation.definition.comment.number-sign.yasnippet"
128
+ },
129
+ "2": {
130
+ "name": "punctuation.terminator.double-dash.yasnippet"
131
+ }
132
+ }
133
+ }
134
+ ],
135
+ "beginCaptures": {
136
+ "0": {
137
+ "name": "meta.directive.type.yasnippet"
138
+ },
139
+ "1": {
140
+ "name": "variable.assignment.$1.yasnippet"
141
+ },
142
+ "2": {
143
+ "name": "punctuation.separator.dictionary.key-value.colon.yasnippet"
144
+ },
145
+ "3": {
146
+ "name": "constant.language.type-specifier.yasnippet"
147
+ }
148
+ }
149
+ },
150
+ {
151
+ "name": "meta.directive.type.yasnippet",
152
+ "match": "(?\u003c=[\\s#])(type)\\s*(:)(?:\\s*(?!command\\s*$)(\\S.*))",
153
+ "captures": {
154
+ "1": {
155
+ "name": "variable.assignment.$1.yasnippet"
156
+ },
157
+ "2": {
158
+ "name": "punctuation.separator.dictionary.key-value.colon.yasnippet"
159
+ },
160
+ "3": {
161
+ "name": "constant.language.type-specifier.yasnippet"
162
+ }
163
+ }
164
+ },
165
+ {
166
+ "name": "meta.directive.other.yasnippet",
167
+ "match": "(?\u003c=[\\s#])([^:\\s#]+)\\s*(:)(?:\\s*(\\S.*))?",
168
+ "captures": {
169
+ "1": {
170
+ "name": "variable.assignment.custom.yasnippet"
171
+ },
172
+ "2": {
173
+ "name": "punctuation.separator.dictionary.key-value.colon.yasnippet"
174
+ },
175
+ "3": {
176
+ "name": "string.unquoted.yasnippet"
177
+ }
178
+ }
179
+ }
180
+ ]
181
+ },
182
+ "embedded-lisp": {
183
+ "name": "string.interpolated.yasnippet",
184
+ "contentName": "source.embedded.emacs.lisp",
185
+ "begin": "`",
186
+ "end": "`",
187
+ "patterns": [
188
+ {
189
+ "include": "source.emacs.lisp"
190
+ }
191
+ ],
192
+ "beginCaptures": {
193
+ "0": {
194
+ "name": "punctuation.section.begin.embedded.yasnippet"
195
+ }
196
+ },
197
+ "endCaptures": {
198
+ "0": {
199
+ "name": "punctuation.section.end.embedded.yasnippet"
200
+ }
201
+ }
202
+ },
203
+ "escaped-characters": {
204
+ "patterns": [
205
+ {
206
+ "name": "constant.character.escape.backslash.yasnippet",
207
+ "match": "(\\\\)\\\\",
208
+ "captures": {
209
+ "1": {
210
+ "name": "punctuation.definition.escape.yasnippet"
211
+ }
212
+ }
213
+ },
214
+ {
215
+ "name": "constant.character.escape.dollar-sign.yasnippet",
216
+ "match": "(\\\\)\\$",
217
+ "captures": {
218
+ "1": {
219
+ "name": "punctuation.definition.escape.yasnippet"
220
+ }
221
+ }
222
+ },
223
+ {
224
+ "name": "constant.character.escape.backtick.yasnippet",
225
+ "match": "(\\\\)`",
226
+ "captures": {
227
+ "1": {
228
+ "name": "punctuation.definition.escape.yasnippet"
229
+ }
230
+ }
231
+ }
232
+ ]
233
+ },
234
+ "indentation-marker": {
235
+ "name": "keyword.operator.indentation-marker.yasnippet",
236
+ "match": "(\\$)\u003e",
237
+ "captures": {
238
+ "1": {
239
+ "name": "punctuation.definition.variable.sigil.dollar-sign.yasnippet"
240
+ }
241
+ }
242
+ },
243
+ "main": {
244
+ "patterns": [
245
+ {
246
+ "include": "#prologue"
247
+ },
248
+ {
249
+ "include": "#body"
250
+ }
251
+ ]
252
+ },
253
+ "numbered-placeholder": {
254
+ "name": "meta.placeholder-field.numbered.$2-nth.yasnippet",
255
+ "contentName": "string.unquoted.default-text.yasnippet",
256
+ "begin": "(\\${)([0-9]+)(:)",
257
+ "end": "}",
258
+ "patterns": [
259
+ {
260
+ "include": "#placeholder-innards"
261
+ }
262
+ ],
263
+ "beginCaptures": {
264
+ "1": {
265
+ "name": "punctuation.section.embedded.field.begin.yasnippet"
266
+ },
267
+ "2": {
268
+ "name": "constant.numeric.integer.int.decimal.yasnippet"
269
+ },
270
+ "3": {
271
+ "name": "punctuation.separator.colon.field.yasnippet"
272
+ }
273
+ },
274
+ "endCaptures": {
275
+ "0": {
276
+ "name": "punctuation.section.embedded.field.end.yasnippet"
277
+ }
278
+ }
279
+ },
280
+ "placeholder-fields": {
281
+ "patterns": [
282
+ {
283
+ "include": "#numbered-placeholder"
284
+ },
285
+ {
286
+ "include": "#unnumbered-placeholder"
287
+ }
288
+ ]
289
+ },
290
+ "placeholder-innards": {
291
+ "patterns": [
292
+ {
293
+ "include": "#escaped-characters"
294
+ },
295
+ {
296
+ "include": "#embedded-lisp"
297
+ },
298
+ {
299
+ "include": "#placeholder-fields"
300
+ },
301
+ {
302
+ "name": "meta.transformation.yasnippet",
303
+ "contentName": "source.embedded.emacs.lisp",
304
+ "begin": "\\${1,2}(?=\\()",
305
+ "end": "(?\u003c=\\))",
306
+ "patterns": [
307
+ {
308
+ "include": "source.emacs.lisp"
309
+ }
310
+ ],
311
+ "beginCaptures": {
312
+ "0": {
313
+ "name": "keyword.operator.transformation.yasnippet"
314
+ }
315
+ }
316
+ }
317
+ ]
318
+ },
319
+ "prologue": {
320
+ "name": "meta.prologue.yasnippet",
321
+ "begin": "\\A",
322
+ "end": "^(?=\\s*#+\\s*--\\s*$)",
323
+ "patterns": [
324
+ {
325
+ "include": "#prologue-lines"
326
+ }
327
+ ]
328
+ },
329
+ "prologue-lines": {
330
+ "begin": "^\\s*(#+)(?!\\s*--\\s*$)",
331
+ "end": "$",
332
+ "patterns": [
333
+ {
334
+ "contentName": "comment.line.modeline.yasnippet",
335
+ "begin": "(?=-\\*-)",
336
+ "end": "$",
337
+ "patterns": [
338
+ {
339
+ "include": "source.emacs.lisp#modeline"
340
+ }
341
+ ]
342
+ },
343
+ {
344
+ "include": "#directives"
345
+ }
346
+ ],
347
+ "beginCaptures": {
348
+ "1": {
349
+ "name": "punctuation.definition.comment.number-sign.yasnippet"
350
+ }
351
+ }
352
+ },
353
+ "tab-stops": {
354
+ "name": "variable.positional.$2-nth.tab-stop.yasnippet",
355
+ "match": "(\\$)([0-9]+)",
356
+ "captures": {
357
+ "1": {
358
+ "name": "punctuation.definition.variable.sigil.dollar-sign.yasnippet"
359
+ }
360
+ }
361
+ },
362
+ "unnumbered-placeholder": {
363
+ "name": "meta.placeholder-field.unnumbered.yasnippet",
364
+ "contentName": "string.unquoted.default-text.yasnippet",
365
+ "begin": "(\\${)(:)",
366
+ "end": "}",
367
+ "patterns": [
368
+ {
369
+ "include": "#placeholder-innards"
370
+ }
371
+ ],
372
+ "beginCaptures": {
373
+ "1": {
374
+ "name": "punctuation.section.embedded.field.begin.yasnippet"
375
+ },
376
+ "2": {
377
+ "name": "punctuation.separator.colon.field.yasnippet"
378
+ }
379
+ },
380
+ "endCaptures": {
381
+ "0": {
382
+ "name": "punctuation.section.embedded.field.end.yasnippet"
383
+ }
384
+ }
385
+ }
386
+ }
387
+ }
@@ -3,7 +3,7 @@
3
3
  "scopeName": "text.elixir",
4
4
  "patterns": [
5
5
  {
6
- "name": "comment.block.eex",
6
+ "name": "comment.block.elixir",
7
7
  "begin": "\u003c%+#",
8
8
  "end": "%\u003e",
9
9
  "captures": {
@@ -13,9 +13,10 @@
13
13
  }
14
14
  },
15
15
  {
16
- "name": "source.elixir.embedded",
16
+ "name": "meta.embedded.line.elixir",
17
+ "contentName": "source.elixir",
17
18
  "begin": "\u003c%+(?!\u003e)[-=]*",
18
- "end": "-?%\u003e",
19
+ "end": "(-)%\u003e|(%)\u003e",
19
20
  "patterns": [
20
21
  {
21
22
  "name": "comment.line.number-sign.elixir",
@@ -30,9 +31,20 @@
30
31
  "include": "source.elixir"
31
32
  }
32
33
  ],
33
- "captures": {
34
+ "beginCaptures": {
35
+ "0": {
36
+ "name": "punctuation.section.embedded.begin.elixir"
37
+ }
38
+ },
39
+ "endCaptures": {
34
40
  "0": {
35
- "name": "punctuation.section.embedded.elixir"
41
+ "name": "punctuation.section.embedded.end.elixir"
42
+ },
43
+ "1": {
44
+ "name": "source.elixir"
45
+ },
46
+ "2": {
47
+ "name": "source.elixir"
36
48
  }
37
49
  }
38
50
  }
@@ -3,12 +3,18 @@
3
3
  "scopeName": "text.html.basic",
4
4
  "patterns": [
5
5
  {
6
- "name": "meta.tag.metadata.processing.xml.html",
6
+ "name": "meta.tag.preprocessor.xml.html",
7
7
  "begin": "(\u003c\\?)(xml)",
8
8
  "end": "(\\?\u003e)",
9
9
  "patterns": [
10
10
  {
11
- "include": "#attribute"
11
+ "include": "#tag-generic-attribute"
12
+ },
13
+ {
14
+ "include": "#string-double-quoted"
15
+ },
16
+ {
17
+ "include": "#string-single-quoted"
12
18
  }
13
19
  ],
14
20
  "captures": {
@@ -16,2531 +22,883 @@
16
22
  "name": "punctuation.definition.tag.html"
17
23
  },
18
24
  "2": {
19
- "name": "entity.name.tag.html"
25
+ "name": "entity.name.tag.xml.html"
20
26
  }
21
27
  }
22
28
  },
23
29
  {
24
- "include": "#comment"
25
- },
26
- {
27
- "name": "meta.tag.metadata.doctype.html",
28
- "begin": "\u003c!(?=(?i:DOCTYPE\\s))",
29
- "end": "\u003e",
30
+ "name": "comment.block.html",
31
+ "begin": "\u003c!--",
32
+ "end": "--\\s*\u003e",
30
33
  "patterns": [
31
34
  {
32
- "name": "entity.name.tag.html",
33
- "match": "\\G(?i:DOCTYPE)"
34
- },
35
- {
36
- "name": "string.quoted.double.html",
37
- "begin": "\"",
38
- "end": "\""
35
+ "name": "invalid.illegal.bad-comments-or-CDATA.html",
36
+ "match": "--(?!-*\\s*\u003e)"
39
37
  },
40
38
  {
41
- "name": "entity.other.attribute-name.html",
42
- "match": "[^\\s\u003e]+"
39
+ "include": "#embedded-code"
43
40
  }
44
41
  ],
45
- "beginCaptures": {
46
- "0": {
47
- "name": "punctuation.definition.tag.begin.html"
48
- }
49
- },
50
- "endCaptures": {
42
+ "captures": {
51
43
  "0": {
52
- "name": "punctuation.definition.tag.end.html"
44
+ "name": "punctuation.definition.comment.html"
53
45
  }
54
46
  }
55
47
  },
56
48
  {
57
- "include": "#cdata"
58
- },
59
- {
60
- "include": "#tags-valid"
61
- },
62
- {
63
- "include": "#tags-invalid"
64
- },
65
- {
66
- "include": "#entities"
67
- }
68
- ],
69
- "repository": {
70
- "attribute": {
49
+ "name": "meta.tag.sgml.html",
50
+ "begin": "\u003c!",
51
+ "end": "\u003e",
71
52
  "patterns": [
72
53
  {
73
- "name": "meta.attribute.$1.html",
74
- "begin": "(s(hape|cope|t(ep|art)|ize(s)?|p(ellcheck|an)|elected|lot|andbox|rc(set|doc|lang)?)|h(ttp-equiv|i(dden|gh)|e(ight|aders)|ref(lang)?)|n(o(nce|validate|module)|ame)|c(h(ecked|arset)|ite|o(nt(ent(editable)?|rols)|ords|l(s(pan)?|or))|lass|rossorigin)|t(ype(mustmatch)?|itle|a(rget|bindex)|ranslate)|i(s(map)?|n(tegrity|putmode)|tem(scope|type|id|prop|ref)|d)|op(timum|en)|d(i(sabled|r(name)?)|ownload|e(coding|f(er|ault))|at(etime|a)|raggable)|usemap|p(ing|oster|la(ysinline|ceholder)|attern|reload)|enctype|value|kind|for(m(novalidate|target|enctype|action|method)?)?|w(idth|rap)|l(ist|o(op|w)|a(ng|bel))|a(s(ync)?|c(ce(sskey|pt(-charset)?)|tion)|uto(c(omplete|apitalize)|play|focus)|l(t|low(usermedia|paymentrequest|fullscreen))|bbr)|r(ows(pan)?|e(versed|quired|ferrerpolicy|l|adonly))|m(in(length)?|u(ted|ltiple)|e(thod|dia)|a(nifest|x(length)?)))(?![\\w:-])",
75
- "end": "(?=\\s*+[^=\\s])",
54
+ "name": "meta.tag.sgml.doctype.html",
55
+ "begin": "(?i:DOCTYPE)",
56
+ "end": "(?=\u003e)",
76
57
  "patterns": [
77
58
  {
78
- "include": "#attribute-interior"
59
+ "name": "string.quoted.double.doctype.identifiers-and-DTDs.html",
60
+ "match": "\"[^\"\u003e]*\""
79
61
  }
80
62
  ],
81
- "beginCaptures": {
82
- "0": {
83
- "name": "entity.other.attribute-name.html"
63
+ "captures": {
64
+ "1": {
65
+ "name": "entity.name.tag.doctype.html"
84
66
  }
85
67
  }
86
68
  },
87
69
  {
88
- "name": "meta.attribute.style.html",
89
- "begin": "style(?![\\w:-])",
90
- "end": "(?=\\s*+[^=\\s])",
70
+ "name": "constant.other.inline-data.html",
71
+ "begin": "\\[CDATA\\[",
72
+ "end": "]](?=\u003e)"
73
+ },
74
+ {
75
+ "name": "invalid.illegal.bad-comments-or-CDATA.html",
76
+ "match": "(\\s*)(?!--|\u003e)\\S(\\s*)"
77
+ }
78
+ ],
79
+ "captures": {
80
+ "0": {
81
+ "name": "punctuation.definition.tag.html"
82
+ }
83
+ }
84
+ },
85
+ {
86
+ "include": "#embedded-code"
87
+ },
88
+ {
89
+ "name": "meta.tag.style.html",
90
+ "begin": "(?i)(?=\u003cstyle(\\s+|\u003e))",
91
+ "end": "(?i)(\u003c/)(style)(\u003e)",
92
+ "patterns": [
93
+ {
94
+ "begin": "(?i)\\G(\u003c)(style)",
95
+ "end": "\u003e",
91
96
  "patterns": [
92
97
  {
93
- "begin": "=",
94
- "end": "(?\u003c=[^\\s=])(?!\\s*=)|(?=/?\u003e)",
95
- "patterns": [
96
- {
97
- "name": "meta.embedded.line.css",
98
- "begin": "(?=[^\\s=\u003c\u003e`/]|/(?!\u003e))",
99
- "end": "(?!\\G)",
100
- "patterns": [
101
- {
102
- "name": "string.unquoted.html",
103
- "match": "([^\\s\"'=\u003c\u003e`/]|/(?!\u003e))+",
104
- "captures": {
105
- "0": {
106
- "name": "source.css"
107
- }
108
- }
109
- },
110
- {
111
- "name": "string.quoted.double.html",
112
- "contentName": "source.css",
113
- "begin": "\"",
114
- "end": "(\")",
115
- "patterns": [
116
- {
117
- "include": "#entities"
118
- }
119
- ],
120
- "beginCaptures": {
121
- "0": {
122
- "name": "punctuation.definition.string.begin.html"
123
- }
124
- },
125
- "endCaptures": {
126
- "0": {
127
- "name": "punctuation.definition.string.end.html"
128
- },
129
- "1": {
130
- "name": "source.css"
131
- }
132
- }
133
- },
134
- {
135
- "name": "string.quoted.single.html",
136
- "contentName": "source.css",
137
- "begin": "'",
138
- "end": "(')",
139
- "patterns": [
140
- {
141
- "include": "#entities"
142
- }
143
- ],
144
- "beginCaptures": {
145
- "0": {
146
- "name": "punctuation.definition.string.begin.html"
147
- }
148
- },
149
- "endCaptures": {
150
- "0": {
151
- "name": "punctuation.definition.string.end.html"
152
- },
153
- "1": {
154
- "name": "source.css"
155
- }
156
- }
157
- }
158
- ]
159
- },
160
- {
161
- "name": "invalid.illegal.unexpected-equals-sign.html",
162
- "match": "="
163
- }
164
- ],
165
- "beginCaptures": {
166
- "0": {
167
- "name": "punctuation.separator.key-value.html"
168
- }
169
- }
98
+ "include": "#tag-stuff"
170
99
  }
171
100
  ],
172
101
  "beginCaptures": {
102
+ "1": {
103
+ "name": "punctuation.definition.tag.html"
104
+ },
105
+ "2": {
106
+ "name": "entity.name.tag.style.html"
107
+ }
108
+ },
109
+ "endCaptures": {
173
110
  "0": {
174
- "name": "entity.other.attribute-name.html"
111
+ "name": "punctuation.definition.tag.html"
175
112
  }
176
113
  }
177
114
  },
178
115
  {
179
- "name": "meta.attribute.event-handler.$1.html",
180
- "begin": "on(s(croll|t(orage|alled)|u(spend|bmit)|e(curitypolicyviolation|ek(ing|ed)|lect))|hashchange|c(hange|o(ntextmenu|py)|u(t|echange)|l(ick|ose)|an(cel|play(through)?))|t(imeupdate|oggle)|in(put|valid)|o(nline|ffline)|d(urationchange|r(op|ag(start|over|e(n(ter|d)|xit)|leave)?)|blclick)|un(handledrejection|load)|p(opstate|lay(ing)?|a(ste|use|ge(show|hide))|rogress)|e(nded|rror|mptied)|volumechange|key(down|up|press)|focus|w(heel|aiting)|l(oad(start|e(nd|d(data|metadata)))?|anguagechange)|a(uxclick|fterprint|bort)|r(e(s(ize|et)|jectionhandled)|atechange)|m(ouse(o(ut|ver)|down|up|enter|leave|move)|essage(error)?)|b(efore(unload|print)|lur))(?![\\w:-])",
181
- "end": "(?=\\s*+[^=\\s])",
116
+ "name": "source.css.embedded.html",
117
+ "begin": "(?!\\G)",
118
+ "end": "(?i)(?=\u003c/style\u003e)",
182
119
  "patterns": [
183
120
  {
184
- "begin": "=",
185
- "end": "(?\u003c=[^\\s=])(?!\\s*=)|(?=/?\u003e)",
186
- "patterns": [
187
- {
188
- "name": "meta.embedded.line.js",
189
- "begin": "(?=[^\\s=\u003c\u003e`/]|/(?!\u003e))",
190
- "end": "(?!\\G)",
191
- "patterns": [
192
- {
193
- "name": "string.unquoted.html",
194
- "match": "(([^\\s\"'=\u003c\u003e`/]|/(?!\u003e))+)",
195
- "captures": {
196
- "0": {
197
- "name": "source.js"
198
- },
199
- "1": {
200
- "patterns": [
201
- {
202
- "include": "source.js"
203
- }
204
- ]
205
- }
206
- }
207
- },
208
- {
209
- "name": "string.quoted.double.html",
210
- "contentName": "source.js",
211
- "begin": "\"",
212
- "end": "(\")",
213
- "patterns": [
214
- {
215
- "match": "[^\\n\"]+",
216
- "captures": {
217
- "0": {
218
- "patterns": [
219
- {
220
- "include": "source.js"
221
- }
222
- ]
223
- }
224
- }
225
- }
226
- ],
227
- "beginCaptures": {
228
- "0": {
229
- "name": "punctuation.definition.string.begin.html"
230
- }
231
- },
232
- "endCaptures": {
233
- "0": {
234
- "name": "punctuation.definition.string.end.html"
235
- },
236
- "1": {
237
- "name": "source.js"
238
- }
239
- }
240
- },
241
- {
242
- "name": "string.quoted.single.html",
243
- "contentName": "source.js",
244
- "begin": "'",
245
- "end": "(')",
246
- "patterns": [
247
- {
248
- "match": "[^\\n']+",
249
- "captures": {
250
- "0": {
251
- "patterns": [
252
- {
253
- "include": "source.js"
254
- }
255
- ]
256
- }
257
- }
258
- }
259
- ],
260
- "beginCaptures": {
261
- "0": {
262
- "name": "punctuation.definition.string.begin.html"
263
- }
264
- },
265
- "endCaptures": {
266
- "0": {
267
- "name": "punctuation.definition.string.end.html"
268
- },
269
- "1": {
270
- "name": "source.js"
271
- }
272
- }
273
- }
274
- ]
275
- },
276
- {
277
- "name": "invalid.illegal.unexpected-equals-sign.html",
278
- "match": "="
279
- }
280
- ],
281
- "beginCaptures": {
282
- "0": {
283
- "name": "punctuation.separator.key-value.html"
284
- }
285
- }
286
- }
287
- ],
288
- "beginCaptures": {
289
- "0": {
290
- "name": "entity.other.attribute-name.html"
121
+ "include": "#embedded-code"
122
+ },
123
+ {
124
+ "include": "source.css"
291
125
  }
292
- }
126
+ ]
127
+ }
128
+ ],
129
+ "endCaptures": {
130
+ "1": {
131
+ "name": "punctuation.definition.tag.html"
293
132
  },
133
+ "2": {
134
+ "name": "entity.name.tag.style.html"
135
+ },
136
+ "3": {
137
+ "name": "punctuation.definition.tag.html"
138
+ }
139
+ }
140
+ },
141
+ {
142
+ "name": "meta.tag.script.html",
143
+ "begin": "(?i)(?=\u003cscript\\s+.*?\\btype\\s*=\\s*['\"]?text/(?:x-handlebars|(?:x-(?:handlebars-)?|ng-)?template|html|ractive)['\"]?(\\s+|\u003e))",
144
+ "end": "(\u003c/)((?i)script)(\u003e)",
145
+ "patterns": [
294
146
  {
295
- "name": "meta.attribute.data-x.$1.html",
296
- "begin": "(data-[a-z\\-]+)(?![\\w:-])",
297
- "end": "(?=\\s*+[^=\\s])",
147
+ "begin": "(?i)\\G(\u003c)(script)",
148
+ "end": "\u003e",
298
149
  "patterns": [
299
150
  {
300
- "include": "#attribute-interior"
151
+ "include": "#tag-stuff"
301
152
  }
302
153
  ],
303
154
  "beginCaptures": {
155
+ "1": {
156
+ "name": "punctuation.definition.tag.html"
157
+ },
158
+ "2": {
159
+ "name": "entity.name.tag.script.html"
160
+ }
161
+ },
162
+ "endCaptures": {
304
163
  "0": {
305
- "name": "entity.other.attribute-name.html"
164
+ "name": "punctuation.definition.tag.html"
306
165
  }
307
166
  }
308
167
  },
309
168
  {
310
- "name": "meta.attribute.$1.html",
311
- "begin": "(align|bgcolor|border)(?![\\w:-])",
312
- "end": "(?=\\s*+[^=\\s])",
169
+ "name": "text.embedded.html",
170
+ "begin": "(?!\\G)",
171
+ "end": "(?i)(?=\u003c/script\u003e)",
313
172
  "patterns": [
314
173
  {
315
- "include": "#attribute-interior"
174
+ "include": "text.html.basic"
316
175
  }
317
- ],
318
- "beginCaptures": {
319
- "0": {
320
- "name": "invalid.deprecated.entity.other.attribute-name.html"
321
- }
322
- }
176
+ ]
177
+ }
178
+ ],
179
+ "endCaptures": {
180
+ "1": {
181
+ "name": "punctuation.definition.tag.html"
182
+ },
183
+ "2": {
184
+ "name": "entity.name.tag.script.html"
323
185
  },
186
+ "3": {
187
+ "name": "punctuation.definition.tag.html"
188
+ }
189
+ }
190
+ },
191
+ {
192
+ "name": "meta.tag.script.html",
193
+ "begin": "(?i)(?=\u003cscript\\s+.*?\\btype\\s*=\\s*['\"]?text/coffeescript['\"]?(\\s+|\u003e))",
194
+ "end": "(\u003c/)((?i)script)(\u003e)",
195
+ "patterns": [
324
196
  {
325
- "name": "meta.attribute.unrecognized.$1.html",
326
- "begin": "([^\\x{0020}\"'\u003c\u003e/=\\x{0000}-\\x{001F}\\x{007F}-\\x{009F}\\x{FDD0}-\\x{FDEF}\\x{FFFE}\\x{FFFF}\\x{1FFFE}\\x{1FFFF}\\x{2FFFE}\\x{2FFFF}\\x{3FFFE}\\x{3FFFF}\\x{4FFFE}\\x{4FFFF}\\x{5FFFE}\\x{5FFFF}\\x{6FFFE}\\x{6FFFF}\\x{7FFFE}\\x{7FFFF}\\x{8FFFE}\\x{8FFFF}\\x{9FFFE}\\x{9FFFF}\\x{AFFFE}\\x{AFFFF}\\x{BFFFE}\\x{BFFFF}\\x{CFFFE}\\x{CFFFF}\\x{DFFFE}\\x{DFFFF}\\x{EFFFE}\\x{EFFFF}\\x{FFFFE}\\x{FFFFF}\\x{10FFFE}\\x{10FFFF}]+)",
327
- "end": "(?=\\s*+[^=\\s])",
197
+ "begin": "(?i)\\G(\u003c)(script)",
198
+ "end": "\u003e",
328
199
  "patterns": [
329
200
  {
330
- "include": "#attribute-interior"
201
+ "include": "#tag-stuff"
331
202
  }
332
203
  ],
333
204
  "beginCaptures": {
205
+ "1": {
206
+ "name": "punctuation.definition.tag.html"
207
+ },
208
+ "2": {
209
+ "name": "entity.name.tag.script.html"
210
+ }
211
+ },
212
+ "endCaptures": {
334
213
  "0": {
335
- "name": "entity.other.attribute-name.html"
214
+ "name": "punctuation.definition.tag.html"
336
215
  }
337
216
  }
338
217
  },
339
218
  {
340
- "name": "invalid.illegal.character-not-allowed-here.html",
341
- "match": "[^\\s\u003e]+"
342
- }
343
- ]
344
- },
345
- "attribute-interior": {
346
- "patterns": [
347
- {
348
- "begin": "=",
349
- "end": "(?\u003c=[^\\s=])(?!\\s*=)|(?=/?\u003e)",
219
+ "name": "source.coffee.embedded.html",
220
+ "begin": "(?!\\G)",
221
+ "end": "(?i)(?=\u003c/script\u003e)",
350
222
  "patterns": [
351
223
  {
352
- "name": "string.unquoted.html",
353
- "match": "([^\\s\"'=\u003c\u003e`/]|/(?!\u003e))+"
354
- },
355
- {
356
- "name": "string.quoted.double.html",
357
- "begin": "\"",
358
- "end": "\"",
359
- "patterns": [
360
- {
361
- "include": "#entities"
362
- }
363
- ],
224
+ "name": "comment.block.coffee",
225
+ "begin": "###",
226
+ "end": "###|(?=(?i)\u003c/script\u003e)",
364
227
  "beginCaptures": {
365
228
  "0": {
366
- "name": "punctuation.definition.string.begin.html"
229
+ "name": "punctuation.definition.comment.coffee"
367
230
  }
368
231
  },
369
232
  "endCaptures": {
370
233
  "0": {
371
- "name": "punctuation.definition.string.end.html"
234
+ "name": "punctuation.definition.comment.coffee"
372
235
  }
373
236
  }
374
237
  },
375
238
  {
376
- "name": "string.quoted.single.html",
377
- "begin": "'",
378
- "end": "'",
379
- "patterns": [
380
- {
381
- "include": "#entities"
382
- }
383
- ],
239
+ "name": "comment.line.number-sign.coffee",
240
+ "begin": "#",
241
+ "end": "(?=(?i)\u003c/script\u003e|$)",
384
242
  "beginCaptures": {
385
243
  "0": {
386
- "name": "punctuation.definition.string.begin.html"
387
- }
388
- },
389
- "endCaptures": {
390
- "0": {
391
- "name": "punctuation.definition.string.end.html"
244
+ "name": "punctuation.definition.comment.coffee"
392
245
  }
393
246
  }
394
247
  },
395
248
  {
396
- "name": "invalid.illegal.unexpected-equals-sign.html",
397
- "match": "="
398
- }
399
- ],
400
- "beginCaptures": {
401
- "0": {
402
- "name": "punctuation.separator.key-value.html"
249
+ "include": "source.coffee"
403
250
  }
404
- }
405
- }
406
- ]
407
- },
408
- "cdata": {
409
- "name": "meta.tag.metadata.cdata.html",
410
- "contentName": "string.other.inline-data.html",
411
- "begin": "\u003c!\\[CDATA\\[",
412
- "end": "]]\u003e",
413
- "beginCaptures": {
414
- "0": {
415
- "name": "punctuation.definition.tag.begin.html"
251
+ ]
416
252
  }
417
- },
253
+ ],
418
254
  "endCaptures": {
419
- "0": {
420
- "name": "punctuation.definition.tag.end.html"
421
- }
422
- }
423
- },
424
- "comment": {
425
- "name": "comment.block.html",
426
- "begin": "\u003c!--",
427
- "end": "--\u003e",
428
- "patterns": [
429
- {
430
- "name": "invalid.illegal.characters-not-allowed-here.html",
431
- "match": "\\G-?\u003e"
255
+ "1": {
256
+ "name": "punctuation.definition.tag.html"
432
257
  },
433
- {
434
- "name": "invalid.illegal.characters-not-allowed-here.html",
435
- "match": "\u003c!--(?!\u003e)|\u003c!-(?=--\u003e)"
258
+ "2": {
259
+ "name": "entity.name.tag.script.html"
436
260
  },
437
- {
438
- "name": "invalid.illegal.characters-not-allowed-here.html",
439
- "match": "--!\u003e"
440
- }
441
- ],
442
- "captures": {
443
- "0": {
444
- "name": "punctuation.definition.comment.html"
261
+ "3": {
262
+ "name": "punctuation.definition.tag.html"
445
263
  }
446
264
  }
447
265
  },
448
- "entities": {
266
+ {
267
+ "name": "meta.tag.script.html",
268
+ "begin": "(?i)(?=\u003cscript\\s+.*?\\btype\\s*=\\s*['\"]?application/graphql['\"]?(\\s+|\u003e))",
269
+ "end": "(\u003c/)((?i)script)(\u003e)",
449
270
  "patterns": [
450
271
  {
451
- "name": "constant.character.entity.named.$2.html",
452
- "match": "(?x)\n\t\t\t\t\t\t(\u0026)\t(?=[a-zA-Z])\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\t(a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))\n\t\t\t\t\t\t | (B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))\n\t\t\t\t\t\t | (c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))\n\t\t\t\t\t\t | (d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))\n\t\t\t\t\t\t | (e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))\n\t\t\t\t\t\t | (f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))\n\t\t\t\t\t\t | (G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))\n\t\t\t\t\t\t | (h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))\n\t\t\t\t\t\t | (i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))\n\t\t\t\t\t\t | (j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))\n\t\t\t\t\t\t | (k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))\n\t\t\t\t\t\t | (l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))\n\t\t\t\t\t\t | (M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))\n\t\t\t\t\t\t | (n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))\n\t\t\t\t\t\t | (o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))\n\t\t\t\t\t\t | (p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))\n\t\t\t\t\t\t | (q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))\n\t\t\t\t\t\t | (R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))\n\t\t\t\t\t\t | (s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))\n\t\t\t\t\t\t | (t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))\n\t\t\t\t\t\t | (u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))\n\t\t\t\t\t\t | (v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))\n\t\t\t\t\t\t | (w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))\n\t\t\t\t\t\t | (X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))\n\t\t\t\t\t\t | (y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))\n\t\t\t\t\t\t | (z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute))\n\t\t\t\t\t\t)\n\t\t\t\t\t\t(;)\n\t\t\t\t\t",
453
- "captures": {
454
- "1": {
455
- "name": "punctuation.definition.entity.html"
456
- },
457
- "912": {
458
- "name": "punctuation.definition.entity.html"
272
+ "begin": "(?i)\\G(\u003c)(script)",
273
+ "end": "\u003e",
274
+ "patterns": [
275
+ {
276
+ "include": "#tag-stuff"
459
277
  }
460
- }
461
- },
462
- {
463
- "name": "constant.character.entity.numeric.decimal.html",
464
- "match": "(\u0026)#[0-9]+(;)",
465
- "captures": {
278
+ ],
279
+ "beginCaptures": {
466
280
  "1": {
467
- "name": "punctuation.definition.entity.html"
281
+ "name": "punctuation.definition.tag.html"
468
282
  },
469
- "3": {
470
- "name": "punctuation.definition.entity.html"
283
+ "2": {
284
+ "name": "entity.name.tag.script.html"
471
285
  }
472
- }
473
- },
474
- {
475
- "name": "constant.character.entity.numeric.hexadecimal.html",
476
- "match": "(\u0026)#[xX][0-9a-fA-F]+(;)",
477
- "captures": {
478
- "1": {
479
- "name": "punctuation.definition.entity.html"
480
- },
481
- "3": {
482
- "name": "punctuation.definition.entity.html"
286
+ },
287
+ "endCaptures": {
288
+ "0": {
289
+ "name": "punctuation.definition.tag.html"
483
290
  }
484
291
  }
485
292
  },
486
293
  {
487
- "name": "invalid.illegal.ambiguous-ampersand.html",
488
- "match": "\u0026(?=[a-zA-Z0-9]+;)"
489
- }
490
- ]
491
- },
492
- "math": {
493
- "patterns": [
494
- {
495
- "name": "meta.element.structure.$2.html",
496
- "begin": "(?i)(\u003c)(math)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
497
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)",
294
+ "name": "source.graphql.embedded.html",
295
+ "begin": "(?!\\G)",
296
+ "end": "(?i)(?=\u003c/script\u003e)",
498
297
  "patterns": [
499
298
  {
500
- "name": "meta.tag.structure.start.html",
501
- "begin": "(?\u003c!\u003e)\\G",
502
- "end": "\u003e",
503
- "patterns": [
504
- {
505
- "include": "#attribute"
506
- }
507
- ],
508
- "endCaptures": {
509
- "0": {
510
- "name": "punctuation.definition.tag.end.html"
511
- }
512
- }
513
- },
514
- {
515
- "include": "#tags"
516
- }
517
- ],
518
- "beginCaptures": {
519
- "0": {
520
- "name": "meta.tag.structure.$2.start.html"
521
- },
522
- "1": {
523
- "name": "punctuation.definition.tag.begin.html"
524
- },
525
- "2": {
526
- "name": "entity.name.tag.html"
527
- },
528
- "3": {
529
- "patterns": [
530
- {
531
- "include": "#attribute"
532
- }
533
- ]
534
- },
535
- "5": {
536
- "name": "punctuation.definition.tag.end.html"
537
- }
538
- },
539
- "endCaptures": {
540
- "0": {
541
- "name": "meta.tag.structure.$2.end.html"
542
- },
543
- "1": {
544
- "name": "punctuation.definition.tag.begin.html"
545
- },
546
- "2": {
547
- "name": "entity.name.tag.html"
548
- },
549
- "3": {
550
- "name": "punctuation.definition.tag.end.html"
551
- }
552
- }
553
- }
554
- ],
555
- "repository": {
556
- "attribute": {
557
- "patterns": [
558
- {
559
- "name": "meta.attribute.$1.html",
560
- "begin": "(s(hift|ymmetric|cript(sizemultiplier|level|minsize)|t(ackalign|retchy)|ide|u(pscriptshift|bscriptshift)|e(parator(s)?|lection)|rc)|h(eight|ref)|n(otation|umalign)|c(haralign|olumn(spa(n|cing)|width|lines|align)|lose|rossout)|i(n(dent(shift(first|last)?|target|align(first|last)?)|fixlinebreakstyle)|d)|o(pen|verflow)|d(i(splay(style)?|r)|e(nomalign|cimalpoint|pth))|position|e(dge|qual(columns|rows))|voffset|f(orm|ence|rame(spacing)?)|width|l(space|ine(thickness|leading|break(style|multchar)?)|o(ngdivstyle|cation)|ength|quote|argeop)|a(c(cent(under)?|tiontype)|l(t(text|img(-(height|valign|width))?)|ign(mentscope)?))|r(space|ow(spa(n|cing)|lines|align)|quote)|groupalign|x(link:href|mlns)|m(in(size|labelspacing)|ovablelimits|a(th(size|color|variant|background)|xsize))|bevelled)(?![\\w:-])",
561
- "end": "(?=\\s*+[^=\\s])",
562
- "patterns": [
563
- {
564
- "include": "#attribute-interior"
565
- }
566
- ],
567
- "beginCaptures": {
568
- "0": {
569
- "name": "entity.other.attribute-name.html"
570
- }
571
- }
572
- },
573
- {
574
- "name": "meta.attribute.unrecognized.$1.html",
575
- "begin": "([^\\x{0020}\"'\u003c\u003e/=\\x{0000}-\\x{001F}\\x{007F}-\\x{009F}\\x{FDD0}-\\x{FDEF}\\x{FFFE}\\x{FFFF}\\x{1FFFE}\\x{1FFFF}\\x{2FFFE}\\x{2FFFF}\\x{3FFFE}\\x{3FFFF}\\x{4FFFE}\\x{4FFFF}\\x{5FFFE}\\x{5FFFF}\\x{6FFFE}\\x{6FFFF}\\x{7FFFE}\\x{7FFFF}\\x{8FFFE}\\x{8FFFF}\\x{9FFFE}\\x{9FFFF}\\x{AFFFE}\\x{AFFFF}\\x{BFFFE}\\x{BFFFF}\\x{CFFFE}\\x{CFFFF}\\x{DFFFE}\\x{DFFFF}\\x{EFFFE}\\x{EFFFF}\\x{FFFFE}\\x{FFFFF}\\x{10FFFE}\\x{10FFFF}]+)",
576
- "end": "(?=\\s*+[^=\\s])",
577
- "patterns": [
578
- {
579
- "include": "#attribute-interior"
580
- }
581
- ],
299
+ "name": "comment.line.number-sign.graphql",
300
+ "begin": "#",
301
+ "end": "(?=(?i)\u003c/script\u003e|$)",
582
302
  "beginCaptures": {
583
303
  "0": {
584
- "name": "entity.other.attribute-name.html"
304
+ "name": "punctuation.definition.comment.graphql"
585
305
  }
586
306
  }
587
307
  },
588
308
  {
589
- "name": "invalid.illegal.character-not-allowed-here.html",
590
- "match": "[^\\s\u003e]+"
309
+ "include": "source.coffee"
591
310
  }
592
311
  ]
312
+ }
313
+ ],
314
+ "endCaptures": {
315
+ "1": {
316
+ "name": "punctuation.definition.tag.html"
593
317
  },
594
- "tags": {
595
- "patterns": [
596
- {
597
- "include": "#comment"
598
- },
599
- {
600
- "include": "#cdata"
601
- },
602
- {
603
- "name": "meta.element.structure.math.$2.html",
604
- "match": "(?i)(\u003c)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
605
- "captures": {
606
- "0": {
607
- "name": "meta.tag.structure.math.$2.void.html"
608
- },
609
- "1": {
610
- "name": "punctuation.definition.tag.begin.html"
611
- },
612
- "2": {
613
- "name": "entity.name.tag.html"
614
- },
615
- "3": {
616
- "patterns": [
617
- {
618
- "include": "#attribute"
619
- }
620
- ]
621
- },
622
- "5": {
623
- "name": "punctuation.definition.tag.end.html"
624
- }
625
- }
626
- },
627
- {
628
- "name": "meta.element.structure.math.$2.html",
629
- "begin": "(?i)(\u003c)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
630
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
631
- "patterns": [
632
- {
633
- "name": "meta.tag.structure.start.html",
634
- "begin": "(?\u003c!\u003e)\\G",
635
- "end": "(?=/\u003e)|\u003e",
636
- "patterns": [
637
- {
638
- "include": "#attribute"
639
- }
640
- ],
641
- "endCaptures": {
642
- "0": {
643
- "name": "punctuation.definition.tag.end.html"
644
- }
645
- }
646
- },
647
- {
648
- "include": "#tags"
649
- }
650
- ],
651
- "beginCaptures": {
652
- "0": {
653
- "name": "meta.tag.structure.math.$2.start.html"
654
- },
655
- "1": {
656
- "name": "punctuation.definition.tag.begin.html"
657
- },
658
- "2": {
659
- "name": "entity.name.tag.html"
660
- },
661
- "3": {
662
- "patterns": [
663
- {
664
- "include": "#attribute"
665
- }
666
- ]
667
- },
668
- "5": {
669
- "name": "punctuation.definition.tag.end.html"
670
- }
671
- },
672
- "endCaptures": {
673
- "0": {
674
- "name": "meta.tag.structure.math.$2.end.html"
675
- },
676
- "1": {
677
- "name": "punctuation.definition.tag.begin.html"
678
- },
679
- "2": {
680
- "name": "entity.name.tag.html"
681
- },
682
- "3": {
683
- "name": "punctuation.definition.tag.end.html"
684
- },
685
- "4": {
686
- "name": "punctuation.definition.tag.end.html"
687
- }
688
- }
689
- },
690
- {
691
- "name": "meta.element.inline.math.$2.html",
692
- "match": "(?i)(\u003c)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
693
- "captures": {
694
- "0": {
695
- "name": "meta.tag.inline.math.$2.void.html"
696
- },
697
- "1": {
698
- "name": "punctuation.definition.tag.begin.html"
699
- },
700
- "2": {
701
- "name": "entity.name.tag.html"
702
- },
703
- "3": {
704
- "patterns": [
705
- {
706
- "include": "#attribute"
707
- }
708
- ]
709
- },
710
- "5": {
711
- "name": "punctuation.definition.tag.end.html"
712
- }
713
- }
714
- },
715
- {
716
- "name": "meta.element.inline.math.$2.html",
717
- "begin": "(?i)(\u003c)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
718
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
719
- "patterns": [
720
- {
721
- "name": "meta.tag.inline.start.html",
722
- "begin": "(?\u003c!\u003e)\\G",
723
- "end": "(?=/\u003e)|\u003e",
724
- "patterns": [
725
- {
726
- "include": "#attribute"
727
- }
728
- ],
729
- "endCaptures": {
730
- "0": {
731
- "name": "punctuation.definition.tag.end.html"
732
- }
733
- }
734
- },
735
- {
736
- "include": "#tags"
737
- }
738
- ],
739
- "beginCaptures": {
740
- "0": {
741
- "name": "meta.tag.inline.math.$2.start.html"
742
- },
743
- "1": {
744
- "name": "punctuation.definition.tag.begin.html"
745
- },
746
- "2": {
747
- "name": "entity.name.tag.html"
748
- },
749
- "3": {
750
- "patterns": [
751
- {
752
- "include": "#attribute"
753
- }
754
- ]
755
- },
756
- "5": {
757
- "name": "punctuation.definition.tag.end.html"
758
- }
759
- },
760
- "endCaptures": {
761
- "0": {
762
- "name": "meta.tag.inline.math.$2.end.html"
763
- },
764
- "1": {
765
- "name": "punctuation.definition.tag.begin.html"
766
- },
767
- "2": {
768
- "name": "entity.name.tag.html"
769
- },
770
- "3": {
771
- "name": "punctuation.definition.tag.end.html"
772
- },
773
- "4": {
774
- "name": "punctuation.definition.tag.end.html"
775
- }
776
- }
777
- },
778
- {
779
- "name": "meta.element.object.math.$2.html",
780
- "match": "(?i)(\u003c)(mglyph)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
781
- "captures": {
782
- "0": {
783
- "name": "meta.tag.object.math.$2.void.html"
784
- },
785
- "1": {
786
- "name": "punctuation.definition.tag.begin.html"
787
- },
788
- "2": {
789
- "name": "entity.name.tag.html"
790
- },
791
- "3": {
792
- "patterns": [
793
- {
794
- "include": "#attribute"
795
- }
796
- ]
797
- },
798
- "5": {
799
- "name": "punctuation.definition.tag.end.html"
800
- }
801
- }
802
- },
803
- {
804
- "name": "meta.element.object.math.$2.html",
805
- "begin": "(?i)(\u003c)(mglyph)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
806
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
807
- "patterns": [
808
- {
809
- "name": "meta.tag.object.start.html",
810
- "begin": "(?\u003c!\u003e)\\G",
811
- "end": "(?=/\u003e)|\u003e",
812
- "patterns": [
813
- {
814
- "include": "#attribute"
815
- }
816
- ],
817
- "endCaptures": {
818
- "0": {
819
- "name": "punctuation.definition.tag.end.html"
820
- }
821
- }
822
- },
823
- {
824
- "include": "#tags"
825
- }
826
- ],
827
- "beginCaptures": {
828
- "0": {
829
- "name": "meta.tag.object.math.$2.start.html"
830
- },
831
- "1": {
832
- "name": "punctuation.definition.tag.begin.html"
833
- },
834
- "2": {
835
- "name": "entity.name.tag.html"
836
- },
837
- "3": {
838
- "patterns": [
839
- {
840
- "include": "#attribute"
841
- }
842
- ]
843
- },
844
- "5": {
845
- "name": "punctuation.definition.tag.end.html"
846
- }
847
- },
848
- "endCaptures": {
849
- "0": {
850
- "name": "meta.tag.object.math.$2.end.html"
851
- },
852
- "1": {
853
- "name": "punctuation.definition.tag.begin.html"
854
- },
855
- "2": {
856
- "name": "entity.name.tag.html"
857
- },
858
- "3": {
859
- "name": "punctuation.definition.tag.end.html"
860
- },
861
- "4": {
862
- "name": "punctuation.definition.tag.end.html"
863
- }
864
- }
865
- },
866
- {
867
- "name": "meta.element.other.invalid.html",
868
- "match": "(?i)(\u003c)(([\\w:]+))(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
869
- "captures": {
870
- "0": {
871
- "name": "meta.tag.other.invalid.void.html"
872
- },
873
- "1": {
874
- "name": "punctuation.definition.tag.begin.html"
875
- },
876
- "2": {
877
- "name": "entity.name.tag.html"
878
- },
879
- "3": {
880
- "name": "invalid.illegal.unrecognized-tag.html"
881
- },
882
- "4": {
883
- "patterns": [
884
- {
885
- "include": "#attribute"
886
- }
887
- ]
888
- },
889
- "6": {
890
- "name": "punctuation.definition.tag.end.html"
891
- }
892
- }
893
- },
894
- {
895
- "name": "meta.element.other.invalid.html",
896
- "begin": "(?i)(\u003c)((\\w[^\\s\u003e]*))(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
897
- "end": "(?i)(\u003c/)((\\2))\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
898
- "patterns": [
899
- {
900
- "name": "meta.tag.other.invalid.start.html",
901
- "begin": "(?\u003c!\u003e)\\G",
902
- "end": "(?=/\u003e)|\u003e",
903
- "patterns": [
904
- {
905
- "include": "#attribute"
906
- }
907
- ],
908
- "endCaptures": {
909
- "0": {
910
- "name": "punctuation.definition.tag.end.html"
911
- }
912
- }
913
- },
914
- {
915
- "include": "#tags"
916
- }
917
- ],
918
- "beginCaptures": {
919
- "0": {
920
- "name": "meta.tag.other.invalid.start.html"
921
- },
922
- "1": {
923
- "name": "punctuation.definition.tag.begin.html"
924
- },
925
- "2": {
926
- "name": "entity.name.tag.html"
927
- },
928
- "3": {
929
- "name": "invalid.illegal.unrecognized-tag.html"
930
- },
931
- "4": {
932
- "patterns": [
933
- {
934
- "include": "#attribute"
935
- }
936
- ]
937
- },
938
- "6": {
939
- "name": "punctuation.definition.tag.end.html"
940
- }
941
- },
942
- "endCaptures": {
943
- "0": {
944
- "name": "meta.tag.other.invalid.end.html"
945
- },
946
- "1": {
947
- "name": "punctuation.definition.tag.begin.html"
948
- },
949
- "2": {
950
- "name": "entity.name.tag.html"
951
- },
952
- "3": {
953
- "name": "invalid.illegal.unrecognized-tag.html"
954
- },
955
- "4": {
956
- "name": "punctuation.definition.tag.end.html"
957
- },
958
- "5": {
959
- "name": "punctuation.definition.tag.end.html"
960
- }
961
- }
962
- },
963
- {
964
- "include": "#tags-invalid"
965
- }
966
- ]
318
+ "2": {
319
+ "name": "entity.name.tag.script.html"
320
+ },
321
+ "3": {
322
+ "name": "punctuation.definition.tag.html"
967
323
  }
968
324
  }
969
325
  },
970
- "svg": {
326
+ {
327
+ "name": "meta.tag.script.html",
328
+ "begin": "(?i)(?=\u003cscript(\\s+|\u003e))",
329
+ "end": "(\u003c/)((?i)script)(\u003e)",
971
330
  "patterns": [
972
331
  {
973
- "name": "meta.element.structure.$2.html",
974
- "begin": "(?i)(\u003c)(svg)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
975
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)",
332
+ "begin": "(?i)\\G(\u003c)(script)",
333
+ "end": "\u003e",
976
334
  "patterns": [
977
335
  {
978
- "name": "meta.tag.structure.start.html",
979
- "begin": "(?\u003c!\u003e)\\G",
980
- "end": "\u003e",
981
- "patterns": [
982
- {
983
- "include": "#attribute"
984
- }
985
- ],
986
- "endCaptures": {
987
- "0": {
988
- "name": "punctuation.definition.tag.end.html"
989
- }
990
- }
991
- },
992
- {
993
- "include": "#tags"
336
+ "include": "#tag-stuff"
994
337
  }
995
338
  ],
996
339
  "beginCaptures": {
997
- "0": {
998
- "name": "meta.tag.structure.$2.start.html"
999
- },
1000
340
  "1": {
1001
- "name": "punctuation.definition.tag.begin.html"
341
+ "name": "punctuation.definition.tag.html"
1002
342
  },
1003
343
  "2": {
1004
- "name": "entity.name.tag.html"
1005
- },
1006
- "3": {
1007
- "patterns": [
1008
- {
1009
- "include": "#attribute"
1010
- }
1011
- ]
1012
- },
1013
- "5": {
1014
- "name": "punctuation.definition.tag.end.html"
344
+ "name": "entity.name.tag.script.html"
1015
345
  }
1016
346
  },
1017
347
  "endCaptures": {
1018
348
  "0": {
1019
- "name": "meta.tag.structure.$2.end.html"
1020
- },
1021
- "1": {
1022
- "name": "punctuation.definition.tag.begin.html"
1023
- },
1024
- "2": {
1025
- "name": "entity.name.tag.html"
1026
- },
1027
- "3": {
1028
- "name": "punctuation.definition.tag.end.html"
349
+ "name": "punctuation.definition.tag.html"
1029
350
  }
1030
351
  }
1031
- }
1032
- ],
1033
- "repository": {
1034
- "attribute": {
352
+ },
353
+ {
354
+ "name": "source.js.embedded.html",
355
+ "begin": "(?!\\G)",
356
+ "end": "(?i)(?=\u003c/script\u003e)",
1035
357
  "patterns": [
1036
358
  {
1037
- "name": "meta.attribute.$1.html",
1038
- "begin": "(s(hape-rendering|ystemLanguage|cale|t(yle|itchTiles|op-(color|opacity)|dDeviation|em(h|v)|artOffset|r(i(ng|kethrough-(thickness|position))|oke(-(opacity|dash(offset|array)|width|line(cap|join)|miterlimit))?))|urfaceScale|p(e(cular(Constant|Exponent)|ed)|acing|readMethod)|eed|lope)|h(oriz-(origin-x|adv-x)|eight|anging|ref(lang)?)|y(1|2|ChannelSelector)?|n(umOctaves|ame)|c(y|o(ntentS(criptType|tyleType)|lor(-(interpolation(-filters)?|profile|rendering))?)|ursor|l(ip(-(path|rule)|PathUnits)?|ass)|a(p-height|lcMode)|x)|t(ype|o|ext(-(decoration|anchor|rendering)|Length)|a(rget(X|Y)?|b(index|leValues))|ransform)|i(n(tercept|2)?|d(eographic)?|mage-rendering)|z(oomAndPan)?|o(p(erator|acity)|ver(flow|line-(thickness|position))|ffset|r(i(ent(ation)?|gin)|der))|d(y|i(splay|visor|ffuseConstant|rection)|ominant-baseline|ur|e(scent|celerate)|x)?|u(1|n(i(code(-(range|bidi))?|ts-per-em)|derline-(thickness|position))|2)|p(ing|oint(s(At(X|Y|Z))?|er-events)|a(nose-1|t(h(Length)?|tern(ContentUnits|Transform|Units))|int-order)|r(imitiveUnits|eserveA(spectRatio|lpha)))|e(n(d|able-background)|dgeMode|levation|x(ternalResourcesRequired|ponent))|v(i(sibility|ew(Box|Target))|-(hanging|ideographic|alphabetic|mathematical)|e(ctor-effect|r(sion|t-(origin-(y|x)|adv-y)))|alues)|k(1|2|3|e(y(Splines|Times|Points)|rn(ing|el(Matrix|UnitLength)))|4)?|f(y|il(ter(Res|Units)?|l(-(opacity|rule))?)|o(nt-(s(t(yle|retch)|ize(-adjust)?)|variant|family|weight)|rmat)|lood-(color|opacity)|r(om)?|x)|w(idth(s)?|ord-spacing|riting-mode)|l(i(ghting-color|mitingConeAngle)|ocal|e(ngthAdjust|tter-spacing)|ang)|a(scent|cc(umulate|ent-height)|ttribute(Name|Type)|zimuth|dditive|utoReverse|l(ignment-baseline|phabetic|lowReorder)|rabic-form|mplitude)|r(y|otate|e(s(tart|ult)|ndering-intent|peat(Count|Dur)|quired(Extensions|Features)|f(X|Y|errerPolicy)|l)|adius|x)?|g(1|2|lyph(Ref|-(name|orientation-(horizontal|vertical)))|radient(Transform|Units))|x(1|2|ChannelSelector|-height|link:(show|href|t(ype|itle)|a(ctuate|rcrole)|role)|ml:(space|lang|base))?|m(in|ode|e(thod|dia)|a(sk(ContentUnits|Units)?|thematical|rker(Height|-(start|end|mid)|Units|Width)|x))|b(y|ias|egin|ase(Profile|line-shift|Frequency)|box))(?![\\w:-])",
1039
- "end": "(?=\\s*+[^=\\s])",
1040
- "patterns": [
1041
- {
1042
- "include": "#attribute-interior"
1043
- }
1044
- ],
359
+ "name": "comment.line.double-slash.js",
360
+ "begin": "//",
361
+ "end": "(?=(?i)\u003c/script\u003e|$)",
1045
362
  "beginCaptures": {
1046
363
  "0": {
1047
- "name": "entity.other.attribute-name.html"
364
+ "name": "punctuation.definition.comment.js"
1048
365
  }
1049
366
  }
1050
367
  },
1051
368
  {
1052
- "name": "meta.attribute.unrecognized.$1.html",
1053
- "begin": "([^\\x{0020}\"'\u003c\u003e/=\\x{0000}-\\x{001F}\\x{007F}-\\x{009F}\\x{FDD0}-\\x{FDEF}\\x{FFFE}\\x{FFFF}\\x{1FFFE}\\x{1FFFF}\\x{2FFFE}\\x{2FFFF}\\x{3FFFE}\\x{3FFFF}\\x{4FFFE}\\x{4FFFF}\\x{5FFFE}\\x{5FFFF}\\x{6FFFE}\\x{6FFFF}\\x{7FFFE}\\x{7FFFF}\\x{8FFFE}\\x{8FFFF}\\x{9FFFE}\\x{9FFFF}\\x{AFFFE}\\x{AFFFF}\\x{BFFFE}\\x{BFFFF}\\x{CFFFE}\\x{CFFFF}\\x{DFFFE}\\x{DFFFF}\\x{EFFFE}\\x{EFFFF}\\x{FFFFE}\\x{FFFFF}\\x{10FFFE}\\x{10FFFF}]+)",
1054
- "end": "(?=\\s*+[^=\\s])",
1055
- "patterns": [
1056
- {
1057
- "include": "#attribute-interior"
1058
- }
1059
- ],
369
+ "name": "comment.block.js",
370
+ "begin": "/\\*",
371
+ "end": "\\*/|(?=(?i)\u003c/script\u003e)",
1060
372
  "beginCaptures": {
1061
373
  "0": {
1062
- "name": "entity.other.attribute-name.html"
374
+ "name": "punctuation.definition.comment.begin.js"
375
+ }
376
+ },
377
+ "endCaptures": {
378
+ "0": {
379
+ "name": "punctuation.definition.comment.begin.js"
1063
380
  }
1064
381
  }
1065
382
  },
1066
383
  {
1067
- "name": "invalid.illegal.character-not-allowed-here.html",
1068
- "match": "[^\\s\u003e]+"
384
+ "include": "source.js"
1069
385
  }
1070
386
  ]
387
+ }
388
+ ],
389
+ "endCaptures": {
390
+ "1": {
391
+ "name": "punctuation.definition.tag.html"
1071
392
  },
1072
- "tags": {
1073
- "patterns": [
1074
- {
1075
- "include": "#comment"
1076
- },
1077
- {
1078
- "include": "#cdata"
1079
- },
1080
- {
1081
- "name": "meta.element.metadata.svg.$2.html",
1082
- "match": "(?i)(\u003c)(color-profile|desc|metadata|script|style|title)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
1083
- "captures": {
1084
- "0": {
1085
- "name": "meta.tag.metadata.svg.$2.void.html"
1086
- },
1087
- "1": {
1088
- "name": "punctuation.definition.tag.begin.html"
1089
- },
1090
- "2": {
1091
- "name": "entity.name.tag.html"
1092
- },
1093
- "3": {
1094
- "patterns": [
1095
- {
1096
- "include": "#attribute"
1097
- }
1098
- ]
1099
- },
1100
- "5": {
1101
- "name": "punctuation.definition.tag.end.html"
1102
- }
1103
- }
1104
- },
1105
- {
1106
- "name": "meta.element.metadata.svg.$2.html",
1107
- "begin": "(?i)(\u003c)(color-profile|desc|metadata|script|style|title)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
1108
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
1109
- "patterns": [
1110
- {
1111
- "name": "meta.tag.metadata.start.html",
1112
- "begin": "(?\u003c!\u003e)\\G",
1113
- "end": "(?=/\u003e)|\u003e",
1114
- "patterns": [
1115
- {
1116
- "include": "#attribute"
1117
- }
1118
- ],
1119
- "endCaptures": {
1120
- "0": {
1121
- "name": "punctuation.definition.tag.end.html"
1122
- }
1123
- }
1124
- },
1125
- {
1126
- "include": "#tags"
1127
- }
1128
- ],
1129
- "beginCaptures": {
1130
- "0": {
1131
- "name": "meta.tag.metadata.svg.$2.start.html"
1132
- },
1133
- "1": {
1134
- "name": "punctuation.definition.tag.begin.html"
1135
- },
1136
- "2": {
1137
- "name": "entity.name.tag.html"
1138
- },
1139
- "3": {
1140
- "patterns": [
1141
- {
1142
- "include": "#attribute"
1143
- }
1144
- ]
1145
- },
1146
- "5": {
1147
- "name": "punctuation.definition.tag.end.html"
1148
- }
1149
- },
1150
- "endCaptures": {
1151
- "0": {
1152
- "name": "meta.tag.metadata.svg.$2.end.html"
1153
- },
1154
- "1": {
1155
- "name": "punctuation.definition.tag.begin.html"
1156
- },
1157
- "2": {
1158
- "name": "entity.name.tag.html"
1159
- },
1160
- "3": {
1161
- "name": "punctuation.definition.tag.end.html"
1162
- },
1163
- "4": {
1164
- "name": "punctuation.definition.tag.end.html"
1165
- }
1166
- }
1167
- },
1168
- {
1169
- "name": "meta.element.structure.svg.$2.html",
1170
- "match": "(?i)(\u003c)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
1171
- "captures": {
1172
- "0": {
1173
- "name": "meta.tag.structure.svg.$2.void.html"
1174
- },
1175
- "1": {
1176
- "name": "punctuation.definition.tag.begin.html"
1177
- },
1178
- "2": {
1179
- "name": "entity.name.tag.html"
1180
- },
1181
- "3": {
1182
- "patterns": [
1183
- {
1184
- "include": "#attribute"
1185
- }
1186
- ]
1187
- },
1188
- "5": {
1189
- "name": "punctuation.definition.tag.end.html"
1190
- }
1191
- }
1192
- },
1193
- {
1194
- "name": "meta.element.structure.svg.$2.html",
1195
- "begin": "(?i)(\u003c)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
1196
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
1197
- "patterns": [
1198
- {
1199
- "name": "meta.tag.structure.start.html",
1200
- "begin": "(?\u003c!\u003e)\\G",
1201
- "end": "(?=/\u003e)|\u003e",
1202
- "patterns": [
1203
- {
1204
- "include": "#attribute"
1205
- }
1206
- ],
1207
- "endCaptures": {
1208
- "0": {
1209
- "name": "punctuation.definition.tag.end.html"
1210
- }
1211
- }
1212
- },
1213
- {
1214
- "include": "#tags"
1215
- }
1216
- ],
1217
- "beginCaptures": {
1218
- "0": {
1219
- "name": "meta.tag.structure.svg.$2.start.html"
1220
- },
1221
- "1": {
1222
- "name": "punctuation.definition.tag.begin.html"
1223
- },
1224
- "2": {
1225
- "name": "entity.name.tag.html"
1226
- },
1227
- "3": {
1228
- "patterns": [
1229
- {
1230
- "include": "#attribute"
1231
- }
1232
- ]
1233
- },
1234
- "5": {
1235
- "name": "punctuation.definition.tag.end.html"
1236
- }
1237
- },
1238
- "endCaptures": {
1239
- "0": {
1240
- "name": "meta.tag.structure.svg.$2.end.html"
1241
- },
1242
- "1": {
1243
- "name": "punctuation.definition.tag.begin.html"
1244
- },
1245
- "2": {
1246
- "name": "entity.name.tag.html"
1247
- },
1248
- "3": {
1249
- "name": "punctuation.definition.tag.end.html"
1250
- },
1251
- "4": {
1252
- "name": "punctuation.definition.tag.end.html"
1253
- }
1254
- }
1255
- },
1256
- {
1257
- "name": "meta.element.inline.svg.$2.html",
1258
- "match": "(?i)(\u003c)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
1259
- "captures": {
1260
- "0": {
1261
- "name": "meta.tag.inline.svg.$2.void.html"
1262
- },
1263
- "1": {
1264
- "name": "punctuation.definition.tag.begin.html"
1265
- },
1266
- "2": {
1267
- "name": "entity.name.tag.html"
1268
- },
1269
- "3": {
1270
- "patterns": [
1271
- {
1272
- "include": "#attribute"
1273
- }
1274
- ]
1275
- },
1276
- "5": {
1277
- "name": "punctuation.definition.tag.end.html"
1278
- }
1279
- }
1280
- },
1281
- {
1282
- "name": "meta.element.inline.svg.$2.html",
1283
- "begin": "(?i)(\u003c)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
1284
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
1285
- "patterns": [
1286
- {
1287
- "name": "meta.tag.inline.start.html",
1288
- "begin": "(?\u003c!\u003e)\\G",
1289
- "end": "(?=/\u003e)|\u003e",
1290
- "patterns": [
1291
- {
1292
- "include": "#attribute"
1293
- }
1294
- ],
1295
- "endCaptures": {
1296
- "0": {
1297
- "name": "punctuation.definition.tag.end.html"
1298
- }
1299
- }
1300
- },
1301
- {
1302
- "include": "#tags"
1303
- }
1304
- ],
1305
- "beginCaptures": {
1306
- "0": {
1307
- "name": "meta.tag.inline.svg.$2.start.html"
1308
- },
1309
- "1": {
1310
- "name": "punctuation.definition.tag.begin.html"
1311
- },
1312
- "2": {
1313
- "name": "entity.name.tag.html"
1314
- },
1315
- "3": {
1316
- "patterns": [
1317
- {
1318
- "include": "#attribute"
1319
- }
1320
- ]
1321
- },
1322
- "5": {
1323
- "name": "punctuation.definition.tag.end.html"
1324
- }
1325
- },
1326
- "endCaptures": {
1327
- "0": {
1328
- "name": "meta.tag.inline.svg.$2.end.html"
1329
- },
1330
- "1": {
1331
- "name": "punctuation.definition.tag.begin.html"
1332
- },
1333
- "2": {
1334
- "name": "entity.name.tag.html"
1335
- },
1336
- "3": {
1337
- "name": "punctuation.definition.tag.end.html"
1338
- },
1339
- "4": {
1340
- "name": "punctuation.definition.tag.end.html"
1341
- }
1342
- }
1343
- },
1344
- {
1345
- "name": "meta.element.object.svg.$2.html",
1346
- "match": "(?i)(\u003c)(circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
1347
- "captures": {
1348
- "0": {
1349
- "name": "meta.tag.object.svg.$2.void.html"
1350
- },
1351
- "1": {
1352
- "name": "punctuation.definition.tag.begin.html"
1353
- },
1354
- "2": {
1355
- "name": "entity.name.tag.html"
1356
- },
1357
- "3": {
1358
- "patterns": [
1359
- {
1360
- "include": "#attribute"
1361
- }
1362
- ]
1363
- },
1364
- "5": {
1365
- "name": "punctuation.definition.tag.end.html"
1366
- }
1367
- }
1368
- },
1369
- {
1370
- "name": "meta.element.object.svg.$2.html",
1371
- "begin": "(?i)(\u003c)(a|circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
1372
- "end": "(?i)(\u003c/)(\\2)\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
1373
- "patterns": [
1374
- {
1375
- "name": "meta.tag.object.start.html",
1376
- "begin": "(?\u003c!\u003e)\\G",
1377
- "end": "(?=/\u003e)|\u003e",
1378
- "patterns": [
1379
- {
1380
- "include": "#attribute"
1381
- }
1382
- ],
1383
- "endCaptures": {
1384
- "0": {
1385
- "name": "punctuation.definition.tag.end.html"
1386
- }
1387
- }
1388
- },
1389
- {
1390
- "include": "#tags"
1391
- }
1392
- ],
1393
- "beginCaptures": {
1394
- "0": {
1395
- "name": "meta.tag.object.svg.$2.start.html"
1396
- },
1397
- "1": {
1398
- "name": "punctuation.definition.tag.begin.html"
1399
- },
1400
- "2": {
1401
- "name": "entity.name.tag.html"
1402
- },
1403
- "3": {
1404
- "patterns": [
1405
- {
1406
- "include": "#attribute"
1407
- }
1408
- ]
1409
- },
1410
- "5": {
1411
- "name": "punctuation.definition.tag.end.html"
1412
- }
1413
- },
1414
- "endCaptures": {
1415
- "0": {
1416
- "name": "meta.tag.object.svg.$2.end.html"
1417
- },
1418
- "1": {
1419
- "name": "punctuation.definition.tag.begin.html"
1420
- },
1421
- "2": {
1422
- "name": "entity.name.tag.html"
1423
- },
1424
- "3": {
1425
- "name": "punctuation.definition.tag.end.html"
1426
- },
1427
- "4": {
1428
- "name": "punctuation.definition.tag.end.html"
1429
- }
1430
- }
1431
- },
1432
- {
1433
- "name": "meta.element.other.svg.$2.html",
1434
- "match": "(?i)(\u003c)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
1435
- "captures": {
1436
- "0": {
1437
- "name": "meta.tag.other.svg.$2.void.html"
1438
- },
1439
- "1": {
1440
- "name": "punctuation.definition.tag.begin.html"
1441
- },
1442
- "2": {
1443
- "name": "entity.name.tag.html"
1444
- },
1445
- "3": {
1446
- "name": "invalid.deprecated.html"
1447
- },
1448
- "4": {
1449
- "patterns": [
1450
- {
1451
- "include": "#attribute"
1452
- }
1453
- ]
1454
- },
1455
- "6": {
1456
- "name": "punctuation.definition.tag.end.html"
1457
- }
1458
- }
1459
- },
1460
- {
1461
- "name": "meta.element.other.svg.$2.html",
1462
- "begin": "(?i)(\u003c)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
1463
- "end": "(?i)(\u003c/)((\\2))\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
1464
- "patterns": [
1465
- {
1466
- "name": "meta.tag.other.start.html",
1467
- "begin": "(?\u003c!\u003e)\\G",
1468
- "end": "(?=/\u003e)|\u003e",
1469
- "patterns": [
1470
- {
1471
- "include": "#attribute"
1472
- }
1473
- ],
1474
- "endCaptures": {
1475
- "0": {
1476
- "name": "punctuation.definition.tag.end.html"
1477
- }
1478
- }
1479
- },
1480
- {
1481
- "include": "#tags"
1482
- }
1483
- ],
1484
- "beginCaptures": {
1485
- "0": {
1486
- "name": "meta.tag.other.svg.$2.start.html"
1487
- },
1488
- "1": {
1489
- "name": "punctuation.definition.tag.begin.html"
1490
- },
1491
- "2": {
1492
- "name": "entity.name.tag.html"
1493
- },
1494
- "3": {
1495
- "name": "invalid.deprecated.html"
1496
- },
1497
- "4": {
1498
- "patterns": [
1499
- {
1500
- "include": "#attribute"
1501
- }
1502
- ]
1503
- },
1504
- "6": {
1505
- "name": "punctuation.definition.tag.end.html"
1506
- }
1507
- },
1508
- "endCaptures": {
1509
- "0": {
1510
- "name": "meta.tag.other.svg.$2.end.html"
1511
- },
1512
- "1": {
1513
- "name": "punctuation.definition.tag.begin.html"
1514
- },
1515
- "2": {
1516
- "name": "entity.name.tag.html"
1517
- },
1518
- "3": {
1519
- "name": "invalid.deprecated.html"
1520
- },
1521
- "4": {
1522
- "name": "punctuation.definition.tag.end.html"
1523
- },
1524
- "5": {
1525
- "name": "punctuation.definition.tag.end.html"
1526
- }
1527
- }
1528
- },
1529
- {
1530
- "name": "meta.element.other.invalid.html",
1531
- "match": "(?i)(\u003c)(([\\w:]+))(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(/\u003e))",
1532
- "captures": {
1533
- "0": {
1534
- "name": "meta.tag.other.invalid.void.html"
1535
- },
1536
- "1": {
1537
- "name": "punctuation.definition.tag.begin.html"
1538
- },
1539
- "2": {
1540
- "name": "entity.name.tag.html"
1541
- },
1542
- "3": {
1543
- "name": "invalid.illegal.unrecognized-tag.html"
1544
- },
1545
- "4": {
1546
- "patterns": [
1547
- {
1548
- "include": "#attribute"
1549
- }
1550
- ]
1551
- },
1552
- "6": {
1553
- "name": "punctuation.definition.tag.end.html"
1554
- }
1555
- }
1556
- },
1557
- {
1558
- "name": "meta.element.other.invalid.html",
1559
- "begin": "(?i)(\u003c)((\\w[^\\s\u003e]*))(?=\\s|/?\u003e)(?:(([^\"'\u003e]|\"[^\"]*\"|'[^']*')*)(\u003e))?",
1560
- "end": "(?i)(\u003c/)((\\2))\\s*(\u003e)|(/\u003e)|(?=\u003c/\\w+)",
1561
- "patterns": [
1562
- {
1563
- "name": "meta.tag.other.invalid.start.html",
1564
- "begin": "(?\u003c!\u003e)\\G",
1565
- "end": "(?=/\u003e)|\u003e",
1566
- "patterns": [
1567
- {
1568
- "include": "#attribute"
1569
- }
1570
- ],
1571
- "endCaptures": {
1572
- "0": {
1573
- "name": "punctuation.definition.tag.end.html"
1574
- }
1575
- }
1576
- },
1577
- {
1578
- "include": "#tags"
1579
- }
1580
- ],
1581
- "beginCaptures": {
1582
- "0": {
1583
- "name": "meta.tag.other.invalid.start.html"
1584
- },
1585
- "1": {
1586
- "name": "punctuation.definition.tag.begin.html"
1587
- },
1588
- "2": {
1589
- "name": "entity.name.tag.html"
1590
- },
1591
- "3": {
1592
- "name": "invalid.illegal.unrecognized-tag.html"
1593
- },
1594
- "4": {
1595
- "patterns": [
1596
- {
1597
- "include": "#attribute"
1598
- }
1599
- ]
1600
- },
1601
- "6": {
1602
- "name": "punctuation.definition.tag.end.html"
1603
- }
1604
- },
1605
- "endCaptures": {
1606
- "0": {
1607
- "name": "meta.tag.other.invalid.end.html"
1608
- },
1609
- "1": {
1610
- "name": "punctuation.definition.tag.begin.html"
1611
- },
1612
- "2": {
1613
- "name": "entity.name.tag.html"
1614
- },
1615
- "3": {
1616
- "name": "invalid.illegal.unrecognized-tag.html"
1617
- },
1618
- "4": {
1619
- "name": "punctuation.definition.tag.end.html"
1620
- },
1621
- "5": {
1622
- "name": "punctuation.definition.tag.end.html"
1623
- }
1624
- }
1625
- },
1626
- {
1627
- "include": "#tags-invalid"
1628
- }
1629
- ]
1630
- }
1631
- }
1632
- },
1633
- "tags-invalid": {
1634
- "patterns": [
1635
- {
1636
- "name": "meta.tag.other.$2.html",
1637
- "begin": "(\u003c/?)((\\w[^\\s\u003e]*))(?\u003c!/)",
1638
- "end": "((?: ?/)?\u003e)",
1639
- "patterns": [
1640
- {
1641
- "include": "#attribute"
1642
- }
1643
- ],
1644
- "beginCaptures": {
1645
- "1": {
1646
- "name": "punctuation.definition.tag.begin.html"
1647
- },
1648
- "2": {
1649
- "name": "entity.name.tag.html"
1650
- },
1651
- "3": {
1652
- "name": "invalid.illegal.unrecognized-tag.html"
1653
- }
1654
- },
1655
- "endCaptures": {
1656
- "1": {
1657
- "name": "punctuation.definition.tag.end.html"
1658
- }
1659
- }
1660
- }
1661
- ]
1662
- },
1663
- "tags-valid": {
1664
- "patterns": [
1665
- {
1666
- "begin": "(^[ \\t]+)?(?=\u003c(?i:style)\\b(?!-))",
1667
- "end": "(?!\\G)([ \\t]*$\\n?)?",
1668
- "patterns": [
1669
- {
1670
- "name": "meta.embedded.block.html",
1671
- "begin": "(?i)(\u003c)(style)(?=\\s|/?\u003e)",
1672
- "end": "(?i)((\u003c)/)(style)\\s*(\u003e)",
1673
- "patterns": [
1674
- {
1675
- "name": "meta.tag.metadata.style.start.html",
1676
- "begin": "\\G",
1677
- "end": "(\u003e)",
1678
- "patterns": [
1679
- {
1680
- "include": "#attribute"
1681
- }
1682
- ],
1683
- "captures": {
1684
- "1": {
1685
- "name": "punctuation.definition.tag.end.html"
1686
- }
1687
- }
1688
- },
1689
- {
1690
- "name": "source.css",
1691
- "begin": "(?!\\G)",
1692
- "end": "(?=\u003c/(?i:style))",
1693
- "patterns": [
1694
- {
1695
- "include": "source.css"
1696
- }
1697
- ]
1698
- }
1699
- ],
1700
- "beginCaptures": {
1701
- "0": {
1702
- "name": "meta.tag.metadata.style.start.html"
1703
- },
1704
- "1": {
1705
- "name": "punctuation.definition.tag.begin.html"
1706
- },
1707
- "2": {
1708
- "name": "entity.name.tag.html"
1709
- }
1710
- },
1711
- "endCaptures": {
1712
- "0": {
1713
- "name": "meta.tag.metadata.style.end.html"
1714
- },
1715
- "1": {
1716
- "name": "punctuation.definition.tag.begin.html"
1717
- },
1718
- "2": {
1719
- "name": "source.css"
1720
- },
1721
- "3": {
1722
- "name": "entity.name.tag.html"
1723
- },
1724
- "4": {
1725
- "name": "punctuation.definition.tag.end.html"
1726
- }
1727
- }
1728
- }
1729
- ],
1730
- "beginCaptures": {
1731
- "1": {
1732
- "name": "punctuation.whitespace.embedded.leading.html"
1733
- }
1734
- },
1735
- "endCaptures": {
1736
- "1": {
1737
- "name": "punctuation.whitespace.embedded.trailing.html"
1738
- }
1739
- }
1740
- },
1741
- {
1742
- "begin": "(^[ \\t]+)?(?=\u003c(?i:script)\\b(?!-))",
1743
- "end": "(?!\\G)([ \\t]*$\\n?)?",
1744
- "patterns": [
1745
- {
1746
- "name": "meta.embedded.block.html",
1747
- "begin": "(\u003c)((?i:script))\\b",
1748
- "end": "(/)((?i:script))(\u003e)",
1749
- "patterns": [
1750
- {
1751
- "begin": "\\G",
1752
- "end": "(?=/)",
1753
- "patterns": [
1754
- {
1755
- "begin": "(\u003e)",
1756
- "end": "((\u003c))(?=/(?i:script))",
1757
- "patterns": [
1758
- {
1759
- "name": "source.js",
1760
- "begin": "\\G",
1761
- "end": "(?=\u003c/(?i:script))",
1762
- "patterns": [
1763
- {
1764
- "begin": "(^[ \\t]+)?(?=//)",
1765
- "end": "(?!\\G)",
1766
- "patterns": [
1767
- {
1768
- "name": "comment.line.double-slash.js",
1769
- "begin": "//",
1770
- "end": "(?=\u003c/script)|\\n",
1771
- "beginCaptures": {
1772
- "0": {
1773
- "name": "punctuation.definition.comment.js"
1774
- }
1775
- }
1776
- }
1777
- ],
1778
- "beginCaptures": {
1779
- "1": {
1780
- "name": "punctuation.whitespace.comment.leading.js"
1781
- }
1782
- }
1783
- },
1784
- {
1785
- "name": "comment.block.js",
1786
- "begin": "/\\*",
1787
- "end": "\\*/|(?=\u003c/script)",
1788
- "captures": {
1789
- "0": {
1790
- "name": "punctuation.definition.comment.js"
1791
- }
1792
- }
1793
- },
1794
- {
1795
- "include": "source.js"
1796
- }
1797
- ]
1798
- }
1799
- ],
1800
- "beginCaptures": {
1801
- "0": {
1802
- "name": "meta.tag.metadata.script.start.html"
1803
- },
1804
- "1": {
1805
- "name": "punctuation.definition.tag.end.html"
1806
- }
1807
- },
1808
- "endCaptures": {
1809
- "0": {
1810
- "name": "meta.tag.metadata.script.end.html"
1811
- },
1812
- "1": {
1813
- "name": "punctuation.definition.tag.begin.html"
1814
- },
1815
- "2": {
1816
- "name": "source.js"
1817
- }
1818
- }
1819
- },
1820
- {
1821
- "name": "meta.tag.metadata.script.start.html",
1822
- "begin": "\\G",
1823
- "end": "(?ix:\n\t\t\t\t\t\t\t\t\t\t\t\t(?=\u003e\t\t\t\t\t\t\t\t\t\t\t# Tag without type attribute\n\t\t\t\t\t\t\t\t\t\t\t\t | type(?=[\\s=])\n\t\t\t\t\t\t\t\t\t\t\t\t \t(?!\\s*=\\s*\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t''\t\t\t\t\t\t\t\t# Empty\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t | \"\"\t\t\t\t\t\t\t\t\t# Values\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t | ('|\"|)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttext/\t\t\t\t\t\t\t# Text mime-types\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjavascript(1\\.[0-5])?\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | x-javascript\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | jscript\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | livescript\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | (x-)?ecmascript\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | babel\t\t\t\t\t\t# Javascript variant currently\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \t\t\t\t\t\t\t\t# recognized as such\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | application/\t\t\t\t\t# Application mime-types\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(x-)?javascript\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | (x-)?ecmascript\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t | module\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t \t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\\s\"'\u003e]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)",
1824
- "patterns": [
1825
- {
1826
- "include": "#attribute"
1827
- }
1828
- ]
1829
- },
1830
- {
1831
- "begin": "(?ix:\n\t\t\t\t\t\t\t\t\t\t\t\t(?=\n\t\t\t\t\t\t\t\t\t\t\t\t\ttype\\s*=\\s*\n\t\t\t\t\t\t\t\t\t\t\t\t\t('|\"|)\n\t\t\t\t\t\t\t\t\t\t\t\t\ttext/\n\t\t\t\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tx-handlebars\n\t\t\t\t\t\t\t\t\t\t\t\t\t | (x-(handlebars-)?|ng-)?template\n\t\t\t\t\t\t\t\t\t\t\t\t\t | html\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\\s\"'\u003e]\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)",
1832
- "end": "((\u003c))(?=/(?i:script))",
1833
- "patterns": [
1834
- {
1835
- "name": "meta.tag.metadata.script.start.html",
1836
- "begin": "\\G",
1837
- "end": "(\u003e)",
1838
- "patterns": [
1839
- {
1840
- "include": "#attribute"
1841
- }
1842
- ],
1843
- "endCaptures": {
1844
- "1": {
1845
- "name": "punctuation.definition.tag.end.html"
1846
- }
1847
- }
1848
- },
1849
- {
1850
- "name": "text.html.basic",
1851
- "begin": "(?!\\G)",
1852
- "end": "(?=\u003c/(?i:script))",
1853
- "patterns": [
1854
- {
1855
- "include": "text.html.basic"
1856
- }
1857
- ]
1858
- }
1859
- ],
1860
- "endCaptures": {
1861
- "0": {
1862
- "name": "meta.tag.metadata.script.end.html"
1863
- },
1864
- "1": {
1865
- "name": "punctuation.definition.tag.begin.html"
1866
- },
1867
- "2": {
1868
- "name": "text.html.basic"
1869
- }
1870
- }
1871
- },
1872
- {
1873
- "begin": "(?=(?i:type))",
1874
- "end": "(\u003c)(?=/(?i:script))",
1875
- "patterns": [
1876
- {
1877
- "name": "meta.tag.metadata.script.start.html",
1878
- "begin": "\\G",
1879
- "end": "(\u003e)",
1880
- "patterns": [
1881
- {
1882
- "include": "#attribute"
1883
- }
1884
- ],
1885
- "endCaptures": {
1886
- "1": {
1887
- "name": "punctuation.definition.tag.end.html"
1888
- }
1889
- }
1890
- },
1891
- {
1892
- "name": "source.unknown",
1893
- "begin": "(?!\\G)",
1894
- "end": "(?=\u003c/(?i:script))"
1895
- }
1896
- ],
1897
- "endCaptures": {
1898
- "0": {
1899
- "name": "meta.tag.metadata.script.end.html"
1900
- },
1901
- "1": {
1902
- "name": "punctuation.definition.tag.begin.html"
1903
- }
1904
- }
1905
- }
1906
- ]
1907
- }
1908
- ],
1909
- "beginCaptures": {
1910
- "0": {
1911
- "name": "meta.tag.metadata.script.start.html"
1912
- },
1913
- "1": {
1914
- "name": "punctuation.definition.tag.begin.html"
1915
- },
1916
- "2": {
1917
- "name": "entity.name.tag.html"
1918
- }
1919
- },
1920
- "endCaptures": {
1921
- "0": {
1922
- "name": "meta.tag.metadata.script.end.html"
1923
- },
1924
- "1": {
1925
- "name": "punctuation.definition.tag.begin.html"
1926
- },
1927
- "2": {
1928
- "name": "entity.name.tag.html"
1929
- },
1930
- "3": {
1931
- "name": "punctuation.definition.tag.end.html"
1932
- }
1933
- }
1934
- }
1935
- ],
1936
- "beginCaptures": {
1937
- "1": {
1938
- "name": "punctuation.whitespace.embedded.leading.html"
1939
- }
1940
- },
1941
- "endCaptures": {
1942
- "1": {
1943
- "name": "punctuation.whitespace.embedded.trailing.html"
1944
- }
1945
- }
1946
- },
1947
- {
1948
- "name": "meta.tag.metadata.$2.void.html",
1949
- "begin": "(?i)(\u003c)(base|link|meta)(?=\\s|/?\u003e)",
1950
- "end": "/?\u003e",
1951
- "patterns": [
1952
- {
1953
- "include": "#attribute"
1954
- }
1955
- ],
1956
- "beginCaptures": {
1957
- "1": {
1958
- "name": "punctuation.definition.tag.begin.html"
1959
- },
1960
- "2": {
1961
- "name": "entity.name.tag.html"
1962
- }
1963
- },
1964
- "endCaptures": {
1965
- "0": {
1966
- "name": "punctuation.definition.tag.end.html"
1967
- }
1968
- }
1969
- },
1970
- {
1971
- "name": "meta.tag.metadata.$2.start.html",
1972
- "begin": "(?i)(\u003c)(noscript|title)(?=\\s|/?\u003e)",
1973
- "end": "\u003e",
1974
- "patterns": [
1975
- {
1976
- "include": "#attribute"
1977
- }
1978
- ],
1979
- "beginCaptures": {
1980
- "1": {
1981
- "name": "punctuation.definition.tag.begin.html"
1982
- },
1983
- "2": {
1984
- "name": "entity.name.tag.html"
1985
- }
1986
- },
1987
- "endCaptures": {
1988
- "0": {
1989
- "name": "punctuation.definition.tag.end.html"
1990
- }
1991
- }
1992
- },
1993
- {
1994
- "name": "meta.tag.metadata.$2.end.html",
1995
- "begin": "(?i)(\u003c/)(noscript|title)(?=\\s|/?\u003e)",
1996
- "end": "\u003e",
1997
- "patterns": [
1998
- {
1999
- "include": "#attribute"
2000
- }
2001
- ],
2002
- "beginCaptures": {
2003
- "1": {
2004
- "name": "punctuation.definition.tag.begin.html"
2005
- },
2006
- "2": {
2007
- "name": "entity.name.tag.html"
2008
- }
2009
- },
2010
- "endCaptures": {
2011
- "0": {
2012
- "name": "punctuation.definition.tag.end.html"
2013
- }
2014
- }
2015
- },
2016
- {
2017
- "name": "meta.tag.structure.$2.void.html",
2018
- "begin": "(?i)(\u003c)(col|hr|input)(?=\\s|/?\u003e)",
2019
- "end": "/?\u003e",
2020
- "patterns": [
2021
- {
2022
- "include": "#attribute"
2023
- }
2024
- ],
2025
- "beginCaptures": {
2026
- "1": {
2027
- "name": "punctuation.definition.tag.begin.html"
2028
- },
2029
- "2": {
2030
- "name": "entity.name.tag.html"
2031
- }
2032
- },
2033
- "endCaptures": {
2034
- "0": {
2035
- "name": "punctuation.definition.tag.end.html"
2036
- }
2037
- }
2038
- },
2039
- {
2040
- "name": "meta.tag.structure.$2.start.html",
2041
- "begin": "(?i)(\u003c)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\s|/?\u003e)",
2042
- "end": "\u003e",
2043
- "patterns": [
2044
- {
2045
- "include": "#attribute"
2046
- }
2047
- ],
2048
- "beginCaptures": {
2049
- "1": {
2050
- "name": "punctuation.definition.tag.begin.html"
2051
- },
2052
- "2": {
2053
- "name": "entity.name.tag.html"
2054
- }
2055
- },
2056
- "endCaptures": {
2057
- "0": {
2058
- "name": "punctuation.definition.tag.end.html"
2059
- }
2060
- }
2061
- },
2062
- {
2063
- "name": "meta.tag.structure.$2.end.html",
2064
- "begin": "(?i)(\u003c/)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\s|/?\u003e)",
2065
- "end": "\u003e",
2066
- "patterns": [
2067
- {
2068
- "include": "#attribute"
2069
- }
2070
- ],
2071
- "beginCaptures": {
2072
- "1": {
2073
- "name": "punctuation.definition.tag.begin.html"
2074
- },
2075
- "2": {
2076
- "name": "entity.name.tag.html"
2077
- }
2078
- },
2079
- "endCaptures": {
2080
- "0": {
2081
- "name": "punctuation.definition.tag.end.html"
2082
- }
2083
- }
2084
- },
2085
- {
2086
- "name": "meta.tag.inline.$2.void.html",
2087
- "begin": "(?i)(\u003c)(area|br|wbr)(?=\\s|/?\u003e)",
2088
- "end": "/?\u003e",
2089
- "patterns": [
2090
- {
2091
- "include": "#attribute"
2092
- }
2093
- ],
2094
- "beginCaptures": {
2095
- "1": {
2096
- "name": "punctuation.definition.tag.begin.html"
2097
- },
2098
- "2": {
2099
- "name": "entity.name.tag.html"
2100
- }
2101
- },
2102
- "endCaptures": {
2103
- "0": {
2104
- "name": "punctuation.definition.tag.end.html"
2105
- }
2106
- }
2107
- },
2108
- {
2109
- "name": "meta.tag.inline.$2.start.html",
2110
- "begin": "(?i)(\u003c)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\s|/?\u003e)",
2111
- "end": "\u003e",
2112
- "patterns": [
2113
- {
2114
- "include": "#attribute"
2115
- }
2116
- ],
2117
- "beginCaptures": {
2118
- "1": {
2119
- "name": "punctuation.definition.tag.begin.html"
2120
- },
2121
- "2": {
2122
- "name": "entity.name.tag.html"
2123
- }
2124
- },
2125
- "endCaptures": {
2126
- "0": {
2127
- "name": "punctuation.definition.tag.end.html"
2128
- }
2129
- }
2130
- },
2131
- {
2132
- "name": "meta.tag.inline.$2.end.html",
2133
- "begin": "(?i)(\u003c/)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\s|/?\u003e)",
2134
- "end": "\u003e",
2135
- "patterns": [
2136
- {
2137
- "include": "#attribute"
2138
- }
2139
- ],
2140
- "beginCaptures": {
2141
- "1": {
2142
- "name": "punctuation.definition.tag.begin.html"
2143
- },
2144
- "2": {
2145
- "name": "entity.name.tag.html"
2146
- }
2147
- },
2148
- "endCaptures": {
2149
- "0": {
2150
- "name": "punctuation.definition.tag.end.html"
2151
- }
2152
- }
2153
- },
2154
- {
2155
- "name": "meta.tag.object.$2.void.html",
2156
- "begin": "(?i)(\u003c)(embed|img|param|source|track)(?=\\s|/?\u003e)",
2157
- "end": "/?\u003e",
2158
- "patterns": [
2159
- {
2160
- "include": "#attribute"
2161
- }
2162
- ],
2163
- "beginCaptures": {
2164
- "1": {
2165
- "name": "punctuation.definition.tag.begin.html"
2166
- },
2167
- "2": {
2168
- "name": "entity.name.tag.html"
2169
- }
2170
- },
2171
- "endCaptures": {
2172
- "0": {
2173
- "name": "punctuation.definition.tag.end.html"
2174
- }
2175
- }
393
+ "2": {
394
+ "name": "entity.name.tag.script.html"
2176
395
  },
396
+ "3": {
397
+ "name": "punctuation.definition.tag.html"
398
+ }
399
+ }
400
+ },
401
+ {
402
+ "name": "meta.tag.structure.$2.html",
403
+ "begin": "(?i)(\u003c/?)(body|head|html)(?=\\s|/?\u003e)",
404
+ "end": "(\u003e)",
405
+ "patterns": [
2177
406
  {
2178
- "name": "meta.tag.object.$2.start.html",
2179
- "begin": "(?i)(\u003c)(audio|canvas|iframe|object|picture|video)(?=\\s|/?\u003e)",
2180
- "end": "\u003e",
2181
- "patterns": [
2182
- {
2183
- "include": "#attribute"
2184
- }
2185
- ],
2186
- "beginCaptures": {
2187
- "1": {
2188
- "name": "punctuation.definition.tag.begin.html"
2189
- },
2190
- "2": {
2191
- "name": "entity.name.tag.html"
2192
- }
2193
- },
2194
- "endCaptures": {
2195
- "0": {
2196
- "name": "punctuation.definition.tag.end.html"
2197
- }
2198
- }
407
+ "include": "#tag-stuff"
408
+ }
409
+ ],
410
+ "captures": {
411
+ "1": {
412
+ "name": "punctuation.definition.tag.html"
2199
413
  },
414
+ "2": {
415
+ "name": "entity.name.tag.structure.$2.html"
416
+ }
417
+ }
418
+ },
419
+ {
420
+ "name": "meta.tag.block.$2.html",
421
+ "begin": "(?i)(\u003c/?)(address|blockquote|dd|div|section|article|aside|header|footer|nav|menu|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|pre)(?=\\s|/?\u003e)",
422
+ "end": "(\u003e)",
423
+ "patterns": [
2200
424
  {
2201
- "name": "meta.tag.object.$2.end.html",
2202
- "begin": "(?i)(\u003c/)(audio|canvas|iframe|object|picture|video)(?=\\s|/?\u003e)",
2203
- "end": "\u003e",
2204
- "patterns": [
2205
- {
2206
- "include": "#attribute"
2207
- }
2208
- ],
2209
- "beginCaptures": {
2210
- "1": {
2211
- "name": "punctuation.definition.tag.begin.html"
2212
- },
2213
- "2": {
2214
- "name": "entity.name.tag.html"
2215
- }
2216
- },
2217
- "endCaptures": {
2218
- "0": {
2219
- "name": "punctuation.definition.tag.end.html"
2220
- }
2221
- }
425
+ "include": "#tag-stuff"
426
+ }
427
+ ],
428
+ "beginCaptures": {
429
+ "1": {
430
+ "name": "punctuation.definition.tag.begin.html"
2222
431
  },
432
+ "2": {
433
+ "name": "entity.name.tag.block.$2.html"
434
+ }
435
+ },
436
+ "endCaptures": {
437
+ "1": {
438
+ "name": "punctuation.definition.tag.end.html"
439
+ }
440
+ }
441
+ },
442
+ {
443
+ "name": "meta.tag.inline.$2.html",
444
+ "begin": "(?i)(\u003c/?)(a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)(?=\\s|/?\u003e)",
445
+ "end": "((?: ?/)?\u003e)",
446
+ "patterns": [
2223
447
  {
2224
- "name": "meta.tag.metadata.$2.void.html",
2225
- "begin": "(?i)(\u003c)((basefont|isindex))(?=\\s|/?\u003e)",
2226
- "end": "/?\u003e",
2227
- "patterns": [
2228
- {
2229
- "include": "#attribute"
2230
- }
2231
- ],
2232
- "beginCaptures": {
2233
- "1": {
2234
- "name": "punctuation.definition.tag.begin.html"
2235
- },
2236
- "2": {
2237
- "name": "entity.name.tag.html"
2238
- },
2239
- "3": {
2240
- "name": "invalid.deprecated.html"
2241
- }
2242
- },
2243
- "endCaptures": {
2244
- "0": {
2245
- "name": "punctuation.definition.tag.end.html"
2246
- }
2247
- }
448
+ "include": "#tag-stuff"
449
+ }
450
+ ],
451
+ "beginCaptures": {
452
+ "1": {
453
+ "name": "punctuation.definition.tag.begin.html"
2248
454
  },
455
+ "2": {
456
+ "name": "entity.name.tag.inline.$2.html"
457
+ }
458
+ },
459
+ "endCaptures": {
460
+ "1": {
461
+ "name": "punctuation.definition.tag.end.html"
462
+ }
463
+ }
464
+ },
465
+ {
466
+ "name": "meta.tag.other.html",
467
+ "begin": "(\u003c/?)([a-zA-Z0-9:-]+)",
468
+ "end": "(\u003e)",
469
+ "patterns": [
2249
470
  {
2250
- "name": "meta.tag.structure.$2.start.html",
2251
- "begin": "(?i)(\u003c)((center|frameset|noembed|noframes))(?=\\s|/?\u003e)",
2252
- "end": "\u003e",
2253
- "patterns": [
2254
- {
2255
- "include": "#attribute"
2256
- }
2257
- ],
2258
- "beginCaptures": {
2259
- "1": {
2260
- "name": "punctuation.definition.tag.begin.html"
2261
- },
2262
- "2": {
2263
- "name": "entity.name.tag.html"
2264
- },
2265
- "3": {
2266
- "name": "invalid.deprecated.html"
2267
- }
2268
- },
2269
- "endCaptures": {
2270
- "0": {
2271
- "name": "punctuation.definition.tag.end.html"
2272
- }
2273
- }
471
+ "include": "#tag-stuff"
472
+ }
473
+ ],
474
+ "beginCaptures": {
475
+ "1": {
476
+ "name": "punctuation.definition.tag.begin.html"
2274
477
  },
478
+ "2": {
479
+ "name": "entity.name.tag.other.html"
480
+ }
481
+ },
482
+ "endCaptures": {
483
+ "1": {
484
+ "name": "punctuation.definition.tag.end.html"
485
+ }
486
+ }
487
+ },
488
+ {
489
+ "include": "#character-reference"
490
+ },
491
+ {
492
+ "name": "invalid.illegal.incomplete.html",
493
+ "match": "\u003c\u003e"
494
+ }
495
+ ],
496
+ "repository": {
497
+ "character-reference": {
498
+ "patterns": [
2275
499
  {
2276
- "name": "meta.tag.structure.$2.end.html",
2277
- "begin": "(?i)(\u003c/)((center|frameset|noembed|noframes))(?=\\s|/?\u003e)",
2278
- "end": "\u003e",
2279
- "patterns": [
2280
- {
2281
- "include": "#attribute"
2282
- }
2283
- ],
500
+ "name": "constant.character.entity.html",
501
+ "begin": "(\u0026)(#\\d+|#[xX][0-9a-fA-F]+)",
502
+ "end": ";",
2284
503
  "beginCaptures": {
2285
504
  "1": {
2286
- "name": "punctuation.definition.tag.begin.html"
505
+ "name": "punctuation.definition.entity.begin.html"
2287
506
  },
2288
507
  "2": {
2289
- "name": "entity.name.tag.html"
2290
- },
2291
- "3": {
2292
- "name": "invalid.deprecated.html"
508
+ "name": "entity.name.entity.other.html"
2293
509
  }
2294
510
  },
2295
511
  "endCaptures": {
2296
512
  "0": {
2297
- "name": "punctuation.definition.tag.end.html"
513
+ "name": "punctuation.definition.entity.end.html"
2298
514
  }
2299
515
  }
2300
516
  },
2301
517
  {
2302
- "name": "meta.tag.inline.$2.start.html",
2303
- "begin": "(?i)(\u003c)((acronym|big|blink|font|strike|tt|xmp))(?=\\s|/?\u003e)",
2304
- "end": "\u003e",
2305
- "patterns": [
2306
- {
2307
- "include": "#attribute"
2308
- }
2309
- ],
2310
- "beginCaptures": {
518
+ "name": "constant.character.entity.html",
519
+ "match": "(\u0026)([a-zA-Z0-9]+)(;)",
520
+ "captures": {
2311
521
  "1": {
2312
- "name": "punctuation.definition.tag.begin.html"
522
+ "name": "punctuation.definition.entity.begin.html"
2313
523
  },
2314
524
  "2": {
2315
- "name": "entity.name.tag.html"
525
+ "name": "entity.name.entity.other.html"
2316
526
  },
2317
527
  "3": {
2318
- "name": "invalid.deprecated.html"
2319
- }
2320
- },
2321
- "endCaptures": {
2322
- "0": {
2323
- "name": "punctuation.definition.tag.end.html"
528
+ "name": "punctuation.definition.entity.end.html"
2324
529
  }
2325
530
  }
2326
531
  },
2327
532
  {
2328
- "name": "meta.tag.inline.$2.end.html",
2329
- "begin": "(?i)(\u003c/)((acronym|big|blink|font|strike|tt|xmp))(?=\\s|/?\u003e)",
2330
- "end": "\u003e",
2331
- "patterns": [
2332
- {
2333
- "include": "#attribute"
2334
- }
2335
- ],
2336
- "beginCaptures": {
533
+ "name": "invalid.illegal.bad-ampersand.html",
534
+ "match": "\u0026(?!\\s|\u003c|\u0026|[a-zA-Z0-9])"
535
+ }
536
+ ]
537
+ },
538
+ "embedded-code": {
539
+ "patterns": [
540
+ {
541
+ "include": "#smarty"
542
+ },
543
+ {
544
+ "include": "#python"
545
+ }
546
+ ]
547
+ },
548
+ "python": {
549
+ "name": "source.python.embedded.html",
550
+ "begin": "(?:^\\s*)\u003c\\?python(?!.*\\?\u003e)",
551
+ "end": "\\?\u003e(?:\\s*$\\n)?",
552
+ "patterns": [
553
+ {
554
+ "include": "source.python"
555
+ }
556
+ ]
557
+ },
558
+ "smarty": {
559
+ "patterns": [
560
+ {
561
+ "begin": "(\\{(literal)\\})",
562
+ "end": "(\\{/(literal)\\})",
563
+ "captures": {
2337
564
  "1": {
2338
- "name": "punctuation.definition.tag.begin.html"
565
+ "name": "source.smarty.embedded.html"
2339
566
  },
2340
567
  "2": {
2341
- "name": "entity.name.tag.html"
2342
- },
2343
- "3": {
2344
- "name": "invalid.deprecated.html"
2345
- }
2346
- },
2347
- "endCaptures": {
2348
- "0": {
2349
- "name": "punctuation.definition.tag.end.html"
568
+ "name": "support.function.built-in.smarty"
2350
569
  }
2351
570
  }
2352
571
  },
2353
572
  {
2354
- "name": "meta.tag.object.$2.void.html",
2355
- "begin": "(?i)(\u003c)((frame))(?=\\s|/?\u003e)",
2356
- "end": "/?\u003e",
573
+ "name": "source.smarty.embedded.html",
574
+ "begin": "{{|{",
575
+ "end": "}}|}",
2357
576
  "patterns": [
2358
- {
2359
- "include": "#attribute"
2360
- }
577
+ {}
2361
578
  ],
2362
- "beginCaptures": {
2363
- "1": {
2364
- "name": "punctuation.definition.tag.begin.html"
2365
- },
2366
- "2": {
2367
- "name": "entity.name.tag.html"
2368
- },
2369
- "3": {
2370
- "name": "invalid.deprecated.html"
2371
- }
2372
- },
2373
- "endCaptures": {
2374
- "0": {
2375
- "name": "punctuation.definition.tag.end.html"
2376
- }
2377
- }
579
+ "disabled": true
580
+ }
581
+ ]
582
+ },
583
+ "string-double-quoted": {
584
+ "name": "string.quoted.double.html",
585
+ "begin": "\"",
586
+ "end": "\"",
587
+ "patterns": [
588
+ {
589
+ "include": "#embedded-code"
2378
590
  },
2379
591
  {
2380
- "name": "meta.tag.object.$2.start.html",
2381
- "begin": "(?i)(\u003c)((applet))(?=\\s|/?\u003e)",
2382
- "end": "\u003e",
592
+ "include": "#character-reference"
593
+ }
594
+ ],
595
+ "beginCaptures": {
596
+ "0": {
597
+ "name": "punctuation.definition.string.begin.html"
598
+ }
599
+ },
600
+ "endCaptures": {
601
+ "0": {
602
+ "name": "punctuation.definition.string.end.html"
603
+ }
604
+ }
605
+ },
606
+ "string-single-quoted": {
607
+ "name": "string.quoted.single.html",
608
+ "begin": "'",
609
+ "end": "'",
610
+ "patterns": [
611
+ {
612
+ "include": "#embedded-code"
613
+ },
614
+ {
615
+ "include": "#character-reference"
616
+ }
617
+ ],
618
+ "beginCaptures": {
619
+ "0": {
620
+ "name": "punctuation.definition.string.begin.html"
621
+ }
622
+ },
623
+ "endCaptures": {
624
+ "0": {
625
+ "name": "punctuation.definition.string.end.html"
626
+ }
627
+ }
628
+ },
629
+ "tag-class-attribute": {
630
+ "name": "meta.attribute-with-value.class.html",
631
+ "begin": "\\b(class)\\s*(=)\\s*",
632
+ "end": "(?!\\G)|(?=\\s|/?\u003e)",
633
+ "patterns": [
634
+ {
635
+ "include": "#string-double-quoted"
636
+ },
637
+ {
638
+ "include": "#string-single-quoted"
639
+ },
640
+ {
641
+ "include": "#unquoted-attribute"
642
+ }
643
+ ],
644
+ "captures": {
645
+ "1": {
646
+ "name": "entity.other.attribute-name.class.html"
647
+ },
648
+ "2": {
649
+ "name": "punctuation.separator.key-value.html"
650
+ }
651
+ }
652
+ },
653
+ "tag-generic-attribute": {
654
+ "patterns": [
655
+ {
656
+ "name": "meta.attribute-with-value.html",
657
+ "begin": "([^\\s/=\u003e\"'\u003c]+)\\s*(=)\\s*",
658
+ "end": "(?!\\G)|(?=\\s|/?\u003e)",
2383
659
  "patterns": [
2384
660
  {
2385
- "include": "#attribute"
2386
- }
2387
- ],
2388
- "beginCaptures": {
2389
- "1": {
2390
- "name": "punctuation.definition.tag.begin.html"
661
+ "include": "#string-double-quoted"
2391
662
  },
2392
- "2": {
2393
- "name": "entity.name.tag.html"
663
+ {
664
+ "include": "#string-single-quoted"
2394
665
  },
2395
- "3": {
2396
- "name": "invalid.deprecated.html"
2397
- }
2398
- },
2399
- "endCaptures": {
2400
- "0": {
2401
- "name": "punctuation.definition.tag.end.html"
2402
- }
2403
- }
2404
- },
2405
- {
2406
- "name": "meta.tag.object.$2.end.html",
2407
- "begin": "(?i)(\u003c/)((applet))(?=\\s|/?\u003e)",
2408
- "end": "\u003e",
2409
- "patterns": [
2410
666
  {
2411
- "include": "#attribute"
667
+ "include": "#unquoted-attribute"
2412
668
  }
2413
669
  ],
2414
670
  "beginCaptures": {
2415
671
  "1": {
2416
- "name": "punctuation.definition.tag.begin.html"
672
+ "name": "entity.other.attribute-name.html"
2417
673
  },
2418
674
  "2": {
2419
- "name": "entity.name.tag.html"
2420
- },
2421
- "3": {
2422
- "name": "invalid.deprecated.html"
675
+ "name": "punctuation.separator.key-value.html"
2423
676
  }
2424
- },
2425
- "endCaptures": {
677
+ }
678
+ },
679
+ {
680
+ "name": "meta.attribute-without-value.html",
681
+ "match": "[^\\s/=\u003e\"'\u003c]+",
682
+ "captures": {
2426
683
  "0": {
2427
- "name": "punctuation.definition.tag.end.html"
684
+ "name": "entity.other.attribute-name.html"
2428
685
  }
2429
686
  }
2430
- },
687
+ }
688
+ ]
689
+ },
690
+ "tag-id-attribute": {
691
+ "name": "meta.attribute-with-value.id.html",
692
+ "begin": "\\b(id)\\s*(=)\\s*",
693
+ "end": "(?!\\G)|(?=\\s|/?\u003e)",
694
+ "patterns": [
2431
695
  {
2432
- "name": "meta.tag.other.$2.start.html",
2433
- "begin": "(?i)(\u003c)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\s|/?\u003e)",
2434
- "end": "\u003e",
696
+ "name": "string.quoted.double.html",
697
+ "contentName": "meta.toc-list.id.html",
698
+ "begin": "\"",
699
+ "end": "\"",
2435
700
  "patterns": [
2436
701
  {
2437
- "include": "#attribute"
702
+ "include": "#embedded-code"
703
+ },
704
+ {
705
+ "include": "#character-reference"
2438
706
  }
2439
707
  ],
2440
708
  "beginCaptures": {
2441
- "1": {
2442
- "name": "punctuation.definition.tag.begin.html"
2443
- },
2444
- "2": {
2445
- "name": "entity.name.tag.html"
2446
- },
2447
- "3": {
2448
- "name": "invalid.illegal.no-longer-supported.html"
709
+ "0": {
710
+ "name": "punctuation.definition.string.begin.html"
2449
711
  }
2450
712
  },
2451
713
  "endCaptures": {
2452
714
  "0": {
2453
- "name": "punctuation.definition.tag.end.html"
715
+ "name": "punctuation.definition.string.end.html"
2454
716
  }
2455
717
  }
2456
718
  },
2457
719
  {
2458
- "name": "meta.tag.other.$2.end.html",
2459
- "begin": "(?i)(\u003c/)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\s|/?\u003e)",
2460
- "end": "\u003e",
720
+ "name": "string.quoted.single.html",
721
+ "contentName": "meta.toc-list.id.html",
722
+ "begin": "'",
723
+ "end": "'",
2461
724
  "patterns": [
2462
725
  {
2463
- "include": "#attribute"
726
+ "include": "#embedded-code"
727
+ },
728
+ {
729
+ "include": "#character-reference"
2464
730
  }
2465
731
  ],
2466
732
  "beginCaptures": {
2467
- "1": {
2468
- "name": "punctuation.definition.tag.begin.html"
2469
- },
2470
- "2": {
2471
- "name": "entity.name.tag.html"
2472
- },
2473
- "3": {
2474
- "name": "invalid.illegal.no-longer-supported.html"
733
+ "0": {
734
+ "name": "punctuation.definition.string.begin.html"
2475
735
  }
2476
736
  },
2477
737
  "endCaptures": {
2478
738
  "0": {
2479
- "name": "punctuation.definition.tag.end.html"
739
+ "name": "punctuation.definition.string.end.html"
2480
740
  }
2481
741
  }
2482
742
  },
2483
743
  {
2484
- "include": "#math"
744
+ "include": "#unquoted-attribute"
745
+ }
746
+ ],
747
+ "captures": {
748
+ "1": {
749
+ "name": "entity.other.attribute-name.id.html"
750
+ },
751
+ "2": {
752
+ "name": "punctuation.separator.key-value.html"
753
+ }
754
+ }
755
+ },
756
+ "tag-stuff": {
757
+ "patterns": [
758
+ {
759
+ "include": "#tag-id-attribute"
760
+ },
761
+ {
762
+ "include": "#tag-class-attribute"
763
+ },
764
+ {
765
+ "include": "#tag-style-attribute"
766
+ },
767
+ {
768
+ "include": "#tag-generic-attribute"
2485
769
  },
2486
770
  {
2487
- "include": "#svg"
771
+ "include": "#string-double-quoted"
2488
772
  },
2489
773
  {
2490
- "name": "meta.tag.custom.start.html",
2491
- "begin": "(\u003c)([a-zA-Z][.0-9_a-zA-Z\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}-\\x{200D}\\x{203F}-\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}]*-[\\-.0-9_a-zA-Z\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}-\\x{200D}\\x{203F}-\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}]*)(?=\\s|/?\u003e)",
2492
- "end": "/?\u003e",
774
+ "include": "#string-single-quoted"
775
+ },
776
+ {
777
+ "include": "#embedded-code"
778
+ }
779
+ ]
780
+ },
781
+ "tag-style-attribute": {
782
+ "name": "meta.attribute-with-value.style.html",
783
+ "begin": "\\b(style)\\s*(=)\\s*",
784
+ "end": "(?!\\G)|(?=\\s|/?\u003e)",
785
+ "patterns": [
786
+ {
787
+ "name": "string.quoted.double.html",
788
+ "contentName": "source.css.style.html",
789
+ "begin": "\"",
790
+ "end": "\"",
2493
791
  "patterns": [
2494
792
  {
2495
- "include": "#attribute"
793
+ "name": "meta.property-list.css",
794
+ "match": "[^\"]+",
795
+ "captures": {
796
+ "0": {
797
+ "patterns": [
798
+ {
799
+ "include": "#embedded-code"
800
+ },
801
+ {
802
+ "include": "#entities"
803
+ },
804
+ {
805
+ "include": "source.css#rule-list-innards"
806
+ }
807
+ ]
808
+ }
809
+ }
2496
810
  }
2497
811
  ],
2498
812
  "beginCaptures": {
2499
- "1": {
2500
- "name": "punctuation.definition.tag.begin.html"
2501
- },
2502
- "2": {
2503
- "name": "entity.name.tag.html"
813
+ "0": {
814
+ "name": "punctuation.definition.string.begin.html"
2504
815
  }
2505
816
  },
2506
817
  "endCaptures": {
2507
818
  "0": {
2508
- "name": "punctuation.definition.tag.end.html"
819
+ "name": "punctuation.definition.string.end.html"
2509
820
  }
2510
821
  }
2511
822
  },
2512
823
  {
2513
- "name": "meta.tag.custom.end.html",
2514
- "begin": "(\u003c/)([a-zA-Z][.0-9_a-zA-Z\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}-\\x{200D}\\x{203F}-\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}]*-[\\-.0-9_a-zA-Z\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}-\\x{200D}\\x{203F}-\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}]*)(?=\\s|/?\u003e)",
2515
- "end": "\u003e",
824
+ "name": "string.quoted.single.html",
825
+ "contentName": "source.css.style.html",
826
+ "begin": "'",
827
+ "end": "'",
2516
828
  "patterns": [
2517
829
  {
2518
- "include": "#attribute"
830
+ "name": "meta.property-list.css",
831
+ "match": "[^']+",
832
+ "captures": {
833
+ "0": {
834
+ "patterns": [
835
+ {
836
+ "include": "#embedded-code"
837
+ },
838
+ {
839
+ "include": "#entities"
840
+ },
841
+ {
842
+ "include": "source.css#rule-list-innards"
843
+ }
844
+ ]
845
+ }
846
+ }
2519
847
  }
2520
848
  ],
2521
849
  "beginCaptures": {
2522
- "1": {
2523
- "name": "punctuation.definition.tag.begin.html"
2524
- },
2525
- "2": {
2526
- "name": "entity.name.tag.html"
850
+ "0": {
851
+ "name": "punctuation.definition.string.begin.html"
2527
852
  }
2528
853
  },
2529
854
  "endCaptures": {
2530
855
  "0": {
2531
- "name": "punctuation.definition.tag.end.html"
856
+ "name": "punctuation.definition.string.end.html"
857
+ }
858
+ }
859
+ },
860
+ {
861
+ "name": "string.unquoted.html",
862
+ "match": "([^\\s\u0026\u003e\"'\u003c=`]|\u0026(?=\u003e))+",
863
+ "captures": {
864
+ "0": {
865
+ "name": "source.css.style.html",
866
+ "patterns": [
867
+ {
868
+ "name": "meta.property-list.css",
869
+ "match": ".+",
870
+ "captures": {
871
+ "0": {
872
+ "patterns": [
873
+ {
874
+ "include": "source.css#rule-list-innards"
875
+ }
876
+ ]
877
+ }
878
+ }
879
+ }
880
+ ]
2532
881
  }
2533
882
  }
2534
883
  }
2535
- ]
2536
- }
2537
- },
2538
- "injections": {
2539
- "R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)": {
884
+ ],
885
+ "beginCaptures": {
886
+ "1": {
887
+ "name": "entity.other.attribute-name.style.html"
888
+ },
889
+ "2": {
890
+ "name": "punctuation.separator.key-value.html"
891
+ }
892
+ }
893
+ },
894
+ "unquoted-attribute": {
2540
895
  "patterns": [
2541
896
  {
2542
- "name": "invalid.illegal.bad-angle-bracket.html",
2543
- "match": "\u003c"
897
+ "include": "#character-reference"
898
+ },
899
+ {
900
+ "name": "string.unquoted.html",
901
+ "match": "([^\\s\u0026\u003e\"'\u003c=`]|\u0026(?=\u003e))+"
2544
902
  }
2545
903
  ]
2546
904
  }