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