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,3066 @@
1
+ {
2
+ "displayName": "Markdown",
3
+ "name": "markdown",
4
+ "patterns": [
5
+ {
6
+ "include": "#frontMatter"
7
+ },
8
+ {
9
+ "include": "#block"
10
+ }
11
+ ],
12
+ "repository": {
13
+ "ampersand": {
14
+ "comment": "Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.",
15
+ "match": "&(?!([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);)",
16
+ "name": "meta.other.valid-ampersand.markdown"
17
+ },
18
+ "block": {
19
+ "patterns": [
20
+ {
21
+ "include": "#separator"
22
+ },
23
+ {
24
+ "include": "#heading"
25
+ },
26
+ {
27
+ "include": "#blockquote"
28
+ },
29
+ {
30
+ "include": "#lists"
31
+ },
32
+ {
33
+ "include": "#fenced_code_block"
34
+ },
35
+ {
36
+ "include": "#raw_block"
37
+ },
38
+ {
39
+ "include": "#link-def"
40
+ },
41
+ {
42
+ "include": "#html"
43
+ },
44
+ {
45
+ "include": "#table"
46
+ },
47
+ {
48
+ "include": "#paragraph"
49
+ }
50
+ ]
51
+ },
52
+ "blockquote": {
53
+ "begin": "(^|\\G)[ ]{0,3}(>) ?",
54
+ "captures": {
55
+ "2": {
56
+ "name": "punctuation.definition.quote.begin.markdown"
57
+ }
58
+ },
59
+ "name": "markup.quote.markdown",
60
+ "patterns": [
61
+ {
62
+ "include": "#block"
63
+ }
64
+ ],
65
+ "while": "(^|\\G)\\s*(>) ?"
66
+ },
67
+ "bold": {
68
+ "begin": "(?x) (?<open>(\\*\\*(?=\\w)|(?<!\\w)\\*\\*|(?<!\\w)\\b__))(?=\\S) (?=\n (\n <[^>]*+> # HTML tags\n | (?<raw>`+)([^`]|(?!(?<!`)\\k<raw>(?!`))`)*+\\k<raw>\n # Raw\n | \\\\[\\\\`*_{}\\[\\]()#.!+\\->]?+ # Escapes\n | \\[\n (\n (?<square> # Named group\n [^\\[\\]\\\\] # Match most chars\n | \\\\. # Escaped chars\n | \\[ \\g<square>*+ \\] # Nested brackets\n )*+\n \\]\n (\n ( # Reference Link\n [ ]? # Optional space\n \\[[^\\]]*+\\] # Ref name\n )\n | ( # Inline Link\n \\( # Opening paren\n [ \\t]*+ # Optional whitespace\n <?(.*?)>? # URL\n [ \\t]*+ # Optional whitespace\n ( # Optional Title\n (?<title>['\"])\n (.*?)\n \\k<title>\n )?\n \\)\n )\n )\n )\n | (?!(?<=\\S)\\k<open>). # Everything besides\n # style closer\n )++\n (?<=\\S)(?=__\\b|\\*\\*)\\k<open> # Close\n)\n",
69
+ "captures": {
70
+ "1": {
71
+ "name": "punctuation.definition.bold.markdown"
72
+ }
73
+ },
74
+ "end": "(?<=\\S)(\\1)",
75
+ "name": "markup.bold.markdown",
76
+ "patterns": [
77
+ {
78
+ "applyEndPatternLast": 1,
79
+ "begin": "(?=<[^>]*?>)",
80
+ "end": "(?<=>)",
81
+ "patterns": [
82
+ {
83
+ "include": "text.html.derivative"
84
+ }
85
+ ]
86
+ },
87
+ {
88
+ "include": "#escape"
89
+ },
90
+ {
91
+ "include": "#ampersand"
92
+ },
93
+ {
94
+ "include": "#bracket"
95
+ },
96
+ {
97
+ "include": "#raw"
98
+ },
99
+ {
100
+ "include": "#bold"
101
+ },
102
+ {
103
+ "include": "#italic"
104
+ },
105
+ {
106
+ "include": "#image-inline"
107
+ },
108
+ {
109
+ "include": "#link-inline"
110
+ },
111
+ {
112
+ "include": "#link-inet"
113
+ },
114
+ {
115
+ "include": "#link-email"
116
+ },
117
+ {
118
+ "include": "#image-ref"
119
+ },
120
+ {
121
+ "include": "#link-ref-literal"
122
+ },
123
+ {
124
+ "include": "#link-ref"
125
+ },
126
+ {
127
+ "include": "#link-ref-shortcut"
128
+ },
129
+ {
130
+ "include": "#strikethrough"
131
+ }
132
+ ]
133
+ },
134
+ "bracket": {
135
+ "comment": "Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.",
136
+ "match": "<(?![a-zA-Z/?\\$!])",
137
+ "name": "meta.other.valid-bracket.markdown"
138
+ },
139
+ "escape": {
140
+ "match": "\\\\[-`*_#+.!(){}\\[\\]\\\\>]",
141
+ "name": "constant.character.escape.markdown"
142
+ },
143
+ "fenced_code_block": {
144
+ "patterns": [
145
+ {
146
+ "include": "#fenced_code_block_css"
147
+ },
148
+ {
149
+ "include": "#fenced_code_block_basic"
150
+ },
151
+ {
152
+ "include": "#fenced_code_block_ini"
153
+ },
154
+ {
155
+ "include": "#fenced_code_block_java"
156
+ },
157
+ {
158
+ "include": "#fenced_code_block_lua"
159
+ },
160
+ {
161
+ "include": "#fenced_code_block_makefile"
162
+ },
163
+ {
164
+ "include": "#fenced_code_block_perl"
165
+ },
166
+ {
167
+ "include": "#fenced_code_block_r"
168
+ },
169
+ {
170
+ "include": "#fenced_code_block_ruby"
171
+ },
172
+ {
173
+ "include": "#fenced_code_block_php"
174
+ },
175
+ {
176
+ "include": "#fenced_code_block_sql"
177
+ },
178
+ {
179
+ "include": "#fenced_code_block_vs_net"
180
+ },
181
+ {
182
+ "include": "#fenced_code_block_xml"
183
+ },
184
+ {
185
+ "include": "#fenced_code_block_xsl"
186
+ },
187
+ {
188
+ "include": "#fenced_code_block_yaml"
189
+ },
190
+ {
191
+ "include": "#fenced_code_block_dosbatch"
192
+ },
193
+ {
194
+ "include": "#fenced_code_block_clojure"
195
+ },
196
+ {
197
+ "include": "#fenced_code_block_coffee"
198
+ },
199
+ {
200
+ "include": "#fenced_code_block_c"
201
+ },
202
+ {
203
+ "include": "#fenced_code_block_cpp"
204
+ },
205
+ {
206
+ "include": "#fenced_code_block_diff"
207
+ },
208
+ {
209
+ "include": "#fenced_code_block_dockerfile"
210
+ },
211
+ {
212
+ "include": "#fenced_code_block_git_commit"
213
+ },
214
+ {
215
+ "include": "#fenced_code_block_git_rebase"
216
+ },
217
+ {
218
+ "include": "#fenced_code_block_go"
219
+ },
220
+ {
221
+ "include": "#fenced_code_block_groovy"
222
+ },
223
+ {
224
+ "include": "#fenced_code_block_pug"
225
+ },
226
+ {
227
+ "include": "#fenced_code_block_js"
228
+ },
229
+ {
230
+ "include": "#fenced_code_block_js_regexp"
231
+ },
232
+ {
233
+ "include": "#fenced_code_block_json"
234
+ },
235
+ {
236
+ "include": "#fenced_code_block_jsonc"
237
+ },
238
+ {
239
+ "include": "#fenced_code_block_less"
240
+ },
241
+ {
242
+ "include": "#fenced_code_block_objc"
243
+ },
244
+ {
245
+ "include": "#fenced_code_block_swift"
246
+ },
247
+ {
248
+ "include": "#fenced_code_block_scss"
249
+ },
250
+ {
251
+ "include": "#fenced_code_block_perl6"
252
+ },
253
+ {
254
+ "include": "#fenced_code_block_powershell"
255
+ },
256
+ {
257
+ "include": "#fenced_code_block_python"
258
+ },
259
+ {
260
+ "include": "#fenced_code_block_julia"
261
+ },
262
+ {
263
+ "include": "#fenced_code_block_regexp_python"
264
+ },
265
+ {
266
+ "include": "#fenced_code_block_rust"
267
+ },
268
+ {
269
+ "include": "#fenced_code_block_scala"
270
+ },
271
+ {
272
+ "include": "#fenced_code_block_shell"
273
+ },
274
+ {
275
+ "include": "#fenced_code_block_ts"
276
+ },
277
+ {
278
+ "include": "#fenced_code_block_tsx"
279
+ },
280
+ {
281
+ "include": "#fenced_code_block_csharp"
282
+ },
283
+ {
284
+ "include": "#fenced_code_block_fsharp"
285
+ },
286
+ {
287
+ "include": "#fenced_code_block_dart"
288
+ },
289
+ {
290
+ "include": "#fenced_code_block_handlebars"
291
+ },
292
+ {
293
+ "include": "#fenced_code_block_markdown"
294
+ },
295
+ {
296
+ "include": "#fenced_code_block_log"
297
+ },
298
+ {
299
+ "include": "#fenced_code_block_erlang"
300
+ },
301
+ {
302
+ "include": "#fenced_code_block_elixir"
303
+ },
304
+ {
305
+ "include": "#fenced_code_block_latex"
306
+ },
307
+ {
308
+ "include": "#fenced_code_block_bibtex"
309
+ },
310
+ {
311
+ "include": "#fenced_code_block_twig"
312
+ },
313
+ {
314
+ "include": "#fenced_code_block_unknown"
315
+ }
316
+ ]
317
+ },
318
+ "fenced_code_block_basic": {
319
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(html|htm|shtml|xhtml|inc|tmpl|tpl)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
320
+ "beginCaptures": {
321
+ "3": {
322
+ "name": "punctuation.definition.markdown"
323
+ },
324
+ "4": {
325
+ "name": "fenced_code.block.language.markdown"
326
+ },
327
+ "5": {
328
+ "name": "fenced_code.block.language.attributes.markdown"
329
+ }
330
+ },
331
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
332
+ "endCaptures": {
333
+ "3": {
334
+ "name": "punctuation.definition.markdown"
335
+ }
336
+ },
337
+ "name": "markup.fenced_code.block.markdown",
338
+ "patterns": [
339
+ {
340
+ "begin": "(^|\\G)(\\s*)(.*)",
341
+ "contentName": "meta.embedded.block.html",
342
+ "patterns": [
343
+ {
344
+ "include": "text.html.basic"
345
+ }
346
+ ],
347
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
348
+ }
349
+ ]
350
+ },
351
+ "fenced_code_block_bibtex": {
352
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(bibtex)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
353
+ "beginCaptures": {
354
+ "3": {
355
+ "name": "punctuation.definition.markdown"
356
+ },
357
+ "4": {
358
+ "name": "fenced_code.block.language.markdown"
359
+ },
360
+ "5": {
361
+ "name": "fenced_code.block.language.attributes.markdown"
362
+ }
363
+ },
364
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
365
+ "endCaptures": {
366
+ "3": {
367
+ "name": "punctuation.definition.markdown"
368
+ }
369
+ },
370
+ "name": "markup.fenced_code.block.markdown",
371
+ "patterns": [
372
+ {
373
+ "begin": "(^|\\G)(\\s*)(.*)",
374
+ "contentName": "meta.embedded.block.bibtex",
375
+ "patterns": [
376
+ {
377
+ "include": "text.bibtex"
378
+ }
379
+ ],
380
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
381
+ }
382
+ ]
383
+ },
384
+ "fenced_code_block_c": {
385
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(c|h)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
386
+ "beginCaptures": {
387
+ "3": {
388
+ "name": "punctuation.definition.markdown"
389
+ },
390
+ "4": {
391
+ "name": "fenced_code.block.language.markdown"
392
+ },
393
+ "5": {
394
+ "name": "fenced_code.block.language.attributes.markdown"
395
+ }
396
+ },
397
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
398
+ "endCaptures": {
399
+ "3": {
400
+ "name": "punctuation.definition.markdown"
401
+ }
402
+ },
403
+ "name": "markup.fenced_code.block.markdown",
404
+ "patterns": [
405
+ {
406
+ "begin": "(^|\\G)(\\s*)(.*)",
407
+ "contentName": "meta.embedded.block.c",
408
+ "patterns": [
409
+ {
410
+ "include": "source.c"
411
+ }
412
+ ],
413
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
414
+ }
415
+ ]
416
+ },
417
+ "fenced_code_block_clojure": {
418
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(clj|cljs|clojure)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
419
+ "beginCaptures": {
420
+ "3": {
421
+ "name": "punctuation.definition.markdown"
422
+ },
423
+ "4": {
424
+ "name": "fenced_code.block.language.markdown"
425
+ },
426
+ "5": {
427
+ "name": "fenced_code.block.language.attributes.markdown"
428
+ }
429
+ },
430
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
431
+ "endCaptures": {
432
+ "3": {
433
+ "name": "punctuation.definition.markdown"
434
+ }
435
+ },
436
+ "name": "markup.fenced_code.block.markdown",
437
+ "patterns": [
438
+ {
439
+ "begin": "(^|\\G)(\\s*)(.*)",
440
+ "contentName": "meta.embedded.block.clojure",
441
+ "patterns": [
442
+ {
443
+ "include": "source.clojure"
444
+ }
445
+ ],
446
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
447
+ }
448
+ ]
449
+ },
450
+ "fenced_code_block_coffee": {
451
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(coffee|Cakefile|coffee.erb)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
452
+ "beginCaptures": {
453
+ "3": {
454
+ "name": "punctuation.definition.markdown"
455
+ },
456
+ "4": {
457
+ "name": "fenced_code.block.language.markdown"
458
+ },
459
+ "5": {
460
+ "name": "fenced_code.block.language.attributes.markdown"
461
+ }
462
+ },
463
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
464
+ "endCaptures": {
465
+ "3": {
466
+ "name": "punctuation.definition.markdown"
467
+ }
468
+ },
469
+ "name": "markup.fenced_code.block.markdown",
470
+ "patterns": [
471
+ {
472
+ "begin": "(^|\\G)(\\s*)(.*)",
473
+ "contentName": "meta.embedded.block.coffee",
474
+ "patterns": [
475
+ {
476
+ "include": "source.coffee"
477
+ }
478
+ ],
479
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
480
+ }
481
+ ]
482
+ },
483
+ "fenced_code_block_cpp": {
484
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(cpp|c\\+\\+|cxx)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
485
+ "beginCaptures": {
486
+ "3": {
487
+ "name": "punctuation.definition.markdown"
488
+ },
489
+ "4": {
490
+ "name": "fenced_code.block.language.markdown"
491
+ },
492
+ "5": {
493
+ "name": "fenced_code.block.language.attributes.markdown"
494
+ }
495
+ },
496
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
497
+ "endCaptures": {
498
+ "3": {
499
+ "name": "punctuation.definition.markdown"
500
+ }
501
+ },
502
+ "name": "markup.fenced_code.block.markdown",
503
+ "patterns": [
504
+ {
505
+ "begin": "(^|\\G)(\\s*)(.*)",
506
+ "contentName": "meta.embedded.block.cpp source.cpp",
507
+ "patterns": [
508
+ {
509
+ "include": "source.cpp"
510
+ }
511
+ ],
512
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
513
+ }
514
+ ]
515
+ },
516
+ "fenced_code_block_csharp": {
517
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(cs|csharp|c#)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
518
+ "beginCaptures": {
519
+ "3": {
520
+ "name": "punctuation.definition.markdown"
521
+ },
522
+ "4": {
523
+ "name": "fenced_code.block.language.markdown"
524
+ },
525
+ "5": {
526
+ "name": "fenced_code.block.language.attributes.markdown"
527
+ }
528
+ },
529
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
530
+ "endCaptures": {
531
+ "3": {
532
+ "name": "punctuation.definition.markdown"
533
+ }
534
+ },
535
+ "name": "markup.fenced_code.block.markdown",
536
+ "patterns": [
537
+ {
538
+ "begin": "(^|\\G)(\\s*)(.*)",
539
+ "contentName": "meta.embedded.block.csharp",
540
+ "patterns": [
541
+ {
542
+ "include": "source.cs"
543
+ }
544
+ ],
545
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
546
+ }
547
+ ]
548
+ },
549
+ "fenced_code_block_css": {
550
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(css|css.erb)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
551
+ "beginCaptures": {
552
+ "3": {
553
+ "name": "punctuation.definition.markdown"
554
+ },
555
+ "4": {
556
+ "name": "fenced_code.block.language.markdown"
557
+ },
558
+ "5": {
559
+ "name": "fenced_code.block.language.attributes.markdown"
560
+ }
561
+ },
562
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
563
+ "endCaptures": {
564
+ "3": {
565
+ "name": "punctuation.definition.markdown"
566
+ }
567
+ },
568
+ "name": "markup.fenced_code.block.markdown",
569
+ "patterns": [
570
+ {
571
+ "begin": "(^|\\G)(\\s*)(.*)",
572
+ "contentName": "meta.embedded.block.css",
573
+ "patterns": [
574
+ {
575
+ "include": "source.css"
576
+ }
577
+ ],
578
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
579
+ }
580
+ ]
581
+ },
582
+ "fenced_code_block_dart": {
583
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(dart)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
584
+ "beginCaptures": {
585
+ "3": {
586
+ "name": "punctuation.definition.markdown"
587
+ },
588
+ "4": {
589
+ "name": "fenced_code.block.language.markdown"
590
+ },
591
+ "5": {
592
+ "name": "fenced_code.block.language.attributes.markdown"
593
+ }
594
+ },
595
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
596
+ "endCaptures": {
597
+ "3": {
598
+ "name": "punctuation.definition.markdown"
599
+ }
600
+ },
601
+ "name": "markup.fenced_code.block.markdown",
602
+ "patterns": [
603
+ {
604
+ "begin": "(^|\\G)(\\s*)(.*)",
605
+ "contentName": "meta.embedded.block.dart",
606
+ "patterns": [
607
+ {
608
+ "include": "source.dart"
609
+ }
610
+ ],
611
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
612
+ }
613
+ ]
614
+ },
615
+ "fenced_code_block_diff": {
616
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(patch|diff|rej)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
617
+ "beginCaptures": {
618
+ "3": {
619
+ "name": "punctuation.definition.markdown"
620
+ },
621
+ "4": {
622
+ "name": "fenced_code.block.language.markdown"
623
+ },
624
+ "5": {
625
+ "name": "fenced_code.block.language.attributes.markdown"
626
+ }
627
+ },
628
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
629
+ "endCaptures": {
630
+ "3": {
631
+ "name": "punctuation.definition.markdown"
632
+ }
633
+ },
634
+ "name": "markup.fenced_code.block.markdown",
635
+ "patterns": [
636
+ {
637
+ "begin": "(^|\\G)(\\s*)(.*)",
638
+ "contentName": "meta.embedded.block.diff",
639
+ "patterns": [
640
+ {
641
+ "include": "source.diff"
642
+ }
643
+ ],
644
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
645
+ }
646
+ ]
647
+ },
648
+ "fenced_code_block_dockerfile": {
649
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(dockerfile|Dockerfile)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
650
+ "beginCaptures": {
651
+ "3": {
652
+ "name": "punctuation.definition.markdown"
653
+ },
654
+ "4": {
655
+ "name": "fenced_code.block.language.markdown"
656
+ },
657
+ "5": {
658
+ "name": "fenced_code.block.language.attributes.markdown"
659
+ }
660
+ },
661
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
662
+ "endCaptures": {
663
+ "3": {
664
+ "name": "punctuation.definition.markdown"
665
+ }
666
+ },
667
+ "name": "markup.fenced_code.block.markdown",
668
+ "patterns": [
669
+ {
670
+ "begin": "(^|\\G)(\\s*)(.*)",
671
+ "contentName": "meta.embedded.block.dockerfile",
672
+ "patterns": [
673
+ {
674
+ "include": "source.dockerfile"
675
+ }
676
+ ],
677
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
678
+ }
679
+ ]
680
+ },
681
+ "fenced_code_block_dosbatch": {
682
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(bat|batch)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
683
+ "beginCaptures": {
684
+ "3": {
685
+ "name": "punctuation.definition.markdown"
686
+ },
687
+ "4": {
688
+ "name": "fenced_code.block.language.markdown"
689
+ },
690
+ "5": {
691
+ "name": "fenced_code.block.language.attributes.markdown"
692
+ }
693
+ },
694
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
695
+ "endCaptures": {
696
+ "3": {
697
+ "name": "punctuation.definition.markdown"
698
+ }
699
+ },
700
+ "name": "markup.fenced_code.block.markdown",
701
+ "patterns": [
702
+ {
703
+ "begin": "(^|\\G)(\\s*)(.*)",
704
+ "contentName": "meta.embedded.block.dosbatch",
705
+ "patterns": [
706
+ {
707
+ "include": "source.batchfile"
708
+ }
709
+ ],
710
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
711
+ }
712
+ ]
713
+ },
714
+ "fenced_code_block_elixir": {
715
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(elixir)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
716
+ "beginCaptures": {
717
+ "3": {
718
+ "name": "punctuation.definition.markdown"
719
+ },
720
+ "4": {
721
+ "name": "fenced_code.block.language.markdown"
722
+ },
723
+ "5": {
724
+ "name": "fenced_code.block.language.attributes.markdown"
725
+ }
726
+ },
727
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
728
+ "endCaptures": {
729
+ "3": {
730
+ "name": "punctuation.definition.markdown"
731
+ }
732
+ },
733
+ "name": "markup.fenced_code.block.markdown",
734
+ "patterns": [
735
+ {
736
+ "begin": "(^|\\G)(\\s*)(.*)",
737
+ "contentName": "meta.embedded.block.elixir",
738
+ "patterns": [
739
+ {
740
+ "include": "source.elixir"
741
+ }
742
+ ],
743
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
744
+ }
745
+ ]
746
+ },
747
+ "fenced_code_block_erlang": {
748
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(erlang)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
749
+ "beginCaptures": {
750
+ "3": {
751
+ "name": "punctuation.definition.markdown"
752
+ },
753
+ "4": {
754
+ "name": "fenced_code.block.language.markdown"
755
+ },
756
+ "5": {
757
+ "name": "fenced_code.block.language.attributes.markdown"
758
+ }
759
+ },
760
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
761
+ "endCaptures": {
762
+ "3": {
763
+ "name": "punctuation.definition.markdown"
764
+ }
765
+ },
766
+ "name": "markup.fenced_code.block.markdown",
767
+ "patterns": [
768
+ {
769
+ "begin": "(^|\\G)(\\s*)(.*)",
770
+ "contentName": "meta.embedded.block.erlang",
771
+ "patterns": [
772
+ {
773
+ "include": "source.erlang"
774
+ }
775
+ ],
776
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
777
+ }
778
+ ]
779
+ },
780
+ "fenced_code_block_fsharp": {
781
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(fs|fsharp|f#)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
782
+ "beginCaptures": {
783
+ "3": {
784
+ "name": "punctuation.definition.markdown"
785
+ },
786
+ "4": {
787
+ "name": "fenced_code.block.language.markdown"
788
+ },
789
+ "5": {
790
+ "name": "fenced_code.block.language.attributes.markdown"
791
+ }
792
+ },
793
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
794
+ "endCaptures": {
795
+ "3": {
796
+ "name": "punctuation.definition.markdown"
797
+ }
798
+ },
799
+ "name": "markup.fenced_code.block.markdown",
800
+ "patterns": [
801
+ {
802
+ "begin": "(^|\\G)(\\s*)(.*)",
803
+ "contentName": "meta.embedded.block.fsharp",
804
+ "patterns": [
805
+ {
806
+ "include": "source.fsharp"
807
+ }
808
+ ],
809
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
810
+ }
811
+ ]
812
+ },
813
+ "fenced_code_block_git_commit": {
814
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(COMMIT_EDITMSG|MERGE_MSG)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
815
+ "beginCaptures": {
816
+ "3": {
817
+ "name": "punctuation.definition.markdown"
818
+ },
819
+ "4": {
820
+ "name": "fenced_code.block.language.markdown"
821
+ },
822
+ "5": {
823
+ "name": "fenced_code.block.language.attributes.markdown"
824
+ }
825
+ },
826
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
827
+ "endCaptures": {
828
+ "3": {
829
+ "name": "punctuation.definition.markdown"
830
+ }
831
+ },
832
+ "name": "markup.fenced_code.block.markdown",
833
+ "patterns": [
834
+ {
835
+ "begin": "(^|\\G)(\\s*)(.*)",
836
+ "contentName": "meta.embedded.block.git_commit",
837
+ "patterns": [
838
+ {
839
+ "include": "text.git-commit"
840
+ }
841
+ ],
842
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
843
+ }
844
+ ]
845
+ },
846
+ "fenced_code_block_git_rebase": {
847
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(git-rebase-todo)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
848
+ "beginCaptures": {
849
+ "3": {
850
+ "name": "punctuation.definition.markdown"
851
+ },
852
+ "4": {
853
+ "name": "fenced_code.block.language.markdown"
854
+ },
855
+ "5": {
856
+ "name": "fenced_code.block.language.attributes.markdown"
857
+ }
858
+ },
859
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
860
+ "endCaptures": {
861
+ "3": {
862
+ "name": "punctuation.definition.markdown"
863
+ }
864
+ },
865
+ "name": "markup.fenced_code.block.markdown",
866
+ "patterns": [
867
+ {
868
+ "begin": "(^|\\G)(\\s*)(.*)",
869
+ "contentName": "meta.embedded.block.git_rebase",
870
+ "patterns": [
871
+ {
872
+ "include": "text.git-rebase"
873
+ }
874
+ ],
875
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
876
+ }
877
+ ]
878
+ },
879
+ "fenced_code_block_go": {
880
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(go|golang)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
881
+ "beginCaptures": {
882
+ "3": {
883
+ "name": "punctuation.definition.markdown"
884
+ },
885
+ "4": {
886
+ "name": "fenced_code.block.language.markdown"
887
+ },
888
+ "5": {
889
+ "name": "fenced_code.block.language.attributes.markdown"
890
+ }
891
+ },
892
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
893
+ "endCaptures": {
894
+ "3": {
895
+ "name": "punctuation.definition.markdown"
896
+ }
897
+ },
898
+ "name": "markup.fenced_code.block.markdown",
899
+ "patterns": [
900
+ {
901
+ "begin": "(^|\\G)(\\s*)(.*)",
902
+ "contentName": "meta.embedded.block.go",
903
+ "patterns": [
904
+ {
905
+ "include": "source.go"
906
+ }
907
+ ],
908
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
909
+ }
910
+ ]
911
+ },
912
+ "fenced_code_block_groovy": {
913
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(groovy|gvy)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
914
+ "beginCaptures": {
915
+ "3": {
916
+ "name": "punctuation.definition.markdown"
917
+ },
918
+ "4": {
919
+ "name": "fenced_code.block.language.markdown"
920
+ },
921
+ "5": {
922
+ "name": "fenced_code.block.language.attributes.markdown"
923
+ }
924
+ },
925
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
926
+ "endCaptures": {
927
+ "3": {
928
+ "name": "punctuation.definition.markdown"
929
+ }
930
+ },
931
+ "name": "markup.fenced_code.block.markdown",
932
+ "patterns": [
933
+ {
934
+ "begin": "(^|\\G)(\\s*)(.*)",
935
+ "contentName": "meta.embedded.block.groovy",
936
+ "patterns": [
937
+ {
938
+ "include": "source.groovy"
939
+ }
940
+ ],
941
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
942
+ }
943
+ ]
944
+ },
945
+ "fenced_code_block_handlebars": {
946
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(handlebars|hbs)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
947
+ "beginCaptures": {
948
+ "3": {
949
+ "name": "punctuation.definition.markdown"
950
+ },
951
+ "4": {
952
+ "name": "fenced_code.block.language.markdown"
953
+ },
954
+ "5": {
955
+ "name": "fenced_code.block.language.attributes.markdown"
956
+ }
957
+ },
958
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
959
+ "endCaptures": {
960
+ "3": {
961
+ "name": "punctuation.definition.markdown"
962
+ }
963
+ },
964
+ "name": "markup.fenced_code.block.markdown",
965
+ "patterns": [
966
+ {
967
+ "begin": "(^|\\G)(\\s*)(.*)",
968
+ "contentName": "meta.embedded.block.handlebars",
969
+ "patterns": [
970
+ {
971
+ "include": "text.html.handlebars"
972
+ }
973
+ ],
974
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
975
+ }
976
+ ]
977
+ },
978
+ "fenced_code_block_ini": {
979
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(ini|conf)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
980
+ "beginCaptures": {
981
+ "3": {
982
+ "name": "punctuation.definition.markdown"
983
+ },
984
+ "4": {
985
+ "name": "fenced_code.block.language.markdown"
986
+ },
987
+ "5": {
988
+ "name": "fenced_code.block.language.attributes.markdown"
989
+ }
990
+ },
991
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
992
+ "endCaptures": {
993
+ "3": {
994
+ "name": "punctuation.definition.markdown"
995
+ }
996
+ },
997
+ "name": "markup.fenced_code.block.markdown",
998
+ "patterns": [
999
+ {
1000
+ "begin": "(^|\\G)(\\s*)(.*)",
1001
+ "contentName": "meta.embedded.block.ini",
1002
+ "patterns": [
1003
+ {
1004
+ "include": "source.ini"
1005
+ }
1006
+ ],
1007
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1008
+ }
1009
+ ]
1010
+ },
1011
+ "fenced_code_block_java": {
1012
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(java|bsh)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1013
+ "beginCaptures": {
1014
+ "3": {
1015
+ "name": "punctuation.definition.markdown"
1016
+ },
1017
+ "4": {
1018
+ "name": "fenced_code.block.language.markdown"
1019
+ },
1020
+ "5": {
1021
+ "name": "fenced_code.block.language.attributes.markdown"
1022
+ }
1023
+ },
1024
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1025
+ "endCaptures": {
1026
+ "3": {
1027
+ "name": "punctuation.definition.markdown"
1028
+ }
1029
+ },
1030
+ "name": "markup.fenced_code.block.markdown",
1031
+ "patterns": [
1032
+ {
1033
+ "begin": "(^|\\G)(\\s*)(.*)",
1034
+ "contentName": "meta.embedded.block.java",
1035
+ "patterns": [
1036
+ {
1037
+ "include": "source.java"
1038
+ }
1039
+ ],
1040
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1041
+ }
1042
+ ]
1043
+ },
1044
+ "fenced_code_block_js": {
1045
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|dataviewjs|\\{\\.js.+?\\})((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1046
+ "beginCaptures": {
1047
+ "3": {
1048
+ "name": "punctuation.definition.markdown"
1049
+ },
1050
+ "4": {
1051
+ "name": "fenced_code.block.language.markdown"
1052
+ },
1053
+ "5": {
1054
+ "name": "fenced_code.block.language.attributes.markdown"
1055
+ }
1056
+ },
1057
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1058
+ "endCaptures": {
1059
+ "3": {
1060
+ "name": "punctuation.definition.markdown"
1061
+ }
1062
+ },
1063
+ "name": "markup.fenced_code.block.markdown",
1064
+ "patterns": [
1065
+ {
1066
+ "begin": "(^|\\G)(\\s*)(.*)",
1067
+ "contentName": "meta.embedded.block.javascript",
1068
+ "patterns": [
1069
+ {
1070
+ "include": "source.js"
1071
+ }
1072
+ ],
1073
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1074
+ }
1075
+ ]
1076
+ },
1077
+ "fenced_code_block_js_regexp": {
1078
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(regexp)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1079
+ "beginCaptures": {
1080
+ "3": {
1081
+ "name": "punctuation.definition.markdown"
1082
+ },
1083
+ "4": {
1084
+ "name": "fenced_code.block.language.markdown"
1085
+ },
1086
+ "5": {
1087
+ "name": "fenced_code.block.language.attributes.markdown"
1088
+ }
1089
+ },
1090
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1091
+ "endCaptures": {
1092
+ "3": {
1093
+ "name": "punctuation.definition.markdown"
1094
+ }
1095
+ },
1096
+ "name": "markup.fenced_code.block.markdown",
1097
+ "patterns": [
1098
+ {
1099
+ "begin": "(^|\\G)(\\s*)(.*)",
1100
+ "contentName": "meta.embedded.block.js_regexp",
1101
+ "patterns": [
1102
+ {
1103
+ "include": "source.js.regexp"
1104
+ }
1105
+ ],
1106
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1107
+ }
1108
+ ]
1109
+ },
1110
+ "fenced_code_block_json": {
1111
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(json|json5|sublime-settings|sublime-menu|sublime-keymap|sublime-mousemap|sublime-theme|sublime-build|sublime-project|sublime-completions)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1112
+ "beginCaptures": {
1113
+ "3": {
1114
+ "name": "punctuation.definition.markdown"
1115
+ },
1116
+ "4": {
1117
+ "name": "fenced_code.block.language.markdown"
1118
+ },
1119
+ "5": {
1120
+ "name": "fenced_code.block.language.attributes.markdown"
1121
+ }
1122
+ },
1123
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1124
+ "endCaptures": {
1125
+ "3": {
1126
+ "name": "punctuation.definition.markdown"
1127
+ }
1128
+ },
1129
+ "name": "markup.fenced_code.block.markdown",
1130
+ "patterns": [
1131
+ {
1132
+ "begin": "(^|\\G)(\\s*)(.*)",
1133
+ "contentName": "meta.embedded.block.json",
1134
+ "patterns": [
1135
+ {
1136
+ "include": "source.json"
1137
+ }
1138
+ ],
1139
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1140
+ }
1141
+ ]
1142
+ },
1143
+ "fenced_code_block_jsonc": {
1144
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(jsonc)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1145
+ "beginCaptures": {
1146
+ "3": {
1147
+ "name": "punctuation.definition.markdown"
1148
+ },
1149
+ "4": {
1150
+ "name": "fenced_code.block.language.markdown"
1151
+ },
1152
+ "5": {
1153
+ "name": "fenced_code.block.language.attributes.markdown"
1154
+ }
1155
+ },
1156
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1157
+ "endCaptures": {
1158
+ "3": {
1159
+ "name": "punctuation.definition.markdown"
1160
+ }
1161
+ },
1162
+ "name": "markup.fenced_code.block.markdown",
1163
+ "patterns": [
1164
+ {
1165
+ "begin": "(^|\\G)(\\s*)(.*)",
1166
+ "contentName": "meta.embedded.block.jsonc",
1167
+ "patterns": [
1168
+ {
1169
+ "include": "source.json.comments"
1170
+ }
1171
+ ],
1172
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1173
+ }
1174
+ ]
1175
+ },
1176
+ "fenced_code_block_julia": {
1177
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(julia|\\{\\.julia.+?\\})((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1178
+ "beginCaptures": {
1179
+ "3": {
1180
+ "name": "punctuation.definition.markdown"
1181
+ },
1182
+ "4": {
1183
+ "name": "fenced_code.block.language.markdown"
1184
+ },
1185
+ "5": {
1186
+ "name": "fenced_code.block.language.attributes.markdown"
1187
+ }
1188
+ },
1189
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1190
+ "endCaptures": {
1191
+ "3": {
1192
+ "name": "punctuation.definition.markdown"
1193
+ }
1194
+ },
1195
+ "name": "markup.fenced_code.block.markdown",
1196
+ "patterns": [
1197
+ {
1198
+ "begin": "(^|\\G)(\\s*)(.*)",
1199
+ "contentName": "meta.embedded.block.julia",
1200
+ "patterns": [
1201
+ {
1202
+ "include": "source.julia"
1203
+ }
1204
+ ],
1205
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1206
+ }
1207
+ ]
1208
+ },
1209
+ "fenced_code_block_latex": {
1210
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(latex|tex)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1211
+ "beginCaptures": {
1212
+ "3": {
1213
+ "name": "punctuation.definition.markdown"
1214
+ },
1215
+ "4": {
1216
+ "name": "fenced_code.block.language.markdown"
1217
+ },
1218
+ "5": {
1219
+ "name": "fenced_code.block.language.attributes.markdown"
1220
+ }
1221
+ },
1222
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1223
+ "endCaptures": {
1224
+ "3": {
1225
+ "name": "punctuation.definition.markdown"
1226
+ }
1227
+ },
1228
+ "name": "markup.fenced_code.block.markdown",
1229
+ "patterns": [
1230
+ {
1231
+ "begin": "(^|\\G)(\\s*)(.*)",
1232
+ "contentName": "meta.embedded.block.latex",
1233
+ "patterns": [
1234
+ {
1235
+ "include": "text.tex.latex"
1236
+ }
1237
+ ],
1238
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1239
+ }
1240
+ ]
1241
+ },
1242
+ "fenced_code_block_less": {
1243
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(less)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1244
+ "beginCaptures": {
1245
+ "3": {
1246
+ "name": "punctuation.definition.markdown"
1247
+ },
1248
+ "4": {
1249
+ "name": "fenced_code.block.language.markdown"
1250
+ },
1251
+ "5": {
1252
+ "name": "fenced_code.block.language.attributes.markdown"
1253
+ }
1254
+ },
1255
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1256
+ "endCaptures": {
1257
+ "3": {
1258
+ "name": "punctuation.definition.markdown"
1259
+ }
1260
+ },
1261
+ "name": "markup.fenced_code.block.markdown",
1262
+ "patterns": [
1263
+ {
1264
+ "begin": "(^|\\G)(\\s*)(.*)",
1265
+ "contentName": "meta.embedded.block.less",
1266
+ "patterns": [
1267
+ {
1268
+ "include": "source.css.less"
1269
+ }
1270
+ ],
1271
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1272
+ }
1273
+ ]
1274
+ },
1275
+ "fenced_code_block_log": {
1276
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(log)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1277
+ "beginCaptures": {
1278
+ "3": {
1279
+ "name": "punctuation.definition.markdown"
1280
+ },
1281
+ "4": {
1282
+ "name": "fenced_code.block.language.markdown"
1283
+ },
1284
+ "5": {
1285
+ "name": "fenced_code.block.language.attributes.markdown"
1286
+ }
1287
+ },
1288
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1289
+ "endCaptures": {
1290
+ "3": {
1291
+ "name": "punctuation.definition.markdown"
1292
+ }
1293
+ },
1294
+ "name": "markup.fenced_code.block.markdown",
1295
+ "patterns": [
1296
+ {
1297
+ "begin": "(^|\\G)(\\s*)(.*)",
1298
+ "contentName": "meta.embedded.block.log",
1299
+ "patterns": [
1300
+ {
1301
+ "include": "text.log"
1302
+ }
1303
+ ],
1304
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1305
+ }
1306
+ ]
1307
+ },
1308
+ "fenced_code_block_lua": {
1309
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(lua)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1310
+ "beginCaptures": {
1311
+ "3": {
1312
+ "name": "punctuation.definition.markdown"
1313
+ },
1314
+ "4": {
1315
+ "name": "fenced_code.block.language.markdown"
1316
+ },
1317
+ "5": {
1318
+ "name": "fenced_code.block.language.attributes.markdown"
1319
+ }
1320
+ },
1321
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1322
+ "endCaptures": {
1323
+ "3": {
1324
+ "name": "punctuation.definition.markdown"
1325
+ }
1326
+ },
1327
+ "name": "markup.fenced_code.block.markdown",
1328
+ "patterns": [
1329
+ {
1330
+ "begin": "(^|\\G)(\\s*)(.*)",
1331
+ "contentName": "meta.embedded.block.lua",
1332
+ "patterns": [
1333
+ {
1334
+ "include": "source.lua"
1335
+ }
1336
+ ],
1337
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1338
+ }
1339
+ ]
1340
+ },
1341
+ "fenced_code_block_makefile": {
1342
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(Makefile|makefile|GNUmakefile|OCamlMakefile)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1343
+ "beginCaptures": {
1344
+ "3": {
1345
+ "name": "punctuation.definition.markdown"
1346
+ },
1347
+ "4": {
1348
+ "name": "fenced_code.block.language.markdown"
1349
+ },
1350
+ "5": {
1351
+ "name": "fenced_code.block.language.attributes.markdown"
1352
+ }
1353
+ },
1354
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1355
+ "endCaptures": {
1356
+ "3": {
1357
+ "name": "punctuation.definition.markdown"
1358
+ }
1359
+ },
1360
+ "name": "markup.fenced_code.block.markdown",
1361
+ "patterns": [
1362
+ {
1363
+ "begin": "(^|\\G)(\\s*)(.*)",
1364
+ "contentName": "meta.embedded.block.makefile",
1365
+ "patterns": [
1366
+ {
1367
+ "include": "source.makefile"
1368
+ }
1369
+ ],
1370
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1371
+ }
1372
+ ]
1373
+ },
1374
+ "fenced_code_block_markdown": {
1375
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(markdown|md)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1376
+ "beginCaptures": {
1377
+ "3": {
1378
+ "name": "punctuation.definition.markdown"
1379
+ },
1380
+ "4": {
1381
+ "name": "fenced_code.block.language.markdown"
1382
+ },
1383
+ "5": {
1384
+ "name": "fenced_code.block.language.attributes.markdown"
1385
+ }
1386
+ },
1387
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1388
+ "endCaptures": {
1389
+ "3": {
1390
+ "name": "punctuation.definition.markdown"
1391
+ }
1392
+ },
1393
+ "name": "markup.fenced_code.block.markdown",
1394
+ "patterns": [
1395
+ {
1396
+ "begin": "(^|\\G)(\\s*)(.*)",
1397
+ "contentName": "meta.embedded.block.markdown",
1398
+ "patterns": [
1399
+ {
1400
+ "include": "text.html.markdown"
1401
+ }
1402
+ ],
1403
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1404
+ }
1405
+ ]
1406
+ },
1407
+ "fenced_code_block_objc": {
1408
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1409
+ "beginCaptures": {
1410
+ "3": {
1411
+ "name": "punctuation.definition.markdown"
1412
+ },
1413
+ "4": {
1414
+ "name": "fenced_code.block.language.markdown"
1415
+ },
1416
+ "5": {
1417
+ "name": "fenced_code.block.language.attributes.markdown"
1418
+ }
1419
+ },
1420
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1421
+ "endCaptures": {
1422
+ "3": {
1423
+ "name": "punctuation.definition.markdown"
1424
+ }
1425
+ },
1426
+ "name": "markup.fenced_code.block.markdown",
1427
+ "patterns": [
1428
+ {
1429
+ "begin": "(^|\\G)(\\s*)(.*)",
1430
+ "contentName": "meta.embedded.block.objc",
1431
+ "patterns": [
1432
+ {
1433
+ "include": "source.objc"
1434
+ }
1435
+ ],
1436
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1437
+ }
1438
+ ]
1439
+ },
1440
+ "fenced_code_block_perl": {
1441
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl|pl|pm|pod|t|PL|psgi|vcl)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1442
+ "beginCaptures": {
1443
+ "3": {
1444
+ "name": "punctuation.definition.markdown"
1445
+ },
1446
+ "4": {
1447
+ "name": "fenced_code.block.language.markdown"
1448
+ },
1449
+ "5": {
1450
+ "name": "fenced_code.block.language.attributes.markdown"
1451
+ }
1452
+ },
1453
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1454
+ "endCaptures": {
1455
+ "3": {
1456
+ "name": "punctuation.definition.markdown"
1457
+ }
1458
+ },
1459
+ "name": "markup.fenced_code.block.markdown",
1460
+ "patterns": [
1461
+ {
1462
+ "begin": "(^|\\G)(\\s*)(.*)",
1463
+ "contentName": "meta.embedded.block.perl",
1464
+ "patterns": [
1465
+ {
1466
+ "include": "source.perl"
1467
+ }
1468
+ ],
1469
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1470
+ }
1471
+ ]
1472
+ },
1473
+ "fenced_code_block_perl6": {
1474
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1475
+ "beginCaptures": {
1476
+ "3": {
1477
+ "name": "punctuation.definition.markdown"
1478
+ },
1479
+ "4": {
1480
+ "name": "fenced_code.block.language.markdown"
1481
+ },
1482
+ "5": {
1483
+ "name": "fenced_code.block.language.attributes.markdown"
1484
+ }
1485
+ },
1486
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1487
+ "endCaptures": {
1488
+ "3": {
1489
+ "name": "punctuation.definition.markdown"
1490
+ }
1491
+ },
1492
+ "name": "markup.fenced_code.block.markdown",
1493
+ "patterns": [
1494
+ {
1495
+ "begin": "(^|\\G)(\\s*)(.*)",
1496
+ "contentName": "meta.embedded.block.perl6",
1497
+ "patterns": [
1498
+ {
1499
+ "include": "source.perl.6"
1500
+ }
1501
+ ],
1502
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1503
+ }
1504
+ ]
1505
+ },
1506
+ "fenced_code_block_php": {
1507
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(php|php3|php4|php5|phpt|phtml|aw|ctp)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1508
+ "beginCaptures": {
1509
+ "3": {
1510
+ "name": "punctuation.definition.markdown"
1511
+ },
1512
+ "4": {
1513
+ "name": "fenced_code.block.language.markdown"
1514
+ },
1515
+ "5": {
1516
+ "name": "fenced_code.block.language.attributes.markdown"
1517
+ }
1518
+ },
1519
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1520
+ "endCaptures": {
1521
+ "3": {
1522
+ "name": "punctuation.definition.markdown"
1523
+ }
1524
+ },
1525
+ "name": "markup.fenced_code.block.markdown",
1526
+ "patterns": [
1527
+ {
1528
+ "begin": "(^|\\G)(\\s*)(.*)",
1529
+ "contentName": "meta.embedded.block.php",
1530
+ "patterns": [
1531
+ {
1532
+ "include": "text.html.basic"
1533
+ },
1534
+ {
1535
+ "include": "source.php"
1536
+ }
1537
+ ],
1538
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1539
+ }
1540
+ ]
1541
+ },
1542
+ "fenced_code_block_powershell": {
1543
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(powershell|ps1|psm1|psd1)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1544
+ "beginCaptures": {
1545
+ "3": {
1546
+ "name": "punctuation.definition.markdown"
1547
+ },
1548
+ "4": {
1549
+ "name": "fenced_code.block.language.markdown"
1550
+ },
1551
+ "5": {
1552
+ "name": "fenced_code.block.language.attributes.markdown"
1553
+ }
1554
+ },
1555
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1556
+ "endCaptures": {
1557
+ "3": {
1558
+ "name": "punctuation.definition.markdown"
1559
+ }
1560
+ },
1561
+ "name": "markup.fenced_code.block.markdown",
1562
+ "patterns": [
1563
+ {
1564
+ "begin": "(^|\\G)(\\s*)(.*)",
1565
+ "contentName": "meta.embedded.block.powershell",
1566
+ "patterns": [
1567
+ {
1568
+ "include": "source.powershell"
1569
+ }
1570
+ ],
1571
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1572
+ }
1573
+ ]
1574
+ },
1575
+ "fenced_code_block_pug": {
1576
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(jade|pug)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1577
+ "beginCaptures": {
1578
+ "3": {
1579
+ "name": "punctuation.definition.markdown"
1580
+ },
1581
+ "4": {
1582
+ "name": "fenced_code.block.language.markdown"
1583
+ },
1584
+ "5": {
1585
+ "name": "fenced_code.block.language.attributes.markdown"
1586
+ }
1587
+ },
1588
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1589
+ "endCaptures": {
1590
+ "3": {
1591
+ "name": "punctuation.definition.markdown"
1592
+ }
1593
+ },
1594
+ "name": "markup.fenced_code.block.markdown",
1595
+ "patterns": [
1596
+ {
1597
+ "begin": "(^|\\G)(\\s*)(.*)",
1598
+ "contentName": "meta.embedded.block.pug",
1599
+ "patterns": [
1600
+ {
1601
+ "include": "text.pug"
1602
+ }
1603
+ ],
1604
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1605
+ }
1606
+ ]
1607
+ },
1608
+ "fenced_code_block_python": {
1609
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\{\\.python.+?\\})((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1610
+ "beginCaptures": {
1611
+ "3": {
1612
+ "name": "punctuation.definition.markdown"
1613
+ },
1614
+ "4": {
1615
+ "name": "fenced_code.block.language.markdown"
1616
+ },
1617
+ "5": {
1618
+ "name": "fenced_code.block.language.attributes.markdown"
1619
+ }
1620
+ },
1621
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1622
+ "endCaptures": {
1623
+ "3": {
1624
+ "name": "punctuation.definition.markdown"
1625
+ }
1626
+ },
1627
+ "name": "markup.fenced_code.block.markdown",
1628
+ "patterns": [
1629
+ {
1630
+ "begin": "(^|\\G)(\\s*)(.*)",
1631
+ "contentName": "meta.embedded.block.python",
1632
+ "patterns": [
1633
+ {
1634
+ "include": "source.python"
1635
+ }
1636
+ ],
1637
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1638
+ }
1639
+ ]
1640
+ },
1641
+ "fenced_code_block_r": {
1642
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(R|r|s|S|Rprofile|\\{\\.r.+?\\})((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1643
+ "beginCaptures": {
1644
+ "3": {
1645
+ "name": "punctuation.definition.markdown"
1646
+ },
1647
+ "4": {
1648
+ "name": "fenced_code.block.language.markdown"
1649
+ },
1650
+ "5": {
1651
+ "name": "fenced_code.block.language.attributes.markdown"
1652
+ }
1653
+ },
1654
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1655
+ "endCaptures": {
1656
+ "3": {
1657
+ "name": "punctuation.definition.markdown"
1658
+ }
1659
+ },
1660
+ "name": "markup.fenced_code.block.markdown",
1661
+ "patterns": [
1662
+ {
1663
+ "begin": "(^|\\G)(\\s*)(.*)",
1664
+ "contentName": "meta.embedded.block.r",
1665
+ "patterns": [
1666
+ {
1667
+ "include": "source.r"
1668
+ }
1669
+ ],
1670
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1671
+ }
1672
+ ]
1673
+ },
1674
+ "fenced_code_block_regexp_python": {
1675
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(re)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1676
+ "beginCaptures": {
1677
+ "3": {
1678
+ "name": "punctuation.definition.markdown"
1679
+ },
1680
+ "4": {
1681
+ "name": "fenced_code.block.language.markdown"
1682
+ },
1683
+ "5": {
1684
+ "name": "fenced_code.block.language.attributes.markdown"
1685
+ }
1686
+ },
1687
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1688
+ "endCaptures": {
1689
+ "3": {
1690
+ "name": "punctuation.definition.markdown"
1691
+ }
1692
+ },
1693
+ "name": "markup.fenced_code.block.markdown",
1694
+ "patterns": [
1695
+ {
1696
+ "begin": "(^|\\G)(\\s*)(.*)",
1697
+ "contentName": "meta.embedded.block.regexp_python",
1698
+ "patterns": [
1699
+ {
1700
+ "include": "source.regexp.python"
1701
+ }
1702
+ ],
1703
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1704
+ }
1705
+ ]
1706
+ },
1707
+ "fenced_code_block_ruby": {
1708
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(ruby|rb|rbx|rjs|Rakefile|rake|cgi|fcgi|gemspec|irbrc|Capfile|ru|prawn|Cheffile|Gemfile|Guardfile|Hobofile|Vagrantfile|Appraisals|Rantfile|Berksfile|Berksfile.lock|Thorfile|Puppetfile)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1709
+ "beginCaptures": {
1710
+ "3": {
1711
+ "name": "punctuation.definition.markdown"
1712
+ },
1713
+ "4": {
1714
+ "name": "fenced_code.block.language.markdown"
1715
+ },
1716
+ "5": {
1717
+ "name": "fenced_code.block.language.attributes.markdown"
1718
+ }
1719
+ },
1720
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1721
+ "endCaptures": {
1722
+ "3": {
1723
+ "name": "punctuation.definition.markdown"
1724
+ }
1725
+ },
1726
+ "name": "markup.fenced_code.block.markdown",
1727
+ "patterns": [
1728
+ {
1729
+ "begin": "(^|\\G)(\\s*)(.*)",
1730
+ "contentName": "meta.embedded.block.ruby",
1731
+ "patterns": [
1732
+ {
1733
+ "include": "source.ruby"
1734
+ }
1735
+ ],
1736
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1737
+ }
1738
+ ]
1739
+ },
1740
+ "fenced_code_block_rust": {
1741
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(rust|rs|\\{\\.rust.+?\\})((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1742
+ "beginCaptures": {
1743
+ "3": {
1744
+ "name": "punctuation.definition.markdown"
1745
+ },
1746
+ "4": {
1747
+ "name": "fenced_code.block.language.markdown"
1748
+ },
1749
+ "5": {
1750
+ "name": "fenced_code.block.language.attributes.markdown"
1751
+ }
1752
+ },
1753
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1754
+ "endCaptures": {
1755
+ "3": {
1756
+ "name": "punctuation.definition.markdown"
1757
+ }
1758
+ },
1759
+ "name": "markup.fenced_code.block.markdown",
1760
+ "patterns": [
1761
+ {
1762
+ "begin": "(^|\\G)(\\s*)(.*)",
1763
+ "contentName": "meta.embedded.block.rust",
1764
+ "patterns": [
1765
+ {
1766
+ "include": "source.rust"
1767
+ }
1768
+ ],
1769
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1770
+ }
1771
+ ]
1772
+ },
1773
+ "fenced_code_block_scala": {
1774
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(scala|sbt)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1775
+ "beginCaptures": {
1776
+ "3": {
1777
+ "name": "punctuation.definition.markdown"
1778
+ },
1779
+ "4": {
1780
+ "name": "fenced_code.block.language.markdown"
1781
+ },
1782
+ "5": {
1783
+ "name": "fenced_code.block.language.attributes.markdown"
1784
+ }
1785
+ },
1786
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1787
+ "endCaptures": {
1788
+ "3": {
1789
+ "name": "punctuation.definition.markdown"
1790
+ }
1791
+ },
1792
+ "name": "markup.fenced_code.block.markdown",
1793
+ "patterns": [
1794
+ {
1795
+ "begin": "(^|\\G)(\\s*)(.*)",
1796
+ "contentName": "meta.embedded.block.scala",
1797
+ "patterns": [
1798
+ {
1799
+ "include": "source.scala"
1800
+ }
1801
+ ],
1802
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1803
+ }
1804
+ ]
1805
+ },
1806
+ "fenced_code_block_scss": {
1807
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(scss)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1808
+ "beginCaptures": {
1809
+ "3": {
1810
+ "name": "punctuation.definition.markdown"
1811
+ },
1812
+ "4": {
1813
+ "name": "fenced_code.block.language.markdown"
1814
+ },
1815
+ "5": {
1816
+ "name": "fenced_code.block.language.attributes.markdown"
1817
+ }
1818
+ },
1819
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1820
+ "endCaptures": {
1821
+ "3": {
1822
+ "name": "punctuation.definition.markdown"
1823
+ }
1824
+ },
1825
+ "name": "markup.fenced_code.block.markdown",
1826
+ "patterns": [
1827
+ {
1828
+ "begin": "(^|\\G)(\\s*)(.*)",
1829
+ "contentName": "meta.embedded.block.scss",
1830
+ "patterns": [
1831
+ {
1832
+ "include": "source.css.scss"
1833
+ }
1834
+ ],
1835
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1836
+ }
1837
+ ]
1838
+ },
1839
+ "fenced_code_block_shell": {
1840
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\{\\.bash.+?\\})((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1841
+ "beginCaptures": {
1842
+ "3": {
1843
+ "name": "punctuation.definition.markdown"
1844
+ },
1845
+ "4": {
1846
+ "name": "fenced_code.block.language.markdown"
1847
+ },
1848
+ "5": {
1849
+ "name": "fenced_code.block.language.attributes.markdown"
1850
+ }
1851
+ },
1852
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1853
+ "endCaptures": {
1854
+ "3": {
1855
+ "name": "punctuation.definition.markdown"
1856
+ }
1857
+ },
1858
+ "name": "markup.fenced_code.block.markdown",
1859
+ "patterns": [
1860
+ {
1861
+ "begin": "(^|\\G)(\\s*)(.*)",
1862
+ "contentName": "meta.embedded.block.shellscript",
1863
+ "patterns": [
1864
+ {
1865
+ "include": "source.shell"
1866
+ }
1867
+ ],
1868
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1869
+ }
1870
+ ]
1871
+ },
1872
+ "fenced_code_block_sql": {
1873
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(sql|ddl|dml)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1874
+ "beginCaptures": {
1875
+ "3": {
1876
+ "name": "punctuation.definition.markdown"
1877
+ },
1878
+ "4": {
1879
+ "name": "fenced_code.block.language.markdown"
1880
+ },
1881
+ "5": {
1882
+ "name": "fenced_code.block.language.attributes.markdown"
1883
+ }
1884
+ },
1885
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1886
+ "endCaptures": {
1887
+ "3": {
1888
+ "name": "punctuation.definition.markdown"
1889
+ }
1890
+ },
1891
+ "name": "markup.fenced_code.block.markdown",
1892
+ "patterns": [
1893
+ {
1894
+ "begin": "(^|\\G)(\\s*)(.*)",
1895
+ "contentName": "meta.embedded.block.sql",
1896
+ "patterns": [
1897
+ {
1898
+ "include": "source.sql"
1899
+ }
1900
+ ],
1901
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1902
+ }
1903
+ ]
1904
+ },
1905
+ "fenced_code_block_swift": {
1906
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(swift)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1907
+ "beginCaptures": {
1908
+ "3": {
1909
+ "name": "punctuation.definition.markdown"
1910
+ },
1911
+ "4": {
1912
+ "name": "fenced_code.block.language.markdown"
1913
+ },
1914
+ "5": {
1915
+ "name": "fenced_code.block.language.attributes.markdown"
1916
+ }
1917
+ },
1918
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1919
+ "endCaptures": {
1920
+ "3": {
1921
+ "name": "punctuation.definition.markdown"
1922
+ }
1923
+ },
1924
+ "name": "markup.fenced_code.block.markdown",
1925
+ "patterns": [
1926
+ {
1927
+ "begin": "(^|\\G)(\\s*)(.*)",
1928
+ "contentName": "meta.embedded.block.swift",
1929
+ "patterns": [
1930
+ {
1931
+ "include": "source.swift"
1932
+ }
1933
+ ],
1934
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1935
+ }
1936
+ ]
1937
+ },
1938
+ "fenced_code_block_ts": {
1939
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(typescript|ts)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1940
+ "beginCaptures": {
1941
+ "3": {
1942
+ "name": "punctuation.definition.markdown"
1943
+ },
1944
+ "4": {
1945
+ "name": "fenced_code.block.language.markdown"
1946
+ },
1947
+ "5": {
1948
+ "name": "fenced_code.block.language.attributes.markdown"
1949
+ }
1950
+ },
1951
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1952
+ "endCaptures": {
1953
+ "3": {
1954
+ "name": "punctuation.definition.markdown"
1955
+ }
1956
+ },
1957
+ "name": "markup.fenced_code.block.markdown",
1958
+ "patterns": [
1959
+ {
1960
+ "begin": "(^|\\G)(\\s*)(.*)",
1961
+ "contentName": "meta.embedded.block.typescript",
1962
+ "patterns": [
1963
+ {
1964
+ "include": "source.ts"
1965
+ }
1966
+ ],
1967
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
1968
+ }
1969
+ ]
1970
+ },
1971
+ "fenced_code_block_tsx": {
1972
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(tsx)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1973
+ "beginCaptures": {
1974
+ "3": {
1975
+ "name": "punctuation.definition.markdown"
1976
+ },
1977
+ "4": {
1978
+ "name": "fenced_code.block.language.markdown"
1979
+ },
1980
+ "5": {
1981
+ "name": "fenced_code.block.language.attributes.markdown"
1982
+ }
1983
+ },
1984
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1985
+ "endCaptures": {
1986
+ "3": {
1987
+ "name": "punctuation.definition.markdown"
1988
+ }
1989
+ },
1990
+ "name": "markup.fenced_code.block.markdown",
1991
+ "patterns": [
1992
+ {
1993
+ "begin": "(^|\\G)(\\s*)(.*)",
1994
+ "contentName": "meta.embedded.block.typescriptreact",
1995
+ "patterns": [
1996
+ {
1997
+ "include": "source.tsx"
1998
+ }
1999
+ ],
2000
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
2001
+ }
2002
+ ]
2003
+ },
2004
+ "fenced_code_block_twig": {
2005
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(twig)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2006
+ "beginCaptures": {
2007
+ "3": {
2008
+ "name": "punctuation.definition.markdown"
2009
+ },
2010
+ "4": {
2011
+ "name": "fenced_code.block.language.markdown"
2012
+ },
2013
+ "5": {
2014
+ "name": "fenced_code.block.language.attributes.markdown"
2015
+ }
2016
+ },
2017
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2018
+ "endCaptures": {
2019
+ "3": {
2020
+ "name": "punctuation.definition.markdown"
2021
+ }
2022
+ },
2023
+ "name": "markup.fenced_code.block.markdown",
2024
+ "patterns": [
2025
+ {
2026
+ "begin": "(^|\\G)(\\s*)(.*)",
2027
+ "contentName": "meta.embedded.block.twig",
2028
+ "patterns": [
2029
+ {
2030
+ "include": "source.twig"
2031
+ }
2032
+ ],
2033
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
2034
+ }
2035
+ ]
2036
+ },
2037
+ "fenced_code_block_unknown": {
2038
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?=([^`]*)?$)",
2039
+ "beginCaptures": {
2040
+ "3": {
2041
+ "name": "punctuation.definition.markdown"
2042
+ },
2043
+ "4": {
2044
+ "name": "fenced_code.block.language"
2045
+ }
2046
+ },
2047
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2048
+ "endCaptures": {
2049
+ "3": {
2050
+ "name": "punctuation.definition.markdown"
2051
+ }
2052
+ },
2053
+ "name": "markup.fenced_code.block.markdown"
2054
+ },
2055
+ "fenced_code_block_vs_net": {
2056
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(vb)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2057
+ "beginCaptures": {
2058
+ "3": {
2059
+ "name": "punctuation.definition.markdown"
2060
+ },
2061
+ "4": {
2062
+ "name": "fenced_code.block.language.markdown"
2063
+ },
2064
+ "5": {
2065
+ "name": "fenced_code.block.language.attributes.markdown"
2066
+ }
2067
+ },
2068
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2069
+ "endCaptures": {
2070
+ "3": {
2071
+ "name": "punctuation.definition.markdown"
2072
+ }
2073
+ },
2074
+ "name": "markup.fenced_code.block.markdown",
2075
+ "patterns": [
2076
+ {
2077
+ "begin": "(^|\\G)(\\s*)(.*)",
2078
+ "contentName": "meta.embedded.block.vs_net",
2079
+ "patterns": [
2080
+ {
2081
+ "include": "source.asp.vb.net"
2082
+ }
2083
+ ],
2084
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
2085
+ }
2086
+ ]
2087
+ },
2088
+ "fenced_code_block_xml": {
2089
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(xml|xsd|tld|jsp|pt|cpt|dtml|rss|opml)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2090
+ "beginCaptures": {
2091
+ "3": {
2092
+ "name": "punctuation.definition.markdown"
2093
+ },
2094
+ "4": {
2095
+ "name": "fenced_code.block.language.markdown"
2096
+ },
2097
+ "5": {
2098
+ "name": "fenced_code.block.language.attributes.markdown"
2099
+ }
2100
+ },
2101
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2102
+ "endCaptures": {
2103
+ "3": {
2104
+ "name": "punctuation.definition.markdown"
2105
+ }
2106
+ },
2107
+ "name": "markup.fenced_code.block.markdown",
2108
+ "patterns": [
2109
+ {
2110
+ "begin": "(^|\\G)(\\s*)(.*)",
2111
+ "contentName": "meta.embedded.block.xml",
2112
+ "patterns": [
2113
+ {
2114
+ "include": "text.xml"
2115
+ }
2116
+ ],
2117
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
2118
+ }
2119
+ ]
2120
+ },
2121
+ "fenced_code_block_xsl": {
2122
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(xsl|xslt)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2123
+ "beginCaptures": {
2124
+ "3": {
2125
+ "name": "punctuation.definition.markdown"
2126
+ },
2127
+ "4": {
2128
+ "name": "fenced_code.block.language.markdown"
2129
+ },
2130
+ "5": {
2131
+ "name": "fenced_code.block.language.attributes.markdown"
2132
+ }
2133
+ },
2134
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2135
+ "endCaptures": {
2136
+ "3": {
2137
+ "name": "punctuation.definition.markdown"
2138
+ }
2139
+ },
2140
+ "name": "markup.fenced_code.block.markdown",
2141
+ "patterns": [
2142
+ {
2143
+ "begin": "(^|\\G)(\\s*)(.*)",
2144
+ "contentName": "meta.embedded.block.xsl",
2145
+ "patterns": [
2146
+ {
2147
+ "include": "text.xml.xsl"
2148
+ }
2149
+ ],
2150
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
2151
+ }
2152
+ ]
2153
+ },
2154
+ "fenced_code_block_yaml": {
2155
+ "begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(yaml|yml)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2156
+ "beginCaptures": {
2157
+ "3": {
2158
+ "name": "punctuation.definition.markdown"
2159
+ },
2160
+ "4": {
2161
+ "name": "fenced_code.block.language.markdown"
2162
+ },
2163
+ "5": {
2164
+ "name": "fenced_code.block.language.attributes.markdown"
2165
+ }
2166
+ },
2167
+ "end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2168
+ "endCaptures": {
2169
+ "3": {
2170
+ "name": "punctuation.definition.markdown"
2171
+ }
2172
+ },
2173
+ "name": "markup.fenced_code.block.markdown",
2174
+ "patterns": [
2175
+ {
2176
+ "begin": "(^|\\G)(\\s*)(.*)",
2177
+ "contentName": "meta.embedded.block.yaml",
2178
+ "patterns": [
2179
+ {
2180
+ "include": "source.yaml"
2181
+ }
2182
+ ],
2183
+ "while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)"
2184
+ }
2185
+ ]
2186
+ },
2187
+ "frontMatter": {
2188
+ "begin": "\\A-{3}\\s*$",
2189
+ "contentName": "meta.embedded.block.frontmatter",
2190
+ "end": "(^|\\G)-{3}|\\.{3}\\s*$",
2191
+ "patterns": [
2192
+ {
2193
+ "include": "source.yaml"
2194
+ }
2195
+ ]
2196
+ },
2197
+ "heading": {
2198
+ "captures": {
2199
+ "1": {
2200
+ "patterns": [
2201
+ {
2202
+ "captures": {
2203
+ "1": {
2204
+ "name": "punctuation.definition.heading.markdown"
2205
+ },
2206
+ "2": {
2207
+ "name": "entity.name.section.markdown",
2208
+ "patterns": [
2209
+ {
2210
+ "include": "#inline"
2211
+ },
2212
+ {
2213
+ "include": "text.html.derivative"
2214
+ }
2215
+ ]
2216
+ },
2217
+ "3": {
2218
+ "name": "punctuation.definition.heading.markdown"
2219
+ }
2220
+ },
2221
+ "match": "(#{6})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2222
+ "name": "heading.6.markdown"
2223
+ },
2224
+ {
2225
+ "captures": {
2226
+ "1": {
2227
+ "name": "punctuation.definition.heading.markdown"
2228
+ },
2229
+ "2": {
2230
+ "name": "entity.name.section.markdown",
2231
+ "patterns": [
2232
+ {
2233
+ "include": "#inline"
2234
+ },
2235
+ {
2236
+ "include": "text.html.derivative"
2237
+ }
2238
+ ]
2239
+ },
2240
+ "3": {
2241
+ "name": "punctuation.definition.heading.markdown"
2242
+ }
2243
+ },
2244
+ "match": "(#{5})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2245
+ "name": "heading.5.markdown"
2246
+ },
2247
+ {
2248
+ "captures": {
2249
+ "1": {
2250
+ "name": "punctuation.definition.heading.markdown"
2251
+ },
2252
+ "2": {
2253
+ "name": "entity.name.section.markdown",
2254
+ "patterns": [
2255
+ {
2256
+ "include": "#inline"
2257
+ },
2258
+ {
2259
+ "include": "text.html.derivative"
2260
+ }
2261
+ ]
2262
+ },
2263
+ "3": {
2264
+ "name": "punctuation.definition.heading.markdown"
2265
+ }
2266
+ },
2267
+ "match": "(#{4})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2268
+ "name": "heading.4.markdown"
2269
+ },
2270
+ {
2271
+ "captures": {
2272
+ "1": {
2273
+ "name": "punctuation.definition.heading.markdown"
2274
+ },
2275
+ "2": {
2276
+ "name": "entity.name.section.markdown",
2277
+ "patterns": [
2278
+ {
2279
+ "include": "#inline"
2280
+ },
2281
+ {
2282
+ "include": "text.html.derivative"
2283
+ }
2284
+ ]
2285
+ },
2286
+ "3": {
2287
+ "name": "punctuation.definition.heading.markdown"
2288
+ }
2289
+ },
2290
+ "match": "(#{3})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2291
+ "name": "heading.3.markdown"
2292
+ },
2293
+ {
2294
+ "captures": {
2295
+ "1": {
2296
+ "name": "punctuation.definition.heading.markdown"
2297
+ },
2298
+ "2": {
2299
+ "name": "entity.name.section.markdown",
2300
+ "patterns": [
2301
+ {
2302
+ "include": "#inline"
2303
+ },
2304
+ {
2305
+ "include": "text.html.derivative"
2306
+ }
2307
+ ]
2308
+ },
2309
+ "3": {
2310
+ "name": "punctuation.definition.heading.markdown"
2311
+ }
2312
+ },
2313
+ "match": "(#{2})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2314
+ "name": "heading.2.markdown"
2315
+ },
2316
+ {
2317
+ "captures": {
2318
+ "1": {
2319
+ "name": "punctuation.definition.heading.markdown"
2320
+ },
2321
+ "2": {
2322
+ "name": "entity.name.section.markdown",
2323
+ "patterns": [
2324
+ {
2325
+ "include": "#inline"
2326
+ },
2327
+ {
2328
+ "include": "text.html.derivative"
2329
+ }
2330
+ ]
2331
+ },
2332
+ "3": {
2333
+ "name": "punctuation.definition.heading.markdown"
2334
+ }
2335
+ },
2336
+ "match": "(#{1})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2337
+ "name": "heading.1.markdown"
2338
+ }
2339
+ ]
2340
+ }
2341
+ },
2342
+ "match": "(?:^|\\G)[ ]{0,3}(#{1,6}\\s+(.*?)(\\s+#{1,6})?\\s*)$",
2343
+ "name": "markup.heading.markdown"
2344
+ },
2345
+ "heading-setext": {
2346
+ "patterns": [
2347
+ {
2348
+ "match": "^(={3,})(?=[ \\t]*$\\n?)",
2349
+ "name": "markup.heading.setext.1.markdown"
2350
+ },
2351
+ {
2352
+ "match": "^(-{3,})(?=[ \\t]*$\\n?)",
2353
+ "name": "markup.heading.setext.2.markdown"
2354
+ }
2355
+ ]
2356
+ },
2357
+ "html": {
2358
+ "patterns": [
2359
+ {
2360
+ "begin": "(^|\\G)\\s*(<!--)",
2361
+ "captures": {
2362
+ "1": {
2363
+ "name": "punctuation.definition.comment.html"
2364
+ },
2365
+ "2": {
2366
+ "name": "punctuation.definition.comment.html"
2367
+ }
2368
+ },
2369
+ "end": "(-->)",
2370
+ "name": "comment.block.html"
2371
+ },
2372
+ {
2373
+ "begin": "(?i)(^|\\G)\\s*(?=<(script|style|pre)(\\s|$|>)(?!.*?</(script|style|pre)>))",
2374
+ "end": "(?i)(.*)((</)(script|style|pre)(>))",
2375
+ "endCaptures": {
2376
+ "1": {
2377
+ "patterns": [
2378
+ {
2379
+ "include": "text.html.derivative"
2380
+ }
2381
+ ]
2382
+ },
2383
+ "2": {
2384
+ "name": "meta.tag.structure.$4.end.html"
2385
+ },
2386
+ "3": {
2387
+ "name": "punctuation.definition.tag.begin.html"
2388
+ },
2389
+ "4": {
2390
+ "name": "entity.name.tag.html"
2391
+ },
2392
+ "5": {
2393
+ "name": "punctuation.definition.tag.end.html"
2394
+ }
2395
+ },
2396
+ "patterns": [
2397
+ {
2398
+ "begin": "(\\s*|$)",
2399
+ "patterns": [
2400
+ {
2401
+ "include": "text.html.derivative"
2402
+ }
2403
+ ],
2404
+ "while": "(?i)^(?!.*</(script|style|pre)>)"
2405
+ }
2406
+ ]
2407
+ },
2408
+ {
2409
+ "begin": "(?i)(^|\\G)\\s*(?=</?[a-zA-Z]+[^\\s/&gt;]*(\\s|$|/?>))",
2410
+ "patterns": [
2411
+ {
2412
+ "include": "text.html.derivative"
2413
+ }
2414
+ ],
2415
+ "while": "^(?!\\s*$)"
2416
+ },
2417
+ {
2418
+ "begin": "(^|\\G)\\s*(?=(<[a-zA-Z0-9\\-](/?>|\\s.*?>)|</[a-zA-Z0-9\\-]>)\\s*$)",
2419
+ "patterns": [
2420
+ {
2421
+ "include": "text.html.derivative"
2422
+ }
2423
+ ],
2424
+ "while": "^(?!\\s*$)"
2425
+ }
2426
+ ]
2427
+ },
2428
+ "image-inline": {
2429
+ "captures": {
2430
+ "1": {
2431
+ "name": "punctuation.definition.link.description.begin.markdown"
2432
+ },
2433
+ "10": {
2434
+ "name": "markup.underline.link.image.markdown"
2435
+ },
2436
+ "12": {
2437
+ "name": "string.other.link.description.title.markdown"
2438
+ },
2439
+ "13": {
2440
+ "name": "punctuation.definition.string.begin.markdown"
2441
+ },
2442
+ "14": {
2443
+ "name": "punctuation.definition.string.end.markdown"
2444
+ },
2445
+ "15": {
2446
+ "name": "string.other.link.description.title.markdown"
2447
+ },
2448
+ "16": {
2449
+ "name": "punctuation.definition.string.begin.markdown"
2450
+ },
2451
+ "17": {
2452
+ "name": "punctuation.definition.string.end.markdown"
2453
+ },
2454
+ "18": {
2455
+ "name": "string.other.link.description.title.markdown"
2456
+ },
2457
+ "19": {
2458
+ "name": "punctuation.definition.string.begin.markdown"
2459
+ },
2460
+ "2": {
2461
+ "name": "string.other.link.description.markdown"
2462
+ },
2463
+ "20": {
2464
+ "name": "punctuation.definition.string.end.markdown"
2465
+ },
2466
+ "21": {
2467
+ "name": "punctuation.definition.metadata.markdown"
2468
+ },
2469
+ "4": {
2470
+ "name": "punctuation.definition.link.description.end.markdown"
2471
+ },
2472
+ "5": {
2473
+ "name": "punctuation.definition.metadata.markdown"
2474
+ },
2475
+ "7": {
2476
+ "name": "punctuation.definition.link.markdown"
2477
+ },
2478
+ "8": {
2479
+ "name": "markup.underline.link.image.markdown"
2480
+ },
2481
+ "9": {
2482
+ "name": "punctuation.definition.link.markdown"
2483
+ }
2484
+ },
2485
+ "match": "(?x)\n (\\!\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])\n # Match the link text.\n (\\() # Opening paren for url\n # The url\n [ \\t]*\n (\n (<)((?:\\\\[<>]|[^<>\\n])*)(>)\n | ((?<url>(?>[^\\s()]+)|\\(\\g<url>*\\))*)\n )\n [ \\t]*\n (?:\n ((\\().+?(\\))) # Match title in parens…\n | ((\").+?(\")) # or in double quotes…\n | ((').+?(')) # or in single quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n (\\))\n",
2486
+ "name": "meta.image.inline.markdown"
2487
+ },
2488
+ "image-ref": {
2489
+ "captures": {
2490
+ "1": {
2491
+ "name": "punctuation.definition.link.description.begin.markdown"
2492
+ },
2493
+ "2": {
2494
+ "name": "string.other.link.description.markdown"
2495
+ },
2496
+ "4": {
2497
+ "name": "punctuation.definition.link.description.end.markdown"
2498
+ },
2499
+ "5": {
2500
+ "name": "punctuation.definition.constant.markdown"
2501
+ },
2502
+ "6": {
2503
+ "name": "constant.other.reference.link.markdown"
2504
+ },
2505
+ "7": {
2506
+ "name": "punctuation.definition.constant.markdown"
2507
+ }
2508
+ },
2509
+ "match": "(\\!\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])[ ]?(\\[)(.*?)(\\])",
2510
+ "name": "meta.image.reference.markdown"
2511
+ },
2512
+ "inline": {
2513
+ "patterns": [
2514
+ {
2515
+ "include": "#ampersand"
2516
+ },
2517
+ {
2518
+ "include": "#bracket"
2519
+ },
2520
+ {
2521
+ "include": "#bold"
2522
+ },
2523
+ {
2524
+ "include": "#italic"
2525
+ },
2526
+ {
2527
+ "include": "#raw"
2528
+ },
2529
+ {
2530
+ "include": "#strikethrough"
2531
+ },
2532
+ {
2533
+ "include": "#escape"
2534
+ },
2535
+ {
2536
+ "include": "#image-inline"
2537
+ },
2538
+ {
2539
+ "include": "#image-ref"
2540
+ },
2541
+ {
2542
+ "include": "#link-email"
2543
+ },
2544
+ {
2545
+ "include": "#link-inet"
2546
+ },
2547
+ {
2548
+ "include": "#link-inline"
2549
+ },
2550
+ {
2551
+ "include": "#link-ref"
2552
+ },
2553
+ {
2554
+ "include": "#link-ref-literal"
2555
+ },
2556
+ {
2557
+ "include": "#link-ref-shortcut"
2558
+ }
2559
+ ]
2560
+ },
2561
+ "italic": {
2562
+ "begin": "(?x) (?<open>(\\*(?=\\w)|(?<!\\w)\\*|(?<!\\w)\\b_))(?=\\S) # Open\n (?=\n (\n <[^>]*+> # HTML tags\n | (?<raw>`+)([^`]|(?!(?<!`)\\k<raw>(?!`))`)*+\\k<raw>\n # Raw\n | \\\\[\\\\`*_{}\\[\\]()#.!+\\->]?+ # Escapes\n | \\[\n (\n (?<square> # Named group\n [^\\[\\]\\\\] # Match most chars\n | \\\\. # Escaped chars\n | \\[ \\g<square>*+ \\] # Nested brackets\n )*+\n \\]\n (\n ( # Reference Link\n [ ]? # Optional space\n \\[[^\\]]*+\\] # Ref name\n )\n | ( # Inline Link\n \\( # Opening paren\n [ \\t]*+ # Optional whtiespace\n <?(.*?)>? # URL\n [ \\t]*+ # Optional whtiespace\n ( # Optional Title\n (?<title>['\"])\n (.*?)\n \\k<title>\n )?\n \\)\n )\n )\n )\n | \\k<open>\\k<open> # Must be bold closer\n | (?!(?<=\\S)\\k<open>). # Everything besides\n # style closer\n )++\n (?<=\\S)(?=_\\b|\\*)\\k<open> # Close\n )\n",
2563
+ "captures": {
2564
+ "1": {
2565
+ "name": "punctuation.definition.italic.markdown"
2566
+ }
2567
+ },
2568
+ "end": "(?<=\\S)(\\1)((?!\\1)|(?=\\1\\1))",
2569
+ "name": "markup.italic.markdown",
2570
+ "patterns": [
2571
+ {
2572
+ "applyEndPatternLast": 1,
2573
+ "begin": "(?=<[^>]*?>)",
2574
+ "end": "(?<=>)",
2575
+ "patterns": [
2576
+ {
2577
+ "include": "text.html.derivative"
2578
+ }
2579
+ ]
2580
+ },
2581
+ {
2582
+ "include": "#escape"
2583
+ },
2584
+ {
2585
+ "include": "#ampersand"
2586
+ },
2587
+ {
2588
+ "include": "#bracket"
2589
+ },
2590
+ {
2591
+ "include": "#raw"
2592
+ },
2593
+ {
2594
+ "include": "#bold"
2595
+ },
2596
+ {
2597
+ "include": "#image-inline"
2598
+ },
2599
+ {
2600
+ "include": "#link-inline"
2601
+ },
2602
+ {
2603
+ "include": "#link-inet"
2604
+ },
2605
+ {
2606
+ "include": "#link-email"
2607
+ },
2608
+ {
2609
+ "include": "#image-ref"
2610
+ },
2611
+ {
2612
+ "include": "#link-ref-literal"
2613
+ },
2614
+ {
2615
+ "include": "#link-ref"
2616
+ },
2617
+ {
2618
+ "include": "#link-ref-shortcut"
2619
+ },
2620
+ {
2621
+ "include": "#strikethrough"
2622
+ }
2623
+ ]
2624
+ },
2625
+ "link-def": {
2626
+ "captures": {
2627
+ "1": {
2628
+ "name": "punctuation.definition.constant.markdown"
2629
+ },
2630
+ "10": {
2631
+ "name": "punctuation.definition.string.begin.markdown"
2632
+ },
2633
+ "11": {
2634
+ "name": "punctuation.definition.string.end.markdown"
2635
+ },
2636
+ "12": {
2637
+ "name": "string.other.link.description.title.markdown"
2638
+ },
2639
+ "13": {
2640
+ "name": "punctuation.definition.string.begin.markdown"
2641
+ },
2642
+ "14": {
2643
+ "name": "punctuation.definition.string.end.markdown"
2644
+ },
2645
+ "15": {
2646
+ "name": "string.other.link.description.title.markdown"
2647
+ },
2648
+ "16": {
2649
+ "name": "punctuation.definition.string.begin.markdown"
2650
+ },
2651
+ "17": {
2652
+ "name": "punctuation.definition.string.end.markdown"
2653
+ },
2654
+ "2": {
2655
+ "name": "constant.other.reference.link.markdown"
2656
+ },
2657
+ "3": {
2658
+ "name": "punctuation.definition.constant.markdown"
2659
+ },
2660
+ "4": {
2661
+ "name": "punctuation.separator.key-value.markdown"
2662
+ },
2663
+ "5": {
2664
+ "name": "punctuation.definition.link.markdown"
2665
+ },
2666
+ "6": {
2667
+ "name": "markup.underline.link.markdown"
2668
+ },
2669
+ "7": {
2670
+ "name": "punctuation.definition.link.markdown"
2671
+ },
2672
+ "8": {
2673
+ "name": "markup.underline.link.markdown"
2674
+ },
2675
+ "9": {
2676
+ "name": "string.other.link.description.title.markdown"
2677
+ }
2678
+ },
2679
+ "match": "(?x)\n \\s* # Leading whitespace\n (\\[)([^]]+?)(\\])(:) # Reference name\n [ \\t]* # Optional whitespace\n (?:(<)((?:\\\\[<>]|[^<>\\n])*)(>)|(\\S+?)) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in parens…\n | ((\").+?(\")) # or in double quotes…\n | ((').+?(')) # or in single quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n $\n",
2680
+ "name": "meta.link.reference.def.markdown"
2681
+ },
2682
+ "link-email": {
2683
+ "captures": {
2684
+ "1": {
2685
+ "name": "punctuation.definition.link.markdown"
2686
+ },
2687
+ "2": {
2688
+ "name": "markup.underline.link.markdown"
2689
+ },
2690
+ "4": {
2691
+ "name": "punctuation.definition.link.markdown"
2692
+ }
2693
+ },
2694
+ "match": "(<)((?:mailto:)?[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)(>)",
2695
+ "name": "meta.link.email.lt-gt.markdown"
2696
+ },
2697
+ "link-inet": {
2698
+ "captures": {
2699
+ "1": {
2700
+ "name": "punctuation.definition.link.markdown"
2701
+ },
2702
+ "2": {
2703
+ "name": "markup.underline.link.markdown"
2704
+ },
2705
+ "3": {
2706
+ "name": "punctuation.definition.link.markdown"
2707
+ }
2708
+ },
2709
+ "match": "(<)((?:https?|ftp)://.*?)(>)",
2710
+ "name": "meta.link.inet.markdown"
2711
+ },
2712
+ "link-inline": {
2713
+ "captures": {
2714
+ "1": {
2715
+ "name": "punctuation.definition.link.title.begin.markdown"
2716
+ },
2717
+ "10": {
2718
+ "name": "markup.underline.link.markdown"
2719
+ },
2720
+ "12": {
2721
+ "name": "string.other.link.description.title.markdown"
2722
+ },
2723
+ "13": {
2724
+ "name": "punctuation.definition.string.begin.markdown"
2725
+ },
2726
+ "14": {
2727
+ "name": "punctuation.definition.string.end.markdown"
2728
+ },
2729
+ "15": {
2730
+ "name": "string.other.link.description.title.markdown"
2731
+ },
2732
+ "16": {
2733
+ "name": "punctuation.definition.string.begin.markdown"
2734
+ },
2735
+ "17": {
2736
+ "name": "punctuation.definition.string.end.markdown"
2737
+ },
2738
+ "18": {
2739
+ "name": "string.other.link.description.title.markdown"
2740
+ },
2741
+ "19": {
2742
+ "name": "punctuation.definition.string.begin.markdown"
2743
+ },
2744
+ "2": {
2745
+ "name": "string.other.link.title.markdown",
2746
+ "patterns": [
2747
+ {
2748
+ "include": "#raw"
2749
+ },
2750
+ {
2751
+ "include": "#bold"
2752
+ },
2753
+ {
2754
+ "include": "#italic"
2755
+ },
2756
+ {
2757
+ "include": "#strikethrough"
2758
+ },
2759
+ {
2760
+ "include": "#image-inline"
2761
+ }
2762
+ ]
2763
+ },
2764
+ "20": {
2765
+ "name": "punctuation.definition.string.end.markdown"
2766
+ },
2767
+ "21": {
2768
+ "name": "punctuation.definition.metadata.markdown"
2769
+ },
2770
+ "4": {
2771
+ "name": "punctuation.definition.link.title.end.markdown"
2772
+ },
2773
+ "5": {
2774
+ "name": "punctuation.definition.metadata.markdown"
2775
+ },
2776
+ "7": {
2777
+ "name": "punctuation.definition.link.markdown"
2778
+ },
2779
+ "8": {
2780
+ "name": "markup.underline.link.markdown"
2781
+ },
2782
+ "9": {
2783
+ "name": "punctuation.definition.link.markdown"
2784
+ }
2785
+ },
2786
+ "match": "(?x)\n (\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])\n # Match the link text.\n (\\() # Opening paren for url\n # The url\n [ \\t]*\n (\n (<)((?:\\\\[<>]|[^<>\\n])*)(>)\n | ((?<url>(?>[^\\s()]+)|\\(\\g<url>*\\))*)\n )\n [ \\t]*\n # The title \n (?:\n ((\\()[^()]*(\\))) # Match title in parens…\n | ((\")[^\"]*(\")) # or in double quotes…\n | ((')[^']*(')) # or in single quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n (\\))\n",
2787
+ "name": "meta.link.inline.markdown"
2788
+ },
2789
+ "link-ref": {
2790
+ "captures": {
2791
+ "1": {
2792
+ "name": "punctuation.definition.link.title.begin.markdown"
2793
+ },
2794
+ "2": {
2795
+ "name": "string.other.link.title.markdown",
2796
+ "patterns": [
2797
+ {
2798
+ "include": "#raw"
2799
+ },
2800
+ {
2801
+ "include": "#bold"
2802
+ },
2803
+ {
2804
+ "include": "#italic"
2805
+ },
2806
+ {
2807
+ "include": "#strikethrough"
2808
+ },
2809
+ {
2810
+ "include": "#image-inline"
2811
+ }
2812
+ ]
2813
+ },
2814
+ "4": {
2815
+ "name": "punctuation.definition.link.title.end.markdown"
2816
+ },
2817
+ "5": {
2818
+ "name": "punctuation.definition.constant.begin.markdown"
2819
+ },
2820
+ "6": {
2821
+ "name": "constant.other.reference.link.markdown"
2822
+ },
2823
+ "7": {
2824
+ "name": "punctuation.definition.constant.end.markdown"
2825
+ }
2826
+ },
2827
+ "match": "(?<![\\]\\\\])(\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])(\\[)([^\\]]*+)(\\])",
2828
+ "name": "meta.link.reference.markdown"
2829
+ },
2830
+ "link-ref-literal": {
2831
+ "captures": {
2832
+ "1": {
2833
+ "name": "punctuation.definition.link.title.begin.markdown"
2834
+ },
2835
+ "2": {
2836
+ "name": "string.other.link.title.markdown"
2837
+ },
2838
+ "4": {
2839
+ "name": "punctuation.definition.link.title.end.markdown"
2840
+ },
2841
+ "5": {
2842
+ "name": "punctuation.definition.constant.begin.markdown"
2843
+ },
2844
+ "6": {
2845
+ "name": "punctuation.definition.constant.end.markdown"
2846
+ }
2847
+ },
2848
+ "match": "(?<![\\]\\\\])(\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])[ ]?(\\[)(\\])",
2849
+ "name": "meta.link.reference.literal.markdown"
2850
+ },
2851
+ "link-ref-shortcut": {
2852
+ "captures": {
2853
+ "1": {
2854
+ "name": "punctuation.definition.link.title.begin.markdown"
2855
+ },
2856
+ "2": {
2857
+ "name": "string.other.link.title.markdown"
2858
+ },
2859
+ "3": {
2860
+ "name": "punctuation.definition.link.title.end.markdown"
2861
+ }
2862
+ },
2863
+ "match": "(?<![\\]\\\\])(\\[)((?:[^\\s\\[\\]\\\\]|\\\\[\\[\\]])+?)((?<!\\\\)\\])",
2864
+ "name": "meta.link.reference.markdown"
2865
+ },
2866
+ "list_paragraph": {
2867
+ "begin": "(^|\\G)(?=\\S)(?![*+->]\\s|[0-9]+\\.\\s)",
2868
+ "name": "meta.paragraph.markdown",
2869
+ "patterns": [
2870
+ {
2871
+ "include": "#inline"
2872
+ },
2873
+ {
2874
+ "include": "text.html.derivative"
2875
+ },
2876
+ {
2877
+ "include": "#heading-setext"
2878
+ }
2879
+ ],
2880
+ "while": "(^|\\G)(?!\\s*$|#|[ ]{0,3}([-*_>][ ]{2,}){3,}[ \\t]*$\\n?|[ ]{0,3}[*+->]|[ ]{0,3}[0-9]+\\.)"
2881
+ },
2882
+ "lists": {
2883
+ "patterns": [
2884
+ {
2885
+ "begin": "(^|\\G)([ ]{0,3})([*+-])([ \\t])",
2886
+ "beginCaptures": {
2887
+ "3": {
2888
+ "name": "punctuation.definition.list.begin.markdown"
2889
+ }
2890
+ },
2891
+ "comment": "Currently does not support un-indented second lines.",
2892
+ "name": "markup.list.unnumbered.markdown",
2893
+ "patterns": [
2894
+ {
2895
+ "include": "#block"
2896
+ },
2897
+ {
2898
+ "include": "#list_paragraph"
2899
+ }
2900
+ ],
2901
+ "while": "((^|\\G)([ ]{2,4}|\\t))|(^[ \\t]*$)"
2902
+ },
2903
+ {
2904
+ "begin": "(^|\\G)([ ]{0,3})([0-9]+[\\.\\)])([ \\t])",
2905
+ "beginCaptures": {
2906
+ "3": {
2907
+ "name": "punctuation.definition.list.begin.markdown"
2908
+ }
2909
+ },
2910
+ "name": "markup.list.numbered.markdown",
2911
+ "patterns": [
2912
+ {
2913
+ "include": "#block"
2914
+ },
2915
+ {
2916
+ "include": "#list_paragraph"
2917
+ }
2918
+ ],
2919
+ "while": "((^|\\G)([ ]{2,4}|\\t))|(^[ \\t]*$)"
2920
+ }
2921
+ ]
2922
+ },
2923
+ "paragraph": {
2924
+ "begin": "(^|\\G)[ ]{0,3}(?=[^ \\t\\n])",
2925
+ "name": "meta.paragraph.markdown",
2926
+ "patterns": [
2927
+ {
2928
+ "include": "#inline"
2929
+ },
2930
+ {
2931
+ "include": "text.html.derivative"
2932
+ },
2933
+ {
2934
+ "include": "#heading-setext"
2935
+ }
2936
+ ],
2937
+ "while": "(^|\\G)((?=\\s*[-=]{3,}\\s*$)|[ ]{4,}(?=[^ \\t\\n]))"
2938
+ },
2939
+ "raw": {
2940
+ "captures": {
2941
+ "1": {
2942
+ "name": "punctuation.definition.raw.markdown"
2943
+ },
2944
+ "3": {
2945
+ "name": "punctuation.definition.raw.markdown"
2946
+ }
2947
+ },
2948
+ "match": "(`+)((?:[^`]|(?!(?<!`)\\1(?!`))`)*+)(\\1)",
2949
+ "name": "markup.inline.raw.string.markdown"
2950
+ },
2951
+ "raw_block": {
2952
+ "begin": "(^|\\G)([ ]{4}|\\t)",
2953
+ "name": "markup.raw.block.markdown",
2954
+ "while": "(^|\\G)([ ]{4}|\\t)"
2955
+ },
2956
+ "separator": {
2957
+ "match": "(^|\\G)[ ]{0,3}([\\*\\-\\_])([ ]{0,2}\\2){2,}[ \\t]*$\\n?",
2958
+ "name": "meta.separator.markdown"
2959
+ },
2960
+ "strikethrough": {
2961
+ "captures": {
2962
+ "1": {
2963
+ "name": "punctuation.definition.strikethrough.markdown"
2964
+ },
2965
+ "2": {
2966
+ "patterns": [
2967
+ {
2968
+ "applyEndPatternLast": 1,
2969
+ "begin": "(?=<[^>]*?>)",
2970
+ "end": "(?<=>)",
2971
+ "patterns": [
2972
+ {
2973
+ "include": "text.html.derivative"
2974
+ }
2975
+ ]
2976
+ },
2977
+ {
2978
+ "include": "#escape"
2979
+ },
2980
+ {
2981
+ "include": "#ampersand"
2982
+ },
2983
+ {
2984
+ "include": "#bracket"
2985
+ },
2986
+ {
2987
+ "include": "#raw"
2988
+ },
2989
+ {
2990
+ "include": "#bold"
2991
+ },
2992
+ {
2993
+ "include": "#italic"
2994
+ },
2995
+ {
2996
+ "include": "#image-inline"
2997
+ },
2998
+ {
2999
+ "include": "#link-inline"
3000
+ },
3001
+ {
3002
+ "include": "#link-inet"
3003
+ },
3004
+ {
3005
+ "include": "#link-email"
3006
+ },
3007
+ {
3008
+ "include": "#image-ref"
3009
+ },
3010
+ {
3011
+ "include": "#link-ref-literal"
3012
+ },
3013
+ {
3014
+ "include": "#link-ref"
3015
+ },
3016
+ {
3017
+ "include": "#link-ref-shortcut"
3018
+ }
3019
+ ]
3020
+ },
3021
+ "3": {
3022
+ "name": "punctuation.definition.strikethrough.markdown"
3023
+ }
3024
+ },
3025
+ "match": "(?<!\\\\)(~{2,})((?:[^~]|(?!(?<![~\\\\])\\1(?!~))~)*+)(\\1)",
3026
+ "name": "markup.strikethrough.markdown"
3027
+ },
3028
+ "table": {
3029
+ "begin": "(^|\\G)(\\|)(?=[^|].+\\|\\s*$)",
3030
+ "beginCaptures": {
3031
+ "2": {
3032
+ "name": "punctuation.definition.table.markdown"
3033
+ }
3034
+ },
3035
+ "name": "markup.table.markdown",
3036
+ "patterns": [
3037
+ {
3038
+ "match": "\\|",
3039
+ "name": "punctuation.definition.table.markdown"
3040
+ },
3041
+ {
3042
+ "captures": {
3043
+ "1": {
3044
+ "name": "punctuation.separator.table.markdown"
3045
+ }
3046
+ },
3047
+ "match": "(?<=\\|)\\s*(:?-+:?)\\s*(?=\\|)"
3048
+ },
3049
+ {
3050
+ "captures": {
3051
+ "1": {
3052
+ "patterns": [
3053
+ {
3054
+ "include": "#inline"
3055
+ }
3056
+ ]
3057
+ }
3058
+ },
3059
+ "match": "(?<=\\|)\\s*(?=\\S)((\\\\\\||[^|])+)(?<=\\S)\\s*(?=\\|)"
3060
+ }
3061
+ ],
3062
+ "while": "(^|\\G)(?=\\|)"
3063
+ }
3064
+ },
3065
+ "scopeName": "text.html.markdown"
3066
+ }