tm-grammars 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/LICENSE +22 -0
  2. package/NOTICE +6565 -0
  3. package/README.md +211 -0
  4. package/grammars/abap.json +380 -0
  5. package/grammars/actionscript-3.json +951 -0
  6. package/grammars/ada.json +3874 -0
  7. package/grammars/apache.json +562 -0
  8. package/grammars/apex.json +3203 -0
  9. package/grammars/apl.json +1479 -0
  10. package/grammars/applescript.json +1406 -0
  11. package/grammars/ara.json +428 -0
  12. package/grammars/asm.json +1741 -0
  13. package/grammars/astro.json +776 -0
  14. package/grammars/awk.json +388 -0
  15. package/grammars/ballerina.json +3768 -0
  16. package/grammars/bat.json +783 -0
  17. package/grammars/beancount.json +831 -0
  18. package/grammars/berry.json +172 -0
  19. package/grammars/bibtex.json +315 -0
  20. package/grammars/bicep.json +239 -0
  21. package/grammars/blade.json +3870 -0
  22. package/grammars/c.json +3552 -0
  23. package/grammars/cadence.json +738 -0
  24. package/grammars/clarity.json +877 -0
  25. package/grammars/clojure.json +426 -0
  26. package/grammars/cmake.json +143 -0
  27. package/grammars/cobol.json +1124 -0
  28. package/grammars/codeql.json +1540 -0
  29. package/grammars/coffee.json +1311 -0
  30. package/grammars/cpp-macro.json +9498 -0
  31. package/grammars/cpp.json +16635 -0
  32. package/grammars/crystal.json +1866 -0
  33. package/grammars/csharp.json +5722 -0
  34. package/grammars/css.json +1860 -0
  35. package/grammars/csv.json +46 -0
  36. package/grammars/cue.json +1128 -0
  37. package/grammars/cypher.json +353 -0
  38. package/grammars/d.json +3185 -0
  39. package/grammars/dart.json +522 -0
  40. package/grammars/dax.json +185 -0
  41. package/grammars/diff.json +155 -0
  42. package/grammars/docker.json +97 -0
  43. package/grammars/dream-maker.json +640 -0
  44. package/grammars/elixir.json +1014 -0
  45. package/grammars/elm.json +751 -0
  46. package/grammars/erb.json +156 -0
  47. package/grammars/erlang.json +1757 -0
  48. package/grammars/fish.json +189 -0
  49. package/grammars/fsharp.json +1831 -0
  50. package/grammars/gdresource.json +290 -0
  51. package/grammars/gdscript.json +969 -0
  52. package/grammars/gdshader.json +405 -0
  53. package/grammars/gherkin.json +133 -0
  54. package/grammars/git-commit.json +85 -0
  55. package/grammars/git-rebase.json +56 -0
  56. package/grammars/glimmer-js.json +98 -0
  57. package/grammars/glimmer-ts.json +98 -0
  58. package/grammars/glsl.json +57 -0
  59. package/grammars/gnuplot.json +892 -0
  60. package/grammars/go.json +1012 -0
  61. package/grammars/graphql.json +1295 -0
  62. package/grammars/groovy.json +1378 -0
  63. package/grammars/hack.json +2650 -0
  64. package/grammars/haml.json +598 -0
  65. package/grammars/handlebars.json +848 -0
  66. package/grammars/haskell.json +2431 -0
  67. package/grammars/hcl.json +787 -0
  68. package/grammars/hjson.json +821 -0
  69. package/grammars/hlsl.json +212 -0
  70. package/grammars/html.json +93 -0
  71. package/grammars/imba.json +2696 -0
  72. package/grammars/ini.json +108 -0
  73. package/grammars/java.json +1885 -0
  74. package/grammars/javascript.json +5984 -0
  75. package/grammars/jinja-html.json +16 -0
  76. package/grammars/jinja.json +345 -0
  77. package/grammars/jison.json +715 -0
  78. package/grammars/jsdoc.json +21 -0
  79. package/grammars/json.json +208 -0
  80. package/grammars/json5.json +244 -0
  81. package/grammars/jsonc.json +208 -0
  82. package/grammars/jsonl.json +208 -0
  83. package/grammars/jsonnet.json +211 -0
  84. package/grammars/jssm.json +159 -0
  85. package/grammars/jsx.json +5984 -0
  86. package/grammars/julia.json +1061 -0
  87. package/grammars/kotlin.json +580 -0
  88. package/grammars/kusto.json +687 -0
  89. package/grammars/latex.json +2395 -0
  90. package/grammars/less.json +5012 -0
  91. package/grammars/liquid.json +990 -0
  92. package/grammars/lisp.json +121 -0
  93. package/grammars/logo.json +55 -0
  94. package/grammars/lua.json +956 -0
  95. package/grammars/make.json +629 -0
  96. package/grammars/markdown.json +3066 -0
  97. package/grammars/marko.json +1344 -0
  98. package/grammars/matlab.json +1131 -0
  99. package/grammars/mdc.json +571 -0
  100. package/grammars/mdx.json +5629 -0
  101. package/grammars/mermaid.json +1382 -0
  102. package/grammars/mojo.json +4153 -0
  103. package/grammars/narrat.json +227 -0
  104. package/grammars/nextflow.json +298 -0
  105. package/grammars/nginx.json +2121 -0
  106. package/grammars/nim.json +1522 -0
  107. package/grammars/nix.json +1200 -0
  108. package/grammars/nushell.json +1047 -0
  109. package/grammars/objective-c.json +3750 -0
  110. package/grammars/objective-cpp.json +7242 -0
  111. package/grammars/ocaml.json +2967 -0
  112. package/grammars/pascal.json +154 -0
  113. package/grammars/perl.json +2971 -0
  114. package/grammars/php.json +4024 -0
  115. package/grammars/plsql.json +241 -0
  116. package/grammars/postcss.json +377 -0
  117. package/grammars/powerquery.json +349 -0
  118. package/grammars/powershell.json +1024 -0
  119. package/grammars/prisma.json +443 -0
  120. package/grammars/prolog.json +298 -0
  121. package/grammars/proto.json +507 -0
  122. package/grammars/pug.json +1033 -0
  123. package/grammars/puppet.json +777 -0
  124. package/grammars/purescript.json +871 -0
  125. package/grammars/python.json +4208 -0
  126. package/grammars/r.json +637 -0
  127. package/grammars/raku.json +310 -0
  128. package/grammars/razor.json +1813 -0
  129. package/grammars/reg.json +136 -0
  130. package/grammars/rel.json +200 -0
  131. package/grammars/riscv.json +298 -0
  132. package/grammars/rst.json +734 -0
  133. package/grammars/ruby.json +2769 -0
  134. package/grammars/rust.json +1171 -0
  135. package/grammars/sas.json +302 -0
  136. package/grammars/sass.json +618 -0
  137. package/grammars/scala.json +1313 -0
  138. package/grammars/scheme.json +384 -0
  139. package/grammars/scss.json +1874 -0
  140. package/grammars/shaderlab.json +199 -0
  141. package/grammars/shellscript.json +2025 -0
  142. package/grammars/shellsession.json +33 -0
  143. package/grammars/smalltalk.json +235 -0
  144. package/grammars/solidity.json +1210 -0
  145. package/grammars/sparql.json +45 -0
  146. package/grammars/splunk.json +91 -0
  147. package/grammars/sql.json +631 -0
  148. package/grammars/ssh-config.json +88 -0
  149. package/grammars/stata.json +3050 -0
  150. package/grammars/stylus.json +1208 -0
  151. package/grammars/svelte.json +1171 -0
  152. package/grammars/swift.json +4203 -0
  153. package/grammars/system-verilog.json +1063 -0
  154. package/grammars/tasl.json +292 -0
  155. package/grammars/tcl.json +291 -0
  156. package/grammars/tex.json +281 -0
  157. package/grammars/toml.json +431 -0
  158. package/grammars/tsx.json +5984 -0
  159. package/grammars/turtle.json +261 -0
  160. package/grammars/twig.json +1394 -0
  161. package/grammars/typescript.json +5735 -0
  162. package/grammars/v.json +1001 -0
  163. package/grammars/vb.json +232 -0
  164. package/grammars/verilog.json +305 -0
  165. package/grammars/vhdl.json +1484 -0
  166. package/grammars/viml.json +445 -0
  167. package/grammars/vue-html.json +559 -0
  168. package/grammars/vue.json +1237 -0
  169. package/grammars/vyper.json +5415 -0
  170. package/grammars/wasm.json +831 -0
  171. package/grammars/wenyan.json +129 -0
  172. package/grammars/wgsl.json +391 -0
  173. package/grammars/wolfram.json +2370 -0
  174. package/grammars/xml.json +382 -0
  175. package/grammars/xsl.json +89 -0
  176. package/grammars/yaml.json +616 -0
  177. package/grammars/zenscript.json +257 -0
  178. package/grammars/zig.json +312 -0
  179. package/index.d.ts +18 -0
  180. package/index.js +2165 -0
  181. package/package.json +46 -0
