[OCaml] Mobile-friendly clone of cgit.
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/0812fc4b190efc17bfed0d5b4ff918eff8e4e377",
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":"#table"
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_ignore":{
963
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(gitignore|ignore)((\\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.ignore",
987
"patterns":[
988
{
989
"include":"source.ignore"
990
}
991
]
992
}
993
]
994
},
995
"fenced_code_block_js":{
996
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|dataviewjs|\\{\\.js.+?\\})((\\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.javascript",
1020
"patterns":[
1021
{
1022
"include":"source.js"
1023
}
1024
]
1025
}
1026
]
1027
},
1028
"fenced_code_block_js_regexp":{
1029
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(regexp)((\\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.js_regexp",
1053
"patterns":[
1054
{
1055
"include":"source.js.regexp"
1056
}
1057
]
1058
}
1059
]
1060
},
1061
"fenced_code_block_json":{
1062
"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+|:|,|\\{|\\?)[^`]*)?$)",
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.json",
1086
"patterns":[
1087
{
1088
"include":"source.json"
1089
}
1090
]
1091
}
1092
]
1093
},
1094
"fenced_code_block_jsonc":{
1095
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(jsonc)((\\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.jsonc",
1119
"patterns":[
1120
{
1121
"include":"source.json.comments"
1122
}
1123
]
1124
}
1125
]
1126
},
1127
"fenced_code_block_jsonl":{
1128
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(jsonl|jsonlines)((\\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.jsonl",
1152
"patterns":[
1153
{
1154
"include":"source.json.lines"
1155
}
1156
]
1157
}
1158
]
1159
},
1160
"fenced_code_block_less":{
1161
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(less)((\\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.less",
1185
"patterns":[
1186
{
1187
"include":"source.css.less"
1188
}
1189
]
1190
}
1191
]
1192
},
1193
"fenced_code_block_objc":{
1194
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\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.objc",
1218
"patterns":[
1219
{
1220
"include":"source.objc"
1221
}
1222
]
1223
}
1224
]
1225
},
1226
"fenced_code_block_swift":{
1227
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(swift)((\\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.swift",
1251
"patterns":[
1252
{
1253
"include":"source.swift"
1254
}
1255
]
1256
}
1257
]
1258
},
1259
"fenced_code_block_scss":{
1260
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(scss)((\\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.scss",
1284
"patterns":[
1285
{
1286
"include":"source.css.scss"
1287
}
1288
]
1289
}
1290
]
1291
},
1292
"fenced_code_block_perl6":{
1293
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\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.perl6",
1317
"patterns":[
1318
{
1319
"include":"source.perl.6"
1320
}
1321
]
1322
}
1323
]
1324
},
1325
"fenced_code_block_powershell":{
1326
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(powershell|ps1|psm1|psd1|pwsh)((\\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.powershell",
1350
"patterns":[
1351
{
1352
"include":"source.powershell"
1353
}
1354
]
1355
}
1356
]
1357
},
1358
"fenced_code_block_python":{
1359
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\{\\.python.+?\\})((\\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.python",
1383
"patterns":[
1384
{
1385
"include":"source.python"
1386
}
1387
]
1388
}
1389
]
1390
},
1391
"fenced_code_block_julia":{
1392
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(julia|\\{\\.julia.+?\\})((\\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.julia",
1416
"patterns":[
1417
{
1418
"include":"source.julia"
1419
}
1420
]
1421
}
1422
]
1423
},
1424
"fenced_code_block_regexp_python":{
1425
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(re)((\\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.regexp_python",
1449
"patterns":[
1450
{
1451
"include":"source.regexp.python"
1452
}
1453
]
1454
}
1455
]
1456
},
1457
"fenced_code_block_rust":{
1458
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(rust|rs|\\{\\.rust.+?\\})((\\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.rust",
1482
"patterns":[
1483
{
1484
"include":"source.rust"
1485
}
1486
]
1487
}
1488
]
1489
},
1490
"fenced_code_block_scala":{
1491
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(scala|sbt)((\\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.scala",
1515
"patterns":[
1516
{
1517
"include":"source.scala"
1518
}
1519
]
1520
}
1521
]
1522
},
1523
"fenced_code_block_shell":{
1524
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\{\\.bash.+?\\})((\\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.shellscript",
1548
"patterns":[
1549
{
1550
"include":"source.shell"
1551
}
1552
]
1553
}
1554
]
1555
},
1556
"fenced_code_block_ts":{
1557
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(typescript|ts)((\\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.typescript",
1581
"patterns":[
1582
{
1583
"include":"source.ts"
1584
}
1585
]
1586
}
1587
]
1588
},
1589
"fenced_code_block_tsx":{
1590
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(tsx)((\\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.typescriptreact",
1614
"patterns":[
1615
{
1616
"include":"source.tsx"
1617
}
1618
]
1619
}
1620
]
1621
},
1622
"fenced_code_block_csharp":{
1623
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(cs|csharp|c#)((\\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.csharp",
1647
"patterns":[
1648
{
1649
"include":"source.cs"
1650
}
1651
]
1652
}
1653
]
1654
},
1655
"fenced_code_block_fsharp":{
1656
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(fs|fsharp|f#)((\\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.fsharp",
1680
"patterns":[
1681
{
1682
"include":"source.fsharp"
1683
}
1684
]
1685
}
1686
]
1687
},
1688
"fenced_code_block_dart":{
1689
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(dart)((\\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.dart",
1713
"patterns":[
1714
{
1715
"include":"source.dart"
1716
}
1717
]
1718
}
1719
]
1720
},
1721
"fenced_code_block_handlebars":{
1722
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(handlebars|hbs)((\\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.handlebars",
1746
"patterns":[
1747
{
1748
"include":"text.html.handlebars"
1749
}
1750
]
1751
}
1752
]
1753
},
1754
"fenced_code_block_markdown":{
1755
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(markdown|md)((\\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.markdown",
1779
"patterns":[
1780
{
1781
"include":"text.html.markdown"
1782
}
1783
]
1784
}
1785
]
1786
},
1787
"fenced_code_block_log":{
1788
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(log)((\\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.log",
1812
"patterns":[
1813
{
1814
"include":"text.log"
1815
}
1816
]
1817
}
1818
]
1819
},
1820
"fenced_code_block_erlang":{
1821
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(erlang)((\\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.erlang",
1845
"patterns":[
1846
{
1847
"include":"source.erlang"
1848
}
1849
]
1850
}
1851
]
1852
},
1853
"fenced_code_block_elixir":{
1854
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(elixir)((\\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.elixir",
1878
"patterns":[
1879
{
1880
"include":"source.elixir"
1881
}
1882
]
1883
}
1884
]
1885
},
1886
"fenced_code_block_latex":{
1887
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(latex|tex)((\\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.latex",
1911
"patterns":[
1912
{
1913
"include":"text.tex.latex"
1914
}
1915
]
1916
}
1917
]
1918
},
1919
"fenced_code_block_bibtex":{
1920
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(bibtex)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1921
"name":"markup.fenced_code.block.markdown",
1922
"end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1923
"beginCaptures":{
1924
"3":{
1925
"name":"punctuation.definition.markdown"
1926
},
1927
"4":{
1928
"name":"fenced_code.block.language.markdown"
1929
},
1930
"5":{
1931
"name":"fenced_code.block.language.attributes.markdown"
1932
}
1933
},
1934
"endCaptures":{
1935
"3":{
1936
"name":"punctuation.definition.markdown"
1937
}
1938
},
1939
"patterns":[
1940
{
1941
"begin":"(^|\\G)(\\s*)(.*)",
1942
"while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
1943
"contentName":"meta.embedded.block.bibtex",
1944
"patterns":[
1945
{
1946
"include":"text.bibtex"
1947
}
1948
]
1949
}
1950
]
1951
},
1952
"fenced_code_block_twig":{
1953
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(twig)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1954
"name":"markup.fenced_code.block.markdown",
1955
"end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1956
"beginCaptures":{
1957
"3":{
1958
"name":"punctuation.definition.markdown"
1959
},
1960
"4":{
1961
"name":"fenced_code.block.language.markdown"
1962
},
1963
"5":{
1964
"name":"fenced_code.block.language.attributes.markdown"
1965
}
1966
},
1967
"endCaptures":{
1968
"3":{
1969
"name":"punctuation.definition.markdown"
1970
}
1971
},
1972
"patterns":[
1973
{
1974
"begin":"(^|\\G)(\\s*)(.*)",
1975
"while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
1976
"contentName":"meta.embedded.block.twig",
1977
"patterns":[
1978
{
1979
"include":"source.twig"
1980
}
1981
]
1982
}
1983
]
1984
},
1985
"fenced_code_block_yang":{
1986
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(yang)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
1987
"name":"markup.fenced_code.block.markdown",
1988
"end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
1989
"beginCaptures":{
1990
"3":{
1991
"name":"punctuation.definition.markdown"
1992
},
1993
"4":{
1994
"name":"fenced_code.block.language.markdown"
1995
},
1996
"5":{
1997
"name":"fenced_code.block.language.attributes.markdown"
1998
}
1999
},
2000
"endCaptures":{
2001
"3":{
2002
"name":"punctuation.definition.markdown"
2003
}
2004
},
2005
"patterns":[
2006
{
2007
"begin":"(^|\\G)(\\s*)(.*)",
2008
"while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
2009
"contentName":"meta.embedded.block.yang",
2010
"patterns":[
2011
{
2012
"include":"source.yang"
2013
}
2014
]
2015
}
2016
]
2017
},
2018
"fenced_code_block_abap":{
2019
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(abap)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2020
"name":"markup.fenced_code.block.markdown",
2021
"end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2022
"beginCaptures":{
2023
"3":{
2024
"name":"punctuation.definition.markdown"
2025
},
2026
"4":{
2027
"name":"fenced_code.block.language.markdown"
2028
},
2029
"5":{
2030
"name":"fenced_code.block.language.attributes.markdown"
2031
}
2032
},
2033
"endCaptures":{
2034
"3":{
2035
"name":"punctuation.definition.markdown"
2036
}
2037
},
2038
"patterns":[
2039
{
2040
"begin":"(^|\\G)(\\s*)(.*)",
2041
"while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
2042
"contentName":"meta.embedded.block.abap",
2043
"patterns":[
2044
{
2045
"include":"source.abap"
2046
}
2047
]
2048
}
2049
]
2050
},
2051
"fenced_code_block_restructuredtext":{
2052
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(restructuredtext|rst)((\\s+|:|,|\\{|\\?)[^`]*)?$)",
2053
"name":"markup.fenced_code.block.markdown",
2054
"end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2055
"beginCaptures":{
2056
"3":{
2057
"name":"punctuation.definition.markdown"
2058
},
2059
"4":{
2060
"name":"fenced_code.block.language.markdown"
2061
},
2062
"5":{
2063
"name":"fenced_code.block.language.attributes.markdown"
2064
}
2065
},
2066
"endCaptures":{
2067
"3":{
2068
"name":"punctuation.definition.markdown"
2069
}
2070
},
2071
"patterns":[
2072
{
2073
"begin":"(^|\\G)(\\s*)(.*)",
2074
"while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
2075
"contentName":"meta.embedded.block.restructuredtext",
2076
"patterns":[
2077
{
2078
"include":"source.rst"
2079
}
2080
]
2081
}
2082
]
2083
},
2084
"fenced_code_block":{
2085
"patterns":[
2086
{
2087
"include":"#fenced_code_block_css"
2088
},
2089
{
2090
"include":"#fenced_code_block_basic"
2091
},
2092
{
2093
"include":"#fenced_code_block_ini"
2094
},
2095
{
2096
"include":"#fenced_code_block_java"
2097
},
2098
{
2099
"include":"#fenced_code_block_lua"
2100
},
2101
{
2102
"include":"#fenced_code_block_makefile"
2103
},
2104
{
2105
"include":"#fenced_code_block_perl"
2106
},
2107
{
2108
"include":"#fenced_code_block_r"
2109
},
2110
{
2111
"include":"#fenced_code_block_ruby"
2112
},
2113
{
2114
"include":"#fenced_code_block_php"
2115
},
2116
{
2117
"include":"#fenced_code_block_sql"
2118
},
2119
{
2120
"include":"#fenced_code_block_vs_net"
2121
},
2122
{
2123
"include":"#fenced_code_block_xml"
2124
},
2125
{
2126
"include":"#fenced_code_block_xsl"
2127
},
2128
{
2129
"include":"#fenced_code_block_yaml"
2130
},
2131
{
2132
"include":"#fenced_code_block_dosbatch"
2133
},
2134
{
2135
"include":"#fenced_code_block_clojure"
2136
},
2137
{
2138
"include":"#fenced_code_block_coffee"
2139
},
2140
{
2141
"include":"#fenced_code_block_c"
2142
},
2143
{
2144
"include":"#fenced_code_block_cpp"
2145
},
2146
{
2147
"include":"#fenced_code_block_diff"
2148
},
2149
{
2150
"include":"#fenced_code_block_dockerfile"
2151
},
2152
{
2153
"include":"#fenced_code_block_git_commit"
2154
},
2155
{
2156
"include":"#fenced_code_block_git_rebase"
2157
},
2158
{
2159
"include":"#fenced_code_block_go"
2160
},
2161
{
2162
"include":"#fenced_code_block_groovy"
2163
},
2164
{
2165
"include":"#fenced_code_block_pug"
2166
},
2167
{
2168
"include":"#fenced_code_block_ignore"
2169
},
2170
{
2171
"include":"#fenced_code_block_js"
2172
},
2173
{
2174
"include":"#fenced_code_block_js_regexp"
2175
},
2176
{
2177
"include":"#fenced_code_block_json"
2178
},
2179
{
2180
"include":"#fenced_code_block_jsonc"
2181
},
2182
{
2183
"include":"#fenced_code_block_jsonl"
2184
},
2185
{
2186
"include":"#fenced_code_block_less"
2187
},
2188
{
2189
"include":"#fenced_code_block_objc"
2190
},
2191
{
2192
"include":"#fenced_code_block_swift"
2193
},
2194
{
2195
"include":"#fenced_code_block_scss"
2196
},
2197
{
2198
"include":"#fenced_code_block_perl6"
2199
},
2200
{
2201
"include":"#fenced_code_block_powershell"
2202
},
2203
{
2204
"include":"#fenced_code_block_python"
2205
},
2206
{
2207
"include":"#fenced_code_block_julia"
2208
},
2209
{
2210
"include":"#fenced_code_block_regexp_python"
2211
},
2212
{
2213
"include":"#fenced_code_block_rust"
2214
},
2215
{
2216
"include":"#fenced_code_block_scala"
2217
},
2218
{
2219
"include":"#fenced_code_block_shell"
2220
},
2221
{
2222
"include":"#fenced_code_block_ts"
2223
},
2224
{
2225
"include":"#fenced_code_block_tsx"
2226
},
2227
{
2228
"include":"#fenced_code_block_csharp"
2229
},
2230
{
2231
"include":"#fenced_code_block_fsharp"
2232
},
2233
{
2234
"include":"#fenced_code_block_dart"
2235
},
2236
{
2237
"include":"#fenced_code_block_handlebars"
2238
},
2239
{
2240
"include":"#fenced_code_block_markdown"
2241
},
2242
{
2243
"include":"#fenced_code_block_log"
2244
},
2245
{
2246
"include":"#fenced_code_block_erlang"
2247
},
2248
{
2249
"include":"#fenced_code_block_elixir"
2250
},
2251
{
2252
"include":"#fenced_code_block_latex"
2253
},
2254
{
2255
"include":"#fenced_code_block_bibtex"
2256
},
2257
{
2258
"include":"#fenced_code_block_twig"
2259
},
2260
{
2261
"include":"#fenced_code_block_yang"
2262
},
2263
{
2264
"include":"#fenced_code_block_abap"
2265
},
2266
{
2267
"include":"#fenced_code_block_restructuredtext"
2268
},
2269
{
2270
"include":"#fenced_code_block_unknown"
2271
}
2272
]
2273
},
2274
"fenced_code_block_unknown":{
2275
"begin":"(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?=([^`]*)?$)",
2276
"beginCaptures":{
2277
"3":{
2278
"name":"punctuation.definition.markdown"
2279
},
2280
"4":{
2281
"name":"fenced_code.block.language"
2282
}
2283
},
2284
"end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
2285
"endCaptures":{
2286
"3":{
2287
"name":"punctuation.definition.markdown"
2288
}
2289
},
2290
"name":"markup.fenced_code.block.markdown"
2291
},
2292
"heading":{
2293
"match":"(?:^|\\G)[ ]{0,3}(#{1,6}\\s+(.*?)(\\s+#{1,6})?\\s*)$",
2294
"captures":{
2295
"1":{
2296
"patterns":[
2297
{
2298
"match":"(#{6})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2299
"name":"heading.6.markdown",
2300
"captures":{
2301
"1":{
2302
"name":"punctuation.definition.heading.markdown"
2303
},
2304
"2":{
2305
"name":"entity.name.section.markdown",
2306
"patterns":[
2307
{
2308
"include":"#inline"
2309
},
2310
{
2311
"include":"text.html.derivative"
2312
}
2313
]
2314
},
2315
"3":{
2316
"name":"punctuation.definition.heading.markdown"
2317
}
2318
}
2319
},
2320
{
2321
"match":"(#{5})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2322
"name":"heading.5.markdown",
2323
"captures":{
2324
"1":{
2325
"name":"punctuation.definition.heading.markdown"
2326
},
2327
"2":{
2328
"name":"entity.name.section.markdown",
2329
"patterns":[
2330
{
2331
"include":"#inline"
2332
},
2333
{
2334
"include":"text.html.derivative"
2335
}
2336
]
2337
},
2338
"3":{
2339
"name":"punctuation.definition.heading.markdown"
2340
}
2341
}
2342
},
2343
{
2344
"match":"(#{4})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2345
"name":"heading.4.markdown",
2346
"captures":{
2347
"1":{
2348
"name":"punctuation.definition.heading.markdown"
2349
},
2350
"2":{
2351
"name":"entity.name.section.markdown",
2352
"patterns":[
2353
{
2354
"include":"#inline"
2355
},
2356
{
2357
"include":"text.html.derivative"
2358
}
2359
]
2360
},
2361
"3":{
2362
"name":"punctuation.definition.heading.markdown"
2363
}
2364
}
2365
},
2366
{
2367
"match":"(#{3})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2368
"name":"heading.3.markdown",
2369
"captures":{
2370
"1":{
2371
"name":"punctuation.definition.heading.markdown"
2372
},
2373
"2":{
2374
"name":"entity.name.section.markdown",
2375
"patterns":[
2376
{
2377
"include":"#inline"
2378
},
2379
{
2380
"include":"text.html.derivative"
2381
}
2382
]
2383
},
2384
"3":{
2385
"name":"punctuation.definition.heading.markdown"
2386
}
2387
}
2388
},
2389
{
2390
"match":"(#{2})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2391
"name":"heading.2.markdown",
2392
"captures":{
2393
"1":{
2394
"name":"punctuation.definition.heading.markdown"
2395
},
2396
"2":{
2397
"name":"entity.name.section.markdown",
2398
"patterns":[
2399
{
2400
"include":"#inline"
2401
},
2402
{
2403
"include":"text.html.derivative"
2404
}
2405
]
2406
},
2407
"3":{
2408
"name":"punctuation.definition.heading.markdown"
2409
}
2410
}
2411
},
2412
{
2413
"match":"(#{1})\\s+(.*?)(?:\\s+(#+))?\\s*$",
2414
"name":"heading.1.markdown",
2415
"captures":{
2416
"1":{
2417
"name":"punctuation.definition.heading.markdown"
2418
},
2419
"2":{
2420
"name":"entity.name.section.markdown",
2421
"patterns":[
2422
{
2423
"include":"#inline"
2424
},
2425
{
2426
"include":"text.html.derivative"
2427
}
2428
]
2429
},
2430
"3":{
2431
"name":"punctuation.definition.heading.markdown"
2432
}
2433
}
2434
}
2435
]
2436
}
2437
},
2438
"name":"markup.heading.markdown"
2439
},
2440
"heading-setext":{
2441
"patterns":[
2442
{
2443
"match":"^(={3,})(?=[ \\t]*$\\n?)",
2444
"name":"markup.heading.setext.1.markdown"
2445
},
2446
{
2447
"match":"^(-{3,})(?=[ \\t]*$\\n?)",
2448
"name":"markup.heading.setext.2.markdown"
2449
}
2450
]
2451
},
2452
"html":{
2453
"patterns":[
2454
{
2455
"begin":"(^|\\G)\\s*(<!--)",
2456
"captures":{
2457
"1":{
2458
"name":"punctuation.definition.comment.html"
2459
},
2460
"2":{
2461
"name":"punctuation.definition.comment.html"
2462
}
2463
},
2464
"end":"(-->)",
2465
"name":"comment.block.html"
2466
},
2467
{
2468
"begin":"(?i)(^|\\G)\\s*(?=<(script|style|pre)(\\s|$|>)(?!.*?</(script|style|pre)>))",
2469
"end":"(?i)(.*)((</)(script|style|pre)(>))",
2470
"endCaptures":{
2471
"1":{
2472
"patterns":[
2473
{
2474
"include":"text.html.derivative"
2475
}
2476
]
2477
},
2478
"2":{
2479
"name":"meta.tag.structure.$4.end.html"
2480
},
2481
"3":{
2482
"name":"punctuation.definition.tag.begin.html"
2483
},
2484
"4":{
2485
"name":"entity.name.tag.html"
2486
},
2487
"5":{
2488
"name":"punctuation.definition.tag.end.html"
2489
}
2490
},
2491
"patterns":[
2492
{
2493
"begin":"(\\s*|$)",
2494
"patterns":[
2495
{
2496
"include":"text.html.derivative"
2497
}
2498
],
2499
"while":"(?i)^(?!.*</(script|style|pre)>)"
2500
}
2501
]
2502
},
2503
{
2504
"begin":"(?i)(^|\\G)\\s*(?=</?[a-zA-Z]+[^\\s/>]*(\\s|$|/?>))",
2505
"patterns":[
2506
{
2507
"include":"text.html.derivative"
2508
}
2509
],
2510
"while":"^(?!\\s*$)"
2511
},
2512
{
2513
"begin":"(^|\\G)\\s*(?=(<[a-zA-Z0-9\\-](/?>|\\s.*?>)|</[a-zA-Z0-9\\-]>)\\s*$)",
2514
"patterns":[
2515
{
2516
"include":"text.html.derivative"
2517
}
2518
],
2519
"while":"^(?!\\s*$)"
2520
}
2521
]
2522
},
2523
"link-def":{
2524
"captures":{
2525
"1":{
2526
"name":"punctuation.definition.constant.markdown"
2527
},
2528
"2":{
2529
"name":"constant.other.reference.link.markdown"
2530
},
2531
"3":{
2532
"name":"punctuation.definition.constant.markdown"
2533
},
2534
"4":{
2535
"name":"punctuation.separator.key-value.markdown"
2536
},
2537
"5":{
2538
"name":"punctuation.definition.link.markdown"
2539
},
2540
"6":{
2541
"name":"markup.underline.link.markdown"
2542
},
2543
"7":{
2544
"name":"punctuation.definition.link.markdown"
2545
},
2546
"8":{
2547
"name":"markup.underline.link.markdown"
2548
},
2549
"9":{
2550
"name":"string.other.link.description.title.markdown"
2551
},
2552
"10":{
2553
"name":"punctuation.definition.string.begin.markdown"
2554
},
2555
"11":{
2556
"name":"punctuation.definition.string.end.markdown"
2557
},
2558
"12":{
2559
"name":"string.other.link.description.title.markdown"
2560
},
2561
"13":{
2562
"name":"punctuation.definition.string.begin.markdown"
2563
},
2564
"14":{
2565
"name":"punctuation.definition.string.end.markdown"
2566
},
2567
"15":{
2568
"name":"string.other.link.description.title.markdown"
2569
},
2570
"16":{
2571
"name":"punctuation.definition.string.begin.markdown"
2572
},
2573
"17":{
2574
"name":"punctuation.definition.string.end.markdown"
2575
}
2576
},
2577
"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",
2578
"name":"meta.link.reference.def.markdown"
2579
},
2580
"list_paragraph":{
2581
"begin":"(^|\\G)(?=\\S)(?![*+->]\\s|[0-9]+\\.\\s)",
2582
"name":"meta.paragraph.markdown",
2583
"patterns":[
2584
{
2585
"include":"#inline"
2586
},
2587
{
2588
"include":"text.html.derivative"
2589
},
2590
{
2591
"include":"#heading-setext"
2592
}
2593
],
2594
"while":"(^|\\G)(?!\\s*$|#|[ ]{0,3}([-*_>][ ]{2,}){3,}[ \\t]*$\\n?|[ ]{0,3}[*+->]|[ ]{0,3}[0-9]+\\.)"
2595
},
2596
"lists":{
2597
"patterns":[
2598
{
2599
"begin":"(^|\\G)([ ]{0,3})([*+-])([ \\t])",
2600
"beginCaptures":{
2601
"3":{
2602
"name":"punctuation.definition.list.begin.markdown"
2603
}
2604
},
2605
"comment":"Currently does not support un-indented second lines.",
2606
"name":"markup.list.unnumbered.markdown",
2607
"patterns":[
2608
{
2609
"include":"#block"
2610
},
2611
{
2612
"include":"#list_paragraph"
2613
}
2614
],
2615
"while":"((^|\\G)([ ]{2,4}|\\t))|(^[ \\t]*$)"
2616
},
2617
{
2618
"begin":"(^|\\G)([ ]{0,3})([0-9]+[\\.\\)])([ \\t])",
2619
"beginCaptures":{
2620
"3":{
2621
"name":"punctuation.definition.list.begin.markdown"
2622
}
2623
},
2624
"name":"markup.list.numbered.markdown",
2625
"patterns":[
2626
{
2627
"include":"#block"
2628
},
2629
{
2630
"include":"#list_paragraph"
2631
}
2632
],
2633
"while":"((^|\\G)([ ]{2,4}|\\t))|(^[ \\t]*$)"
2634
}
2635
]
2636
},
2637
"paragraph":{
2638
"begin":"(^|\\G)[ ]{0,3}(?=[^ \\t\\n])",
2639
"name":"meta.paragraph.markdown",
2640
"patterns":[
2641
{
2642
"include":"#inline"
2643
},
2644
{
2645
"include":"text.html.derivative"
2646
},
2647
{
2648
"include":"#heading-setext"
2649
}
2650
],
2651
"while":"(^|\\G)((?=\\s*[-=]{3,}\\s*$)|[ ]{4,}(?=[^ \\t\\n]))"
2652
},
2653
"raw_block":{
2654
"begin":"(^|\\G)([ ]{4}|\\t)",
2655
"name":"markup.raw.block.markdown",
2656
"while":"(^|\\G)([ ]{4}|\\t)"
2657
},
2658
"separator":{
2659
"match":"(^|\\G)[ ]{0,3}([\\*\\-\\_])([ ]{0,2}\\2){2,}[ \\t]*$\\n?",
2660
"name":"meta.separator.markdown"
2661
},
2662
"frontMatter":{
2663
"begin":"\\A(?=(-{3,}))",
2664
"end":"^ {,3}\\1-*[ \\t]*$|^[ \\t]*\\.{3}$",
2665
"applyEndPatternLast":1,
2666
"endCaptures":{
2667
"0":{
2668
"name":"punctuation.definition.end.frontmatter"
2669
}
2670
},
2671
"patterns":[
2672
{
2673
"begin":"\\A(-{3,})(.*)$",
2674
"while":"^(?! {,3}\\1-*[ \\t]*$|[ \\t]*\\.{3}$)",
2675
"beginCaptures":{
2676
"1":{
2677
"name":"punctuation.definition.begin.frontmatter"
2678
},
2679
"2":{
2680
"name":"comment.frontmatter"
2681
}
2682
},
2683
"contentName":"meta.embedded.block.frontmatter",
2684
"patterns":[
2685
{
2686
"include":"source.yaml"
2687
}
2688
]
2689
}
2690
]
2691
},
2692
"table":{
2693
"name":"markup.table.markdown",
2694
"begin":"(^|\\G)(\\|)(?=[^|].+\\|\\s*$)",
2695
"beginCaptures":{
2696
"2":{
2697
"name":"punctuation.definition.table.markdown"
2698
}
2699
},
2700
"while":"(^|\\G)(?=\\|)",
2701
"patterns":[
2702
{
2703
"match":"\\|",
2704
"name":"punctuation.definition.table.markdown"
2705
},
2706
{
2707
"match":"(?<=\\|)\\s*(:?-+:?)\\s*(?=\\|)",
2708
"captures":{
2709
"1":{
2710
"name":"punctuation.separator.table.markdown"
2711
}
2712
}
2713
},
2714
{
2715
"match":"(?<=\\|)\\s*(?=\\S)((\\\\\\||[^|])+)(?<=\\S)\\s*(?=\\|)",
2716
"captures":{
2717
"1":{
2718
"patterns":[
2719
{
2720
"include":"#inline"
2721
}
2722
]
2723
}
2724
}
2725
}
2726
]
2727
},
2728
"inline":{
2729
"patterns":[
2730
{
2731
"include":"#ampersand"
2732
},
2733
{
2734
"include":"#bracket"
2735
},
2736
{
2737
"include":"#bold"
2738
},
2739
{
2740
"include":"#italic"
2741
},
2742
{
2743
"include":"#raw"
2744
},
2745
{
2746
"include":"#strikethrough"
2747
},
2748
{
2749
"include":"#escape"
2750
},
2751
{
2752
"include":"#image-inline"
2753
},
2754
{
2755
"include":"#image-ref"
2756
},
2757
{
2758
"include":"#link-email"
2759
},
2760
{
2761
"include":"#link-inet"
2762
},
2763
{
2764
"include":"#link-inline"
2765
},
2766
{
2767
"include":"#link-ref"
2768
},
2769
{
2770
"include":"#link-ref-literal"
2771
},
2772
{
2773
"include":"#link-ref-shortcut"
2774
}
2775
]
2776
},
2777
"ampersand":{
2778
"comment":"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.",
2779
"match":"&(?!([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);)",
2780
"name":"meta.other.valid-ampersand.markdown"
2781
},
2782
"bold":{
2783
"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",
2784
"captures":{
2785
"1":{
2786
"name":"punctuation.definition.bold.markdown"
2787
}
2788
},
2789
"end":"(?<=\\S)(\\1)",
2790
"name":"markup.bold.markdown",
2791
"patterns":[
2792
{
2793
"applyEndPatternLast":1,
2794
"begin":"(?=<[^>]*?>)",
2795
"end":"(?<=>)",
2796
"patterns":[
2797
{
2798
"include":"text.html.derivative"
2799
}
2800
]
2801
},
2802
{
2803
"include":"#escape"
2804
},
2805
{
2806
"include":"#ampersand"
2807
},
2808
{
2809
"include":"#bracket"
2810
},
2811
{
2812
"include":"#raw"
2813
},
2814
{
2815
"include":"#bold"
2816
},
2817
{
2818
"include":"#italic"
2819
},
2820
{
2821
"include":"#image-inline"
2822
},
2823
{
2824
"include":"#link-inline"
2825
},
2826
{
2827
"include":"#link-inet"
2828
},
2829
{
2830
"include":"#link-email"
2831
},
2832
{
2833
"include":"#image-ref"
2834
},
2835
{
2836
"include":"#link-ref-literal"
2837
},
2838
{
2839
"include":"#link-ref"
2840
},
2841
{
2842
"include":"#link-ref-shortcut"
2843
},
2844
{
2845
"include":"#strikethrough"
2846
}
2847
]
2848
},
2849
"bracket":{
2850
"comment":"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.",
2851
"match":"<(?![a-zA-Z/?\\$!])",
2852
"name":"meta.other.valid-bracket.markdown"
2853
},
2854
"escape":{
2855
"match":"\\\\[-`*_#+.!(){}\\[\\]\\\\>]",
2856
"name":"constant.character.escape.markdown"
2857
},
2858
"image-inline":{
2859
"captures":{
2860
"1":{
2861
"name":"punctuation.definition.link.description.begin.markdown"
2862
},
2863
"2":{
2864
"name":"string.other.link.description.markdown"
2865
},
2866
"4":{
2867
"name":"punctuation.definition.link.description.end.markdown"
2868
},
2869
"5":{
2870
"name":"punctuation.definition.metadata.markdown"
2871
},
2872
"7":{
2873
"name":"punctuation.definition.link.markdown"
2874
},
2875
"8":{
2876
"name":"markup.underline.link.image.markdown"
2877
},
2878
"9":{
2879
"name":"punctuation.definition.link.markdown"
2880
},
2881
"10":{
2882
"name":"markup.underline.link.image.markdown"
2883
},
2884
"12":{
2885
"name":"string.other.link.description.title.markdown"
2886
},
2887
"13":{
2888
"name":"punctuation.definition.string.begin.markdown"
2889
},
2890
"14":{
2891
"name":"punctuation.definition.string.end.markdown"
2892
},
2893
"15":{
2894
"name":"string.other.link.description.title.markdown"
2895
},
2896
"16":{
2897
"name":"punctuation.definition.string.begin.markdown"
2898
},
2899
"17":{
2900
"name":"punctuation.definition.string.end.markdown"
2901
},
2902
"18":{
2903
"name":"string.other.link.description.title.markdown"
2904
},
2905
"19":{
2906
"name":"punctuation.definition.string.begin.markdown"
2907
},
2908
"20":{
2909
"name":"punctuation.definition.string.end.markdown"
2910
},
2911
"21":{
2912
"name":"punctuation.definition.metadata.markdown"
2913
}
2914
},
2915
"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",
2916
"name":"meta.image.inline.markdown"
2917
},
2918
"image-ref":{
2919
"captures":{
2920
"1":{
2921
"name":"punctuation.definition.link.description.begin.markdown"
2922
},
2923
"2":{
2924
"name":"string.other.link.description.markdown"
2925
},
2926
"4":{
2927
"name":"punctuation.definition.link.description.end.markdown"
2928
},
2929
"5":{
2930
"name":"punctuation.definition.constant.markdown"
2931
},
2932
"6":{
2933
"name":"constant.other.reference.link.markdown"
2934
},
2935
"7":{
2936
"name":"punctuation.definition.constant.markdown"
2937
}
2938
},
2939
"match":"(\\!\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])[ ]?(\\[)(.*?)(\\])",
2940
"name":"meta.image.reference.markdown"
2941
},
2942
"italic":{
2943
"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",
2944
"captures":{
2945
"1":{
2946
"name":"punctuation.definition.italic.markdown"
2947
}
2948
},
2949
"end":"(?<=\\S)(\\1)((?!\\1)|(?=\\1\\1))",
2950
"name":"markup.italic.markdown",
2951
"patterns":[
2952
{
2953
"applyEndPatternLast":1,
2954
"begin":"(?=<[^>]*?>)",
2955
"end":"(?<=>)",
2956
"patterns":[
2957
{
2958
"include":"text.html.derivative"
2959
}
2960
]
2961
},
2962
{
2963
"include":"#escape"
2964
},
2965
{
2966
"include":"#ampersand"
2967
},
2968
{
2969
"include":"#bracket"
2970
},
2971
{
2972
"include":"#raw"
2973
},
2974
{
2975
"include":"#bold"
2976
},
2977
{
2978
"include":"#image-inline"
2979
},
2980
{
2981
"include":"#link-inline"
2982
},
2983
{
2984
"include":"#link-inet"
2985
},
2986
{
2987
"include":"#link-email"
2988
},
2989
{
2990
"include":"#image-ref"
2991
},
2992
{
2993
"include":"#link-ref-literal"
2994
},
2995
{
2996
"include":"#link-ref"
2997
},
2998
{
2999
"include":"#link-ref-shortcut"
3000
},
3001
{
3002
"include":"#strikethrough"
3003
}
3004
]
3005
},
3006
"link-email":{
3007
"captures":{
3008
"1":{
3009
"name":"punctuation.definition.link.markdown"
3010
},
3011
"2":{
3012
"name":"markup.underline.link.markdown"
3013
},
3014
"4":{
3015
"name":"punctuation.definition.link.markdown"
3016
}
3017
},
3018
"match":"(<)((?:mailto:)?[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)(>)",
3019
"name":"meta.link.email.lt-gt.markdown"
3020
},
3021
"link-inet":{
3022
"captures":{
3023
"1":{
3024
"name":"punctuation.definition.link.markdown"
3025
},
3026
"2":{
3027
"name":"markup.underline.link.markdown"
3028
},
3029
"3":{
3030
"name":"punctuation.definition.link.markdown"
3031
}
3032
},
3033
"match":"(<)((?:https?|ftp)://.*?)(>)",
3034
"name":"meta.link.inet.markdown"
3035
},
3036
"link-inline":{
3037
"captures":{
3038
"1":{
3039
"name":"punctuation.definition.link.title.begin.markdown"
3040
},
3041
"2":{
3042
"name":"string.other.link.title.markdown",
3043
"patterns":[
3044
{
3045
"include":"#raw"
3046
},
3047
{
3048
"include":"#bold"
3049
},
3050
{
3051
"include":"#italic"
3052
},
3053
{
3054
"include":"#strikethrough"
3055
},
3056
{
3057
"include":"#image-inline"
3058
}
3059
]
3060
},
3061
"4":{
3062
"name":"punctuation.definition.link.title.end.markdown"
3063
},
3064
"5":{
3065
"name":"punctuation.definition.metadata.markdown"
3066
},
3067
"7":{
3068
"name":"punctuation.definition.link.markdown"
3069
},
3070
"8":{
3071
"name":"markup.underline.link.markdown"
3072
},
3073
"9":{
3074
"name":"punctuation.definition.link.markdown"
3075
},
3076
"10":{
3077
"name":"markup.underline.link.markdown"
3078
},
3079
"12":{
3080
"name":"string.other.link.description.title.markdown"
3081
},
3082
"13":{
3083
"name":"punctuation.definition.string.begin.markdown"
3084
},
3085
"14":{
3086
"name":"punctuation.definition.string.end.markdown"
3087
},
3088
"15":{
3089
"name":"string.other.link.description.title.markdown"
3090
},
3091
"16":{
3092
"name":"punctuation.definition.string.begin.markdown"
3093
},
3094
"17":{
3095
"name":"punctuation.definition.string.end.markdown"
3096
},
3097
"18":{
3098
"name":"string.other.link.description.title.markdown"
3099
},
3100
"19":{
3101
"name":"punctuation.definition.string.begin.markdown"
3102
},
3103
"20":{
3104
"name":"punctuation.definition.string.end.markdown"
3105
},
3106
"21":{
3107
"name":"punctuation.definition.metadata.markdown"
3108
}
3109
},
3110
"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",
3111
"name":"meta.link.inline.markdown"
3112
},
3113
"link-ref":{
3114
"captures":{
3115
"1":{
3116
"name":"punctuation.definition.link.title.begin.markdown"
3117
},
3118
"2":{
3119
"name":"string.other.link.title.markdown",
3120
"patterns":[
3121
{
3122
"include":"#raw"
3123
},
3124
{
3125
"include":"#bold"
3126
},
3127
{
3128
"include":"#italic"
3129
},
3130
{
3131
"include":"#strikethrough"
3132
},
3133
{
3134
"include":"#image-inline"
3135
}
3136
]
3137
},
3138
"4":{
3139
"name":"punctuation.definition.link.title.end.markdown"
3140
},
3141
"5":{
3142
"name":"punctuation.definition.constant.begin.markdown"
3143
},
3144
"6":{
3145
"name":"constant.other.reference.link.markdown"
3146
},
3147
"7":{
3148
"name":"punctuation.definition.constant.end.markdown"
3149
}
3150
},
3151
"match":"(?<![\\]\\\\])(\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])(\\[)([^\\]]*+)(\\])",
3152
"name":"meta.link.reference.markdown"
3153
},
3154
"link-ref-literal":{
3155
"captures":{
3156
"1":{
3157
"name":"punctuation.definition.link.title.begin.markdown"
3158
},
3159
"2":{
3160
"name":"string.other.link.title.markdown"
3161
},
3162
"4":{
3163
"name":"punctuation.definition.link.title.end.markdown"
3164
},
3165
"5":{
3166
"name":"punctuation.definition.constant.begin.markdown"
3167
},
3168
"6":{
3169
"name":"punctuation.definition.constant.end.markdown"
3170
}
3171
},
3172
"match":"(?<![\\]\\\\])(\\[)((?<square>[^\\[\\]\\\\]|\\\\.|\\[\\g<square>*+\\])*+)(\\])[ ]?(\\[)(\\])",
3173
"name":"meta.link.reference.literal.markdown"
3174
},
3175
"link-ref-shortcut":{
3176
"captures":{
3177
"1":{
3178
"name":"punctuation.definition.link.title.begin.markdown"
3179
},
3180
"2":{
3181
"name":"string.other.link.title.markdown"
3182
},
3183
"3":{
3184
"name":"punctuation.definition.link.title.end.markdown"
3185
}
3186
},
3187
"match":"(?<![\\]\\\\])(\\[)((?:[^\\s\\[\\]\\\\]|\\\\[\\[\\]])+?)((?<!\\\\)\\])",
3188
"name":"meta.link.reference.markdown"
3189
},
3190
"raw":{
3191
"captures":{
3192
"1":{
3193
"name":"punctuation.definition.raw.markdown"
3194
},
3195
"3":{
3196
"name":"punctuation.definition.raw.markdown"
3197
}
3198
},
3199
"match":"(`+)((?:[^`]|(?!(?<!`)\\1(?!`))`)*+)(\\1)",
3200
"name":"markup.inline.raw.string.markdown"
3201
},
3202
"strikethrough":{
3203
"captures":{
3204
"1":{
3205
"name":"punctuation.definition.strikethrough.markdown"
3206
},
3207
"2":{
3208
"patterns":[
3209
{
3210
"applyEndPatternLast":1,
3211
"begin":"(?=<[^>]*?>)",
3212
"end":"(?<=>)",
3213
"patterns":[
3214
{
3215
"include":"text.html.derivative"
3216
}
3217
]
3218
},
3219
{
3220
"include":"#escape"
3221
},
3222
{
3223
"include":"#ampersand"
3224
},
3225
{
3226
"include":"#bracket"
3227
},
3228
{
3229
"include":"#raw"
3230
},
3231
{
3232
"include":"#bold"
3233
},
3234
{
3235
"include":"#italic"
3236
},
3237
{
3238
"include":"#image-inline"
3239
},
3240
{
3241
"include":"#link-inline"
3242
},
3243
{
3244
"include":"#link-inet"
3245
},
3246
{
3247
"include":"#link-email"
3248
},
3249
{
3250
"include":"#image-ref"
3251
},
3252
{
3253
"include":"#link-ref-literal"
3254
},
3255
{
3256
"include":"#link-ref"
3257
},
3258
{
3259
"include":"#link-ref-shortcut"
3260
}
3261
]
3262
},
3263
"3":{
3264
"name":"punctuation.definition.strikethrough.markdown"
3265
}
3266
},
3267
"match":"(?<!\\\\)(~{2,})(?!(?<=\\w~~)_)((?:[^~]|(?!(?<![~\\\\])\\1(?!~))~)*+)(\\1)(?!(?<=_\\1)\\w)",
3268
"name":"markup.strikethrough.markdown"
3269
}
3270
}
3271
}