github-linguist 9.5.0 → 9.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/etc.json +1 -1
  3. data/grammars/gno.mod.json +1 -0
  4. data/grammars/markdown.mojo.codeblock.json +1 -0
  5. data/grammars/markdown.move.codeblock.json +1 -1
  6. data/grammars/source.4dm.json +1 -1
  7. data/grammars/source.abl.json +1 -1
  8. data/grammars/source.aleo.json +1 -0
  9. data/grammars/source.apex.json +1 -1
  10. data/grammars/source.astro.json +1 -1
  11. data/grammars/source.baml.json +1 -0
  12. data/grammars/source.bb.json +1 -1
  13. data/grammars/source.bird2.json +1 -0
  14. data/grammars/source.blueprint.json +1 -0
  15. data/grammars/source.bnd.json +1 -1
  16. data/grammars/source.brs.embedded.xml.json +1 -0
  17. data/grammars/source.bsl.json +1 -1
  18. data/grammars/source.c++.json +1 -1
  19. data/grammars/source.c.json +1 -1
  20. data/grammars/source.c3.json +1 -1
  21. data/grammars/source.carbon.json +1 -0
  22. data/grammars/source.cel.json +1 -0
  23. data/grammars/source.cl.json +1 -1
  24. data/grammars/source.clar.json +1 -1
  25. data/grammars/source.cmake.json +1 -1
  26. data/grammars/source.cmd.json +1 -1
  27. data/grammars/source.comment-string.wesl.json +1 -1
  28. data/grammars/source.comment-string.wgsl.json +1 -1
  29. data/grammars/source.cs.json +1 -1
  30. data/grammars/source.csswg.json +1 -1
  31. data/grammars/source.csv.json +1 -1
  32. data/grammars/source.curlrc.json +1 -1
  33. data/grammars/source.dart.json +1 -1
  34. data/grammars/source.daslang.json +1 -1
  35. data/grammars/source.data-weave.json +1 -1
  36. data/grammars/source.dds.dspf.json +1 -1
  37. data/grammars/source.dds.icff.json +1 -1
  38. data/grammars/source.dds.lf.json +1 -1
  39. data/grammars/source.dds.pf.json +1 -1
  40. data/grammars/source.dds.prtf.json +1 -1
  41. data/grammars/source.deq.json +1 -0
  42. data/grammars/source.emacs.lisp.json +1 -1
  43. data/grammars/source.fift.json +1 -0
  44. data/grammars/source.flix.json +1 -1
  45. data/grammars/source.fpp.json +1 -0
  46. data/grammars/source.func.json +1 -0
  47. data/grammars/source.gdscript.json +1 -1
  48. data/grammars/source.gedcom.json +1 -1
  49. data/grammars/source.gimprc.json +1 -0
  50. data/grammars/source.gimpres.json +1 -0
  51. data/grammars/source.gitconfig.json +1 -1
  52. data/grammars/source.gno.json +1 -0
  53. data/grammars/source.graphql.json +1 -1
  54. data/grammars/source.gtkrc.json +1 -0
  55. data/grammars/source.hack.json +1 -1
  56. data/grammars/source.hosts.json +1 -1
  57. data/grammars/source.hx.json +1 -1
  58. data/grammars/source.hxml.json +1 -1
  59. data/grammars/source.il.json +1 -0
  60. data/grammars/source.interp.json +1 -0
  61. data/grammars/source.jac.json +1 -1
  62. data/grammars/source.jactoml.json +1 -0
  63. data/grammars/source.jai.json +1 -1
  64. data/grammars/source.jass.json +1 -0
  65. data/grammars/source.julia.json +1 -1
  66. data/grammars/source.just.json +1 -1
  67. data/grammars/source.kcl.json +1 -1
  68. data/grammars/source.koka.json +1 -1
  69. data/grammars/source.lean4.markdown.json +1 -1
  70. data/grammars/source.leo.json +1 -1
  71. data/grammars/source.lobster.json +1 -0
  72. data/grammars/source.logos.json +1 -1
  73. data/grammars/source.luau.json +1 -1
  74. data/grammars/source.m2.json +1 -1
  75. data/grammars/source.m3u.json +1 -1
  76. data/grammars/source.matlab.json +1 -1
  77. data/grammars/source.mdx.astro.json +1 -1
  78. data/grammars/source.mi.json +1 -1
  79. data/grammars/source.mo.json +1 -1
  80. data/grammars/source.mojo.json +1 -1
  81. data/grammars/source.moonbit.config.json +1 -0
  82. data/grammars/source.moonbit.json +1 -1
  83. data/grammars/source.move.json +1 -1
  84. data/grammars/source.ms.json +1 -0
  85. data/grammars/source.nim.json +1 -1
  86. data/grammars/source.openqasm.json +1 -1
  87. data/grammars/source.opy.json +1 -0
  88. data/grammars/source.paperspecs.json +1 -0
  89. data/grammars/source.pic.json +1 -1
  90. data/grammars/source.pkgconf.json +1 -0
  91. data/grammars/source.pl.json +1 -0
  92. data/grammars/source.pnlgrp.json +1 -1
  93. data/grammars/source.powerquery.json +1 -0
  94. data/grammars/source.powershell.json +1 -1
  95. data/grammars/source.prisma.json +1 -1
  96. data/grammars/source.qsharp.json +1 -1
  97. data/grammars/source.quint.json +1 -0
  98. data/grammars/source.rarlist.json +1 -0
  99. data/grammars/source.rascript.json +1 -1
  100. data/grammars/source.record-jar.json +1 -1
  101. data/grammars/source.redscript.json +1 -0
  102. data/grammars/source.rego.json +1 -1
  103. data/grammars/source.rhai.json +1 -0
  104. data/grammars/source.rpg.json +1 -1
  105. data/grammars/source.rpgle.json +1 -1
  106. data/grammars/source.rust.json +1 -1
  107. data/grammars/source.scala.json +1 -1
  108. data/grammars/source.slang.json +1 -1
  109. data/grammars/source.slint.json +1 -1
  110. data/grammars/source.smithy.json +1 -1
  111. data/grammars/source.soql.json +1 -1
  112. data/grammars/source.spicedb-yaml.json +1 -0
  113. data/grammars/source.spicedb.json +1 -0
  114. data/grammars/source.stan.json +1 -1
  115. data/grammars/source.stim.json +1 -0
  116. data/grammars/source.surrealql.json +1 -1
  117. data/grammars/source.swift.json +1 -1
  118. data/grammars/source.tasm.json +1 -0
  119. data/grammars/source.tlb.json +1 -0
  120. data/grammars/source.tolk.json +1 -0
  121. data/grammars/source.ucode-template.json +1 -0
  122. data/grammars/source.ucode.json +1 -0
  123. data/grammars/source.uri-list.json +1 -0
  124. data/grammars/source.v.json +1 -1
  125. data/grammars/source.vento.json +1 -1
  126. data/grammars/source.verse.json +1 -0
  127. data/grammars/source.vespaSchema.json +1 -0
  128. data/grammars/source.vhs.json +1 -0
  129. data/grammars/source.wgsl.json +1 -1
  130. data/grammars/source.yaml.salt.json +1 -1
  131. data/grammars/spicedb-yaml.injection.json +1 -0
  132. data/grammars/text.bbcode.json +1 -0
  133. data/grammars/text.cachedir.json +1 -0
  134. data/grammars/text.cookie-jar.json +1 -0
  135. data/grammars/text.html.handlebars.json +1 -1
  136. data/grammars/text.html.vue.json +1 -1
  137. data/grammars/text.mac-tts.json +1 -0
  138. data/grammars/text.recfile.json +1 -0
  139. data/grammars/text.roff.json +1 -1
  140. data/grammars/version +1 -1
  141. data/lib/linguist/VERSION +1 -1
  142. data/lib/linguist/blob_helper.rb +19 -0
  143. data/lib/linguist/classifier.rb +2 -1
  144. data/lib/linguist/generated.rb +40 -0
  145. data/lib/linguist/generic.yml +3 -0
  146. data/lib/linguist/heuristics.yml +97 -5
  147. data/lib/linguist/language.rb +13 -9
  148. data/lib/linguist/languages.yml +368 -37
  149. data/lib/linguist/languages_data.rb +7663 -0
  150. data/lib/linguist/lazy_blob.rb +25 -2
  151. data/lib/linguist/samples.rb +4 -10
  152. data/lib/linguist/samples_data.rb +196100 -0
  153. data/lib/linguist/vendor.yml +3 -0
  154. metadata +54 -18
  155. data/grammars/markdown.bicep.codeblock.json +0 -1
  156. data/lib/linguist/languages.json +0 -1
  157. data/lib/linguist/samples.json +0 -1