@@ -0,0 +1,776 @@
1
+ {
2
+ "displayName": "Astro",
3
+ "fileTypes": [
4
+ "astro"
5
+ ],
6
+ "injections": {
7
+ "L:(meta.script.astro) (meta.lang.js | meta.lang.javascript | meta.lang.partytown | meta.lang.node) - (meta source)": {
8
+ "patterns": [
9
+ {
10
+ "begin": "(?<=>)(?!</)",
11
+ "contentName": "source.js",
12
+ "end": "(?=</)",
13
+ "name": "meta.embedded.block.astro",
14
+ "patterns": [
15
+ {
16
+ "include": "source.js"
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ },
22
+ "L:(meta.script.astro) (meta.lang.json) - (meta source)": {
23
+ "patterns": [
24
+ {
25
+ "begin": "(?<=>)(?!</)",
26
+ "contentName": "source.json",
27
+ "end": "(?=</)",
28
+ "name": "meta.embedded.block.astro",
29
+ "patterns": [
30
+ {
31
+ "include": "source.json"
32
+ }
33
+ ]
34
+ }
35
+ ]
36
+ },
37
+ "L:(meta.script.astro) (meta.lang.ts | meta.lang.typescript) - (meta source)": {
38
+ "patterns": [
39
+ {
40
+ "begin": "(?<=>)(?!</)",
41
+ "contentName": "source.ts",
42
+ "end": "(?=</)",
43
+ "name": "meta.embedded.block.astro",
44
+ "patterns": [
45
+ {
46
+ "include": "source.ts"
47
+ }
48
+ ]
49
+ }
50
+ ]
51
+ },
52
+ "L:meta.script.astro - meta.lang - (meta source)": {
53
+ "patterns": [
54
+ {
55
+ "begin": "(?<=>)(?!</)",
56
+ "contentName": "source.js",
57
+ "end": "(?=</)",
58
+ "name": "meta.embedded.block.astro",
59
+ "patterns": [
60
+ {
61
+ "include": "source.js"
62
+ }
63
+ ]
64
+ }
65
+ ]
66
+ },
67
+ "L:meta.style.astro - meta.lang - (meta source)": {
68
+ "patterns": [
69
+ {
70
+ "begin": "(?<=>)(?!</)",
71
+ "contentName": "source.css",
72
+ "end": "(?=</)",
73
+ "name": "meta.embedded.block.astro",
74
+ "patterns": [
75
+ {
76
+ "include": "source.css"
77
+ }
78
+ ]
79
+ }
80
+ ]
81
+ },
82
+ "L:meta.style.astro meta.lang.css - (meta source)": {
83
+ "patterns": [
84
+ {
85
+ "begin": "(?<=>)(?!</)",
86
+ "contentName": "source.css",
87
+ "end": "(?=</)",
88
+ "name": "meta.embedded.block.astro",
89
+ "patterns": [
90
+ {
91
+ "include": "source.css"
92
+ }
93
+ ]
94
+ }
95
+ ]
96
+ },
97
+ "L:meta.style.astro meta.lang.less - (meta source)": {
98
+ "patterns": [
99
+ {
100
+ "begin": "(?<=>)(?!</)",
101
+ "contentName": "source.css.less",
102
+ "end": "(?=</)",
103
+ "name": "meta.embedded.block.astro",
104
+ "patterns": [
105
+ {
106
+ "include": "source.css.less"
107
+ }
108
+ ]
109
+ }
110
+ ]
111
+ },
112
+ "L:meta.style.astro meta.lang.postcss - (meta source)": {
113
+ "patterns": [
114
+ {
115
+ "begin": "(?<=>)(?!</)",
116
+ "contentName": "source.css.postcss",
117
+ "end": "(?=</)",
118
+ "name": "meta.embedded.block.astro",
119
+ "patterns": [
120
+ {
121
+ "include": "source.css.postcss"
122
+ }
123
+ ]
124
+ }
125
+ ]
126
+ },
127
+ "L:meta.style.astro meta.lang.sass - (meta source)": {
128
+ "patterns": [
129
+ {
130
+ "begin": "(?<=>)(?!</)",
131
+ "contentName": "source.sass",
132
+ "end": "(?=</)",
133
+ "name": "meta.embedded.block.astro",
134
+ "patterns": [
135
+ {
136
+ "include": "source.sass"
137
+ }
138
+ ]
139
+ }
140
+ ]
141
+ },
142
+ "L:meta.style.astro meta.lang.scss - (meta source)": {
143
+ "patterns": [
144
+ {
145
+ "begin": "(?<=>)(?!</)",
146
+ "contentName": "source.css.scss",
147
+ "end": "(?=</)",
148
+ "name": "meta.embedded.block.astro",
149
+ "patterns": [
150
+ {
151
+ "include": "source.css.scss"
152
+ }
153
+ ]
154
+ }
155
+ ]
156
+ },
157
+ "L:meta.style.astro meta.lang.stylus - (meta source)": {
158
+ "patterns": [
159
+ {
160
+ "begin": "(?<=>)(?!</)",
161
+ "contentName": "source.stylus",
162
+ "end": "(?=</)",
163
+ "name": "meta.embedded.block.astro",
164
+ "patterns": [
165
+ {
166
+ "include": "source.stylus"
167
+ }
168
+ ]
169
+ }
170
+ ]
171
+ }
172
+ },
173
+ "name": "astro",
174
+ "patterns": [
175
+ {
176
+ "include": "#scope"
177
+ },
178
+ {
179
+ "include": "#frontmatter"
180
+ }
181
+ ],
182
+ "repository": {
183
+ "attributes": {
184
+ "patterns": [
185
+ {
186
+ "include": "#attributes-events"
187
+ },
188
+ {
189
+ "include": "#attributes-keyvalue"
190
+ },
191
+ {
192
+ "include": "#attributes-interpolated"
193
+ }
194
+ ]
195
+ },
196
+ "attributes-events": {
197
+ "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:-])",
198
+ "beginCaptures": {
199
+ "0": {
200
+ "patterns": [
201
+ {
202
+ "match": ".*",
203
+ "name": "entity.other.attribute-name.astro"
204
+ }
205
+ ]
206
+ }
207
+ },
208
+ "end": "(?=\\s*+[^=\\s])",
209
+ "name": "meta.attribute.$1.astro",
210
+ "patterns": [
211
+ {
212
+ "begin": "=",
213
+ "beginCaptures": {
214
+ "0": {
215
+ "name": "punctuation.separator.key-value.astro"
216
+ }
217
+ },
218
+ "end": "(?<=[^\\s=])(?!\\s*=)|(?=/?>)",
219
+ "patterns": [
220
+ {
221
+ "begin": "(?=[^\\s=<>`/]|/(?!>))",
222
+ "end": "(?!\\G)",
223
+ "name": "meta.embedded.line.js",
224
+ "patterns": [
225
+ {
226
+ "captures": {
227
+ "0": {
228
+ "name": "source.js"
229
+ },
230
+ "1": {
231
+ "patterns": [
232
+ {
233
+ "include": "source.js"
234
+ }
235
+ ]
236
+ }
237
+ },
238
+ "match": "(([^\\s\\\"'=<>`/]|/(?!>))+)",
239
+ "name": "string.unquoted.astro"
240
+ },
241
+ {
242
+ "begin": "([\"])",
243
+ "beginCaptures": {
244
+ "0": {
245
+ "name": "punctuation.definition.string.begin.astro"
246
+ }
247
+ },
248
+ "end": "\\1",
249
+ "endCaptures": {
250
+ "0": {
251
+ "name": "punctuation.definition.string.end.astro"
252
+ }
253
+ },
254
+ "name": "string.quoted.astro",
255
+ "patterns": [
256
+ {
257
+ "captures": {
258
+ "0": {
259
+ "patterns": [
260
+ {
261
+ "include": "source.js"
262
+ }
263
+ ]
264
+ }
265
+ },
266
+ "match": "([^\\n\\\"/]|/(?![/*]))+"
267
+ },
268
+ {
269
+ "begin": "//",
270
+ "beginCaptures": {
271
+ "0": {
272
+ "name": "punctuation.definition.comment.js"
273
+ }
274
+ },
275
+ "end": "(?=\\\")|\\n",
276
+ "name": "comment.line.double-slash.js"
277
+ },
278
+ {
279
+ "begin": "/\\*",
280
+ "beginCaptures": {
281
+ "0": {
282
+ "name": "punctuation.definition.comment.begin.js"
283
+ }
284
+ },
285
+ "end": "(?=\\\")|\\*/",
286
+ "endCaptures": {
287
+ "0": {
288
+ "name": "punctuation.definition.comment.end.js"
289
+ }
290
+ },
291
+ "name": "comment.block.js"
292
+ }
293
+ ]
294
+ },
295
+ {
296
+ "begin": "(['])",
297
+ "beginCaptures": {
298
+ "0": {
299
+ "name": "punctuation.definition.string.begin.astro"
300
+ }
301
+ },
302
+ "end": "\\1",
303
+ "endCaptures": {
304
+ "0": {
305
+ "name": "punctuation.definition.string.end.astro"
306
+ }
307
+ },
308
+ "name": "string.quoted.astro",
309
+ "patterns": [
310
+ {
311
+ "captures": {
312
+ "0": {
313
+ "patterns": [
314
+ {
315
+ "include": "source.js"
316
+ }
317
+ ]
318
+ }
319
+ },
320
+ "match": "([^\\n\\'/]|/(?![/*]))+"
321
+ },
322
+ {
323
+ "begin": "//",
324
+ "beginCaptures": {
325
+ "0": {
326
+ "name": "punctuation.definition.comment.js"
327
+ }
328
+ },
329
+ "end": "(?=\\')|\\n",
330
+ "name": "comment.line.double-slash.js"
331
+ },
332
+ {
333
+ "begin": "/\\*",
334
+ "beginCaptures": {
335
+ "0": {
336
+ "name": "punctuation.definition.comment.begin.js"
337
+ }
338
+ },
339
+ "end": "(?=\\')|\\*/",
340
+ "endCaptures": {
341
+ "0": {
342
+ "name": "punctuation.definition.comment.end.js"
343
+ }
344
+ },
345
+ "name": "comment.block.js"
346
+ }
347
+ ]
348
+ }
349
+ ]
350
+ }
351
+ ]
352
+ }
353
+ ]
354
+ },
355
+ "attributes-interpolated": {
356
+ "begin": "(?<!:|=)\\s*({)",
357
+ "contentName": "meta.embedded.expression.astro source.tsx",
358
+ "end": "(\\})",
359
+ "patterns": [
360
+ {
361
+ "include": "source.tsx"
362
+ }
363
+ ]
364
+ },
365
+ "attributes-keyvalue": {
366
+ "begin": "([_@$[:alpha:]][:._\\-$[:alnum:]]*)",
367
+ "beginCaptures": {
368
+ "0": {
369
+ "patterns": [
370
+ {
371
+ "match": ".*",
372
+ "name": "entity.other.attribute-name.astro"
373
+ }
374
+ ]
375
+ }
376
+ },
377
+ "end": "(?=\\s*+[^=\\s])",
378
+ "name": "meta.attribute.$1.astro",
379
+ "patterns": [
380
+ {
381
+ "begin": "=",
382
+ "beginCaptures": {
383
+ "0": {
384
+ "name": "punctuation.separator.key-value.astro"
385
+ }
386
+ },
387
+ "end": "(?<=[^\\s=])(?!\\s*=)|(?=/?>)",
388
+ "patterns": [
389
+ {
390
+ "include": "#attributes-value"
391
+ }
392
+ ]
393
+ }
394
+ ]
395
+ },
396
+ "attributes-value": {
397
+ "patterns": [
398
+ {
399
+ "include": "#interpolation"
400
+ },
401
+ {
402
+ "match": "([^\\s\"'=<>`/]|/(?!>))+",
403
+ "name": "string.unquoted.astro"
404
+ },
405
+ {
406
+ "begin": "(['\"])",
407
+ "beginCaptures": {
408
+ "0": {
409
+ "name": "punctuation.definition.string.begin.astro"
410
+ }
411
+ },
412
+ "end": "\\1",
413
+ "endCaptures": {
414
+ "0": {
415
+ "name": "punctuation.definition.string.end.astro"
416
+ }
417
+ },
418
+ "name": "string.quoted.astro"
419
+ },
420
+ {
421
+ "begin": "(`)",
422
+ "end": "\\1",
423
+ "name": "string.template.astro",
424
+ "patterns": [
425
+ {
426
+ "include": "source.tsx#template-substitution-element"
427
+ }
428
+ ]
429
+ }
430
+ ]
431
+ },
432
+ "comments": {
433
+ "begin": "<!--",
434
+ "captures": {
435
+ "0": {
436
+ "name": "punctuation.definition.comment.astro"
437
+ }
438
+ },
439
+ "end": "-->",
440
+ "name": "comment.block.astro",
441
+ "patterns": [
442
+ {
443
+ "match": "\\G-?>|<!--(?!>)|<!-(?=-->)|--!>",
444
+ "name": "invalid.illegal.characters-not-allowed-here.astro"
445
+ }
446
+ ]
447
+ },
448
+ "frontmatter": {
449
+ "begin": "\\A(-{3})\\s*$",
450
+ "beginCaptures": {
451
+ "1": {
452
+ "name": "comment"
453
+ }
454
+ },
455
+ "contentName": "source.ts",
456
+ "end": "(^|\\G)(-{3})|\\.{3}\\s*$",
457
+ "endCaptures": {
458
+ "2": {
459
+ "name": "comment"
460
+ }
461
+ },
462
+ "patterns": [
463
+ {
464
+ "include": "source.ts"
465
+ }
466
+ ]
467
+ },
468
+ "interpolation": {
469
+ "patterns": [
470
+ {
471
+ "begin": "\\{",
472
+ "beginCaptures": {
473
+ "0": {
474
+ "name": "punctuation.section.embedded.begin.astro"
475
+ }
476
+ },
477
+ "contentName": "meta.embedded.expression.astro source.tsx",
478
+ "end": "\\}",
479
+ "endCaptures": {
480
+ "0": {
481
+ "name": "punctuation.section.embedded.end.astro"
482
+ }
483
+ },
484
+ "patterns": [
485
+ {
486
+ "begin": "\\G\\s*(?={)",
487
+ "end": "(?<=})",
488
+ "patterns": [
489
+ {
490
+ "include": "source.tsx#object-literal"
491
+ }
492
+ ]
493
+ },
494
+ {
495
+ "include": "source.tsx"
496
+ }
497
+ ]
498
+ }
499
+ ]
500
+ },
501
+ "scope": {
502
+ "patterns": [
503
+ {
504
+ "include": "#comments"
505
+ },
506
+ {
507
+ "include": "#tags"
508
+ },
509
+ {
510
+ "include": "#interpolation"
511
+ },
512
+ {
513
+ "begin": "(?<=>|})",
514
+ "end": "(?=<|{)",
515
+ "name": "text.astro"
516
+ }
517
+ ]
518
+ },
519
+ "tags": {
520
+ "patterns": [
521
+ {
522
+ "include": "#tags-raw"
523
+ },
524
+ {
525
+ "include": "#tags-lang"
526
+ },
527
+ {
528
+ "include": "#tags-void"
529
+ },
530
+ {
531
+ "include": "#tags-general-end"
532
+ },
533
+ {
534
+ "include": "#tags-general-start"
535
+ }
536
+ ]
537
+ },
538
+ "tags-end-node": {
539
+ "captures": {
540
+ "1": {
541
+ "name": "meta.tag.end.astro punctuation.definition.tag.begin.astro"
542
+ },
543
+ "2": {
544
+ "name": "meta.tag.end.astro",
545
+ "patterns": [
546
+ {
547
+ "include": "#tags-name"
548
+ }
549
+ ]
550
+ },
551
+ "3": {
552
+ "name": "meta.tag.end.astro punctuation.definition.tag.end.astro"
553
+ },
554
+ "4": {
555
+ "name": "meta.tag.start.astro punctuation.definition.tag.end.astro"
556
+ }
557
+ },
558
+ "match": "(</)(.*?)\\s*(>)|(/>)"
559
+ },
560
+ "tags-general-end": {
561
+ "begin": "(</)([^/\\s>]*)",
562
+ "beginCaptures": {
563
+ "1": {
564
+ "name": "meta.tag.end.astro punctuation.definition.tag.begin.astro"
565
+ },
566
+ "2": {
567
+ "name": "meta.tag.end.astro",
568
+ "patterns": [
569
+ {
570
+ "include": "#tags-name"
571
+ }
572
+ ]
573
+ }
574
+ },
575
+ "end": "(>)",
576
+ "endCaptures": {
577
+ "1": {
578
+ "name": "meta.tag.end.astro punctuation.definition.tag.end.astro"
579
+ }
580
+ },
581
+ "name": "meta.scope.tag.$2.astro"
582
+ },
583
+ "tags-general-start": {
584
+ "begin": "(<)([^/\\s>/]*)",
585
+ "beginCaptures": {
586
+ "0": {
587
+ "patterns": [
588
+ {
589
+ "include": "#tags-start-node"
590
+ }
591
+ ]
592
+ }
593
+ },
594
+ "end": "(/?>)",
595
+ "endCaptures": {
596
+ "1": {
597
+ "name": "meta.tag.start.astro punctuation.definition.tag.end.astro"
598
+ }
599
+ },
600
+ "name": "meta.scope.tag.$2.astro",
601
+ "patterns": [
602
+ {
603
+ "include": "#tags-start-attributes"
604
+ }
605
+ ]
606
+ },
607
+ "tags-lang": {
608
+ "begin": "<(script|style)",
609
+ "beginCaptures": {
610
+ "0": {
611
+ "patterns": [
612
+ {
613
+ "include": "#tags-start-node"
614
+ }
615
+ ]
616
+ }
617
+ },
618
+ "end": "</\\1\\s*>|/>",
619
+ "endCaptures": {
620
+ "0": {
621
+ "patterns": [
622
+ {
623
+ "include": "#tags-end-node"
624
+ }
625
+ ]
626
+ }
627
+ },
628
+ "name": "meta.scope.tag.$1.astro meta.$1.astro",
629
+ "patterns": [
630
+ {
631
+ "begin": "\\G(?=\\s*[^>]*?(type|lang)\\s*=\\s*(['\"]|)(?:text\\/)?(application\\/ld\\+json)\\2)",
632
+ "end": "(?=</|/>)",
633
+ "name": "meta.lang.json.astro",
634
+ "patterns": [
635
+ {
636
+ "include": "#tags-lang-start-attributes"
637
+ }
638
+ ]
639
+ },
640
+ {
641
+ "begin": "\\G(?=\\s*[^>]*?(type|lang)\\s*=\\s*(['\"]|)(module)\\2)",
642
+ "end": "(?=</|/>)",
643
+ "name": "meta.lang.javascript.astro",
644
+ "patterns": [
645
+ {
646
+ "include": "#tags-lang-start-attributes"
647
+ }
648
+ ]
649
+ },
650
+ {
651
+ "begin": "\\G(?=\\s*[^>]*?(type|lang)\\s*=\\s*(['\"]|)(?:text/|application/)?([\\w\\/+]+)\\2)",
652
+ "end": "(?=</|/>)",
653
+ "name": "meta.lang.$3.astro",
654
+ "patterns": [
655
+ {
656
+ "include": "#tags-lang-start-attributes"
657
+ }
658
+ ]
659
+ },
660
+ {
661
+ "include": "#tags-lang-start-attributes"
662
+ }
663
+ ]
664
+ },
665
+ "tags-lang-start-attributes": {
666
+ "begin": "\\G",
667
+ "end": "(?=/>)|>",
668
+ "endCaptures": {
669
+ "0": {
670
+ "name": "punctuation.definition.tag.end.astro"
671
+ }
672
+ },
673
+ "name": "meta.tag.start.astro",
674
+ "patterns": [
675
+ {
676
+ "include": "#attributes"
677
+ }
678
+ ]
679
+ },
680
+ "tags-name": {
681
+ "patterns": [
682
+ {
683
+ "match": "[A-Z][a-zA-Z0-9_]*",
684
+ "name": "support.class.component.astro"
685
+ },
686
+ {
687
+ "match": "[a-z][\\w0-9:]*-[\\w0-9:-]*",
688
+ "name": "meta.tag.custom.astro entity.name.tag.astro"
689
+ },
690
+ {
691
+ "match": "[a-z][\\w0-9:-]*",
692
+ "name": "entity.name.tag.astro"
693
+ }
694
+ ]
695
+ },
696
+ "tags-raw": {
697
+ "begin": "<([^/?!\\s<>]+)(?=[^>]+is:raw).*?",
698
+ "beginCaptures": {
699
+ "0": {
700
+ "patterns": [
701
+ {
702
+ "include": "#tags-start-node"
703
+ }
704
+ ]
705
+ }
706
+ },
707
+ "contentName": "source.unknown",
708
+ "end": "</\\1\\s*>|/>",
709
+ "endCaptures": {
710
+ "0": {
711
+ "patterns": [
712
+ {
713
+ "include": "#tags-end-node"
714
+ }
715
+ ]
716
+ }
717
+ },
718
+ "name": "meta.scope.tag.$1.astro meta.raw.astro",
719
+ "patterns": [
720
+ {
721
+ "include": "#tags-lang-start-attributes"
722
+ }
723
+ ]
724
+ },
725
+ "tags-start-attributes": {
726
+ "begin": "\\G",
727
+ "end": "(?=/?>)",
728
+ "name": "meta.tag.start.astro",
729
+ "patterns": [
730
+ {
731
+ "include": "#attributes"
732
+ }
733
+ ]
734
+ },
735
+ "tags-start-node": {
736
+ "captures": {
737
+ "1": {
738
+ "name": "punctuation.definition.tag.begin.astro"
739
+ },
740
+ "2": {
741
+ "patterns": [
742
+ {
743
+ "include": "#tags-name"
744
+ }
745
+ ]
746
+ }
747
+ },
748
+ "match": "(<)([^/\\s>/]*)",
749
+ "name": "meta.tag.start.astro"
750
+ },
751
+ "tags-void": {
752
+ "begin": "(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\\s|/?>)",
753
+ "beginCaptures": {
754
+ "1": {
755
+ "name": "punctuation.definition.tag.begin.astro"
756
+ },
757
+ "2": {
758
+ "name": "entity.name.tag.astro"
759
+ }
760
+ },
761
+ "end": "/?>",
762
+ "endCaptures": {
763
+ "0": {
764
+ "name": "punctuation.definition.tag.begin.astro"
765
+ }
766
+ },
767
+ "name": "meta.tag.void.astro",
768
+ "patterns": [
769
+ {
770
+ "include": "#attributes"
771
+ }
772
+ ]
773
+ }
774
+ },
775
+ "scopeName": "source.astro"
776
+ }