@codingame/monaco-vscode-markdown-basics-default-extension 1.81.8-next.1

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