Mirror of
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix highlighting and right preview component

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