Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/html/syntaxes/html.tmLanguage.json
3314 views
1
{
2
"information_for_contributors": [
3
"This file has been converted from https://github.com/textmate/html.tmbundle/blob/master/Syntaxes/HTML.plist",
4
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
5
"Once accepted there, we are happy to receive an update request."
6
],
7
"version": "https://github.com/textmate/html.tmbundle/commit/0c3d5ee54de3a993f747f54186b73a4d2d3c44a2",
8
"name": "HTML",
9
"scopeName": "text.html.basic",
10
"injections": {
11
"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)": {
12
"comment": "Uses R: to ensure this matches after any other injections.",
13
"patterns": [
14
{
15
"match": "<",
16
"name": "invalid.illegal.bad-angle-bracket.html"
17
}
18
]
19
}
20
},
21
"patterns": [
22
{
23
"include": "#xml-processing"
24
},
25
{
26
"include": "#comment"
27
},
28
{
29
"include": "#doctype"
30
},
31
{
32
"include": "#cdata"
33
},
34
{
35
"include": "#tags-valid"
36
},
37
{
38
"include": "#tags-invalid"
39
},
40
{
41
"include": "#entities"
42
}
43
],
44
"repository": {
45
"attribute": {
46
"patterns": [
47
{
48
"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:-])",
49
"beginCaptures": {
50
"0": {
51
"name": "entity.other.attribute-name.html"
52
}
53
},
54
"comment": "HTML5 attributes, not event handlers",
55
"end": "(?=\\s*+[^=\\s])",
56
"name": "meta.attribute.$1.html",
57
"patterns": [
58
{
59
"include": "#attribute-interior"
60
}
61
]
62
},
63
{
64
"begin": "style(?![\\w:-])",
65
"beginCaptures": {
66
"0": {
67
"name": "entity.other.attribute-name.html"
68
}
69
},
70
"comment": "HTML5 style attribute",
71
"end": "(?=\\s*+[^=\\s])",
72
"name": "meta.attribute.style.html",
73
"patterns": [
74
{
75
"begin": "=",
76
"beginCaptures": {
77
"0": {
78
"name": "punctuation.separator.key-value.html"
79
}
80
},
81
"end": "(?<=[^\\s=])(?!\\s*=)|(?=/?>)",
82
"patterns": [
83
{
84
"begin": "(?=[^\\s=<>`/]|/(?!>))",
85
"end": "(?!\\G)",
86
"name": "meta.embedded.line.css",
87
"patterns": [
88
{
89
"captures": {
90
"0": {
91
"name": "source.css"
92
}
93
},
94
"match": "([^\\s\"'=<>`/]|/(?!>))+",
95
"name": "string.unquoted.html"
96
},
97
{
98
"begin": "\"",
99
"beginCaptures": {
100
"0": {
101
"name": "punctuation.definition.string.begin.html"
102
}
103
},
104
"contentName": "source.css",
105
"end": "(\")",
106
"endCaptures": {
107
"0": {
108
"name": "punctuation.definition.string.end.html"
109
},
110
"1": {
111
"name": "source.css"
112
}
113
},
114
"name": "string.quoted.double.html",
115
"patterns": [
116
{
117
"include": "#entities"
118
}
119
]
120
},
121
{
122
"begin": "'",
123
"beginCaptures": {
124
"0": {
125
"name": "punctuation.definition.string.begin.html"
126
}
127
},
128
"contentName": "source.css",
129
"end": "(')",
130
"endCaptures": {
131
"0": {
132
"name": "punctuation.definition.string.end.html"
133
},
134
"1": {
135
"name": "source.css"
136
}
137
},
138
"name": "string.quoted.single.html",
139
"patterns": [
140
{
141
"include": "#entities"
142
}
143
]
144
}
145
]
146
},
147
{
148
"match": "=",
149
"name": "invalid.illegal.unexpected-equals-sign.html"
150
}
151
]
152
}
153
]
154
},
155
{
156
"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:-])",
157
"beginCaptures": {
158
"0": {
159
"name": "entity.other.attribute-name.html"
160
}
161
},
162
"comment": "HTML5 attributes, event handlers",
163
"end": "(?=\\s*+[^=\\s])",
164
"name": "meta.attribute.event-handler.$1.html",
165
"patterns": [
166
{
167
"begin": "=",
168
"beginCaptures": {
169
"0": {
170
"name": "punctuation.separator.key-value.html"
171
}
172
},
173
"end": "(?<=[^\\s=])(?!\\s*=)|(?=/?>)",
174
"patterns": [
175
{
176
"begin": "(?=[^\\s=<>`/]|/(?!>))",
177
"end": "(?!\\G)",
178
"name": "meta.embedded.line.js",
179
"patterns": [
180
{
181
"captures": {
182
"0": {
183
"name": "source.js"
184
},
185
"1": {
186
"patterns": [
187
{
188
"include": "source.js"
189
}
190
]
191
}
192
},
193
"match": "(([^\\s\"'=<>`/]|/(?!>))+)",
194
"name": "string.unquoted.html"
195
},
196
{
197
"begin": "\"",
198
"beginCaptures": {
199
"0": {
200
"name": "punctuation.definition.string.begin.html"
201
}
202
},
203
"contentName": "source.js",
204
"end": "(\")",
205
"endCaptures": {
206
"0": {
207
"name": "punctuation.definition.string.end.html"
208
},
209
"1": {
210
"name": "source.js"
211
}
212
},
213
"name": "string.quoted.double.html",
214
"patterns": [
215
{
216
"captures": {
217
"0": {
218
"patterns": [
219
{
220
"include": "source.js"
221
}
222
]
223
}
224
},
225
"match": "([^\\n\"/]|/(?![/*]))+"
226
},
227
{
228
"begin": "//",
229
"beginCaptures": {
230
"0": {
231
"name": "punctuation.definition.comment.js"
232
}
233
},
234
"end": "(?=\")|\\n",
235
"name": "comment.line.double-slash.js"
236
},
237
{
238
"begin": "/\\*",
239
"beginCaptures": {
240
"0": {
241
"name": "punctuation.definition.comment.begin.js"
242
}
243
},
244
"end": "(?=\")|\\*/",
245
"endCaptures": {
246
"0": {
247
"name": "punctuation.definition.comment.end.js"
248
}
249
},
250
"name": "comment.block.js"
251
}
252
]
253
},
254
{
255
"begin": "'",
256
"beginCaptures": {
257
"0": {
258
"name": "punctuation.definition.string.begin.html"
259
}
260
},
261
"contentName": "source.js",
262
"end": "(')",
263
"endCaptures": {
264
"0": {
265
"name": "punctuation.definition.string.end.html"
266
},
267
"1": {
268
"name": "source.js"
269
}
270
},
271
"name": "string.quoted.single.html",
272
"patterns": [
273
{
274
"captures": {
275
"0": {
276
"patterns": [
277
{
278
"include": "source.js"
279
}
280
]
281
}
282
},
283
"match": "([^\\n'/]|/(?![/*]))+"
284
},
285
{
286
"begin": "//",
287
"beginCaptures": {
288
"0": {
289
"name": "punctuation.definition.comment.js"
290
}
291
},
292
"end": "(?=')|\\n",
293
"name": "comment.line.double-slash.js"
294
},
295
{
296
"begin": "/\\*",
297
"beginCaptures": {
298
"0": {
299
"name": "punctuation.definition.comment.begin.js"
300
}
301
},
302
"end": "(?=')|\\*/",
303
"endCaptures": {
304
"0": {
305
"name": "punctuation.definition.comment.end.js"
306
}
307
},
308
"name": "comment.block.js"
309
}
310
]
311
}
312
]
313
},
314
{
315
"match": "=",
316
"name": "invalid.illegal.unexpected-equals-sign.html"
317
}
318
]
319
}
320
]
321
},
322
{
323
"begin": "(data-[a-z\\-]+)(?![\\w:-])",
324
"beginCaptures": {
325
"0": {
326
"name": "entity.other.attribute-name.html"
327
}
328
},
329
"comment": "HTML5 attributes, data-*",
330
"end": "(?=\\s*+[^=\\s])",
331
"name": "meta.attribute.data-x.$1.html",
332
"patterns": [
333
{
334
"include": "#attribute-interior"
335
}
336
]
337
},
338
{
339
"begin": "(align|bgcolor|border)(?![\\w:-])",
340
"beginCaptures": {
341
"0": {
342
"name": "invalid.deprecated.entity.other.attribute-name.html"
343
}
344
},
345
"comment": "HTML attributes, deprecated",
346
"end": "(?=\\s*+[^=\\s])",
347
"name": "meta.attribute.$1.html",
348
"patterns": [
349
{
350
"include": "#attribute-interior"
351
}
352
]
353
},
354
{
355
"begin": "([^\\x{0020}\"'<>/=\\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}]+)",
356
"beginCaptures": {
357
"0": {
358
"name": "entity.other.attribute-name.html"
359
}
360
},
361
"comment": "Anything else that is valid",
362
"end": "(?=\\s*+[^=\\s])",
363
"name": "meta.attribute.unrecognized.$1.html",
364
"patterns": [
365
{
366
"include": "#attribute-interior"
367
}
368
]
369
},
370
{
371
"match": "[^\\s>]+",
372
"name": "invalid.illegal.character-not-allowed-here.html"
373
}
374
]
375
},
376
"attribute-interior": {
377
"patterns": [
378
{
379
"begin": "=",
380
"beginCaptures": {
381
"0": {
382
"name": "punctuation.separator.key-value.html"
383
}
384
},
385
"end": "(?<=[^\\s=])(?!\\s*=)|(?=/?>)",
386
"patterns": [
387
{
388
"match": "([^\\s\"'=<>`/]|/(?!>))+",
389
"name": "string.unquoted.html"
390
},
391
{
392
"begin": "\"",
393
"beginCaptures": {
394
"0": {
395
"name": "punctuation.definition.string.begin.html"
396
}
397
},
398
"end": "\"",
399
"endCaptures": {
400
"0": {
401
"name": "punctuation.definition.string.end.html"
402
}
403
},
404
"name": "string.quoted.double.html",
405
"patterns": [
406
{
407
"include": "#entities"
408
}
409
]
410
},
411
{
412
"begin": "'",
413
"beginCaptures": {
414
"0": {
415
"name": "punctuation.definition.string.begin.html"
416
}
417
},
418
"end": "'",
419
"endCaptures": {
420
"0": {
421
"name": "punctuation.definition.string.end.html"
422
}
423
},
424
"name": "string.quoted.single.html",
425
"patterns": [
426
{
427
"include": "#entities"
428
}
429
]
430
},
431
{
432
"match": "=",
433
"name": "invalid.illegal.unexpected-equals-sign.html"
434
}
435
]
436
}
437
]
438
},
439
"cdata": {
440
"begin": "<!\\[CDATA\\[",
441
"beginCaptures": {
442
"0": {
443
"name": "punctuation.definition.tag.begin.html"
444
}
445
},
446
"contentName": "string.other.inline-data.html",
447
"end": "]]>",
448
"endCaptures": {
449
"0": {
450
"name": "punctuation.definition.tag.end.html"
451
}
452
},
453
"name": "meta.tag.metadata.cdata.html"
454
},
455
"comment": {
456
"begin": "<!--",
457
"captures": {
458
"0": {
459
"name": "punctuation.definition.comment.html"
460
}
461
},
462
"end": "-->",
463
"name": "comment.block.html",
464
"patterns": [
465
{
466
"match": "\\G-?>",
467
"name": "invalid.illegal.characters-not-allowed-here.html"
468
},
469
{
470
"match": "<!--(?!>)|<!-(?=-->)",
471
"name": "invalid.illegal.characters-not-allowed-here.html"
472
},
473
{
474
"match": "--!>",
475
"name": "invalid.illegal.characters-not-allowed-here.html"
476
}
477
]
478
},
479
"core-minus-invalid": {
480
"comment": "This should be the root pattern array includes minus #tags-invalid",
481
"patterns": [
482
{
483
"include": "#xml-processing"
484
},
485
{
486
"include": "#comment"
487
},
488
{
489
"include": "#doctype"
490
},
491
{
492
"include": "#cdata"
493
},
494
{
495
"include": "#tags-valid"
496
},
497
{
498
"include": "#entities"
499
}
500
]
501
},
502
"doctype": {
503
"begin": "<!(?=(?i:DOCTYPE\\s))",
504
"beginCaptures": {
505
"0": {
506
"name": "punctuation.definition.tag.begin.html"
507
}
508
},
509
"end": ">",
510
"endCaptures": {
511
"0": {
512
"name": "punctuation.definition.tag.end.html"
513
}
514
},
515
"name": "meta.tag.metadata.doctype.html",
516
"patterns": [
517
{
518
"match": "\\G(?i:DOCTYPE)",
519
"name": "entity.name.tag.html"
520
},
521
{
522
"begin": "\"",
523
"end": "\"",
524
"name": "string.quoted.double.html"
525
},
526
{
527
"match": "[^\\s>]+",
528
"name": "entity.other.attribute-name.html"
529
}
530
]
531
},
532
"entities": {
533
"patterns": [
534
{
535
"captures": {
536
"1": {
537
"name": "punctuation.definition.entity.html"
538
},
539
"912": {
540
"name": "punctuation.definition.entity.html"
541
}
542
},
543
"comment": "Yes this is a bit ridiculous, there are quite a lot of these",
544
"match": "(?x)\n\t\t\t\t\t\t(&)\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",
545
"name": "constant.character.entity.named.$2.html"
546
},
547
{
548
"captures": {
549
"1": {
550
"name": "punctuation.definition.entity.html"
551
},
552
"3": {
553
"name": "punctuation.definition.entity.html"
554
}
555
},
556
"match": "(&)#[0-9]+(;)",
557
"name": "constant.character.entity.numeric.decimal.html"
558
},
559
{
560
"captures": {
561
"1": {
562
"name": "punctuation.definition.entity.html"
563
},
564
"3": {
565
"name": "punctuation.definition.entity.html"
566
}
567
},
568
"match": "(&)#[xX][0-9a-fA-F]+(;)",
569
"name": "constant.character.entity.numeric.hexadecimal.html"
570
},
571
{
572
"match": "&(?=[a-zA-Z0-9]+;)",
573
"name": "invalid.illegal.ambiguous-ampersand.html"
574
}
575
]
576
},
577
"math": {
578
"patterns": [
579
{
580
"begin": "(?i)(<)(math)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
581
"beginCaptures": {
582
"0": {
583
"name": "meta.tag.structure.$2.start.html"
584
},
585
"1": {
586
"name": "punctuation.definition.tag.begin.html"
587
},
588
"2": {
589
"name": "entity.name.tag.html"
590
},
591
"3": {
592
"patterns": [
593
{
594
"include": "#attribute"
595
}
596
]
597
},
598
"5": {
599
"name": "punctuation.definition.tag.end.html"
600
}
601
},
602
"end": "(?i)(</)(\\2)\\s*(>)",
603
"endCaptures": {
604
"0": {
605
"name": "meta.tag.structure.$2.end.html"
606
},
607
"1": {
608
"name": "punctuation.definition.tag.begin.html"
609
},
610
"2": {
611
"name": "entity.name.tag.html"
612
},
613
"3": {
614
"name": "punctuation.definition.tag.end.html"
615
}
616
},
617
"name": "meta.element.structure.$2.html",
618
"patterns": [
619
{
620
"begin": "(?<!>)\\G",
621
"end": ">",
622
"endCaptures": {
623
"0": {
624
"name": "punctuation.definition.tag.end.html"
625
}
626
},
627
"name": "meta.tag.structure.start.html",
628
"patterns": [
629
{
630
"include": "#attribute"
631
}
632
]
633
},
634
{
635
"include": "#tags"
636
}
637
]
638
}
639
],
640
"repository": {
641
"attribute": {
642
"patterns": [
643
{
644
"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:-])",
645
"beginCaptures": {
646
"0": {
647
"name": "entity.other.attribute-name.html"
648
}
649
},
650
"end": "(?=\\s*+[^=\\s])",
651
"name": "meta.attribute.$1.html",
652
"patterns": [
653
{
654
"include": "#attribute-interior"
655
}
656
]
657
},
658
{
659
"begin": "([^\\x{0020}\"'<>/=\\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}]+)",
660
"beginCaptures": {
661
"0": {
662
"name": "entity.other.attribute-name.html"
663
}
664
},
665
"comment": "Anything else that is valid",
666
"end": "(?=\\s*+[^=\\s])",
667
"name": "meta.attribute.unrecognized.$1.html",
668
"patterns": [
669
{
670
"include": "#attribute-interior"
671
}
672
]
673
},
674
{
675
"match": "[^\\s>]+",
676
"name": "invalid.illegal.character-not-allowed-here.html"
677
}
678
]
679
},
680
"tags": {
681
"patterns": [
682
{
683
"include": "#comment"
684
},
685
{
686
"include": "#cdata"
687
},
688
{
689
"captures": {
690
"0": {
691
"name": "meta.tag.structure.math.$2.void.html"
692
},
693
"1": {
694
"name": "punctuation.definition.tag.begin.html"
695
},
696
"2": {
697
"name": "entity.name.tag.html"
698
},
699
"3": {
700
"patterns": [
701
{
702
"include": "#attribute"
703
}
704
]
705
},
706
"5": {
707
"name": "punctuation.definition.tag.end.html"
708
}
709
},
710
"match": "(?i)(<)(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|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
711
"name": "meta.element.structure.math.$2.html"
712
},
713
{
714
"begin": "(?i)(<)(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|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
715
"beginCaptures": {
716
"0": {
717
"name": "meta.tag.structure.math.$2.start.html"
718
},
719
"1": {
720
"name": "punctuation.definition.tag.begin.html"
721
},
722
"2": {
723
"name": "entity.name.tag.html"
724
},
725
"3": {
726
"patterns": [
727
{
728
"include": "#attribute"
729
}
730
]
731
},
732
"5": {
733
"name": "punctuation.definition.tag.end.html"
734
}
735
},
736
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
737
"endCaptures": {
738
"0": {
739
"name": "meta.tag.structure.math.$2.end.html"
740
},
741
"1": {
742
"name": "punctuation.definition.tag.begin.html"
743
},
744
"2": {
745
"name": "entity.name.tag.html"
746
},
747
"3": {
748
"name": "punctuation.definition.tag.end.html"
749
},
750
"4": {
751
"name": "punctuation.definition.tag.end.html"
752
}
753
},
754
"name": "meta.element.structure.math.$2.html",
755
"patterns": [
756
{
757
"begin": "(?<!>)\\G",
758
"end": "(?=/>)|>",
759
"endCaptures": {
760
"0": {
761
"name": "punctuation.definition.tag.end.html"
762
}
763
},
764
"name": "meta.tag.structure.start.html",
765
"patterns": [
766
{
767
"include": "#attribute"
768
}
769
]
770
},
771
{
772
"include": "#tags"
773
}
774
]
775
},
776
{
777
"captures": {
778
"0": {
779
"name": "meta.tag.inline.math.$2.void.html"
780
},
781
"1": {
782
"name": "punctuation.definition.tag.begin.html"
783
},
784
"2": {
785
"name": "entity.name.tag.html"
786
},
787
"3": {
788
"patterns": [
789
{
790
"include": "#attribute"
791
}
792
]
793
},
794
"5": {
795
"name": "punctuation.definition.tag.end.html"
796
}
797
},
798
"match": "(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
799
"name": "meta.element.inline.math.$2.html"
800
},
801
{
802
"begin": "(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
803
"beginCaptures": {
804
"0": {
805
"name": "meta.tag.inline.math.$2.start.html"
806
},
807
"1": {
808
"name": "punctuation.definition.tag.begin.html"
809
},
810
"2": {
811
"name": "entity.name.tag.html"
812
},
813
"3": {
814
"patterns": [
815
{
816
"include": "#attribute"
817
}
818
]
819
},
820
"5": {
821
"name": "punctuation.definition.tag.end.html"
822
}
823
},
824
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
825
"endCaptures": {
826
"0": {
827
"name": "meta.tag.inline.math.$2.end.html"
828
},
829
"1": {
830
"name": "punctuation.definition.tag.begin.html"
831
},
832
"2": {
833
"name": "entity.name.tag.html"
834
},
835
"3": {
836
"name": "punctuation.definition.tag.end.html"
837
},
838
"4": {
839
"name": "punctuation.definition.tag.end.html"
840
}
841
},
842
"name": "meta.element.inline.math.$2.html",
843
"patterns": [
844
{
845
"begin": "(?<!>)\\G",
846
"end": "(?=/>)|>",
847
"endCaptures": {
848
"0": {
849
"name": "punctuation.definition.tag.end.html"
850
}
851
},
852
"name": "meta.tag.inline.start.html",
853
"patterns": [
854
{
855
"include": "#attribute"
856
}
857
]
858
},
859
{
860
"include": "#tags"
861
}
862
]
863
},
864
{
865
"captures": {
866
"0": {
867
"name": "meta.tag.object.math.$2.void.html"
868
},
869
"1": {
870
"name": "punctuation.definition.tag.begin.html"
871
},
872
"2": {
873
"name": "entity.name.tag.html"
874
},
875
"3": {
876
"patterns": [
877
{
878
"include": "#attribute"
879
}
880
]
881
},
882
"5": {
883
"name": "punctuation.definition.tag.end.html"
884
}
885
},
886
"match": "(?i)(<)(mglyph)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
887
"name": "meta.element.object.math.$2.html"
888
},
889
{
890
"begin": "(?i)(<)(mglyph)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
891
"beginCaptures": {
892
"0": {
893
"name": "meta.tag.object.math.$2.start.html"
894
},
895
"1": {
896
"name": "punctuation.definition.tag.begin.html"
897
},
898
"2": {
899
"name": "entity.name.tag.html"
900
},
901
"3": {
902
"patterns": [
903
{
904
"include": "#attribute"
905
}
906
]
907
},
908
"5": {
909
"name": "punctuation.definition.tag.end.html"
910
}
911
},
912
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
913
"endCaptures": {
914
"0": {
915
"name": "meta.tag.object.math.$2.end.html"
916
},
917
"1": {
918
"name": "punctuation.definition.tag.begin.html"
919
},
920
"2": {
921
"name": "entity.name.tag.html"
922
},
923
"3": {
924
"name": "punctuation.definition.tag.end.html"
925
},
926
"4": {
927
"name": "punctuation.definition.tag.end.html"
928
}
929
},
930
"name": "meta.element.object.math.$2.html",
931
"patterns": [
932
{
933
"begin": "(?<!>)\\G",
934
"end": "(?=/>)|>",
935
"endCaptures": {
936
"0": {
937
"name": "punctuation.definition.tag.end.html"
938
}
939
},
940
"name": "meta.tag.object.start.html",
941
"patterns": [
942
{
943
"include": "#attribute"
944
}
945
]
946
},
947
{
948
"include": "#tags"
949
}
950
]
951
},
952
{
953
"captures": {
954
"0": {
955
"name": "meta.tag.other.invalid.void.html"
956
},
957
"1": {
958
"name": "punctuation.definition.tag.begin.html"
959
},
960
"2": {
961
"name": "entity.name.tag.html"
962
},
963
"3": {
964
"name": "invalid.illegal.unrecognized-tag.html"
965
},
966
"4": {
967
"patterns": [
968
{
969
"include": "#attribute"
970
}
971
]
972
},
973
"6": {
974
"name": "punctuation.definition.tag.end.html"
975
}
976
},
977
"match": "(?i)(<)(([\\w:]+))(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
978
"name": "meta.element.other.invalid.html"
979
},
980
{
981
"begin": "(?i)(<)((\\w[^\\s>]*))(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
982
"beginCaptures": {
983
"0": {
984
"name": "meta.tag.other.invalid.start.html"
985
},
986
"1": {
987
"name": "punctuation.definition.tag.begin.html"
988
},
989
"2": {
990
"name": "entity.name.tag.html"
991
},
992
"3": {
993
"name": "invalid.illegal.unrecognized-tag.html"
994
},
995
"4": {
996
"patterns": [
997
{
998
"include": "#attribute"
999
}
1000
]
1001
},
1002
"6": {
1003
"name": "punctuation.definition.tag.end.html"
1004
}
1005
},
1006
"end": "(?i)(</)((\\2))\\s*(>)|(/>)|(?=</\\w+)",
1007
"endCaptures": {
1008
"0": {
1009
"name": "meta.tag.other.invalid.end.html"
1010
},
1011
"1": {
1012
"name": "punctuation.definition.tag.begin.html"
1013
},
1014
"2": {
1015
"name": "entity.name.tag.html"
1016
},
1017
"3": {
1018
"name": "invalid.illegal.unrecognized-tag.html"
1019
},
1020
"4": {
1021
"name": "punctuation.definition.tag.end.html"
1022
},
1023
"5": {
1024
"name": "punctuation.definition.tag.end.html"
1025
}
1026
},
1027
"name": "meta.element.other.invalid.html",
1028
"patterns": [
1029
{
1030
"begin": "(?<!>)\\G",
1031
"end": "(?=/>)|>",
1032
"endCaptures": {
1033
"0": {
1034
"name": "punctuation.definition.tag.end.html"
1035
}
1036
},
1037
"name": "meta.tag.other.invalid.start.html",
1038
"patterns": [
1039
{
1040
"include": "#attribute"
1041
}
1042
]
1043
},
1044
{
1045
"include": "#tags"
1046
}
1047
]
1048
},
1049
{
1050
"include": "#tags-invalid"
1051
}
1052
]
1053
}
1054
}
1055
},
1056
"svg": {
1057
"patterns": [
1058
{
1059
"begin": "(?i)(<)(svg)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1060
"beginCaptures": {
1061
"0": {
1062
"name": "meta.tag.structure.$2.start.html"
1063
},
1064
"1": {
1065
"name": "punctuation.definition.tag.begin.html"
1066
},
1067
"2": {
1068
"name": "entity.name.tag.html"
1069
},
1070
"3": {
1071
"patterns": [
1072
{
1073
"include": "#attribute"
1074
}
1075
]
1076
},
1077
"5": {
1078
"name": "punctuation.definition.tag.end.html"
1079
}
1080
},
1081
"end": "(?i)(</)(\\2)\\s*(>)",
1082
"endCaptures": {
1083
"0": {
1084
"name": "meta.tag.structure.$2.end.html"
1085
},
1086
"1": {
1087
"name": "punctuation.definition.tag.begin.html"
1088
},
1089
"2": {
1090
"name": "entity.name.tag.html"
1091
},
1092
"3": {
1093
"name": "punctuation.definition.tag.end.html"
1094
}
1095
},
1096
"name": "meta.element.structure.$2.html",
1097
"patterns": [
1098
{
1099
"begin": "(?<!>)\\G",
1100
"end": ">",
1101
"endCaptures": {
1102
"0": {
1103
"name": "punctuation.definition.tag.end.html"
1104
}
1105
},
1106
"name": "meta.tag.structure.start.html",
1107
"patterns": [
1108
{
1109
"include": "#attribute"
1110
}
1111
]
1112
},
1113
{
1114
"include": "#tags"
1115
}
1116
]
1117
}
1118
],
1119
"repository": {
1120
"attribute": {
1121
"patterns": [
1122
{
1123
"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:-])",
1124
"beginCaptures": {
1125
"0": {
1126
"name": "entity.other.attribute-name.html"
1127
}
1128
},
1129
"end": "(?=\\s*+[^=\\s])",
1130
"name": "meta.attribute.$1.html",
1131
"patterns": [
1132
{
1133
"include": "#attribute-interior"
1134
}
1135
]
1136
},
1137
{
1138
"begin": "([^\\x{0020}\"'<>/=\\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}]+)",
1139
"beginCaptures": {
1140
"0": {
1141
"name": "entity.other.attribute-name.html"
1142
}
1143
},
1144
"comment": "Anything else that is valid",
1145
"end": "(?=\\s*+[^=\\s])",
1146
"name": "meta.attribute.unrecognized.$1.html",
1147
"patterns": [
1148
{
1149
"include": "#attribute-interior"
1150
}
1151
]
1152
},
1153
{
1154
"match": "[^\\s>]+",
1155
"name": "invalid.illegal.character-not-allowed-here.html"
1156
}
1157
]
1158
},
1159
"tags": {
1160
"patterns": [
1161
{
1162
"include": "#comment"
1163
},
1164
{
1165
"include": "#cdata"
1166
},
1167
{
1168
"captures": {
1169
"0": {
1170
"name": "meta.tag.metadata.svg.$2.void.html"
1171
},
1172
"1": {
1173
"name": "punctuation.definition.tag.begin.html"
1174
},
1175
"2": {
1176
"name": "entity.name.tag.html"
1177
},
1178
"3": {
1179
"patterns": [
1180
{
1181
"include": "#attribute"
1182
}
1183
]
1184
},
1185
"5": {
1186
"name": "punctuation.definition.tag.end.html"
1187
}
1188
},
1189
"match": "(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
1190
"name": "meta.element.metadata.svg.$2.html"
1191
},
1192
{
1193
"begin": "(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1194
"beginCaptures": {
1195
"0": {
1196
"name": "meta.tag.metadata.svg.$2.start.html"
1197
},
1198
"1": {
1199
"name": "punctuation.definition.tag.begin.html"
1200
},
1201
"2": {
1202
"name": "entity.name.tag.html"
1203
},
1204
"3": {
1205
"patterns": [
1206
{
1207
"include": "#attribute"
1208
}
1209
]
1210
},
1211
"5": {
1212
"name": "punctuation.definition.tag.end.html"
1213
}
1214
},
1215
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
1216
"endCaptures": {
1217
"0": {
1218
"name": "meta.tag.metadata.svg.$2.end.html"
1219
},
1220
"1": {
1221
"name": "punctuation.definition.tag.begin.html"
1222
},
1223
"2": {
1224
"name": "entity.name.tag.html"
1225
},
1226
"3": {
1227
"name": "punctuation.definition.tag.end.html"
1228
},
1229
"4": {
1230
"name": "punctuation.definition.tag.end.html"
1231
}
1232
},
1233
"name": "meta.element.metadata.svg.$2.html",
1234
"patterns": [
1235
{
1236
"begin": "(?<!>)\\G",
1237
"end": "(?=/>)|>",
1238
"endCaptures": {
1239
"0": {
1240
"name": "punctuation.definition.tag.end.html"
1241
}
1242
},
1243
"name": "meta.tag.metadata.start.html",
1244
"patterns": [
1245
{
1246
"include": "#attribute"
1247
}
1248
]
1249
},
1250
{
1251
"include": "#tags"
1252
}
1253
]
1254
},
1255
{
1256
"captures": {
1257
"0": {
1258
"name": "meta.tag.structure.svg.$2.void.html"
1259
},
1260
"1": {
1261
"name": "punctuation.definition.tag.begin.html"
1262
},
1263
"2": {
1264
"name": "entity.name.tag.html"
1265
},
1266
"3": {
1267
"patterns": [
1268
{
1269
"include": "#attribute"
1270
}
1271
]
1272
},
1273
"5": {
1274
"name": "punctuation.definition.tag.end.html"
1275
}
1276
},
1277
"match": "(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
1278
"name": "meta.element.structure.svg.$2.html"
1279
},
1280
{
1281
"begin": "(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1282
"beginCaptures": {
1283
"0": {
1284
"name": "meta.tag.structure.svg.$2.start.html"
1285
},
1286
"1": {
1287
"name": "punctuation.definition.tag.begin.html"
1288
},
1289
"2": {
1290
"name": "entity.name.tag.html"
1291
},
1292
"3": {
1293
"patterns": [
1294
{
1295
"include": "#attribute"
1296
}
1297
]
1298
},
1299
"5": {
1300
"name": "punctuation.definition.tag.end.html"
1301
}
1302
},
1303
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
1304
"endCaptures": {
1305
"0": {
1306
"name": "meta.tag.structure.svg.$2.end.html"
1307
},
1308
"1": {
1309
"name": "punctuation.definition.tag.begin.html"
1310
},
1311
"2": {
1312
"name": "entity.name.tag.html"
1313
},
1314
"3": {
1315
"name": "punctuation.definition.tag.end.html"
1316
},
1317
"4": {
1318
"name": "punctuation.definition.tag.end.html"
1319
}
1320
},
1321
"name": "meta.element.structure.svg.$2.html",
1322
"patterns": [
1323
{
1324
"begin": "(?<!>)\\G",
1325
"end": "(?=/>)|>",
1326
"endCaptures": {
1327
"0": {
1328
"name": "punctuation.definition.tag.end.html"
1329
}
1330
},
1331
"name": "meta.tag.structure.start.html",
1332
"patterns": [
1333
{
1334
"include": "#attribute"
1335
}
1336
]
1337
},
1338
{
1339
"include": "#tags"
1340
}
1341
]
1342
},
1343
{
1344
"captures": {
1345
"0": {
1346
"name": "meta.tag.inline.svg.$2.void.html"
1347
},
1348
"1": {
1349
"name": "punctuation.definition.tag.begin.html"
1350
},
1351
"2": {
1352
"name": "entity.name.tag.html"
1353
},
1354
"3": {
1355
"patterns": [
1356
{
1357
"include": "#attribute"
1358
}
1359
]
1360
},
1361
"5": {
1362
"name": "punctuation.definition.tag.end.html"
1363
}
1364
},
1365
"match": "(?i)(<)(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|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
1366
"name": "meta.element.inline.svg.$2.html"
1367
},
1368
{
1369
"begin": "(?i)(<)(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|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1370
"beginCaptures": {
1371
"0": {
1372
"name": "meta.tag.inline.svg.$2.start.html"
1373
},
1374
"1": {
1375
"name": "punctuation.definition.tag.begin.html"
1376
},
1377
"2": {
1378
"name": "entity.name.tag.html"
1379
},
1380
"3": {
1381
"patterns": [
1382
{
1383
"include": "#attribute"
1384
}
1385
]
1386
},
1387
"5": {
1388
"name": "punctuation.definition.tag.end.html"
1389
}
1390
},
1391
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
1392
"endCaptures": {
1393
"0": {
1394
"name": "meta.tag.inline.svg.$2.end.html"
1395
},
1396
"1": {
1397
"name": "punctuation.definition.tag.begin.html"
1398
},
1399
"2": {
1400
"name": "entity.name.tag.html"
1401
},
1402
"3": {
1403
"name": "punctuation.definition.tag.end.html"
1404
},
1405
"4": {
1406
"name": "punctuation.definition.tag.end.html"
1407
}
1408
},
1409
"name": "meta.element.inline.svg.$2.html",
1410
"patterns": [
1411
{
1412
"begin": "(?<!>)\\G",
1413
"end": "(?=/>)|>",
1414
"endCaptures": {
1415
"0": {
1416
"name": "punctuation.definition.tag.end.html"
1417
}
1418
},
1419
"name": "meta.tag.inline.start.html",
1420
"patterns": [
1421
{
1422
"include": "#attribute"
1423
}
1424
]
1425
},
1426
{
1427
"include": "#tags"
1428
}
1429
]
1430
},
1431
{
1432
"captures": {
1433
"0": {
1434
"name": "meta.tag.object.svg.$2.void.html"
1435
},
1436
"1": {
1437
"name": "punctuation.definition.tag.begin.html"
1438
},
1439
"2": {
1440
"name": "entity.name.tag.html"
1441
},
1442
"3": {
1443
"patterns": [
1444
{
1445
"include": "#attribute"
1446
}
1447
]
1448
},
1449
"5": {
1450
"name": "punctuation.definition.tag.end.html"
1451
}
1452
},
1453
"match": "(?i)(<)(circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
1454
"name": "meta.element.object.svg.$2.html"
1455
},
1456
{
1457
"begin": "(?i)(<)(a|circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1458
"beginCaptures": {
1459
"0": {
1460
"name": "meta.tag.object.svg.$2.start.html"
1461
},
1462
"1": {
1463
"name": "punctuation.definition.tag.begin.html"
1464
},
1465
"2": {
1466
"name": "entity.name.tag.html"
1467
},
1468
"3": {
1469
"patterns": [
1470
{
1471
"include": "#attribute"
1472
}
1473
]
1474
},
1475
"5": {
1476
"name": "punctuation.definition.tag.end.html"
1477
}
1478
},
1479
"end": "(?i)(</)(\\2)\\s*(>)|(/>)|(?=</\\w+)",
1480
"endCaptures": {
1481
"0": {
1482
"name": "meta.tag.object.svg.$2.end.html"
1483
},
1484
"1": {
1485
"name": "punctuation.definition.tag.begin.html"
1486
},
1487
"2": {
1488
"name": "entity.name.tag.html"
1489
},
1490
"3": {
1491
"name": "punctuation.definition.tag.end.html"
1492
},
1493
"4": {
1494
"name": "punctuation.definition.tag.end.html"
1495
}
1496
},
1497
"name": "meta.element.object.svg.$2.html",
1498
"patterns": [
1499
{
1500
"begin": "(?<!>)\\G",
1501
"end": "(?=/>)|>",
1502
"endCaptures": {
1503
"0": {
1504
"name": "punctuation.definition.tag.end.html"
1505
}
1506
},
1507
"name": "meta.tag.object.start.html",
1508
"patterns": [
1509
{
1510
"include": "#attribute"
1511
}
1512
]
1513
},
1514
{
1515
"include": "#tags"
1516
}
1517
]
1518
},
1519
{
1520
"captures": {
1521
"0": {
1522
"name": "meta.tag.other.svg.$2.void.html"
1523
},
1524
"1": {
1525
"name": "punctuation.definition.tag.begin.html"
1526
},
1527
"2": {
1528
"name": "entity.name.tag.html"
1529
},
1530
"3": {
1531
"name": "invalid.deprecated.html"
1532
},
1533
"4": {
1534
"patterns": [
1535
{
1536
"include": "#attribute"
1537
}
1538
]
1539
},
1540
"6": {
1541
"name": "punctuation.definition.tag.end.html"
1542
}
1543
},
1544
"match": "(?i)(<)((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|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
1545
"name": "meta.element.other.svg.$2.html"
1546
},
1547
{
1548
"begin": "(?i)(<)((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|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1549
"beginCaptures": {
1550
"0": {
1551
"name": "meta.tag.other.svg.$2.start.html"
1552
},
1553
"1": {
1554
"name": "punctuation.definition.tag.begin.html"
1555
},
1556
"2": {
1557
"name": "entity.name.tag.html"
1558
},
1559
"3": {
1560
"name": "invalid.deprecated.html"
1561
},
1562
"4": {
1563
"patterns": [
1564
{
1565
"include": "#attribute"
1566
}
1567
]
1568
},
1569
"6": {
1570
"name": "punctuation.definition.tag.end.html"
1571
}
1572
},
1573
"end": "(?i)(</)((\\2))\\s*(>)|(/>)|(?=</\\w+)",
1574
"endCaptures": {
1575
"0": {
1576
"name": "meta.tag.other.svg.$2.end.html"
1577
},
1578
"1": {
1579
"name": "punctuation.definition.tag.begin.html"
1580
},
1581
"2": {
1582
"name": "entity.name.tag.html"
1583
},
1584
"3": {
1585
"name": "invalid.deprecated.html"
1586
},
1587
"4": {
1588
"name": "punctuation.definition.tag.end.html"
1589
},
1590
"5": {
1591
"name": "punctuation.definition.tag.end.html"
1592
}
1593
},
1594
"name": "meta.element.other.svg.$2.html",
1595
"patterns": [
1596
{
1597
"begin": "(?<!>)\\G",
1598
"end": "(?=/>)|>",
1599
"endCaptures": {
1600
"0": {
1601
"name": "punctuation.definition.tag.end.html"
1602
}
1603
},
1604
"name": "meta.tag.other.start.html",
1605
"patterns": [
1606
{
1607
"include": "#attribute"
1608
}
1609
]
1610
},
1611
{
1612
"include": "#tags"
1613
}
1614
]
1615
},
1616
{
1617
"captures": {
1618
"0": {
1619
"name": "meta.tag.other.invalid.void.html"
1620
},
1621
"1": {
1622
"name": "punctuation.definition.tag.begin.html"
1623
},
1624
"2": {
1625
"name": "entity.name.tag.html"
1626
},
1627
"3": {
1628
"name": "invalid.illegal.unrecognized-tag.html"
1629
},
1630
"4": {
1631
"patterns": [
1632
{
1633
"include": "#attribute"
1634
}
1635
]
1636
},
1637
"6": {
1638
"name": "punctuation.definition.tag.end.html"
1639
}
1640
},
1641
"match": "(?i)(<)(([\\w:]+))(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(/>))",
1642
"name": "meta.element.other.invalid.html"
1643
},
1644
{
1645
"begin": "(?i)(<)((\\w[^\\s>]*))(?=\\s|/?>)(?:(([^\"'>]|\"[^\"]*\"|'[^']*')*)(>))?",
1646
"beginCaptures": {
1647
"0": {
1648
"name": "meta.tag.other.invalid.start.html"
1649
},
1650
"1": {
1651
"name": "punctuation.definition.tag.begin.html"
1652
},
1653
"2": {
1654
"name": "entity.name.tag.html"
1655
},
1656
"3": {
1657
"name": "invalid.illegal.unrecognized-tag.html"
1658
},
1659
"4": {
1660
"patterns": [
1661
{
1662
"include": "#attribute"
1663
}
1664
]
1665
},
1666
"6": {
1667
"name": "punctuation.definition.tag.end.html"
1668
}
1669
},
1670
"end": "(?i)(</)((\\2))\\s*(>)|(/>)|(?=</\\w+)",
1671
"endCaptures": {
1672
"0": {
1673
"name": "meta.tag.other.invalid.end.html"
1674
},
1675
"1": {
1676
"name": "punctuation.definition.tag.begin.html"
1677
},
1678
"2": {
1679
"name": "entity.name.tag.html"
1680
},
1681
"3": {
1682
"name": "invalid.illegal.unrecognized-tag.html"
1683
},
1684
"4": {
1685
"name": "punctuation.definition.tag.end.html"
1686
},
1687
"5": {
1688
"name": "punctuation.definition.tag.end.html"
1689
}
1690
},
1691
"name": "meta.element.other.invalid.html",
1692
"patterns": [
1693
{
1694
"begin": "(?<!>)\\G",
1695
"end": "(?=/>)|>",
1696
"endCaptures": {
1697
"0": {
1698
"name": "punctuation.definition.tag.end.html"
1699
}
1700
},
1701
"name": "meta.tag.other.invalid.start.html",
1702
"patterns": [
1703
{
1704
"include": "#attribute"
1705
}
1706
]
1707
},
1708
{
1709
"include": "#tags"
1710
}
1711
]
1712
},
1713
{
1714
"include": "#tags-invalid"
1715
}
1716
]
1717
}
1718
}
1719
},
1720
"tags-invalid": {
1721
"patterns": [
1722
{
1723
"begin": "(</?)((\\w[^\\s>]*))(?<!/)",
1724
"beginCaptures": {
1725
"1": {
1726
"name": "punctuation.definition.tag.begin.html"
1727
},
1728
"2": {
1729
"name": "entity.name.tag.html"
1730
},
1731
"3": {
1732
"name": "invalid.illegal.unrecognized-tag.html"
1733
}
1734
},
1735
"end": "((?: ?/)?>)",
1736
"endCaptures": {
1737
"1": {
1738
"name": "punctuation.definition.tag.end.html"
1739
}
1740
},
1741
"name": "meta.tag.other.$2.html",
1742
"patterns": [
1743
{
1744
"include": "#attribute"
1745
}
1746
]
1747
}
1748
]
1749
},
1750
"tags-valid": {
1751
"patterns": [
1752
{
1753
"begin": "(^[ \\t]+)?(?=<(?i:style)\\b(?!-))",
1754
"beginCaptures": {
1755
"1": {
1756
"name": "punctuation.whitespace.embedded.leading.html"
1757
}
1758
},
1759
"end": "(?!\\G)([ \\t]*$\\n?)?",
1760
"endCaptures": {
1761
"1": {
1762
"name": "punctuation.whitespace.embedded.trailing.html"
1763
}
1764
},
1765
"patterns": [
1766
{
1767
"begin": "(?i)(<)(style)(?=\\s|/?>)",
1768
"beginCaptures": {
1769
"0": {
1770
"name": "meta.tag.metadata.style.start.html"
1771
},
1772
"1": {
1773
"name": "punctuation.definition.tag.begin.html"
1774
},
1775
"2": {
1776
"name": "entity.name.tag.html"
1777
}
1778
},
1779
"end": "(?i)((<)/)(style)\\s*(>)",
1780
"endCaptures": {
1781
"0": {
1782
"name": "meta.tag.metadata.style.end.html"
1783
},
1784
"1": {
1785
"name": "punctuation.definition.tag.begin.html"
1786
},
1787
"2": {
1788
"name": "source.css-ignored-vscode"
1789
},
1790
"3": {
1791
"name": "entity.name.tag.html"
1792
},
1793
"4": {
1794
"name": "punctuation.definition.tag.end.html"
1795
}
1796
},
1797
"name": "meta.embedded.block.html",
1798
"patterns": [
1799
{
1800
"begin": "\\G",
1801
"captures": {
1802
"1": {
1803
"name": "punctuation.definition.tag.end.html"
1804
}
1805
},
1806
"end": "(>)",
1807
"name": "meta.tag.metadata.style.start.html",
1808
"patterns": [
1809
{
1810
"include": "#attribute"
1811
}
1812
]
1813
},
1814
{
1815
"begin": "(?!\\G)",
1816
"end": "(?=</(?i:style))",
1817
"name": "source.css",
1818
"patterns": [
1819
{
1820
"include": "source.css"
1821
}
1822
]
1823
}
1824
]
1825
}
1826
]
1827
},
1828
{
1829
"begin": "(^[ \\t]+)?(?=<(?i:script)\\b(?!-))",
1830
"beginCaptures": {
1831
"1": {
1832
"name": "punctuation.whitespace.embedded.leading.html"
1833
}
1834
},
1835
"end": "(?!\\G)([ \\t]*$\\n?)?",
1836
"endCaptures": {
1837
"1": {
1838
"name": "punctuation.whitespace.embedded.trailing.html"
1839
}
1840
},
1841
"patterns": [
1842
{
1843
"begin": "(<)((?i:script))\\b",
1844
"beginCaptures": {
1845
"0": {
1846
"name": "meta.tag.metadata.script.start.html"
1847
},
1848
"1": {
1849
"name": "punctuation.definition.tag.begin.html"
1850
},
1851
"2": {
1852
"name": "entity.name.tag.html"
1853
}
1854
},
1855
"end": "(/)((?i:script))(>)",
1856
"endCaptures": {
1857
"0": {
1858
"name": "meta.tag.metadata.script.end.html"
1859
},
1860
"1": {
1861
"name": "punctuation.definition.tag.begin.html"
1862
},
1863
"2": {
1864
"name": "entity.name.tag.html"
1865
},
1866
"3": {
1867
"name": "punctuation.definition.tag.end.html"
1868
}
1869
},
1870
"name": "meta.embedded.block.html",
1871
"patterns": [
1872
{
1873
"begin": "\\G",
1874
"end": "(?=/)",
1875
"patterns": [
1876
{
1877
"begin": "(>)",
1878
"beginCaptures": {
1879
"0": {
1880
"name": "meta.tag.metadata.script.start.html"
1881
},
1882
"1": {
1883
"name": "punctuation.definition.tag.end.html"
1884
}
1885
},
1886
"end": "((<))(?=/(?i:script))",
1887
"endCaptures": {
1888
"0": {
1889
"name": "meta.tag.metadata.script.end.html"
1890
},
1891
"1": {
1892
"name": "punctuation.definition.tag.begin.html"
1893
},
1894
"2": {
1895
"name": "source.js-ignored-vscode"
1896
}
1897
},
1898
"patterns": [
1899
{
1900
"begin": "\\G",
1901
"end": "(?=</(?i:script))",
1902
"name": "source.js",
1903
"patterns": [
1904
{
1905
"begin": "(^[ \\t]+)?(?=//)",
1906
"beginCaptures": {
1907
"1": {
1908
"name": "punctuation.whitespace.comment.leading.js"
1909
}
1910
},
1911
"end": "(?!\\G)",
1912
"patterns": [
1913
{
1914
"begin": "//",
1915
"beginCaptures": {
1916
"0": {
1917
"name": "punctuation.definition.comment.js"
1918
}
1919
},
1920
"end": "(?=</script)|\\n",
1921
"name": "comment.line.double-slash.js"
1922
}
1923
]
1924
},
1925
{
1926
"begin": "/\\*",
1927
"captures": {
1928
"0": {
1929
"name": "punctuation.definition.comment.js"
1930
}
1931
},
1932
"end": "\\*/|(?=</script)",
1933
"name": "comment.block.js"
1934
},
1935
{
1936
"include": "source.js"
1937
}
1938
]
1939
}
1940
]
1941
},
1942
{
1943
"begin": "\\G",
1944
"end": "(?ix:\n\t\t\t\t\t\t\t\t\t\t\t\t(?=>\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\"'>]\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)",
1945
"name": "meta.tag.metadata.script.start.html",
1946
"patterns": [
1947
{
1948
"include": "#attribute"
1949
}
1950
]
1951
},
1952
{
1953
"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\"'>]\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)",
1954
"end": "((<))(?=/(?i:script))",
1955
"endCaptures": {
1956
"0": {
1957
"name": "meta.tag.metadata.script.end.html"
1958
},
1959
"1": {
1960
"name": "punctuation.definition.tag.begin.html"
1961
},
1962
"2": {
1963
"name": "text.html.basic"
1964
}
1965
},
1966
"patterns": [
1967
{
1968
"begin": "\\G",
1969
"end": "(>)",
1970
"endCaptures": {
1971
"1": {
1972
"name": "punctuation.definition.tag.end.html"
1973
}
1974
},
1975
"name": "meta.tag.metadata.script.start.html",
1976
"patterns": [
1977
{
1978
"include": "#attribute"
1979
}
1980
]
1981
},
1982
{
1983
"begin": "(?!\\G)",
1984
"end": "(?=</(?i:script))",
1985
"name": "text.html.basic",
1986
"patterns": [
1987
{
1988
"include": "text.html.basic"
1989
}
1990
]
1991
}
1992
]
1993
},
1994
{
1995
"begin": "(?=(?i:type))",
1996
"end": "(<)(?=/(?i:script))",
1997
"endCaptures": {
1998
"0": {
1999
"name": "meta.tag.metadata.script.end.html"
2000
},
2001
"1": {
2002
"name": "punctuation.definition.tag.begin.html"
2003
}
2004
},
2005
"patterns": [
2006
{
2007
"begin": "\\G",
2008
"end": "(>)",
2009
"endCaptures": {
2010
"1": {
2011
"name": "punctuation.definition.tag.end.html"
2012
}
2013
},
2014
"name": "meta.tag.metadata.script.start.html",
2015
"patterns": [
2016
{
2017
"include": "#attribute"
2018
}
2019
]
2020
},
2021
{
2022
"begin": "(?!\\G)",
2023
"end": "(?=</(?i:script))",
2024
"name": "source.unknown"
2025
}
2026
]
2027
}
2028
]
2029
}
2030
]
2031
}
2032
]
2033
},
2034
{
2035
"begin": "(?i)(<)(base|link|meta)(?=\\s|/?>)",
2036
"beginCaptures": {
2037
"1": {
2038
"name": "punctuation.definition.tag.begin.html"
2039
},
2040
"2": {
2041
"name": "entity.name.tag.html"
2042
}
2043
},
2044
"end": "/?>",
2045
"endCaptures": {
2046
"0": {
2047
"name": "punctuation.definition.tag.end.html"
2048
}
2049
},
2050
"name": "meta.tag.metadata.$2.void.html",
2051
"patterns": [
2052
{
2053
"include": "#attribute"
2054
}
2055
]
2056
},
2057
{
2058
"begin": "(?i)(<)(noscript|title)(?=\\s|/?>)",
2059
"beginCaptures": {
2060
"1": {
2061
"name": "punctuation.definition.tag.begin.html"
2062
},
2063
"2": {
2064
"name": "entity.name.tag.html"
2065
}
2066
},
2067
"end": ">",
2068
"endCaptures": {
2069
"0": {
2070
"name": "punctuation.definition.tag.end.html"
2071
}
2072
},
2073
"name": "meta.tag.metadata.$2.start.html",
2074
"patterns": [
2075
{
2076
"include": "#attribute"
2077
}
2078
]
2079
},
2080
{
2081
"begin": "(?i)(</)(noscript|title)(?=\\s|/?>)",
2082
"beginCaptures": {
2083
"1": {
2084
"name": "punctuation.definition.tag.begin.html"
2085
},
2086
"2": {
2087
"name": "entity.name.tag.html"
2088
}
2089
},
2090
"end": ">",
2091
"endCaptures": {
2092
"0": {
2093
"name": "punctuation.definition.tag.end.html"
2094
}
2095
},
2096
"name": "meta.tag.metadata.$2.end.html",
2097
"patterns": [
2098
{
2099
"include": "#attribute"
2100
}
2101
]
2102
},
2103
{
2104
"begin": "(?i)(<)(col|hr|input)(?=\\s|/?>)",
2105
"beginCaptures": {
2106
"1": {
2107
"name": "punctuation.definition.tag.begin.html"
2108
},
2109
"2": {
2110
"name": "entity.name.tag.html"
2111
}
2112
},
2113
"end": "/?>",
2114
"endCaptures": {
2115
"0": {
2116
"name": "punctuation.definition.tag.end.html"
2117
}
2118
},
2119
"name": "meta.tag.structure.$2.void.html",
2120
"patterns": [
2121
{
2122
"include": "#attribute"
2123
}
2124
]
2125
},
2126
{
2127
"begin": "(?i)(<)(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|/?>)",
2128
"beginCaptures": {
2129
"1": {
2130
"name": "punctuation.definition.tag.begin.html"
2131
},
2132
"2": {
2133
"name": "entity.name.tag.html"
2134
}
2135
},
2136
"end": ">",
2137
"endCaptures": {
2138
"0": {
2139
"name": "punctuation.definition.tag.end.html"
2140
}
2141
},
2142
"name": "meta.tag.structure.$2.start.html",
2143
"patterns": [
2144
{
2145
"include": "#attribute"
2146
}
2147
]
2148
},
2149
{
2150
"begin": "(?i)(</)(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|/?>)",
2151
"beginCaptures": {
2152
"1": {
2153
"name": "punctuation.definition.tag.begin.html"
2154
},
2155
"2": {
2156
"name": "entity.name.tag.html"
2157
}
2158
},
2159
"end": ">",
2160
"endCaptures": {
2161
"0": {
2162
"name": "punctuation.definition.tag.end.html"
2163
}
2164
},
2165
"name": "meta.tag.structure.$2.end.html",
2166
"patterns": [
2167
{
2168
"include": "#attribute"
2169
}
2170
]
2171
},
2172
{
2173
"begin": "(?i)(<)(area|br|wbr)(?=\\s|/?>)",
2174
"beginCaptures": {
2175
"1": {
2176
"name": "punctuation.definition.tag.begin.html"
2177
},
2178
"2": {
2179
"name": "entity.name.tag.html"
2180
}
2181
},
2182
"end": "/?>",
2183
"endCaptures": {
2184
"0": {
2185
"name": "punctuation.definition.tag.end.html"
2186
}
2187
},
2188
"name": "meta.tag.inline.$2.void.html",
2189
"patterns": [
2190
{
2191
"include": "#attribute"
2192
}
2193
]
2194
},
2195
{
2196
"begin": "(?i)(<)(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|/?>)",
2197
"beginCaptures": {
2198
"1": {
2199
"name": "punctuation.definition.tag.begin.html"
2200
},
2201
"2": {
2202
"name": "entity.name.tag.html"
2203
}
2204
},
2205
"end": ">",
2206
"endCaptures": {
2207
"0": {
2208
"name": "punctuation.definition.tag.end.html"
2209
}
2210
},
2211
"name": "meta.tag.inline.$2.start.html",
2212
"patterns": [
2213
{
2214
"include": "#attribute"
2215
}
2216
]
2217
},
2218
{
2219
"begin": "(?i)(</)(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|/?>)",
2220
"beginCaptures": {
2221
"1": {
2222
"name": "punctuation.definition.tag.begin.html"
2223
},
2224
"2": {
2225
"name": "entity.name.tag.html"
2226
}
2227
},
2228
"end": ">",
2229
"endCaptures": {
2230
"0": {
2231
"name": "punctuation.definition.tag.end.html"
2232
}
2233
},
2234
"name": "meta.tag.inline.$2.end.html",
2235
"patterns": [
2236
{
2237
"include": "#attribute"
2238
}
2239
]
2240
},
2241
{
2242
"begin": "(?i)(<)(embed|img|param|source|track)(?=\\s|/?>)",
2243
"beginCaptures": {
2244
"1": {
2245
"name": "punctuation.definition.tag.begin.html"
2246
},
2247
"2": {
2248
"name": "entity.name.tag.html"
2249
}
2250
},
2251
"end": "/?>",
2252
"endCaptures": {
2253
"0": {
2254
"name": "punctuation.definition.tag.end.html"
2255
}
2256
},
2257
"name": "meta.tag.object.$2.void.html",
2258
"patterns": [
2259
{
2260
"include": "#attribute"
2261
}
2262
]
2263
},
2264
{
2265
"begin": "(?i)(<)(audio|canvas|iframe|object|picture|video)(?=\\s|/?>)",
2266
"beginCaptures": {
2267
"1": {
2268
"name": "punctuation.definition.tag.begin.html"
2269
},
2270
"2": {
2271
"name": "entity.name.tag.html"
2272
}
2273
},
2274
"end": ">",
2275
"endCaptures": {
2276
"0": {
2277
"name": "punctuation.definition.tag.end.html"
2278
}
2279
},
2280
"name": "meta.tag.object.$2.start.html",
2281
"patterns": [
2282
{
2283
"include": "#attribute"
2284
}
2285
]
2286
},
2287
{
2288
"begin": "(?i)(</)(audio|canvas|iframe|object|picture|video)(?=\\s|/?>)",
2289
"beginCaptures": {
2290
"1": {
2291
"name": "punctuation.definition.tag.begin.html"
2292
},
2293
"2": {
2294
"name": "entity.name.tag.html"
2295
}
2296
},
2297
"end": ">",
2298
"endCaptures": {
2299
"0": {
2300
"name": "punctuation.definition.tag.end.html"
2301
}
2302
},
2303
"name": "meta.tag.object.$2.end.html",
2304
"patterns": [
2305
{
2306
"include": "#attribute"
2307
}
2308
]
2309
},
2310
{
2311
"begin": "(?i)(<)((basefont|isindex))(?=\\s|/?>)",
2312
"beginCaptures": {
2313
"1": {
2314
"name": "punctuation.definition.tag.begin.html"
2315
},
2316
"2": {
2317
"name": "entity.name.tag.html"
2318
},
2319
"3": {
2320
"name": "invalid.deprecated.html"
2321
}
2322
},
2323
"end": "/?>",
2324
"endCaptures": {
2325
"0": {
2326
"name": "punctuation.definition.tag.end.html"
2327
}
2328
},
2329
"name": "meta.tag.metadata.$2.void.html",
2330
"patterns": [
2331
{
2332
"include": "#attribute"
2333
}
2334
]
2335
},
2336
{
2337
"begin": "(?i)(<)((center|frameset|noembed|noframes))(?=\\s|/?>)",
2338
"beginCaptures": {
2339
"1": {
2340
"name": "punctuation.definition.tag.begin.html"
2341
},
2342
"2": {
2343
"name": "entity.name.tag.html"
2344
},
2345
"3": {
2346
"name": "invalid.deprecated.html"
2347
}
2348
},
2349
"end": ">",
2350
"endCaptures": {
2351
"0": {
2352
"name": "punctuation.definition.tag.end.html"
2353
}
2354
},
2355
"name": "meta.tag.structure.$2.start.html",
2356
"patterns": [
2357
{
2358
"include": "#attribute"
2359
}
2360
]
2361
},
2362
{
2363
"begin": "(?i)(</)((center|frameset|noembed|noframes))(?=\\s|/?>)",
2364
"beginCaptures": {
2365
"1": {
2366
"name": "punctuation.definition.tag.begin.html"
2367
},
2368
"2": {
2369
"name": "entity.name.tag.html"
2370
},
2371
"3": {
2372
"name": "invalid.deprecated.html"
2373
}
2374
},
2375
"end": ">",
2376
"endCaptures": {
2377
"0": {
2378
"name": "punctuation.definition.tag.end.html"
2379
}
2380
},
2381
"name": "meta.tag.structure.$2.end.html",
2382
"patterns": [
2383
{
2384
"include": "#attribute"
2385
}
2386
]
2387
},
2388
{
2389
"begin": "(?i)(<)((acronym|big|blink|font|strike|tt|xmp))(?=\\s|/?>)",
2390
"beginCaptures": {
2391
"1": {
2392
"name": "punctuation.definition.tag.begin.html"
2393
},
2394
"2": {
2395
"name": "entity.name.tag.html"
2396
},
2397
"3": {
2398
"name": "invalid.deprecated.html"
2399
}
2400
},
2401
"end": ">",
2402
"endCaptures": {
2403
"0": {
2404
"name": "punctuation.definition.tag.end.html"
2405
}
2406
},
2407
"name": "meta.tag.inline.$2.start.html",
2408
"patterns": [
2409
{
2410
"include": "#attribute"
2411
}
2412
]
2413
},
2414
{
2415
"begin": "(?i)(</)((acronym|big|blink|font|strike|tt|xmp))(?=\\s|/?>)",
2416
"beginCaptures": {
2417
"1": {
2418
"name": "punctuation.definition.tag.begin.html"
2419
},
2420
"2": {
2421
"name": "entity.name.tag.html"
2422
},
2423
"3": {
2424
"name": "invalid.deprecated.html"
2425
}
2426
},
2427
"end": ">",
2428
"endCaptures": {
2429
"0": {
2430
"name": "punctuation.definition.tag.end.html"
2431
}
2432
},
2433
"name": "meta.tag.inline.$2.end.html",
2434
"patterns": [
2435
{
2436
"include": "#attribute"
2437
}
2438
]
2439
},
2440
{
2441
"begin": "(?i)(<)((frame))(?=\\s|/?>)",
2442
"beginCaptures": {
2443
"1": {
2444
"name": "punctuation.definition.tag.begin.html"
2445
},
2446
"2": {
2447
"name": "entity.name.tag.html"
2448
},
2449
"3": {
2450
"name": "invalid.deprecated.html"
2451
}
2452
},
2453
"end": "/?>",
2454
"endCaptures": {
2455
"0": {
2456
"name": "punctuation.definition.tag.end.html"
2457
}
2458
},
2459
"name": "meta.tag.object.$2.void.html",
2460
"patterns": [
2461
{
2462
"include": "#attribute"
2463
}
2464
]
2465
},
2466
{
2467
"begin": "(?i)(<)((applet))(?=\\s|/?>)",
2468
"beginCaptures": {
2469
"1": {
2470
"name": "punctuation.definition.tag.begin.html"
2471
},
2472
"2": {
2473
"name": "entity.name.tag.html"
2474
},
2475
"3": {
2476
"name": "invalid.deprecated.html"
2477
}
2478
},
2479
"end": ">",
2480
"endCaptures": {
2481
"0": {
2482
"name": "punctuation.definition.tag.end.html"
2483
}
2484
},
2485
"name": "meta.tag.object.$2.start.html",
2486
"patterns": [
2487
{
2488
"include": "#attribute"
2489
}
2490
]
2491
},
2492
{
2493
"begin": "(?i)(</)((applet))(?=\\s|/?>)",
2494
"beginCaptures": {
2495
"1": {
2496
"name": "punctuation.definition.tag.begin.html"
2497
},
2498
"2": {
2499
"name": "entity.name.tag.html"
2500
},
2501
"3": {
2502
"name": "invalid.deprecated.html"
2503
}
2504
},
2505
"end": ">",
2506
"endCaptures": {
2507
"0": {
2508
"name": "punctuation.definition.tag.end.html"
2509
}
2510
},
2511
"name": "meta.tag.object.$2.end.html",
2512
"patterns": [
2513
{
2514
"include": "#attribute"
2515
}
2516
]
2517
},
2518
{
2519
"begin": "(?i)(<)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\s|/?>)",
2520
"beginCaptures": {
2521
"1": {
2522
"name": "punctuation.definition.tag.begin.html"
2523
},
2524
"2": {
2525
"name": "entity.name.tag.html"
2526
},
2527
"3": {
2528
"name": "invalid.illegal.no-longer-supported.html"
2529
}
2530
},
2531
"end": ">",
2532
"endCaptures": {
2533
"0": {
2534
"name": "punctuation.definition.tag.end.html"
2535
}
2536
},
2537
"name": "meta.tag.other.$2.start.html",
2538
"patterns": [
2539
{
2540
"include": "#attribute"
2541
}
2542
]
2543
},
2544
{
2545
"begin": "(?i)(</)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\s|/?>)",
2546
"beginCaptures": {
2547
"1": {
2548
"name": "punctuation.definition.tag.begin.html"
2549
},
2550
"2": {
2551
"name": "entity.name.tag.html"
2552
},
2553
"3": {
2554
"name": "invalid.illegal.no-longer-supported.html"
2555
}
2556
},
2557
"end": ">",
2558
"endCaptures": {
2559
"0": {
2560
"name": "punctuation.definition.tag.end.html"
2561
}
2562
},
2563
"name": "meta.tag.other.$2.end.html",
2564
"patterns": [
2565
{
2566
"include": "#attribute"
2567
}
2568
]
2569
},
2570
{
2571
"include": "#math"
2572
},
2573
{
2574
"include": "#svg"
2575
},
2576
{
2577
"begin": "(<)([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|/?>)",
2578
"beginCaptures": {
2579
"1": {
2580
"name": "punctuation.definition.tag.begin.html"
2581
},
2582
"2": {
2583
"name": "entity.name.tag.html"
2584
}
2585
},
2586
"end": "/?>",
2587
"endCaptures": {
2588
"0": {
2589
"name": "punctuation.definition.tag.end.html"
2590
}
2591
},
2592
"name": "meta.tag.custom.start.html",
2593
"patterns": [
2594
{
2595
"include": "#attribute"
2596
}
2597
]
2598
},
2599
{
2600
"begin": "(</)([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|/?>)",
2601
"beginCaptures": {
2602
"1": {
2603
"name": "punctuation.definition.tag.begin.html"
2604
},
2605
"2": {
2606
"name": "entity.name.tag.html"
2607
}
2608
},
2609
"end": ">",
2610
"endCaptures": {
2611
"0": {
2612
"name": "punctuation.definition.tag.end.html"
2613
}
2614
},
2615
"name": "meta.tag.custom.end.html",
2616
"patterns": [
2617
{
2618
"include": "#attribute"
2619
}
2620
]
2621
}
2622
]
2623
},
2624
"xml-processing": {
2625
"begin": "(<\\?)(xml)",
2626
"captures": {
2627
"1": {
2628
"name": "punctuation.definition.tag.html"
2629
},
2630
"2": {
2631
"name": "entity.name.tag.html"
2632
}
2633
},
2634
"end": "(\\?>)",
2635
"name": "meta.tag.metadata.processing.xml.html",
2636
"patterns": [
2637
{
2638
"include": "#attribute"
2639
}
2640
]
2641
}
2642
}
2643
}
2644