@@ -1 +1 @@
1
- {"name":"Markdown","scopeName":"source.lean4.markdown","patterns":[{"include":"#frontMatter"},{"include":"#block"}],"repository":{"ampersand":{"name":"meta.other.valid-ampersand.markdown","match":"\u0026(?!([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);)"},"block":{"patterns":[{"include":"#separator"},{"include":"#heading"},{"include":"#blockquote"},{"include":"#lists"},{"include":"#fenced_code_block"},{"include":"#raw_block"},{"include":"#link-def"},{"include":"#html"},{"include":"#inline"},{},{"include":"#heading-setext"},{"include":"#paragraphb"}]},"blockquote":{"name":"markup.quote.markdown","begin":"(^)[ ]{0,3}(\u003e) ?","while":"(^|\\G)\\s*(\u003e) ?","patterns":[{"include":"#block"}],"captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}}},"bold":{"name":"markup.bold.markdown","begin":"(?x) (\\*\\*(?=\\w)|(?\u003c!\\w)\\*\\*|(?\u003c!\\w)\\b__)(?=\\S) (?=\n (\n \u003c[^\u003e]*+\u003e # HTML tags\n | (?\u003craw\u003e`+)([^`]|(?!(?\u003c!`)\\k\u003craw\u003e(?!`))`)*+\\k\u003craw\u003e\n # Raw\n | \\\\[\\\\`*_{}\\[\\]()#.!+\\-\u003e]?+ # Escapes\n | \\[\n (\n (?\u003csquare\u003e # Named group\n [^\\[\\]\\\\] # Match most chars\n | \\\\. # Escaped chars\n | \\[ \\g\u003csquare\u003e*+ \\] # 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 \u003c?(.*?)\u003e? # URL\n [ \\t]*+ # Optional whitespace\n ( # Optional Title\n (?\u003ctitle\u003e['\"])\n (.*?)\n \\k\u003ctitle\u003e\n )?\n \\)\n )\n )\n )\n | (?!(?\u003c=\\S)\\1). # Everything besides\n # style closer\n )++\n (?\u003c=\\S)(?=__\\b|\\*\\*)\\1 # Close\n)\n","end":"(?\u003c=\\S)(\\1)|(?=$)","patterns":[{"begin":"(?=\u003c[^\u003e]*?\u003e)","end":"(?\u003c=\u003e)","patterns":[{}],"applyEndPatternLast":true},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"}],"captures":{"1":{"name":"punctuation.definition.bold.markdown"}}},"bracket":{"name":"meta.other.valid-bracket.markdown","match":"\u003c(?![a-zA-Z/?\\$!])"},"escape":{"name":"constant.character.escape.markdown","match":"\\\\[-`*_#+.!(){}\\[\\]\\\\\u003e]"},"fenced_code_block":{"patterns":[{"include":"#fenced_code_block_css"},{"include":"#fenced_code_block_basic"},{"include":"#fenced_code_block_ini"},{"include":"#fenced_code_block_java"},{"include":"#fenced_code_block_lua"},{"include":"#fenced_code_block_makefile"},{"include":"#fenced_code_block_perl"},{"include":"#fenced_code_block_r"},{"include":"#fenced_code_block_ruby"},{"include":"#fenced_code_block_php"},{"include":"#fenced_code_block_sql"},{"include":"#fenced_code_block_vs_net"},{"include":"#fenced_code_block_xml"},{"include":"#fenced_code_block_xsl"},{"include":"#fenced_code_block_yaml"},{"include":"#fenced_code_block_dosbatch"},{"include":"#fenced_code_block_clojure"},{"include":"#fenced_code_block_coffee"},{"include":"#fenced_code_block_c"},{"include":"#fenced_code_block_cpp"},{"include":"#fenced_code_block_diff"},{"include":"#fenced_code_block_dockerfile"},{"include":"#fenced_code_block_git_commit"},{"include":"#fenced_code_block_git_rebase"},{"include":"#fenced_code_block_go"},{"include":"#fenced_code_block_groovy"},{"include":"#fenced_code_block_pug"},{"include":"#fenced_code_block_js"},{"include":"#fenced_code_block_js_regexp"},{"include":"#fenced_code_block_json"},{"include":"#fenced_code_block_jsonc"},{"include":"#fenced_code_block_less"},{"include":"#fenced_code_block_objc"},{"include":"#fenced_code_block_swift"},{"include":"#fenced_code_block_scss"},{"include":"#fenced_code_block_perl6"},{"include":"#fenced_code_block_powershell"},{"include":"#fenced_code_block_python"},{"include":"#fenced_code_block_regexp_python"},{"include":"#fenced_code_block_rust"},{"include":"#fenced_code_block_scala"},{"include":"#fenced_code_block_shell"},{"include":"#fenced_code_block_ts"},{"include":"#fenced_code_block_tsx"},{"include":"#fenced_code_block_csharp"},{"include":"#fenced_code_block_fsharp"},{"include":"#fenced_code_block_dart"},{"include":"#fenced_code_block_handlebars"},{"include":"#fenced_code_block_markdown"},{"include":"#fenced_code_block_log"},{"include":"#fenced_code_block_unknown"}]},"fenced_code_block_basic":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(html|htm|shtml|xhtml|inc|tmpl|tpl)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.html","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.html.basic"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_c":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(c|h)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.c","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.c"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_clojure":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(clj|cljs|clojure)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.clojure","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.clojure"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_coffee":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(coffee|Cakefile|coffee.erb)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.coffee","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.coffee"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_cpp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(cpp|c\\+\\+|cxx)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.cpp source.cpp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.c++"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_csharp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(cs|csharp|c#)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.csharp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.cs"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_css":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(css|css.erb)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.css","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.css"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_dart":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(dart)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.dart","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.dart"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_diff":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(patch|diff|rej)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.diff","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.diff"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_dockerfile":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(dockerfile|Dockerfile)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.dockerfile","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.dockerfile"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_dosbatch":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(bat|batch)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.dosbatch","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.batchfile"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_fsharp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(fs|fsharp|f#)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.fsharp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.fsharp"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_git_commit":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(COMMIT_EDITMSG|MERGE_MSG)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.git_commit","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.git-commit"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_git_rebase":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(git-rebase-todo)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.git_rebase","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_go":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(go|golang)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.go","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.go"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_groovy":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(groovy|gvy)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.groovy","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.groovy"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_handlebars":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(handlebars|hbs)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.handlebars","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.html.handlebars"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_ini":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(ini|conf)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.ini","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.ini"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_java":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(java|bsh)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.java","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.java"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_js":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|\\{\\.js.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.javascript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.js"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_js_regexp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(regexp)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.js_regexp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.js.regexp"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_json":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(json|json5|sublime-settings|sublime-menu|sublime-keymap|sublime-mousemap|sublime-theme|sublime-build|sublime-project|sublime-completions)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.json","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.json"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_jsonc":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(jsonc)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.jsonc","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.json.comments"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_less":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(less)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.less","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.css.less"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_log":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(log)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.log","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_lua":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(lua)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.lua","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.lua"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_makefile":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(Makefile|makefile|GNUmakefile|OCamlMakefile)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.makefile","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.makefile"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_markdown":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(markdown|md)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.markdown","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.md"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_objc":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.objc","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.objc"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_perl":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl|pl|pm|pod|t|PL|psgi|vcl)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.perl","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.perl"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_perl6":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.perl6","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.perl.6"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_php":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(php|php3|php4|php5|phpt|phtml|aw|ctp)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.php","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.html.basic"},{"include":"text.html.php"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_powershell":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(powershell|ps1|psm1|psd1)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.powershell","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.powershell"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_pug":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(jade|pug)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.pug","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.jade"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_python":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\{\\.python.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.python","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.python"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_r":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(R|r|s|S|Rprofile|\\{\\.r.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.r","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.r"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_regexp_python":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(re)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.regexp_python","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.regexp.python"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_ruby":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\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+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.ruby","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.ruby"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_rust":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(rust|rs|\\{\\.rust.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.rust","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.rust"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_scala":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(scala|sbt)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.scala","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.scala"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_scss":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(scss)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.scss","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.css.scss"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_shell":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\{\\.bash.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.shellscript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.shell"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_sql":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(sql|ddl|dml)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.sql","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.sql"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_swift":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(swift)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.swift","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.swift"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_ts":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(typescript|ts)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.typescript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.ts"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_tsx":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(tsx)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.typescriptreact","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.tsx"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_unknown":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?=([^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_vs_net":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(vb)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.vs_net","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_xml":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(xml|xsd|tld|jsp|pt|cpt|dtml|rss|opml)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.xml","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.xml"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_xsl":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(xsl|xslt)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.xsl","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.xml.xsl"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_yaml":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(yaml|yml)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.yaml","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.yaml"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"frontMatter":{"contentName":"meta.embedded.block.frontmatter","begin":"\\A-{3}\\s*$","end":"(^|\\G)-{3}|\\.{3}\\s*$","patterns":[{"include":"source.yaml"}]},"heading":{"name":"markup.heading.markdown","match":"(?:^|\\G)[ ]{0,3}((#{1,6})\\s+(?=[\\S[^#]]).*?\\s*(#{1,6})?)((?=-/)|$\\n?)","patterns":[{"include":"#inline"}],"captures":{"1":{"patterns":[{"name":"heading.6.markdown","match":"(#{6})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.5.markdown","match":"(#{5})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.4.markdown","match":"(#{4})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.3.markdown","match":"(#{3})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.2.markdown","match":"(#{2})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.1.markdown","match":"(#{1})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}}]}}},"heading-setext":{"patterns":[{"name":"markup.heading.setext.1.markdown","match":"^(={3,})(?=[ \\t]*$\\n?)"},{"name":"markup.heading.setext.2.markdown","match":"^(-{3,})(?=[ \\t]*$\\n?)"}]},"html":{"patterns":[{"name":"comment.block.html","begin":"(^|\\G)\\s*(\u003c!--)","end":"(--\u003e)","captures":{"1":{"name":"punctuation.definition.comment.html"},"2":{"name":"punctuation.definition.comment.html"}}},{"begin":"(?i)(^|\\G)\\s*(?=\u003c(script|style|pre)(\\s|$|\u003e)(?!.*?\u003c/(script|style|pre)\u003e))","end":"(?i)(.*)((\u003c/)(script|style|pre)(\u003e))","patterns":[{"begin":"(\\s*|$)","while":"(?i)^(?!.*\u003c/(script|style|pre)\u003e|\\s*-/)","patterns":[{}]}],"endCaptures":{"1":{"patterns":[{}]},"2":{"name":"meta.tag.structure.$4.end.html"},"3":{"name":"punctuation.definition.tag.begin.html"},"4":{"name":"entity.name.tag.html"},"5":{"name":"punctuation.definition.tag.end.html"}}},{"begin":"(?i)(^|\\G)\\s*(?=\u003c/?[a-zA-Z]+[^\\s/\u0026gt;]*(\\s|$|/?\u003e))","while":"^(?!\\s*$|\\s*-/)","patterns":[{}]},{"begin":"(^|\\G)\\s*(?=(\u003c[a-zA-Z0-9\\-](/?\u003e|\\s.*?\u003e)|\u003c/[a-zA-Z0-9\\-]\u003e)\\s*$)","while":"^(?!\\s*$|\\s*-/)","patterns":[{}]}]},"image-inline":{"name":"meta.image.inline.markdown","match":"(?x)\n (\\!\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])\n # Match the link text.\n (\\() # Opening paren for url\n (\u003c?)(\\S+?)(\u003e?) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in parens…\n | ((\").+?(\")) # or in quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n (\\))\n","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"10":{"name":"punctuation.definition.string.markdown"},"11":{"name":"punctuation.definition.string.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.markdown"},"14":{"name":"punctuation.definition.string.markdown"},"15":{"name":"punctuation.definition.metadata.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"6":{"name":"punctuation.definition.link.markdown"},"7":{"name":"markup.underline.link.image.markdown"},"8":{"name":"punctuation.definition.link.markdown"},"9":{"name":"string.other.link.description.title.markdown"}}},"image-ref":{"name":"meta.image.reference.markdown","match":"(\\!\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])[ ]?(\\[)(.*?)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.string.begin.markdown"},"5":{"name":"punctuation.definition.constant.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.markdown"}}},"inline":{"patterns":[{"include":"#ampersand"},{"include":"#bracket"},{"include":"#bold"},{"include":"#italic"},{"include":"#raw"},{"include":"#escape"},{"include":"#image-inline"},{"include":"#image-ref"},{"include":"#link-email"},{"include":"#link-inet"},{"include":"#link-inline"},{"include":"#link-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref-shortcut"}]},"italic":{"name":"markup.italic.markdown","begin":"(?x) (\\*(?=\\w)|(?\u003c!\\w)\\*|(?\u003c!\\w)\\b_)(?=\\S) # Open\n (?=\n (\n \u003c[^\u003e]*+\u003e # HTML tags\n | (?\u003craw\u003e`+)([^`]|(?!(?\u003c!`)\\k\u003craw\u003e(?!`))`)*+\\k\u003craw\u003e\n # Raw\n | \\\\[\\\\`*_{}\\[\\]()#.!+\\-\u003e]?+ # Escapes\n | \\[\n (\n (?\u003csquare\u003e # Named group\n [^\\[\\]\\\\] # Match most chars\n | \\\\. # Escaped chars\n | \\[ \\g\u003csquare\u003e*+ \\] # 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 \u003c?(.*?)\u003e? # URL\n [ \\t]*+ # Optional whtiespace\n ( # Optional Title\n (?\u003ctitle\u003e['\"])\n (.*?)\n \\k\u003ctitle\u003e\n )?\n \\)\n )\n )\n )\n | \\1\\1 # Must be bold closer\n | (?!(?\u003c=\\S)\\1). # Everything besides\n # style closer\n )++\n (?\u003c=\\S)(?=_\\b|\\*)\\1 # Close\n )\n","end":"(?\u003c=\\S)(\\1)((?!\\1)|(?=\\1\\1))|(?=$)","patterns":[{"begin":"(?=\u003c[^\u003e]*?\u003e)","end":"(?\u003c=\u003e)","patterns":[{}],"applyEndPatternLast":true},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"}],"captures":{"1":{"name":"punctuation.definition.italic.markdown"}}},"link-def":{"name":"meta.link.reference.def.markdown","match":"(?x)\n \\s* # Leading whitespace\n (\\[)([^]]+?)(\\])(:) # Reference name\n [ \\t]* # Optional whitespace\n (\u003c?)(\\S+?)(\u003e?) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in quotes…\n | ((\").+?(\")) # or in parens.\n )? # Title is optional\n \\s* # Optional whitespace\n $\n","captures":{"1":{"name":"punctuation.definition.constant.markdown"},"10":{"name":"punctuation.definition.string.end.markdown"},"11":{"name":"string.other.link.description.title.markdown"},"12":{"name":"punctuation.definition.string.begin.markdown"},"13":{"name":"punctuation.definition.string.end.markdown"},"2":{"name":"constant.other.reference.link.markdown"},"3":{"name":"punctuation.definition.constant.markdown"},"4":{"name":"punctuation.separator.key-value.markdown"},"5":{"name":"punctuation.definition.link.markdown"},"6":{"name":"markup.underline.link.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"string.other.link.description.title.markdown"},"9":{"name":"punctuation.definition.string.begin.markdown"}}},"link-email":{"name":"meta.link.email.lt-gt.markdown","match":"(\u003c)((?:mailto:)?[-.\\w]+@[-a-z0-9]+(\\.[-a-z0-9]+)*\\.[a-z]+)(\u003e)","captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"4":{"name":"punctuation.definition.link.markdown"}}},"link-inet":{"name":"meta.link.inet.markdown","match":"(\u003c)((?:https?|ftp)://.*?)(\u003e)","captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"3":{"name":"punctuation.definition.link.markdown"}}},"link-inline":{"name":"meta.link.inline.markdown","match":"(?x)\n (\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])\n # Match the link text.\n (\\() # Opening paren for url\n (\u003c?)((?\u003curl\u003e(?\u003e[^\\s()]+)|\\(\\g\u003curl\u003e*\\))*)(\u003e?) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in parens…\n | ((\").+?(\")) # or in quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n (\\))\n","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"10":{"name":"string.other.link.description.title.markdown"},"11":{"name":"punctuation.definition.string.begin.markdown"},"12":{"name":"punctuation.definition.string.end.markdown"},"13":{"name":"string.other.link.description.title.markdown"},"14":{"name":"punctuation.definition.string.begin.markdown"},"15":{"name":"punctuation.definition.string.end.markdown"},"16":{"name":"punctuation.definition.metadata.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"6":{"name":"punctuation.definition.link.markdown"},"7":{"name":"markup.underline.link.markdown"},"9":{"name":"punctuation.definition.link.markdown"}}},"link-ref":{"name":"meta.link.reference.markdown","match":"(\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])(\\[)([^\\]]*+)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.end.markdown"}}},"link-ref-literal":{"name":"meta.link.reference.literal.markdown","match":"(\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])[ ]?(\\[)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"punctuation.definition.constant.end.markdown"}}},"link-ref-shortcut":{"name":"meta.link.reference.markdown","match":"(\\[)(\\S+?)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"3":{"name":"punctuation.definition.string.end.markdown"}}},"list_paragraph":{"name":"meta.paragraph.markdown","begin":"(^)(?=\\S)(?![*+-\u003e]\\s|[0-9]+\\.\\s)","while":"(^|\\G)(?!-/|\\s*$|#|[ ]{0,3}([-*_\u003e][ ]{2,}){3,}[ \\t]*$\\n?|[ ]{0,3}[*+-\u003e]|[ ]{0,3}[0-9]+\\.)","patterns":[{"include":"#inline"},{},{"include":"#heading-setext"}]},"lists":{"patterns":[{"name":"markup.list.unnumbered.markdown","begin":"(^)([ ]{0,3})([*+-])([ \\t])(?!.*-/)","while":"((^|\\G)(?!.*-/)([ ]{2,4}|\\t))|(^[ \\t]*$)","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}}},{"name":"markup.list.numbered.markdown","begin":"(^)([ ]{0,3})([0-9]+\\.)([ \\t])(?!.*-/)","while":"((^|\\G)(?!.*-/)([ ]{2,4}|\\t))|(^[ \\t]*$)","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}}}]},"paragraph":{"name":"meta.paragraph.markdown","begin":"(^)[ ]{0,3}(?=\\S)","while":"(^|\\G)((?=\\s*[-=]{3,}\\s*$)|[ ]{4,}(?=\\S))","patterns":[{"include":"#inline"},{},{"include":"#heading-setext"}]},"raw":{"name":"markup.inline.raw.string.markdown","match":"(`+)([^`]|(?!(?\u003c!`)\\1(?!`))`)*+(\\1)","captures":{"1":{"name":"punctuation.definition.raw.markdown"},"3":{"name":"punctuation.definition.raw.markdown"}}},"raw_block_disabled":{"name":"markup.raw.block.markdown","begin":"(^)([ ]{4}|\\t)","while":"(^|\\G)([ ]{4}|\\t)"},"separator":{"name":"meta.separator.markdown","match":"(^|\\G)[ ]{0,3}([\\*\\-\\_])([ ]{0,2}\\2){2,}[ \\t]*$\\n?"}}}
1
+ {"name":"Markdown","scopeName":"source.lean4.markdown","patterns":[{"include":"#frontMatter"},{"include":"#block"}],"repository":{"block":{"patterns":[{"include":"#separator"},{"include":"#heading"},{"include":"#blockquote"},{"include":"#lists"},{"include":"#fenced_code_block"},{"include":"#raw_block"},{"include":"#link-def"},{"include":"#inline"},{"include":"#heading-setext"},{"include":"#paragraphb"}]},"blockquote":{"name":"markup.quote.markdown","begin":"(^)[ ]{0,3}(\u003e) ?","while":"(^|\\G)\\s*(\u003e) ?","patterns":[{"include":"#block"}],"captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}}},"bold":{"name":"markup.bold.markdown","begin":"(?x) (\\*\\*(?=\\w)|(?\u003c!\\w)\\*\\*|(?\u003c!\\w)\\b__)(?=\\S) (?=\n (\n \u003c[^\u003e]*+\u003e # HTML tags\n | (?\u003craw\u003e`+)([^`]|(?!(?\u003c!`)\\k\u003craw\u003e(?!`))`)*+\\k\u003craw\u003e\n # Raw\n | \\\\[\\\\`*_{}\\[\\]()#.!+\\-\u003e]?+ # Escapes\n | \\[\n (\n (?\u003csquare\u003e # Named group\n [^\\[\\]\\\\] # Match most chars\n | \\\\. # Escaped chars\n | \\[ \\g\u003csquare\u003e*+ \\] # 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 \u003c?(.*?)\u003e? # URL\n [ \\t]*+ # Optional whitespace\n ( # Optional Title\n (?\u003ctitle\u003e['\"])\n (.*?)\n \\k\u003ctitle\u003e\n )?\n \\)\n )\n )\n )\n | (?!(?\u003c=\\S)\\1). # Everything besides\n # style closer\n )++\n (?\u003c=\\S)(?=__\\b|\\*\\*)\\1 # Close\n)\n","end":"(?\u003c=\\S)(\\1)|(?=$|-/)","patterns":[{"include":"#escape"},{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"}],"captures":{"1":{"name":"punctuation.definition.bold.markdown"}}},"escape":{"name":"constant.character.escape.markdown","match":"\\\\[-`*_#+.!(){}\\[\\]\\\\\u003e]"},"fenced_code_block":{"patterns":[{"include":"#fenced_code_block_css"},{"include":"#fenced_code_block_basic"},{"include":"#fenced_code_block_ini"},{"include":"#fenced_code_block_java"},{"include":"#fenced_code_block_lua"},{"include":"#fenced_code_block_makefile"},{"include":"#fenced_code_block_perl"},{"include":"#fenced_code_block_r"},{"include":"#fenced_code_block_ruby"},{"include":"#fenced_code_block_php"},{"include":"#fenced_code_block_sql"},{"include":"#fenced_code_block_vs_net"},{"include":"#fenced_code_block_xml"},{"include":"#fenced_code_block_xsl"},{"include":"#fenced_code_block_yaml"},{"include":"#fenced_code_block_dosbatch"},{"include":"#fenced_code_block_clojure"},{"include":"#fenced_code_block_coffee"},{"include":"#fenced_code_block_c"},{"include":"#fenced_code_block_cpp"},{"include":"#fenced_code_block_diff"},{"include":"#fenced_code_block_dockerfile"},{"include":"#fenced_code_block_git_commit"},{"include":"#fenced_code_block_git_rebase"},{"include":"#fenced_code_block_go"},{"include":"#fenced_code_block_groovy"},{"include":"#fenced_code_block_pug"},{"include":"#fenced_code_block_js"},{"include":"#fenced_code_block_js_regexp"},{"include":"#fenced_code_block_json"},{"include":"#fenced_code_block_jsonc"},{"include":"#fenced_code_block_less"},{"include":"#fenced_code_block_objc"},{"include":"#fenced_code_block_swift"},{"include":"#fenced_code_block_scss"},{"include":"#fenced_code_block_perl6"},{"include":"#fenced_code_block_powershell"},{"include":"#fenced_code_block_python"},{"include":"#fenced_code_block_regexp_python"},{"include":"#fenced_code_block_rust"},{"include":"#fenced_code_block_scala"},{"include":"#fenced_code_block_shell"},{"include":"#fenced_code_block_ts"},{"include":"#fenced_code_block_tsx"},{"include":"#fenced_code_block_csharp"},{"include":"#fenced_code_block_fsharp"},{"include":"#fenced_code_block_dart"},{"include":"#fenced_code_block_handlebars"},{"include":"#fenced_code_block_markdown"},{"include":"#fenced_code_block_log"},{"include":"#fenced_code_block_unknown"}]},"fenced_code_block_basic":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(html|htm|shtml|xhtml|inc|tmpl|tpl)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.html","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.html.basic"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_c":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(c|h)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.c","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.c"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_clojure":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(clj|cljs|clojure)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.clojure","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.clojure"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_coffee":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(coffee|Cakefile|coffee.erb)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.coffee","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.coffee"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_cpp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(cpp|c\\+\\+|cxx)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.cpp source.cpp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.c++"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_csharp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(cs|csharp|c#)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.csharp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.cs"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_css":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(css|css.erb)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.css","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.css"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_dart":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(dart)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.dart","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.dart"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_diff":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(patch|diff|rej)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.diff","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.diff"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_dockerfile":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(dockerfile|Dockerfile)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.dockerfile","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.dockerfile"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_dosbatch":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(bat|batch)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.dosbatch","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.batchfile"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_fsharp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(fs|fsharp|f#)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.fsharp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.fsharp"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_git_commit":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(COMMIT_EDITMSG|MERGE_MSG)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.git_commit","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.git-commit"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_git_rebase":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(git-rebase-todo)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.git_rebase","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_go":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(go|golang)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.go","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.go"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_groovy":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(groovy|gvy)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.groovy","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.groovy"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_handlebars":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(handlebars|hbs)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.handlebars","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.html.handlebars"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_ini":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(ini|conf)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.ini","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.ini"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_java":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(java|bsh)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.java","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.java"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_js":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|\\{\\.js.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.javascript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.js"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_js_regexp":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(regexp)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.js_regexp","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.js.regexp"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_json":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(json|json5|sublime-settings|sublime-menu|sublime-keymap|sublime-mousemap|sublime-theme|sublime-build|sublime-project|sublime-completions)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.json","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.json"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_jsonc":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(jsonc)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.jsonc","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.json.comments"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_less":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(less)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.less","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.css.less"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_log":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(log)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.log","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_lua":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(lua)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.lua","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.lua"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_makefile":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(Makefile|makefile|GNUmakefile|OCamlMakefile)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.makefile","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.makefile"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_markdown":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(markdown|md)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.markdown","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.md"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_objc":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.objc","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.objc"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_perl":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl|pl|pm|pod|t|PL|psgi|vcl)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.perl","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.perl"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_perl6":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.perl6","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.perl.6"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_php":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(php|php3|php4|php5|phpt|phtml|aw|ctp)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.php","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.html.basic"},{"include":"text.html.php"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_powershell":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(powershell|ps1|psm1|psd1)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.powershell","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.powershell"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_pug":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(jade|pug)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.pug","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.jade"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_python":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\{\\.python.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.python","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.python"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_r":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(R|r|s|S|Rprofile|\\{\\.r.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.r","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.r"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_regexp_python":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(re)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.regexp_python","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.regexp.python"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_ruby":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\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+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.ruby","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.ruby"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_rust":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(rust|rs|\\{\\.rust.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.rust","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.rust"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_scala":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(scala|sbt)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.scala","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.scala"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_scss":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(scss)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.scss","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.css.scss"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_shell":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\{\\.bash.+?\\})((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.shellscript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.shell"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_sql":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(sql|ddl|dml)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.sql","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.sql"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_swift":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(swift)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.swift","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.swift"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_ts":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(typescript|ts)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.typescript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.ts"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_tsx":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(tsx)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.typescriptreact","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.tsx"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_unknown":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?=([^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_vs_net":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(vb)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.vs_net","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_xml":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(xml|xsd|tld|jsp|pt|cpt|dtml|rss|opml)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.xml","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.xml"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_xsl":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(xsl|xslt)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.xsl","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"text.xml.xsl"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"fenced_code_block_yaml":{"name":"markup.fenced_code.block.markdown","begin":"(^)(\\s*)(`{3,}|~{3,})\\s*(?i:(yaml|yml)((\\s+|:|\\{)[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*(?=-/|$)","patterns":[{"contentName":"meta.embedded.block.yaml","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*(-/|$))","patterns":[{"include":"source.yaml"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}},"frontMatter":{"contentName":"meta.embedded.block.frontmatter","begin":"\\A-{3}\\s*$","end":"(^|\\G)-{3}|\\.{3}\\s*$","patterns":[{"include":"source.yaml"}]},"heading":{"name":"markup.heading.markdown","match":"(?:^|\\G)[ ]{0,3}((#{1,6})\\s+(?=[\\S[^#]]).*?\\s*(#{1,6})?)((?=-/)|$\\n?)","patterns":[{"include":"#inline"}],"captures":{"1":{"patterns":[{"name":"heading.6.markdown","match":"(#{6})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.5.markdown","match":"(#{5})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.4.markdown","match":"(#{4})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.3.markdown","match":"(#{3})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.2.markdown","match":"(#{2})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}},{"name":"heading.1.markdown","match":"(#{1})\\s+(?=[\\S[^#]])(.*?)\\s*(\\s+#+)?$\\n?","captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown"},"3":{"name":"punctuation.definition.heading.markdown"}}}]}}},"heading-setext":{"patterns":[{"name":"markup.heading.setext.1.markdown","match":"^(={3,})(?=[ \\t]*$\\n?)"},{"name":"markup.heading.setext.2.markdown","match":"^(-{3,})(?=[ \\t]*$\\n?)"}]},"image-inline":{"name":"meta.image.inline.markdown","match":"(?x)\n (\\!\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])\n # Match the link text.\n (\\() # Opening paren for url\n (\u003c?)(\\S+?)(\u003e?) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in parens…\n | ((\").+?(\")) # or in quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n (\\))\n","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"10":{"name":"punctuation.definition.string.markdown"},"11":{"name":"punctuation.definition.string.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.markdown"},"14":{"name":"punctuation.definition.string.markdown"},"15":{"name":"punctuation.definition.metadata.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"6":{"name":"punctuation.definition.link.markdown"},"7":{"name":"markup.underline.link.image.markdown"},"8":{"name":"punctuation.definition.link.markdown"},"9":{"name":"string.other.link.description.title.markdown"}}},"image-ref":{"name":"meta.image.reference.markdown","match":"(\\!\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])[ ]?(\\[)(.*?)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.string.begin.markdown"},"5":{"name":"punctuation.definition.constant.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.markdown"}}},"inline":{"patterns":[{"include":"#bold"},{"include":"#italic"},{"include":"#raw"},{"include":"#escape"},{"include":"#image-inline"},{"include":"#image-ref"},{"include":"#link-email"},{"include":"#link-inet"},{"include":"#link-inline"},{"include":"#link-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref-shortcut"}]},"italic":{"name":"markup.italic.markdown","begin":"(?x) (\\*(?=\\w)|(?\u003c!\\w)\\*|(?\u003c!\\w)\\b_)(?=\\S) # Open\n (?=\n (\n \u003c[^\u003e]*+\u003e # HTML tags\n | (?\u003craw\u003e`+)([^`]|(?!(?\u003c!`)\\k\u003craw\u003e(?!`))`)*+\\k\u003craw\u003e\n # Raw\n | \\\\[\\\\`*_{}\\[\\]()#.!+\\-\u003e]?+ # Escapes\n | \\[\n (\n (?\u003csquare\u003e # Named group\n [^\\[\\]\\\\] # Match most chars\n | \\\\. # Escaped chars\n | \\[ \\g\u003csquare\u003e*+ \\] # 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 \u003c?(.*?)\u003e? # URL\n [ \\t]*+ # Optional whtiespace\n ( # Optional Title\n (?\u003ctitle\u003e['\"])\n (.*?)\n \\k\u003ctitle\u003e\n )?\n \\)\n )\n )\n )\n | \\1\\1 # Must be bold closer\n | (?!(?\u003c=\\S)\\1). # Everything besides\n # style closer\n )++\n (?\u003c=\\S)(?=_\\b|\\*)\\1 # Close\n )\n","end":"(?\u003c=\\S)(\\1)((?!\\1)|(?=\\1\\1))|(?=$|-/)","patterns":[{"include":"#escape"},{"include":"#raw"},{"include":"#bold"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"}],"captures":{"1":{"name":"punctuation.definition.italic.markdown"}}},"link-def":{"name":"meta.link.reference.def.markdown","match":"(?x)\n \\s* # Leading whitespace\n (\\[)([^]]+?)(\\])(:) # Reference name\n [ \\t]* # Optional whitespace\n (\u003c?)(\\S+?)(\u003e?) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in quotes…\n | ((\").+?(\")) # or in parens.\n )? # Title is optional\n \\s* # Optional whitespace\n $\n","captures":{"1":{"name":"punctuation.definition.constant.markdown"},"10":{"name":"punctuation.definition.string.end.markdown"},"11":{"name":"string.other.link.description.title.markdown"},"12":{"name":"punctuation.definition.string.begin.markdown"},"13":{"name":"punctuation.definition.string.end.markdown"},"2":{"name":"constant.other.reference.link.markdown"},"3":{"name":"punctuation.definition.constant.markdown"},"4":{"name":"punctuation.separator.key-value.markdown"},"5":{"name":"punctuation.definition.link.markdown"},"6":{"name":"markup.underline.link.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"string.other.link.description.title.markdown"},"9":{"name":"punctuation.definition.string.begin.markdown"}}},"link-email":{"name":"meta.link.email.lt-gt.markdown","match":"(\u003c)((?:mailto:)?[-.\\w]+@[-a-z0-9]+(\\.[-a-z0-9]+)*\\.[a-z]+)(\u003e)","captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"4":{"name":"punctuation.definition.link.markdown"}}},"link-inet":{"name":"meta.link.inet.markdown","match":"(\u003c)((?:https?|ftp)://.*?)(\u003e)","captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"3":{"name":"punctuation.definition.link.markdown"}}},"link-inline":{"name":"meta.link.inline.markdown","match":"(?x)\n (\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])\n # Match the link text.\n (\\() # Opening paren for url\n (\u003c?)((?\u003curl\u003e(?\u003e[^\\s()]+)|\\(\\g\u003curl\u003e*\\))*)(\u003e?) # The url\n [ \\t]* # Optional whitespace\n (?:\n ((\\().+?(\\))) # Match title in parens…\n | ((\").+?(\")) # or in quotes.\n )? # Title is optional\n \\s* # Optional whitespace\n (\\))\n","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"10":{"name":"string.other.link.description.title.markdown"},"11":{"name":"punctuation.definition.string.begin.markdown"},"12":{"name":"punctuation.definition.string.end.markdown"},"13":{"name":"string.other.link.description.title.markdown"},"14":{"name":"punctuation.definition.string.begin.markdown"},"15":{"name":"punctuation.definition.string.end.markdown"},"16":{"name":"punctuation.definition.metadata.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"6":{"name":"punctuation.definition.link.markdown"},"7":{"name":"markup.underline.link.markdown"},"9":{"name":"punctuation.definition.link.markdown"}}},"link-ref":{"name":"meta.link.reference.markdown","match":"(\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])(\\[)([^\\]]*+)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.end.markdown"}}},"link-ref-literal":{"name":"meta.link.reference.literal.markdown","match":"(\\[)((?\u003csquare\u003e[^\\[\\]\\\\]|\\\\.|\\[\\g\u003csquare\u003e*+\\])*+)(\\])[ ]?(\\[)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.string.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"punctuation.definition.constant.end.markdown"}}},"link-ref-shortcut":{"name":"meta.link.reference.markdown","match":"(\\[)(\\S+?)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"3":{"name":"punctuation.definition.string.end.markdown"}}},"list_paragraph":{"name":"meta.paragraph.markdown","begin":"(^)(?=\\S)(?![*+-\u003e]\\s|[0-9]+\\.\\s)","while":"(^|\\G)(?!-/|\\s*$|#|[ ]{0,3}([-*_\u003e][ ]{2,}){3,}[ \\t]*$\\n?|[ ]{0,3}[*+-\u003e]|[ ]{0,3}[0-9]+\\.)","patterns":[{"include":"#inline"},{"include":"#heading-setext"}]},"lists":{"patterns":[{"name":"markup.list.unnumbered.markdown","begin":"(^)([ ]{0,3})([*+-])([ \\t])(?!.*-/)","while":"((^|\\G)(?!.*-/)([ ]{2,4}|\\t))|(^[ \\t]*$)","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}}},{"name":"markup.list.numbered.markdown","begin":"(^)([ ]{0,3})([0-9]+\\.)([ \\t])(?!.*-/)","while":"((^|\\G)(?!.*-/)([ ]{2,4}|\\t))|(^[ \\t]*$)","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}}}]},"paragraph":{"name":"meta.paragraph.markdown","begin":"(^)[ ]{0,3}(?=\\S)","while":"(^|\\G)((?=\\s*[-=]{3,}\\s*$)|[ ]{4,}(?=\\S))","patterns":[{"include":"#inline"},{"include":"#heading-setext"}]},"raw":{"name":"markup.inline.raw.string.markdown","match":"(`+)([^`]|(?!(?\u003c!`)\\1(?!`))`)*+(\\1)","captures":{"1":{"name":"punctuation.definition.raw.markdown"},"3":{"name":"punctuation.definition.raw.markdown"}}},"raw_block_disabled":{"name":"markup.raw.block.markdown","begin":"(^)([ ]{4}|\\t)","while":"(^|\\G)([ ]{4}|\\t)"},"separator":{"name":"meta.separator.markdown","match":"(^|\\G)[ ]{0,3}([\\*\\-\\_])([ ]{0,2}\\2){2,}[ \\t]*$\\n?"}}}
@@ -1 +1 @@
1
- {"name":"leo","scopeName":"source.leo","patterns":[{"include":"#function_declaration"},{"include":"#import_file"},{"include":"#program_file"},{"include":"#program_keyword"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#string_literal"},{"include":"#integer_literal"},{"include":"#built-in_core_assign"},{"include":"#boolean_constant"},{"include":"#import_keyword"},{"include":"#control_keyword"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#storage_type_const"},{"include":"#storage_type_record"},{"include":"#storage_type_let"},{"include":"#storage_type_mapping"},{"include":"#inside_braces"},{"include":"#type_params"},{"include":"#function_parameters"},{"include":"#console_methods"},{"include":"#script_keyword"}],"repository":{"address_literal":{"name":"constant.other.address.leo","match":"\\baleo1[A-z0-9]*"},"async_keyword":{"match":"\\b(async)\\s+((\\btransition\\b)|(\\bfunction\\b)|(\\binline\\b))\\b\\s+\\w+\\s*\\(","captures":{"1":{"name":"storage.type.async.leo"},"3":{"name":"storage.type.transition.leo"},"4":{"name":"storage.type.function.leo"},"5":{"name":"storage.type.inline.leo"}}},"block_comment":{"name":"comment.block.leo","begin":"/\\*","end":"\\*/"},"boolean_constant":{"name":"constant.language.boolean.leo","match":"\\b(true|false)\\b"},"built-in_core_assign":{"name":"storage.type.assign.leo","match":"\\b(([0-9][0-9_]*)(group|field|scalar))"},"circuit_attribute":{"match":"\\b([a-zA-Z_]\\w*)\\s*:(?!:)","captures":{"1":{"name":"entity.other.attribute.name"}}},"circuit_call":{"begin":"(?\u003c=^|\\s)([a-zA-Z_]\\w*)\\s*\\{","end":"\\}","patterns":[{"include":"#circuit_attribute"},{"include":"#inside_braces"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#core_types"},{"include":"#integer_literal"},{"include":"#address_literal"},{"include":"#built-in_core_assign"},{"include":"#boolean_constant"},{"include":"#control_keyword"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#storage_type_record"},{"include":"#storage_type_let"},{"include":"#string_literal"},{"include":"#invoking_attribute"},{"include":"#console_methods"},{"include":"#future_type"},{"include":"#future_type_parameters"}],"beginCaptures":{"1":{"name":"entity.name.struct.leo"}}},"circuit_static_call":{"match":"(\\w+)\\s*::\\s*(\\w+)","captures":{"1":{"name":"entity.name.struct.leo"},"2":{"name":"entity.name.function.static.leo"}}},"conditional_statement":{"begin":"(?\u003c=^|\\s)(if|else\\s*if)\\s+\\w+","end":"\\}","patterns":[{"include":"#conditional_statement"},{"include":"#statement_return"},{"include":"#variable_declaration"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#core_types"},{"include":"#integer_literal"},{"include":"#address_literal"},{"include":"#built-in_core_assign"},{"include":"#boolean_constant"},{"include":"#control_keyword"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#storage_type_record"},{"include":"#storage_type_let"}],"beginCaptures":{"1":{"name":"keyword.control.leo"}}},"console_methods":{"match":"\\b(assert|assert_eq|assert_neq)\\b","captures":{"1":{"name":"support.function.console.leo"}}},"control_keyword":{"name":"keyword.control.leo","match":"\\b(else|if|in|for|as)\\b"},"core_types":{"name":"storage.type.core.leo","match":"\\b(bool|field|scalar|u8|u16|u32|u64|u128|i8|i16|i32|i64|i128|string|address|signature|group|integer)\\b"},"custom_type_identifier":{"match":"\\b([a-zA-Z_]\\w*)(?=\\s*[\\],;)=\\{])","captures":{"1":{"name":"entity.name.type.custom.leo"}}},"function_attribute":{"match":"\\b(\\w*)\\b\\s*:","captures":{"1":{"name":"variable.parameter.leo"}}},"function_call":{"match":"\\b([a-zA-Z_]\\w*)\\s*(?=\\()","captures":{"1":{"name":"entity.name.function.call.leo"}}},"function_declaration":{"name":"function.declaration.leo","match":"(?:(?\u003c=\\btransition\\b)|(?\u003c=\\bfunction\\b)|(?\u003c=\\binline\\b))\\s+(\\w+)\\s*\\(","captures":{"1":{"name":"entity.name.function.leo"},"2":{"name":"entity.name.function.leo"}}},"function_keyword":{"name":"storage.type.function.leo","match":"\\b(function)\\b"},"function_parameters":{"begin":"(?:(async)\\s*(function|transition|inline))\\s+(\\w+)\\s*\\(|(?:(function|transition|inline))\\s+(\\w+)\\s*\\(","end":"\\)","patterns":[{"include":"#function_attribute"},{"include":"#integer_literal"},{"include":"#boolean_constant"},{"include":"#core_types"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#storage_type_record"},{"include":"#line_comment"},{"include":"#block_comment"},{"include":"#future_type"},{"include":"#future_type_parameters"},{"include":"#custom_type_identifier"}],"beginCaptures":{"1":{"name":"storage.type.async.leo"},"2":{"name":"storage.type.function.leo"},"3":{"name":"entity.name.function.leo"},"4":{"name":"storage.type.function.leo"},"5":{"name":"entity.name.function.leo"}}},"future_type":{"match":"\\b(Future)\\b","captures":{"1":{"name":"storage.type.future.leo"}}},"future_type_parameters":{"begin":"(?\u003c=Future)\\s*(\\\u003c)","end":"(\\\u003e)","patterns":[{"begin":"(Fn)","end":"(\\))","patterns":[{"begin":"(\\()","end":"(?=\\))","patterns":[{"include":"#core_types"},{"include":"#integer_literal"},{"include":"#future_type"},{"include":"#future_type_parameters"}],"beginCaptures":{"1":{"name":"storage.type.future.parantesis.leo"}}}],"beginCaptures":{"1":{"name":"storage.type.future.leo"}},"endCaptures":{"1":{"name":"storage.type.future.parantesis.leo"}}}],"beginCaptures":{"1":{"name":"storage.type.future.angle.brackets.leo"}},"endCaptures":{"1":{"name":"storage.type.future.angle.brackets.leo"}}},"import_file":{"name":"entity.name.type.import.leo","match":"(?\u003c=\\bimport\\b)\\s+\\b\\w+\\b\\s*\\.\\s*\\b\\w+\\b\\s*(?=;)"},"import_keyword":{"name":"keyword.control.import.leo","match":"\\b(import)\\b"},"inline_keyword":{"name":"storage.type.inline.leo","match":"\\b(inline)\\b"},"inside_braces":{"name":"punctuation.braces.leo","begin":"\\{","end":"\\}","patterns":[{"include":"#conditional_statement"},{"include":"#control_keyword"},{"include":"#variable_declaration"},{"include":"#statement_for_iterator_type"},{"include":"#return_type"},{"include":"#statement_return"},{"include":"#function_call"},{"include":"#mapping_declaration"},{"include":"#function_parameters"},{"include":"#function_declaration"},{"include":"#async_keyword"},{"include":"#function_keyword"},{"include":"#struct_keyword"},{"include":"#program_keyword"},{"include":"#transition_keyword"},{"include":"#script_keyword"},{"include":"#inline_keyword"},{"include":"#record_strucut_definition"},{"include":"#storage_type_mapping"},{"include":"#import_file"},{"include":"#program_file"},{"include":"#inside_braces"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#integer_literal"},{"include":"#circuit_static_call"},{"include":"#circuit_call"},{"include":"#core_types"},{"include":"#address_literal"},{"include":"#built-in_core_assign"},{"include":"#boolean_constant"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#storage_type_const"},{"include":"#storage_type_record"},{"include":"#storage_type_let"},{"include":"#string_literal"},{"include":"#invoking_attribute"},{"include":"#console_methods"},{"include":"#type_params"},{"include":"#method_name_call"},{"include":"#console_methods"},{"include":"#future_type"},{"include":"#future_type_parameters"},{"name":"support.other.annotation.leo","match":"@[a-zA-Z][a-zA-Z0-9_]*"}]},"integer_literal":{"name":"constant.numeric.decimal.leo","match":"\\b([0-9][0-9_]*|0b[0-1_]+|0o[0-7_]+|0x[0-9A-F_]+)([ui](8|16|32|64|128))?\\b"},"invoking_attribute":{"match":"(?\u003c=\\.)(?\u003c!\\.\\.)(\\w+(?=\\.)|\\b\\w+\\b(?!\\())","captures":{"1":{"name":"entity.other.attribute.name"}}},"line_comment":{"name":"comment.line.double-slash.leo","begin":"//","end":"$"},"mapping_declaration":{"begin":"(?\u003c=\\bmapping\\b)\\s+\\w+\\:s*","end":"$","patterns":[{"include":"#core_types"},{"include":"#integer_literal"},{"include":"#future_type"},{"include":"#future_type_parameters"},{"include":"#block_comment"},{"include":"#line_comment"}]},"method_name_call":{"match":"\\w+\\s*\\.\\s*([a-zA-Z][a-zA-Z0-9_]*)\\s*","captures":{"1":{"name":"entity.name.struct.attribute.leo"}}},"program_file":{"name":"entity.name.type.program.leo","match":"(?\u003c=\\bprogram\\b)\\s+\\b\\w+\\b\\s*\\.\\s*\\baleo\\b\\s*(?={)"},"program_keyword":{"name":"storage.type.program.leo","match":"\\b(program)\\b"},"record_strucut_definition":{"begin":"(?:(?\u003c=\\brecord\\b)|(?\u003c=\\bstruct\\b))\\s+\\b\\w+\\b\\s*\\{","end":"\\}","patterns":[{"include":"#circuit_attribute"},{"include":"#inside_braces"},{"include":"#core_types"},{"include":"#integer_literal"},{"include":"#built-in_core_assign"},{"include":"#boolean_constant"},{"include":"#control_keyword"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#storage_type_let"},{"include":"#string_literal"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#invoking_attribute"},{"include":"#type_params"},{"include":"#circuit_static_call"},{"include":"#circuit_call"},{"include":"#function_parameters"},{"include":"#console_methods"},{"include":"#future_type"},{"include":"#future_type_parameters"}]},"return_type":{"begin":"-\u003e","end":"(?={)","patterns":[{"include":"#core_types"},{"include":"#storage_type_public"},{"include":"#storage_type_private"},{"include":"#storage_type_constant"},{"include":"#integer_literal"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#future_type"},{"include":"#future_type_parameters"},{"include":"#custom_type_identifier"}]},"script_keyword":{"name":"storage.type.script.leo","match":"\\b(script)\\b"},"statement_for_iterator_type":{"begin":"(?\u003c=for)\\s*\\w+:\\s*","end":"(?=in)","patterns":[{"include":"#core_types"},{"include":"#future_type"},{"include":"#future_type_parameters"}]},"statement_return":{"begin":"\\b(return)\\b","end":";","patterns":[{"include":"#integer_literal"},{"include":"#address_literal"},{"include":"#built-in_core_assign"},{"include":"#boolean_constant"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#method_name_call"},{"include":"#invoking_attribute"},{"include":"#circuit_call"},{"include":"#function_call"}],"beginCaptures":{"1":{"name":"keyword.control.leo"}}},"storage_type_const":{"name":"storage.type.const.leo","match":"\\b(const)\\b"},"storage_type_constant":{"name":"storage.type.constant.leo","match":"\\b(constant)\\b"},"storage_type_let":{"name":"storage.type.let.leo","match":"\\b(let)\\b"},"storage_type_mapping":{"name":"storage.type.mapping.leo","match":"\\b(mapping)\\b"},"storage_type_private":{"name":"storage.type.private.leo","match":"\\b(private)\\b"},"storage_type_public":{"name":"storage.type.public.leo","match":"\\b(public)\\b"},"storage_type_record":{"name":"storage.type.record.leo","match":"\\b(record)\\b"},"string_literal":{"name":"string.quoted.double.leo","begin":"\"","end":"\""},"struct_keyword":{"name":"storage.type.struct.leo","match":"\\b(struct)\\b"},"transition_keyword":{"name":"storage.type.transition.leo","match":"\\b(transition)\\b"},"variable_declaration":{"begin":"(?:(?\u003c=\\blet|const\\b))\\s*\\w+\\s*\\:\\s*","end":"\\=","patterns":[{"include":"#core_types"},{"include":"#integer_literal"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#future_type"},{"include":"#future_type_parameters"},{"include":"#custom_type_identifier"}]}}}
1
+ {"name":"leo","scopeName":"source.leo","patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#program_declaration"},{"include":"#import_declaration"},{"include":"#function_declaration"},{"include":"#type_declaration"},{"include":"#address_literal"},{"include":"#suffix_literal"},{"include":"#numeric_literal"},{"include":"#string_literal"},{"include":"#identifier_literal"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#assertions"},{"include":"#declaration_keywords"},{"include":"#modifier_keywords"},{"include":"#control_keywords"},{"include":"#special_types"},{"include":"#primitive_types"},{"include":"#program_id"},{"include":"#function_call"},{"include":"#operators"}],"repository":{"address_literal":{"name":"constant.other.address.leo","match":"\\baleo1[a-z0-9]+\\b"},"annotations":{"match":"(@)\\s*([A-Za-z_][A-Za-z0-9_]*)","captures":{"1":{"name":"punctuation.definition.annotation.leo"},"2":{"name":"entity.name.decorator.leo"}}},"assertions":{"name":"support.function.builtin.leo","match":"(?\u003c!\\.)\\b(assert_eq|assert_neq|assert)\\b"},"comments":{"patterns":[{"name":"comment.line.double-slash.leo","match":"//.*$"},{"name":"comment.block.leo","begin":"/\\*","end":"\\*/"}]},"control_keywords":{"patterns":[{"name":"keyword.control.leo","match":"(?\u003c!\\.)\\b(if|else|for|in|return)\\b"},{"name":"keyword.operator.cast.leo","match":"(?\u003c!\\.)\\b(as)\\b"}]},"declaration_keywords":{"name":"storage.type.leo","match":"(?\u003c!\\.)\\b(fn|struct|record|interface|mapping|storage|const|let|constructor)\\b"},"function_call":{"match":"\\b([A-Za-z_][A-Za-z0-9_]*)\\s*(?=\\()","captures":{"1":{"name":"entity.name.function.call.leo"}}},"function_declaration":{"match":"\\b(fn)\\s+([A-Za-z][A-Za-z0-9_]*)","captures":{"1":{"name":"storage.type.function.leo"},"2":{"name":"entity.name.function.leo"}}},"identifier_literal":{"name":"string.quoted.single.leo","match":"'[A-Za-z][A-Za-z0-9_]*'"},"import_declaration":{"match":"\\b(import)\\s+([A-Za-z][A-Za-z0-9_]*)\\s*(\\.)\\s*(aleo)\\b","captures":{"1":{"name":"keyword.control.import.leo"},"2":{"name":"entity.name.namespace.leo"},"3":{"name":"punctuation.accessor.leo"},"4":{"name":"keyword.other.network.leo"}}},"language_constants":{"name":"constant.language.leo","match":"(?\u003c!\\.)\\b(true|false|none)\\b"},"language_variables":{"name":"variable.language.leo","match":"(?\u003c!\\.)\\b(self|block|network)\\b"},"modifier_keywords":{"name":"storage.modifier.leo","match":"(?\u003c!\\.)\\b(export|final|view|public|private|constant|dyn)\\b"},"numeric_literal":{"name":"constant.numeric.leo","match":"\\b(0x[0-9a-fA-F_]+|0o[0-7_]+|0b[01_]+|[0-9][0-9_]*)(u8|u16|u32|u64|u128|i8|i16|i32|i64|i128)?\\b"},"operators":{"name":"keyword.operator.leo","match":"-\u003e|=\u003e|::|\\.\\.=?|\\*\\*=?|\u003c\u003c=?|\u003e\u003e=?|\u0026\u0026=?|\\|\\|=?|==|!=|\u003c=|\u003e=|[+\\-*/%\u0026|^]=?|[\u003c\u003e!?=]"},"primitive_types":{"name":"support.type.leo","match":"(?\u003c!\\.)\\b(address|bool|field|group|scalar|signature|string|identifier|i8|i16|i32|i64|i128|u8|u16|u32|u64|u128)\\b"},"program_declaration":{"match":"\\b(program)\\s+([A-Za-z][A-Za-z0-9_]*)\\s*(\\.)\\s*(aleo)\\b","captures":{"1":{"name":"keyword.other.program.leo"},"2":{"name":"entity.name.namespace.leo"},"3":{"name":"punctuation.accessor.leo"},"4":{"name":"keyword.other.network.leo"}}},"program_id":{"match":"\\b([A-Za-z][A-Za-z0-9_]*)\\s*(\\.)\\s*(aleo)\\b","captures":{"1":{"name":"entity.name.namespace.leo"},"2":{"name":"punctuation.accessor.leo"},"3":{"name":"keyword.other.network.leo"}}},"special_types":{"name":"support.type.leo","match":"(?\u003c!\\.)\\b(Final|Fn|Future)\\b"},"string_literal":{"name":"string.quoted.double.leo","begin":"\"","end":"\""},"suffix_literal":{"name":"constant.numeric.leo","match":"\\b(0x[0-9a-fA-F_]+|0o[0-7_]+|0b[01_]+|[0-9][0-9_]*)(field|group|scalar)\\b"},"type_declaration":{"match":"\\b(struct|record|interface)\\s+([A-Za-z][A-Za-z0-9_]*)","captures":{"1":{"name":"storage.type.leo"},"2":{"name":"entity.name.type.leo"}}}}}
@@ -0,0 +1 @@
1
+ {"name":"Lobster","scopeName":"source.lobster","patterns":[{"include":"#comments"},{"include":"#statements"},{"include":"#keywords"},{"include":"#strings"},{"include":"#digits"},{"include":"#ident"}],"repository":{"comments":{"patterns":[{"name":"comment.block.source.lobster","begin":"/\\*","end":"\\*/"},{"name":"comment.line.double-slash.lobster","match":"//.*$"}]},"digits":{"patterns":[{"name":"constant.numeric.hex.lobster","match":"(?\u003c![\\w\\d.])0x[[:xdigit:]]+"},{"name":"constant.numeric.integer.lobster","match":"(?\u003c![\\w\\d.])\\d+(?![.])"},{"name":"constant.numeric.float.lobster","match":"(\\d+)?\\.(\\d+)?"}]},"ident":{"patterns":[{"name":"variable.source.lobster","match":"[A-Za-z_][A-Za-z0-9_]*"}]},"keywords":{"patterns":[{"name":"keyword.source.lobster","match":"\\b(constructor|abstract|member|member_frame|static|static_frame|attribute|break|return|struct|class|import|namespace|pakfile|def|is|from|program|private|enum|enum_flags|typeof|var|let|not|and|or)\\b"},{"name":"storage.type.source.lobster","match":"\\b(int|float|string|bool|void|resource)\\b"},{"name":"constant.language.source.lobster","match":"\\b(nil|true|false)\\b"},{"name":"keyword.control.source.lobster","match":"\\b(break|return|from)\\b"},{"name":"keyword.control.source.lobster","match":"\\b(else|elif)\\b"},{"name":"keyword.control.source.lobster","match":"\\b(guard|if|while|switch|case|default|collectwhile|for|filter|exists|map)\\b"},{"name":"support.function.source.lobster","match":"\\b(abs|acos|all|any|append|append_into|asin|assert|atan|atan2|binary_search|binary_search_first_field_object|binary_search_first_field_string|binary_search_object|breakpoint|call_function_value|cardinal_spline|ceiling|cg.average_face_colors|cg.average_surface_color|cg.bounding_box|cg.chunks_skipped|cg.clone|cg.color_to_palette|cg.copy|cg.create_3d_texture|cg.create_mesh|cg.erode|cg.get|cg.get_buf|cg.get_palette|cg.get_palette_storage_buf|cg.get_palette_storage_len|cg.init|cg.load_image|cg.load_palette|cg.load_vox|cg.load_vox_names|cg.name|cg.normal_indices|cg.num_solid|cg.offset|cg.palette_storage_index|cg.palette_to_color|cg.randomize|cg.rotate|cg.sample_down|cg.save_vox|cg.scale_up|cg.set|cg.set_palette|cg.simplex|cg.size|cg.stretch|circles_within_range|clamp|command_line_arguments|compare_substring|compile_run_code|compile_run_file|concat_string|copy|cos|crash_test_cpp_nullptr_exception|cross|date_time|date_time_build_info|date_time_string|date_time_string_format|deepcopy|degrees|delete_file|div|dot|ensure_size|equal|escape_string|exists_file|find_string|find_string_reverse|flatbuffers.binary_to_json|flatbuffers.field_float32|flatbuffers.field_float64|flatbuffers.field_int16|flatbuffers.field_int32|flatbuffers.field_int64|flatbuffers.field_int8|flatbuffers.field_present|flatbuffers.field_string|flatbuffers.field_struct|flatbuffers.field_table|flatbuffers.field_uint16|flatbuffers.field_uint32|flatbuffers.field_uint64|flatbuffers.field_uint8|flatbuffers.field_vector|flatbuffers.field_vector_len|flatbuffers.indirect|flatbuffers.json_to_binary|flatbuffers.string|flexbuffers_binary_to_json|flexbuffers_binary_to_value|flexbuffers_json_to_binary|flexbuffers_value_to_binary|float|floor|fraction|get_line|get_memory_usage|get_stack_trace|gl.animate_mesh|gl.animate_mesh_blend|gl.bind_buffer_object|gl.bind_mesh_to_compute|gl.blend|gl.button|gl.circle|gl.clear|gl.color|gl.controller_axis|gl.copy_buffer_object|gl.create_blank_texture|gl.create_colored_texture|gl.create_texture|gl.create_texture_single_channel|gl.create_time_query|gl.cull_front|gl.cursor|gl.debug_grid|gl.delta_time|gl.delta_time_rolling|gl.dispatch_compute|gl.dpi|gl.dropped_file|gl.dump_shader|gl.end_text_input|gl.frame|gl.framebuffer_size|gl.fullscreen|gl.generate_texture_mipmap|gl.get_char_code|gl.get_font_size|gl.get_glyph_name|gl.get_outline_size|gl.get_shader|gl.grab|gl.hit|gl.init_controller_database|gl.joy_axis|gl.key_repeat|gl.last_pos|gl.last_time|gl.light|gl.line|gl.line_mode|gl.load_materials|gl.load_texture|gl.local_last_pos|gl.local_mouse_pos|gl.mesh_animation_frames|gl.mesh_animations|gl.mesh_parts|gl.mesh_pointsize|gl.mesh_size|gl.model_view|gl.model_view_projection|gl.mouse_delta|gl.mouse_pos|gl.mousewheel_delta|gl.new_mesh|gl.new_mesh_iqm|gl.new_poly|gl.open_circle|gl.open_url|gl.origin|gl.ortho|gl.ortho3d|gl.perspective|gl.point_scale|gl.polygon|gl.pop_model_view|gl.projection|gl.push_model_view|gl.read_texture|gl.rect|gl.rect_tc_col|gl.render_mesh|gl.render_tiles|gl.require_version|gl.rotate_x|gl.rotate_y|gl.rotate_z|gl.rounded_rectangle|gl.save_mesh|gl.save_texture|gl.scale|gl.scaling|gl.scissor|gl.screenshot|gl.set_font_name|gl.set_font_size|gl.set_image_texture|gl.set_max_font_size|gl.set_mesh_texture|gl.set_primitive_texture|gl.set_shader|gl.set_text_input|gl.set_texture_flags|gl.set_uniform|gl.set_uniform_array|gl.set_uniform_matrix|gl.shutdown|gl.start_text_input|gl.start_time_query|gl.stop_time_query|gl.switch_to_framebuffer|gl.text|gl.text_input_state|gl.text_size|gl.texture_size|gl.time|gl.touchscreen|gl.translate|gl.unbind_all_textures|gl.unit_cube|gl.unit_square|gl.update_buffer_object|gl.visible|gl.window|gl.window_min_max|gl.window_size|gl.window_title|hash|im.accept_drag_drop_payload|im.add_font|im.button|im.button_repeat_end|im.button_repeat_start|im.calc_text_size|im.checkbox|im.child_end|im.child_start|im.close_current_popup|im.coloredit|im.color_end|im.color_start|im.combo|im.disabled_end|im.disabled_start|im.dockspace_over_viewport|im.drag_drop_source_end|im.drag_drop_source_start|im.drag_drop_target_end|im.drag_drop_target_start|im.edit_anything|im.font_end|im.font_start|im.frame_end|im.frame_start|im.get_content_region_avail|im.get_layout_pos|im.graph|im.group_end|im.group_start|im.id_end|im.id_start|im.image|im.image_button|im.image_mouseclick|im.init|im.input_float|im.input_int|im.input_text|im.input_text_multi_line|im.is_item_deactivated_after_edit|im.listbox|im.menu_bar_end|im.menu_bar_start|im.menu_end|im.menu_item|im.menu_item_toggle|im.menu_start|im.mouse_clicked|im.new_line|im.next_window_pos|im.next_window_size|im.popup_end|im.popup_open|im.popup_start|im.progress_bar|im.radio|im.same_line|im.selectable|im.separator|im.set_drag_drop_payload|im.set_layout_pos|im.set_style_color|im.set_style_frame_padding|im.set_style_inner_spacing|im.set_style_spacing|im.set_style_window_padding|im.show_debug_metrics_window|im.show_engine_stats|im.show_flexbuffer|im.show_vars|im.sliderfloat|im.sliderfloat2|im.sliderfloat3|im.sliderfloat4|im.sliderint|im.sliderint2|im.sliderint3|im.sliderint4|im.tab_bar_end|im.tab_bar_start|im.tab_end|im.table_end|im.table_headers_row|im.table_next_column|im.table_next_row|im.table_setup_column|im.table_start|im.tab_start|im.text|im.text_table|im.text_wrapped|im.tooltip|im.tooltip_multi_end|im.tooltip_multi_start|im.treenode_end|im.treenode_start|im.width_end|im.width_start|im.window_demo|im.window_end|im.window_start|in_range|insert|int|is_worker_thread|launch_subprocess|length|lerp|line_intersect|load_ogg|load_sfxr|load_wav|lobster_binary_to_value|lobster_value_to_binary|log|log2|lowercase|magnitude|magnitude_squared|manhattan|matrix.multiply|matrix.rotate_x|matrix.rotate_y|matrix.rotate_z|matrix.translation|max|mg.color|mg.convert_to_cubes|mg.cube|mg.cylinder|mg.landscape|mg.polygonize|mg.pop_transform|mg.push_transform|mg.rotate|mg.scale|mg.scale_vec|mg.set_color_noise|mg.set_point_mode|mg.set_polygon_reduction|mg.set_vertex_randomize|mg.smooth|mg.sphere|mg.superquadric|mg.superquadric_non_uniform|mg.supertoroid|mg.tapered_cylinder|mg.translate|min|music_fade_out|music_halt|music_is_playing|music_pause|music_resume|music_set_general_volume|music_volume|normalize|number_to_string|parse_data|pass|ph.apply_linear_impulse_to_center|ph.create_box|ph.create_circle|ph.create_particle|ph.create_particle_circle|ph.create_polygon|ph.delete_particle|ph.dynamic|ph.get_mass|ph.getparticle_position|ph.get_position|ph.initialize|ph.initialize_particles|ph.particle_contacts|ph.raycast|ph.render|ph.render_particles|ph.set_color|ph.set_linear_velocity|ph.set_shader|ph.set_texture|ph.step|play_music|play_music_cross_fade|play_music_fade_in|play_ogg|play_sfxr|play_wav|pop|popcount|pow|print|program_name|push|radians|read_file|read_float32_le|read_float32_le_back|read_float64_le|read_float64_le_back|read_int16_le|read_int16_le_back|read_int32_le|read_int32_le_back|read_int64_le|read_int64_le_back|read_int8_le|read_int8_le_back|read_uint16_le|read_uint16_le_back|read_uint32_le|read_uint32_le_back|read_uint64_le|read_uint64_le_back|read_uint8_le|read_uint8_le_back|reference_count|remove|remove_obj|remove_range|rename_file|repeat_string|replace_string|rnd|rnd_float|rnd_gaussian|rndm|rndm_seed|rnd_seed|round|scan_folder|seconds_elapsed|set_console|set_exit_code|set_output_level|set_print_decimals|set_print_depth|set_print_indent|set_print_length|set_print_quoted|sign|simplex|simplex_raw|sin|sincos|slice|smootherstep|smoothmin|smoothstep|sound_halt|sound_pause|sound_position|sound_resume|sound_status|sound_time_length|sound_volume|spherical_lerp|sqrt|start_worker_threads|steam.friend_get_username|steam.get_steam_id|steam.init|steam.lobby_create|steam.lobby_delete_data|steam.lobby_get_all_data|steam.lobby_get_all_joined|steam.lobby_get_created|steam.lobby_get_data|steam.lobby_get_game_server|steam.lobby_get_joined|steam.lobby_get_members|steam.lobby_get_num_members|steam.lobby_join|steam.lobby_leave|steam.lobby_request_add_numerical_filter|steam.lobby_request_add_result_count_filter|steam.lobby_request_add_string_filter|steam.lobby_request_data|steam.lobby_request_get_lobbies|steam.lobby_request_is_ready|steam.lobby_request_list|steam.lobby_request_list_reset|steam.lobby_set_data|steam.lobby_set_game_server|steam.lobby_set_joinable|steam.net_identity|steam.net_identity_from_steam_id|steam.overlay|steam.p2p_broadcast_message|steam.p2p_close_connection|steam.p2p_close_listen|steam.p2p_connect|steam.p2p_get_connections|steam.p2p_get_connection_status|steam.p2p_listen|steam.p2p_receive_messages|steam.p2p_send_message|steam.p2p_set_recv_buffer_size|steam.p2p_set_send_buffer_size|steam.read_file|steam.shutdown|steam.unlock_achievement|steam.update|steam.username|steam.write_file|stop_worker_threads|string|string_to_float|string_to_int|string_to_unicode|substring|tan|text_to_speech|text_to_speech_stop|thread_check|thread_information|thread_read|thread_write|tokenize|top|trace_bytecode|type_element_string|type_field_count|type_field_name|type_field_string|type_field_value|type_id|type_string|unicode_to_string|uppercase|vector_capacity|vector_to_buffer|vm_compiled_mode|volume|vr.create_motion_controller_mesh|vr.finish|vr.hmd_vec|vr.init|vr.motion_controller|vr.motion_controller_button|vr.motioncontrollerstracking|vr.motion_controller_vec|vr.num_motion_controllers|vr.set_eye_texture|vr.start|vr.start_eye|wave_function_collapse|workers_alive|write_file|write_float32_le|write_float32_le_back|write_float64_le|write_float64_le_back|write_int16_le|write_int16_le_back|write_int32_le|write_int32_le_back|write_int64_le|write_int64_le_back|write_int8_le|write_int8_le_back|write_substring|write_substring_back)\\b"},{"name":"keyword.control.source.lobster","match":"\\b(forever|fold|reduce|connect|reducerev|filterindices|find|reverse|split|qsort|qsort_in_place|insertion_sort|nest_if|return_after|forbias|forscale|forrange|forrangeincl|try|catch|throw|protect|forxy|mapxy)\\b"},{"name":"support.function.source.lobster","match":"\\b(sum|product|zip|reverselist|in_range|collect|fatal|check|allint|vecfromyawpitch|inrange2d|rotate2D|camera_FPS_update|camera_FPS_view|camera_direction|camera_2d_worldspace)\\b"},{"name":"support.type.source.lobster","match":"\\b(xy|xy_i|xy_f|xyz|xyz_i|xyz_f|xyzw|xyzw_i|xyzw_f|color)\\b"},{"name":"support.constant.source.lobster","match":"\\b(xy_0|xy_1|xy_h|xy_x|xy_y|xy_z|xy_w|xy_xy|xy_0i|xy_1i|xy_xi|xy_yi|xy_zi|xy_wi|color_black|color_white|color_red|color_green|color_blue|color_yellow|color_cyan|color_pink|color_grey|color_dark_grey|color_light_grey|color_lightest_grey|color_darkest_grey|color_dark_red|color_dark_green|color_dark_blue|color_light_red|color_light_green|color_light_blue|color_olive|color_teal|color_purple|color_orange|color_chartreuse|color_springgreen|color_dodgerblue|color_pink_violet|color_blue_violet)\\b"},{"name":"keyword.operator.lobster","match":"(?\u003c![+])\\+{1,2}|(?\u003c![-])\\-{1,2}|\\+=|-=|%|%\\=|\\*|\\*\\=|\\/|\\/\\=|\\^|==?|\\!=|\u003c=?|\u003e=?|(?\u003c!\\.)\\.{2}(?!\\.)"}]},"statements":{"patterns":[{"name":"variable.assignment.lobster","begin":"\\b(let|var)\\s+","end":"=","patterns":[{"name":"variable.name.lobster","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.lobster","match":","}],"beginCaptures":{"1":{"name":"storage.type.lobster"}},"endCaptures":{"0":{"name":"punctuation.definition.lobster"}}},{"name":"support.function.definition.lobster","begin":"\\b(def|constructor)\\s+([A-Za-z_][A-Za-z0-9_]*)(\\()","end":"\\)(?:\\s*-\u003e\\s*)?((\\[?[A-Za-z_][A-Za-z0-9_]*[A-Za-z_]*\\]?\\??(, ?)?)*?):","patterns":[{"name":"variable.parameter.function.lobster","match":"[A-Za-z_][A-Za-z0-9_]*"},{"match":"(?\u003c![:]):{,2}(int|float|string|resource|any|void|[A-Za-z_][A-Za-z0-9_]*)","captures":{"1":{"name":"storage.type.source.lobster"}}},{"name":"punctuation.separator.arguments.lobster","match":","}],"beginCaptures":{"1":{"name":"keyword.control.lobster"},"2":{"name":"entity.name.function.lobster"},"3":{"name":"punctuation.definition.parameters.begin.lobster"}},"endCaptures":{"0":{"name":"punctuation.definition.parameters.end.lobster"},"1":{"name":"storage.type.source.lobster"}}},{"name":"support.class.definition.lobster","begin":"\\b(class|struct)\\s+([A-Za-z_][A-Za-z0-9_]*)","end":":","beginCaptures":{"1":{"name":"support.class.lobster"},"2":{"name":"entity.name.class.lobster"}}},{"name":"meta.enum.definition.lobster","begin":"\\b(enum|enum_flags)\\s+(\\w+)","end":":","beginCaptures":{"1":{"name":"support.modifier.lobster"},"2":{"name":"entity.name.type.enum.lobster"}},"endCaptures":{"0":{"name":"punctuation.section.enum.end.lobster"}}}]},"strings":{"patterns":[{"name":"string.quoted.triple.lobster","begin":"\"{3}","end":"\"{3}"},{"name":"string.quoted.double.lobster","begin":"\"","end":"\""},{"name":"constant.character.escape.lobster","match":"'(\\\\n|\\\\t|\\\\r|\\\\\"|\\\\'|\\\\x[[:xdigit:]]{2}|\\w|\\\\|)'"}]}}}
@@ -1 +1 @@
1
- {"name":"Logos","scopeName":"source.logos","patterns":[{"name":"keyword.source.logos","match":"%(init|hook|subclass|group|class|new|ctor|end|config|orig|log|hookf|dtor|property|c)"},{"match":"%c\\(([A-Za-z$_]+)\\)","captures":{"1":{"name":"keyword.source.logos"}}},{"include":"source.objc"},{"include":"source.c++"}]}
1
+ {"name":"Logos","scopeName":"source.logos","patterns":[{"name":"keyword.source.logos","match":"%(init|hookf|hook|subclass|group|class|new|ctor|end|config|orig|log|dtor|property|c)"},{"match":"%c\\(([A-Za-z$_]+)\\)","captures":{"1":{"name":"keyword.source.logos"}}},{"include":"source.objc"},{"include":"source.c++"}]}
@@ -1 +1 @@
1
- {"name":"Luau","scopeName":"source.luau","patterns":[{"include":"#function-definition"},{"include":"#number"},{"include":"#string"},{"include":"#shebang"},{"include":"#comment"},{"include":"#local-declaration"},{"include":"#for-loop"},{"include":"#type-function"},{"include":"#type-alias-declaration"},{"include":"#keyword"},{"include":"#language_constant"},{"include":"#standard_library"},{"include":"#generics-instantiation"},{"include":"#identifier"},{"include":"#operator"},{"include":"#parentheses"},{"include":"#table"},{"include":"#type_cast"},{"include":"#type_annotation"},{"include":"#attribute"}],"repository":{"attribute":{"patterns":[{"name":"meta.attribute.luau","match":"(@)([a-zA-Z_][a-zA-Z0-9_]*)","captures":{"1":{"name":"keyword.operator.attribute.luau"},"2":{"name":"storage.type.attribute.luau"}}}]},"comment":{"patterns":[{"name":"comment.block.luau","begin":"--\\[(=*)\\[","end":"\\]\\1\\]","patterns":[{"name":"keyword.operator.other.luau","begin":"(```luau?)\\s*$","while":"^(?!\\s*```)","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"comment.luau"}}},{"name":"keyword.operator.other.luau","match":"(```)","captures":{"1":{"name":"comment.luau"}}},{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.documentation.luau","begin":"---","end":"\\n","patterns":[{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.luau","begin":"--","end":"\\n"}]},"doc_comment_tags":{"patterns":[{"name":"storage.type.class.luadoc.luau","match":"@\\w+"},{"match":"((?\u003c=[\\s*!\\/])[\\\\@]param)(?:\\s)+(\\b\\w+\\b)","captures":{"1":{"name":"storage.type.class.luadoc.luau"},"2":{"name":"variable.parameter.luau"}}}]},"for-loop":{"begin":"\\b(for)\\b","end":"\\b(in)\\b|(=)","patterns":[{"begin":"(:)","end":"(?=\\s*in\\b|\\s*[=,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.luau"}},"endCaptures":{"1":{"name":"keyword.control.luau"},"2":{"name":"keyword.operator.assignment.luau"}}},"function-definition":{"name":"meta.function.luau","begin":"\\b(?:(local)\\s+)?(function)\\b(?![,:])","end":"(?\u003c=[\\)\\-{}\\[\\]\"'])","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"name":"meta.parameter.luau","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"name":"variable.parameter.function.varargs.luau","match":"\\.\\.\\."},{"name":"variable.parameter.function.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.luau","match":","},{"begin":":","end":"(?=[\\),])","patterns":[{"include":"#type_literal"}],"beginCaptures":{"0":{"name":"keyword.operator.type.luau"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}}},{"name":"variable.language.metamethod.luau","match":"\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm|__iter|__idiv)\\b"},{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"},"2":{"name":"keyword.control.luau"}}},"generics-declaration":{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"entity.name.type.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}]},"generics-instantiation":{"begin":"(\u003c\u003c)","end":"(\u003e\u003e)","patterns":[{"include":"#comment"},{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.luau"}}},"identifier":{"patterns":[{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:\u003c\u003c|[({\"']|\\[\\[))"},{"name":"variable.other.property.luau","match":"(?\u003c=[^.]\\.|:)\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]},"interpolated_string_expression":{"name":"meta.template.expression.luau","contentName":"meta.embedded.line.luau","begin":"\\{","end":"\\}","patterns":[{"include":"source.luau"}],"beginCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.begin.luau"}},"endCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.end.luau"}}},"keyword":{"patterns":[{"name":"keyword.control.luau","match":"\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\b"},{"name":"storage.modifier.local.luau","match":"\\b(local)\\b"},{"name":"keyword.control.luau","match":"\\b(function)\\b(?![,:])"},{"name":"variable.language.self.luau","match":"(?\u003c![^.]\\.|:)\\b(self)\\b"},{"name":"keyword.operator.logical.luau keyword.operator.wordlike.luau","match":"\\b(and|or|not)\\b"},{"name":"variable.language.metamethod.luau","match":"(?\u003c=[^.]\\.|:)\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm)\\b"},{"name":"keyword.other.unit.luau","match":"(?\u003c![.])\\.{3}(?!\\.)"}]},"language_constant":{"patterns":[{"name":"constant.language.boolean.false.luau","match":"(?\u003c![^.]\\.|:)\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"(?\u003c![^.]\\.|:)\\b(true)\\b"},{"name":"constant.language.nil.luau","match":"(?\u003c![^.]\\.|:)\\b(nil(?!:))\\b"}]},"local-declaration":{"begin":"\\b(local)\\b","end":"(?=\\s*do\\b|\\s*[=;]|\\s*$)","patterns":[{"include":"#comment"},{"include":"#attribute"},{"begin":"(:)","end":"(?=\\s*do\\b|\\s*[=;,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"}}},"number":{"patterns":[{"name":"constant.numeric.hex.luau","match":"\\b0_*[xX]_*[\\da-fA-F_]*(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"},{"name":"constant.numeric.binary.luau","match":"\\b0_*[bB][01_]+(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"},{"name":"constant.numeric.decimal.luau","match":"(?:\\d[\\d_]*(?:\\.[\\d_]*)?|\\.\\d[\\d_]*)(?:[eE][\\+\\-]?_*\\d[\\d_]*(?:\\.[\\d_]*)?)?"}]},"operator":{"patterns":[{"name":"keyword.operator.comparison.luau","match":"==|~=|!=|\u003c=?|\u003e=?"},{"name":"keyword.operator.assignment.luau","match":"\\+=|-=|/=|//=|\\*=|%=|\\^=|\\.\\.=|="},{"name":"keyword.operator.arithmetic.luau","match":"\\+|-|%|\\*|\\/\\/|\\/|\\^"},{"name":"keyword.operator.other.luau","match":"#|(?\u003c!\\.)\\.{2}(?!\\.)"}]},"parentheses":{"begin":"(\\()","end":"(\\))","patterns":[{"name":"punctuation.separator.arguments.luau","match":","},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.arguments.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.luau"}}},"shebang":{"name":"comment.line.shebang.luau","match":"\\A(#!).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.luau"}}},"standard_library":{"patterns":[{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(assert|collectgarbage|error|gcinfo|getfenv|getmetatable|ipairs|loadstring|newproxy|next|pairs|pcall|print|rawequal|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|typeof|unpack|xpcall)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(_G|_VERSION)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32\\.(?:arshift|band|bnot|bor|btest|bxor|extract|lrotate|lshift|replace|rrotate|rshift|countlz|countrz|byteswap)|coroutine\\.(?:create|isyieldable|resume|running|status|wrap|yield|close)|debug\\.(?:info|loadmodule|profilebegin|profileend|traceback)|math\\.(?:abs|acos|asin|atan|atan2|ceil|clamp|cos|cosh|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|noise|pow|rad|random|randomseed|round|sign|sin|sinh|sqrt|tan|tanh)|os\\.(?:clock|date|difftime|time)|string\\.(?:byte|char|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|split|sub|unpack|upper)|table\\.(?:concat|create|find|foreach|foreachi|getn|insert|maxn|move|pack|remove|sort|unpack|clear|freeze|isfrozen|clone)|task\\.(?:spawn|synchronize|desynchronize|wait|defer|delay)|utf8\\.(?:char|codepoint|codes|graphemes|len|nfcnormalize|nfdnormalize|offset)|buffer\\.(?:create|fromstring|tostring|len|readi8|readu8|readi16|readu16|readi32|readu32|readf32|readf64|writei8|writeu8|writei16|writeu16|writei32|writeu32|writef32|writef64|readstring|writestring|copy|fill)|vector\\.(?:abs|angle|ceil|clamp|create|cross|dot|floor|lerp|magnitude|max|min|normalize|sign))\\b"},{"name":"support.constant.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32|buffer|coroutine|debug|math(\\.(huge|pi))?|os|string|table|task|utf8(\\.charpattern)?|vector(\\.(one|zero))?)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(delay|DebuggerManager|elapsedTime|PluginManager|printidentity|settings|spawn|stats|tick|time|UserSettings|version|wait|warn)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(game|plugin|shared|script|workspace|Enum(?:\\.\\w+){0,2})\\b"}]},"string":{"patterns":[{"name":"string.quoted.double.luau","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.single.luau","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.other.multiline.luau","begin":"\\[(=*)\\[","end":"\\]\\1\\]"},{"name":"string.interpolated.luau","begin":"`","end":"`","patterns":[{"include":"#interpolated_string_expression"},{"include":"#string_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.luau","match":"\\\\[abfnrtvz'\"`{\\\\]"},{"name":"constant.character.escape.luau","match":"\\\\\\d{1,3}"},{"name":"constant.character.escape.luau","match":"\\\\x[0-9a-fA-F]{2}"},{"name":"constant.character.escape.luau","match":"\\\\u\\{[0-9a-fA-F]*\\}"},{"name":"constant.character.escape.luau","match":"\\\\$"}]},"table":{"begin":"(\\{)","end":"(\\})","patterns":[{"name":"punctuation.separator.fields.luau","match":"[,;]"},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.table.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.table.end.luau"}}},"type-alias-declaration":{"begin":"(?\u003c![^.]\\.|:)\\b(?:(export)\\s+)?(type)\\b(?=\\s+(?!function\\b)[a-zA-Z_][a-zA-Z0-9_]*)","end":"(?=[),}\\]](?!\\s*[\u0026|]))|(?=\\s*;)|(?=\\s*\\b(?:break|continue|do|else|elseif|end|for|function|if|in|local|repeat|return|then|until|while)\\b)|(?=^\\s*$)|(?=^\\s*(?:@|\\b(?:export\\s+)?type\\b))|(?=^\\s*[a-zA-Z_][a-zA-Z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z0-9_]*)*\\s*(?:(?:[+\\-*/%^]|\\.\\.)?=(?!=)|\\(|\\[|:))","patterns":[{"include":"#type_literal"},{"name":"keyword.operator.assignment.luau","match":"="}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"}}},"type-function":{"name":"meta.function.luau","begin":"(?\u003c![^.]\\.|:)\\b(?:(export)\\s+)?(type)\\s+(function)\\b","end":"(?\u003c=[\\)\\-{}\\[\\]\"'])","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"name":"meta.parameter.luau","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"name":"variable.parameter.function.varargs.luau","match":"\\.\\.\\."},{"name":"variable.parameter.function.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.luau","match":","},{"begin":":","end":"(?=[\\),])","patterns":[{"include":"#type_literal"}],"beginCaptures":{"0":{"name":"keyword.operator.type.luau"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}}},{"name":"entity.name.type.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"},"3":{"name":"keyword.control.luau"}}},"type_annotation":{"begin":":(?!\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:\u003c\u003c|[({\"']|\\[\\[)))","end":"(?\u003c=\\))(?!\\s*-\u003e)|=|;|$|(?=\\breturn\\b)|(?=\\bend\\b)","patterns":[{"include":"#comment"},{"include":"#type_literal"}]},"type_cast":{"begin":"(::)","end":"(?=[),}\\]](?!\\s*[\u0026|]))|(?=\\s*;)|(?=\\s*\\b(?:break|continue|do|else|elseif|end|for|function|if|in|local|repeat|return|then|until|while)\\b)|(?=^\\s*$)|(?=^\\s*(?:@|\\b(?:export\\s+)?type\\b))|(?=^\\s*[a-zA-Z_][a-zA-Z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z0-9_]*)*\\s*(?:(?:[+\\-*/%^]|\\.\\.)?=(?!=)|\\(|\\[|:))","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.typecast.luau"}}},"type_literal":{"patterns":[{"include":"#comment"},{"include":"#string"},{"name":"keyword.operator.type.luau","match":"\\?|\\\u0026|\\|"},{"name":"keyword.operator.type.function.luau","match":"-\u003e"},{"name":"constant.language.boolean.false.luau","match":"\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"\\b(true)\\b"},{"name":"support.type.primitive.luau","match":"\\b(nil|string|number|boolean|thread|userdata|symbol|vector|buffer|unknown|never|any)\\b"},{"begin":"\\b(typeof)\\b(\\()","end":"(\\))","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"support.function.luau"},"2":{"name":"punctuation.arguments.begin.typeof.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.typeof.luau"}}},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.luau"}}},{"name":"entity.name.type.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"begin":"\\{","end":"\\}","patterns":[{"begin":"\\[","end":"\\]","patterns":[{"include":"#type_literal"}]},{"match":"\\b(?:(read|write)\\s+)?([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"storage.modifier.access.luau"},"2":{"name":"variable.property.luau"},"3":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"},{"name":"punctuation.separator.fields.type.luau","match":"[,;]"}]},{"begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"variable.parameter.luau"},"2":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"}]}]}}}
1
+ {"name":"Luau","scopeName":"source.luau","patterns":[{"include":"#function-definition"},{"include":"#number"},{"include":"#string"},{"include":"#shebang"},{"include":"#comment"},{"include":"#local-declaration"},{"include":"#const-declaration"},{"include":"#for-loop"},{"include":"#type-function"},{"include":"#type-alias-declaration"},{"include":"#keyword"},{"include":"#language_constant"},{"include":"#standard_library"},{"include":"#generics-instantiation"},{"include":"#identifier"},{"include":"#operator"},{"include":"#parentheses"},{"include":"#table"},{"include":"#type_cast"},{"include":"#type_annotation"},{"include":"#attribute"}],"repository":{"attribute":{"patterns":[{"name":"meta.attribute.luau","match":"(@)([a-zA-Z_][a-zA-Z0-9_]*)","captures":{"1":{"name":"keyword.operator.attribute.luau"},"2":{"name":"storage.type.attribute.luau"}}}]},"comment":{"patterns":[{"name":"comment.block.luau","begin":"--\\[(=*)\\[","end":"\\]\\1\\]","patterns":[{"name":"keyword.operator.other.luau","begin":"(```luau?)\\s*$","while":"^(?!\\s*```)","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"comment.luau"}}},{"name":"keyword.operator.other.luau","match":"(```)","captures":{"1":{"name":"comment.luau"}}},{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.documentation.luau","begin":"---","end":"\\n","patterns":[{"include":"#doc_comment_tags"}]},{"name":"comment.line.double-dash.luau","begin":"--","end":"\\n"}]},"const-declaration":{"begin":"\\b(?:(export)\\s+)?(const)\\b","end":"(?=\\s*[=;]|\\s*$)","patterns":[{"include":"#comment"},{"include":"#attribute"},{"begin":"(:)","end":"(?=\\s*[=;,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.modifier.const.luau"}}},"doc_comment_tags":{"patterns":[{"name":"storage.type.class.luadoc.luau","match":"@\\w+"},{"match":"((?\u003c=[\\s*!\\/])[\\\\@]param)(?:\\s)+(\\b\\w+\\b)","captures":{"1":{"name":"storage.type.class.luadoc.luau"},"2":{"name":"variable.parameter.luau"}}}]},"for-loop":{"begin":"\\b(for)\\b","end":"\\b(in)\\b|(=)","patterns":[{"begin":"(:)","end":"(?=\\s*in\\b|\\s*[=,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.luau"}},"endCaptures":{"1":{"name":"keyword.control.luau"},"2":{"name":"keyword.operator.assignment.luau"}}},"function-definition":{"name":"meta.function.luau","begin":"\\b(?:(local)\\s+|(const)\\s+|(export)\\s+)?(function)\\b(?![,:])","end":"(?\u003c=[\\)\\-{}\\[\\]\"'])","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"name":"meta.parameter.luau","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"name":"variable.parameter.function.varargs.luau","match":"\\.\\.\\."},{"name":"variable.parameter.function.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.luau","match":","},{"begin":":","end":"(?=[\\),])","patterns":[{"include":"#type_literal"}],"beginCaptures":{"0":{"name":"keyword.operator.type.luau"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}}},{"name":"variable.language.metamethod.luau","match":"\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm|__iter|__idiv)\\b"},{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.local.luau"},"2":{"name":"storage.modifier.const.luau"},"3":{"name":"storage.modifier.visibility.luau"},"4":{"name":"keyword.control.luau"}}},"generics-declaration":{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"entity.name.type.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}]},"generics-instantiation":{"begin":"(\u003c\u003c)","end":"(\u003e\u003e)","patterns":[{"include":"#comment"},{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.luau"}}},"identifier":{"patterns":[{"name":"entity.name.function.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:\u003c\u003c|[({\"']|\\[\\[))"},{"name":"variable.other.property.luau","match":"(?\u003c=[^.]\\.|:)\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]},"interpolated_string_expression":{"name":"meta.template.expression.luau","contentName":"meta.embedded.line.luau","begin":"\\{","end":"\\}","patterns":[{"include":"source.luau"}],"beginCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.begin.luau"}},"endCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.end.luau"}}},"keyword":{"patterns":[{"name":"keyword.control.luau","match":"\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\b"},{"name":"storage.modifier.local.luau","match":"\\b(local)\\b"},{"name":"storage.modifier.const.luau","match":"\\b(const)\\b"},{"name":"keyword.control.luau","match":"\\b(function)\\b(?![,:])"},{"name":"variable.language.self.luau","match":"(?\u003c![^.]\\.|:)\\b(self)\\b"},{"name":"keyword.operator.logical.luau keyword.operator.wordlike.luau","match":"\\b(and|or|not)\\b"},{"name":"variable.language.metamethod.luau","match":"(?\u003c=[^.]\\.|:)\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm)\\b"},{"name":"keyword.other.unit.luau","match":"(?\u003c![.])\\.{3}(?!\\.)"}]},"language_constant":{"patterns":[{"name":"constant.language.boolean.false.luau","match":"(?\u003c![^.]\\.|:)\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"(?\u003c![^.]\\.|:)\\b(true)\\b"},{"name":"constant.language.nil.luau","match":"(?\u003c![^.]\\.|:)\\b(nil(?!:))\\b"}]},"local-declaration":{"begin":"\\b(?:(export)\\s+)?(local)\\b","end":"(?=\\s*do\\b|\\s*[=;]|\\s*$)","patterns":[{"include":"#comment"},{"include":"#attribute"},{"begin":"(:)","end":"(?=\\s*do\\b|\\s*[=;,]|\\s*$)","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.type.luau"}}},{"name":"variable.other.constant.luau","match":"\\b([A-Z_][A-Z0-9_]*)\\b"},{"name":"variable.other.readwrite.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.modifier.local.luau"}}},"number":{"patterns":[{"name":"constant.numeric.hex.luau","match":"\\b0_*[xX]_*[\\da-fA-F][\\da-fA-F_]*i?"},{"name":"constant.numeric.binary.luau","match":"\\b0_*[bB]_*[01][01_]*i?"},{"name":"constant.numeric.decimal.luau","match":"\\d[\\d_]*i"},{"name":"constant.numeric.decimal.luau","match":"(?:\\d[\\d_]*(?:\\.[\\d_]*)?|\\.\\d[\\d_]*)(?:[eE][\\+\\-]?_*\\d[\\d_]*)?"}]},"operator":{"patterns":[{"name":"keyword.operator.comparison.luau","match":"==|~=|\u003c=?|\u003e=?"},{"name":"keyword.operator.assignment.luau","match":"\\+=|-=|/=|//=|\\*=|%=|\\^=|\\.\\.=|="},{"name":"keyword.operator.arithmetic.luau","match":"\\+|-|%|\\*|\\/\\/|\\/|\\^"},{"name":"keyword.operator.other.luau","match":"#|(?\u003c!\\.)\\.{2}(?!\\.)"}]},"parentheses":{"begin":"(\\()","end":"(\\))","patterns":[{"name":"punctuation.separator.arguments.luau","match":","},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.arguments.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.luau"}}},"shebang":{"name":"comment.line.shebang.luau","match":"\\A(#!).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.luau"}}},"standard_library":{"patterns":[{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(assert|collectgarbage|error|gcinfo|getfenv|getmetatable|ipairs|loadstring|newproxy|next|pairs|pcall|print|rawequal|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|typeof|unpack|xpcall)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(_G|_VERSION)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32\\.(?:arshift|band|bnot|bor|btest|bxor|extract|lrotate|lshift|replace|rrotate|rshift|countlz|countrz|byteswap)|coroutine\\.(?:create|isyieldable|resume|running|status|wrap|yield|close)|debug\\.(?:info|loadmodule|profilebegin|profileend|traceback)|integer\\.(?:add|arshift|band|bnot|bor|bswap|btest|bxor|clamp|countlz|countrz|create|div|extract|fromstring|ge|gt|idiv|le|lrotate|lshift|lt|max|min|mod|mul|neg|rem|replace|rrotate|rshift|sub|tonumber|udiv|uge|ugt|ule|ult|urem)|math\\.(?:abs|acos|asin|atan|atan2|ceil|clamp|cos|cosh|deg|exp|floor|fmod|frexp|isfinite|isinf|isnan|ldexp|lerp|log|log10|map|max|min|modf|noise|pow|rad|random|randomseed|round|sign|sin|sinh|sqrt|tan|tanh)|os\\.(?:clock|date|difftime|time)|string\\.(?:byte|char|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|split|sub|unpack|upper)|table\\.(?:concat|create|find|foreach|foreachi|getn|insert|maxn|move|pack|remove|sort|unpack|clear|freeze|isfrozen|clone)|task\\.(?:spawn|synchronize|desynchronize|wait|defer|delay)|utf8\\.(?:char|codepoint|codes|graphemes|len|nfcnormalize|nfdnormalize|offset)|buffer\\.(?:create|fromstring|tostring|len|readbits|readi8|readu8|readi16|readu16|readi32|readu32|readinteger|readf32|readf64|writebits|writei8|writeu8|writei16|writeu16|writei32|writeu32|writeinteger|writef32|writef64|readstring|writestring|copy|fill)|vector\\.(?:abs|angle|ceil|clamp|create|cross|dot|floor|lerp|magnitude|max|min|normalize|sign))\\b"},{"name":"support.constant.luau","match":"(?\u003c![^.]\\.|:)\\b(bit32|buffer|coroutine|debug|integer(\\.(maxsigned|minsigned))?|math(\\.(huge|pi|nan|e|phi|sqrt2|tau))?|os|string|table|task|utf8(\\.charpattern)?|vector(\\.(one|zero))?)\\b"},{"name":"support.function.luau","match":"(?\u003c![^.]\\.|:)\\b(delay|DebuggerManager|elapsedTime|PluginManager|printidentity|settings|spawn|stats|tick|time|UserSettings|version|wait|warn)\\b"},{"name":"constant.language.luau","match":"(?\u003c![^.]\\.|:)\\b(game|plugin|shared|script|workspace|Enum(?:\\.\\w+){0,2})\\b"}]},"string":{"patterns":[{"name":"string.quoted.double.luau","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.single.luau","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.other.multiline.luau","begin":"\\[(=*)\\[","end":"\\]\\1\\]"},{"name":"string.interpolated.luau","begin":"`","end":"`","patterns":[{"include":"#interpolated_string_expression"},{"include":"#string_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.luau","match":"\\\\[abfnrtvz'\"`{\\\\]"},{"name":"constant.character.escape.luau","match":"\\\\\\d{1,3}"},{"name":"constant.character.escape.luau","match":"\\\\x[0-9a-fA-F]{2}"},{"name":"constant.character.escape.luau","match":"\\\\u\\{[0-9a-fA-F]*\\}"},{"name":"constant.character.escape.luau","match":"\\\\$"}]},"table":{"begin":"(\\{)","end":"(\\})","patterns":[{"name":"punctuation.separator.fields.luau","match":"[,;]"},{"include":"source.luau"}],"beginCaptures":{"1":{"name":"punctuation.table.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.table.end.luau"}}},"type-alias-declaration":{"begin":"(?\u003c![^.]\\.|:)\\b(?:(export)\\s+)?(type)\\b(?=\\s+(?!function\\b)[a-zA-Z_][a-zA-Z0-9_]*)","end":"(?=[),}\\]](?!\\s*[\u0026|]))|(?=\\s*;)|(?=\\s*(?:[*+%^]|\\/\\/?|(?\u003c!\\.)\\.\\.(?!\\.)|-(?![-\u003e`])|~=|==))|(?=\\s*\\b(?:and|or|break|const|continue|do|else|elseif|end|for|function|if|in|local|repeat|return|then|until|while)\\b)|(?=^\\s*$)|(?=^\\s*(?:@|\\b(?:export\\s+)?type\\b))|(?=^\\s*[a-zA-Z_][a-zA-Z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z0-9_]*)*\\s*(?:(?:[+\\-*/%^]|\\.\\.)?=(?!=)|\\(|\\[|:))","patterns":[{"include":"#type_literal"},{"name":"keyword.operator.assignment.luau","match":"="}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"}}},"type-function":{"name":"meta.function.luau","begin":"(?\u003c![^.]\\.|:)\\b(?:(export)\\s+)?(type)\\s+(function)\\b","end":"(?\u003c=[\\)\\-{}\\[\\]\"'])","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"name":"meta.parameter.luau","begin":"(\\()","end":"(\\))","patterns":[{"include":"#comment"},{"name":"variable.parameter.function.varargs.luau","match":"\\.\\.\\."},{"name":"variable.parameter.function.luau","match":"[a-zA-Z_][a-zA-Z0-9_]*"},{"name":"punctuation.separator.arguments.luau","match":","},{"begin":":","end":"(?=[\\),])","patterns":[{"include":"#type_literal"}],"beginCaptures":{"0":{"name":"keyword.operator.type.luau"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}}},{"name":"entity.name.type.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"},"3":{"name":"keyword.control.luau"}}},"type_annotation":{"begin":":(?!\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(?=\\s*(?:\u003c\u003c|[({\"']|\\[\\[)))","end":"(?\u003c=\\))(?!\\s*-\u003e)|=|;|$|(?=\\breturn\\b)|(?=\\bend\\b)","patterns":[{"include":"#comment"},{"include":"#type_literal"}]},"type_cast":{"begin":"(::)","end":"(?=[),}\\]](?!\\s*[\u0026|]))|(?=\\s*;)|(?=\\s*(?:[*+%^]|\\/\\/?|(?\u003c!\\.)\\.\\.(?!\\.)|-(?![-\u003e`])|~=|==))|(?=\\s*\\b(?:and|or|break|const|continue|do|else|elseif|end|for|function|if|in|local|repeat|return|then|until|while)\\b)|(?=^\\s*$)|(?=^\\s*(?:@|\\b(?:export\\s+)?type\\b))|(?=^\\s*[a-zA-Z_][a-zA-Z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z0-9_]*)*\\s*(?:(?:[+\\-*/%^]|\\.\\.)?=(?!=)|\\(|\\[|:))","patterns":[{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"keyword.operator.typecast.luau"}}},"type_literal":{"patterns":[{"include":"#comment"},{"include":"#string"},{"name":"keyword.operator.type.luau","match":"\\?|\\\u0026|\\|"},{"name":"keyword.operator.type.function.luau","match":"-\u003e"},{"name":"constant.language.boolean.false.luau","match":"\\b(false)\\b"},{"name":"constant.language.boolean.true.luau","match":"\\b(true)\\b"},{"name":"support.type.primitive.luau","match":"\\b(nil|string|number|integer|boolean|thread|vector|buffer|unknown|never|any)\\b"},{"begin":"\\b(typeof)\\b(\\()","end":"(\\))","patterns":[{"include":"source.luau"}],"beginCaptures":{"1":{"name":"support.function.luau"},"2":{"name":"punctuation.arguments.begin.typeof.luau"}},"endCaptures":{"1":{"name":"punctuation.arguments.end.typeof.luau"}}},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"name":"keyword.operator.assignment.luau","match":"="},{"include":"#type_literal"}],"beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.luau"}},"endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.luau"}}},{"name":"entity.name.type.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},{"begin":"\\{","end":"\\}","patterns":[{"begin":"\\[","end":"\\]","patterns":[{"include":"#type_literal"}]},{"match":"\\b(?:(read|write)\\s+)?([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"storage.modifier.access.luau"},"2":{"name":"variable.property.luau"},"3":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"},{"name":"punctuation.separator.fields.type.luau","match":"[,;]"}]},{"begin":"\\(","end":"\\)","patterns":[{"name":"variable.parameter.luau","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b(:)","captures":{"1":{"name":"variable.parameter.luau"},"2":{"name":"keyword.operator.type.luau"}}},{"include":"#type_literal"}]}]}}}