github-linguist 9.2.0 → 9.4.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 (175) hide show
  1. checksums.yaml +4 -4
  2. data/bin/github-linguist +23 -4
  3. data/grammars/dart.inline.edgeql.json +1 -0
  4. data/grammars/go.inline.edgeql.json +1 -0
  5. data/grammars/injection.interpolated-ruby.json +1 -0
  6. data/grammars/injections.etc.json +1 -1
  7. data/grammars/inline.surrealql-js-literal.json +1 -0
  8. data/grammars/js.inline.edgeql.json +1 -0
  9. data/grammars/markdown.move.codeblock.json +1 -1
  10. data/grammars/markdown.surrealql.codeblock.json +1 -0
  11. data/grammars/markdown.vue.codeblock.json +1 -1
  12. data/grammars/markdown.wesl.codeblock.json +1 -0
  13. data/grammars/markdown.wgsl.codeblock.json +1 -0
  14. data/grammars/mdx.vue.codeblock.json +1 -1
  15. data/grammars/res.inline.edgeql.json +1 -0
  16. data/grammars/source.abl.json +1 -1
  17. data/grammars/source.agda.json +1 -1
  18. data/grammars/source.al.json +1 -1
  19. data/grammars/source.algol60.json +1 -0
  20. data/grammars/source.apex.json +1 -1
  21. data/grammars/source.ash.json +1 -0
  22. data/grammars/source.ats.json +1 -1
  23. data/grammars/source.b.json +1 -0
  24. data/grammars/source.bicep.json +1 -1
  25. data/grammars/source.brs.json +1 -1
  26. data/grammars/source.bru.json +1 -0
  27. data/grammars/source.c++.json +1 -1
  28. data/grammars/source.c.json +1 -1
  29. data/grammars/source.c.linker.json +1 -1
  30. data/grammars/source.c3.json +1 -0
  31. data/grammars/source.cadence.json +1 -1
  32. data/grammars/source.cj.json +1 -0
  33. data/grammars/source.clar.json +1 -1
  34. data/grammars/source.clean.json +1 -1
  35. data/grammars/source.cmake.json +1 -1
  36. data/grammars/source.cmakecache.json +1 -1
  37. data/grammars/source.cobol.json +1 -1
  38. data/grammars/source.comment-string.wesl.json +1 -0
  39. data/grammars/source.comment-string.wgsl.json +1 -0
  40. data/grammars/source.cooklang.json +1 -0
  41. data/grammars/source.cql.json +1 -0
  42. data/grammars/source.cs.json +1 -1
  43. data/grammars/source.csv.json +1 -0
  44. data/grammars/source.curlrc.json +1 -1
  45. data/grammars/source.data-weave.json +1 -1
  46. data/grammars/source.dotenv.json +1 -1
  47. data/grammars/source.dsv.json +1 -0
  48. data/grammars/source.edgeql.json +1 -1
  49. data/grammars/source.erlang.json +1 -1
  50. data/grammars/source.flix.json +1 -0
  51. data/grammars/source.fsharp.json +1 -1
  52. data/grammars/source.gdscript.json +1 -1
  53. data/grammars/source.gfm.blade.json +1 -1
  54. data/grammars/source.gitignore.json +1 -1
  55. data/grammars/source.go-template.json +1 -0
  56. data/grammars/source.go.injection.double.go-template.json +1 -0
  57. data/grammars/source.go.injection.raw.go-template.json +1 -0
  58. data/grammars/source.hack.json +1 -1
  59. data/grammars/source.harbour.json +1 -1
  60. data/grammars/source.httpspec.json +1 -1
  61. data/grammars/source.hurl.json +1 -0
  62. data/grammars/source.hx.json +1 -1
  63. data/grammars/source.ilecobol.json +1 -1
  64. data/grammars/source.inputrc.json +1 -1
  65. data/grammars/source.isabelle.theory.json +1 -1
  66. data/grammars/source.jac.json +1 -0
  67. data/grammars/source.jai.json +1 -1
  68. data/grammars/source.jq.json +1 -1
  69. data/grammars/source.json.comments.json +1 -1
  70. data/grammars/source.julia.json +1 -1
  71. data/grammars/source.just.json +1 -1
  72. data/grammars/source.kcl.json +1 -0
  73. data/grammars/source.langium.json +1 -0
  74. data/grammars/source.lean.markdown.json +1 -1
  75. data/grammars/source.lean4.json +1 -1
  76. data/grammars/source.lean4.markdown.json +1 -1
  77. data/grammars/source.lp.json +1 -0
  78. data/grammars/source.lua.json +1 -1
  79. data/grammars/source.luau.json +1 -1
  80. data/grammars/source.m2.json +1 -1
  81. data/grammars/source.mask.json +1 -1
  82. data/grammars/source.mdx.json +1 -1
  83. data/grammars/source.mermaid.flowchart.json +1 -1
  84. data/grammars/source.mermaid.gantt.json +1 -1
  85. data/grammars/source.mermaid.json +1 -1
  86. data/grammars/source.mermaid.pie-chart.json +1 -1
  87. data/grammars/source.mermaid.quad-chart.json +1 -0
  88. data/grammars/source.mermaid.sankey.json +1 -0
  89. data/grammars/source.mermaid.timeline.json +1 -0
  90. data/grammars/source.mermaid.user-journey.json +1 -1
  91. data/grammars/source.mermaid.zenuml.json +1 -0
  92. data/grammars/source.mo.json +1 -1
  93. data/grammars/source.mojo.json +1 -1
  94. data/grammars/source.moonbit.json +1 -1
  95. data/grammars/source.move.json +1 -1
  96. data/grammars/source.ned.json +1 -1
  97. data/grammars/source.nginx.json +1 -1
  98. data/grammars/source.nickel.json +1 -0
  99. data/grammars/source.nim.json +1 -1
  100. data/grammars/source.nr.json +1 -1
  101. data/grammars/source.nushell.json +1 -1
  102. data/grammars/source.odin-ehr.json +1 -1
  103. data/grammars/source.openqasm.json +1 -1
  104. data/grammars/source.postscript.json +1 -1
  105. data/grammars/source.proto.json +1 -1
  106. data/grammars/source.psl.json +1 -0
  107. data/grammars/source.pyjade.json +1 -1
  108. data/grammars/source.quakec.json +1 -0
  109. data/grammars/source.rascript.json +1 -0
  110. data/grammars/source.record-jar.json +1 -1
  111. data/grammars/source.rego.json +1 -1
  112. data/grammars/source.roc.json +1 -1
  113. data/grammars/source.rosmsg.json +1 -0
  114. data/grammars/source.rpgle.json +1 -1
  115. data/grammars/source.shell.json +1 -1
  116. data/grammars/source.sieve.json +1 -1
  117. data/grammars/source.singularity.json +1 -1
  118. data/grammars/source.slang.json +1 -1
  119. data/grammars/source.slint.json +1 -1
  120. data/grammars/source.soql.json +1 -1
  121. data/grammars/source.sqf.json +1 -1
  122. data/grammars/source.stan.json +1 -1
  123. data/grammars/source.surrealql.json +1 -0
  124. data/grammars/source.swift.json +1 -1
  125. data/grammars/source.teal.json +1 -0
  126. data/grammars/source.templ.json +1 -1
  127. data/grammars/source.tmdl.json +1 -0
  128. data/grammars/source.tsp.json +1 -1
  129. data/grammars/source.tsv.json +1 -0
  130. data/grammars/source.vb6.json +1 -0
  131. data/grammars/source.vba.json +1 -1
  132. data/grammars/source.vcl.json +1 -0
  133. data/grammars/source.vento.json +1 -1
  134. data/grammars/source.vhdl.json +1 -1
  135. data/grammars/source.vscode.c3.json +1 -0
  136. data/grammars/source.wdl.json +1 -1
  137. data/grammars/source.wesl.json +1 -0
  138. data/grammars/source.wgsl.json +1 -1
  139. data/grammars/source.wit.json +1 -1
  140. data/grammars/source.wwb.json +1 -1
  141. data/grammars/text.codeowners.json +1 -1
  142. data/grammars/text.git-commit.json +1 -0
  143. data/grammars/text.haml.json +1 -1
  144. data/grammars/text.html.jte.json +1 -1
  145. data/grammars/text.html.markdown.d2.json +1 -1
  146. data/grammars/text.html.vue.json +1 -0
  147. data/grammars/text.injection.go-template.json +1 -0
  148. data/grammars/text.jira.json +1 -0
  149. data/grammars/text.k.json +1 -0
  150. data/grammars/text.markdown.go-template.codeblock.json +1 -0
  151. data/grammars/text.marko.json +1 -1
  152. data/grammars/text.md.json +1 -1
  153. data/grammars/text.slim.json +1 -1
  154. data/grammars/text.source.mps.json +1 -0
  155. data/grammars/text.srt.json +1 -1
  156. data/grammars/text.valve-cfg.json +1 -1
  157. data/grammars/text.xml.svg.json +1 -1
  158. data/grammars/v.mod.json +1 -0
  159. data/grammars/version +1 -1
  160. data/grammars/vue.directives.json +1 -1
  161. data/grammars/vue.interpolations.json +1 -1
  162. data/grammars/vue.sfc.script.leading-operator-fix.json +1 -0
  163. data/lib/linguist/VERSION +1 -1
  164. data/lib/linguist/generated.rb +29 -5
  165. data/lib/linguist/generic.yml +3 -0
  166. data/lib/linguist/heuristics.yml +98 -11
  167. data/lib/linguist/instrumenter.rb +19 -0
  168. data/lib/linguist/languages.json +1 -1
  169. data/lib/linguist/languages.yml +405 -117
  170. data/lib/linguist/samples.json +1 -1
  171. data/lib/linguist.rb +1 -0
  172. metadata +59 -5
  173. data/grammars/inline.edgeql.json +0 -1
  174. data/grammars/source.varnish.vcl.json +0 -1
  175. data/grammars/source.vue.json +0 -1
@@ -1 +1 @@
1
- {"name":"GDScript","scopeName":"source.gdscript","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated_parameter":{"begin":"(?x)\n \\s* ([a-zA-Z_]\\w*) \\s* (:)\\s* ([a-zA-Z_]\\w*)? \n","end":"(,)|(?=\\))","patterns":[{"include":"#expression"},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"}],"beginCaptures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"},"3":{"name":"entity.name.type.class.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"annotations":{"match":"(@)(export|export_group|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_global_dir|export_global_file|export_multiline|export_node_path|export_placeholder|export_range|export_storage|icon|onready|rpc|tool|warning_ignore|static_unload)\\b","captures":{"1":{"name":"entity.name.function.decorator.gdscript"},"2":{"name":"entity.name.function.decorator.gdscript"}}},"any_method":{"name":"entity.name.function.other.gdscript","match":"\\b([A-Za-z_]\\w*)\\b(?=\\s*(?:[(]))"},"any_property":{"match":"\\b(\\.)\\s*(?\u003c![@\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\w*))\\b(?![(])","captures":{"1":{"name":"punctuation.accessor.gdscript"},"2":{"name":"constant.language.gdscript"},"3":{"name":"variable.other.property.gdscript"}}},"any_variable":{"name":"variable.other.gdscript","match":"\\b(?\u003c![@\\$#%])([A-Za-z_]\\w*)\\b(?![(])"},"arithmetic_operator":{"name":"keyword.operator.arithmetic.gdscript","match":"-\u003e|\\+=|-=|\\*\\*=|\\*=|\\^=|/=|%=|\u0026=|~=|\\|=|\\*\\*|\\*|/|%|\\+|-"},"assignment_operator":{"name":"keyword.operator.assignment.gdscript","match":"="},"base_expression":{"patterns":[{"include":"#builtin_get_node_shorthand"},{"include":"#nodepath_object"},{"include":"#nodepath_function"},{"include":"#strings"},{"include":"#builtin_classes"},{"include":"#const_vars"},{"include":"#keywords"},{"include":"#operators"},{"include":"#lambda_declaration"},{"include":"#class_declaration"},{"include":"#variable_declaration"},{"include":"#signal_declaration_bare"},{"include":"#signal_declaration"},{"include":"#function_declaration"},{"include":"#statement_keyword"},{"include":"#assignment_operator"},{"include":"#in_keyword"},{"include":"#control_flow"},{"include":"#match_keyword"},{"include":"#curly_braces"},{"include":"#square_braces"},{"include":"#round_braces"},{"include":"#function_call"},{"include":"#region"},{"include":"#comment"},{"include":"#func"},{"include":"#letter"},{"include":"#numbers"},{"include":"#pascal_case_class"},{"include":"#line_continuation"}]},"bitwise_operator":{"name":"keyword.operator.bitwise.gdscript","match":"\u0026|\\||\u003c\u003c=|\u003e\u003e=|\u003c\u003c|\u003e\u003e|\\^|~"},"boolean_operator":{"name":"keyword.operator.boolean.gdscript","match":"(\u0026\u0026|\\|\\|)"},"builtin_classes":{"name":"entity.name.type.class.builtin.gdscript","match":"(?\u003c![^.]\\.|:)\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|JSON|UPNP|OS|IP|JSONRPC|XRVRS)\\b"},"builtin_get_node_shorthand":{"patterns":[{"include":"#builtin_get_node_shorthand_quoted"},{"include":"#builtin_get_node_shorthand_bare"},{"include":"#builtin_get_node_shorthand_bare_multi"}]},"builtin_get_node_shorthand_bare":{"name":"meta.literal.nodepath.bare.gdscript","captures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"},"4":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_bare_multi":{"name":"meta.literal.nodepath.bare.gdscript","begin":"(\\$\\s*|%|\\$%\\s*)(/\\s*)?([a-zA-Z_]\\w*)","end":"(?!\\s*/\\s*%?\\s*[a-zA-Z_]\\w*)","patterns":[{"match":"(/)\\s*(%)?\\s*([a-zA-Z_]\\w*)\\s*","captures":{"1":{"name":"constant.character.escape.gdscript"},"2":{"name":"keyword.control.flow.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_quoted":{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(?:(\\$|%)|(\u0026|\\^|@))(\"|')","end":"(\\3)","patterns":[{"name":"keyword.control.flow","match":"%"}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_declaration":{"match":"(?\u003c=^class)\\s+([a-zA-Z_]\\w*)\\s*(?=:)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_enum":{"match":"\\b([A-Z][a-zA-Z_0-9]*)\\.([A-Z_0-9]+)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_is":{"match":"\\s+(is)\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"storage.type.is.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},"class_name":{"match":"(?\u003c=class_name)\\s+([a-zA-Z_]\\w*(\\.([a-zA-Z_]\\w*))?)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_new":{"match":"\\b([a-zA-Z_]\\w*).(new)\\(","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"storage.type.new.gdscript"},"3":{"name":"punctuation.parenthesis.begin.gdscript"}}},"comment":{"name":"comment.line.number-sign.gdscript","match":"(##|#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.number-sign.gdscript"}}},"compare_operator":{"name":"keyword.operator.comparison.gdscript","match":"\u003c=|\u003e=|==|\u003c|\u003e|!=|!"},"const_vars":{"name":"variable.other.constant.gdscript","match":"\\b([A-Z_][A-Z_0-9]*)\\b"},"control_flow":{"name":"keyword.control.gdscript","match":"\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\b"},"curly_braces":{"begin":"\\{","end":"\\}","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.dict.end.gdscript"}}},"expression":{"patterns":[{"include":"#getter_setter_godot4"},{"include":"#base_expression"},{"include":"#assignment_operator"},{"include":"#annotations"},{"include":"#class_name"},{"include":"#builtin_classes"},{"include":"#class_new"},{"include":"#class_is"},{"include":"#class_enum"},{"include":"#any_method"},{"include":"#any_variable"},{"include":"#any_property"}]},"extends_statement":{"match":"(extends)\\s+([a-zA-Z_]\\w*\\.[a-zA-Z_]\\w*)?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.other.inherited-class.gdscript"}}},"func":{"name":"keyword.language.gdscript storage.type.function.gdscript","match":"\\bfunc\\b"},"function_arguments":{"contentName":"meta.function.parameters.gdscript","begin":"(\\()","end":"(?=\\))(?!\\)\\s*\\()","patterns":[{"name":"punctuation.separator.arguments.gdscript","match":"(,)"},{"match":"\\b([a-zA-Z_]\\w*)\\s*(=)(?!=)","captures":{"1":{"name":"variable.parameter.function-call.gdscript"},"2":{"name":"keyword.operator.assignment.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"},{"include":"#base_expression"},{"match":"\\s*(\\))\\s*(\\()","captures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"}}},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.gdscript"}}},"function_call":{"name":"meta.function-call.gdscript","begin":"(?=\\b[a-zA-Z_]\\w*\\b\\()","end":"(\\))","patterns":[{"include":"#function_name"},{"include":"#function_arguments"}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"}}},"function_declaration":{"name":"meta.function.gdscript","begin":"(?x) \\s*\n (func) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"(:)","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"endCaptures":{"1":{"name":"punctuation.section.function.begin.gdscript"}}},"function_name":{"patterns":[{"include":"#builtin_classes"},{"name":"keyword.language.gdscript","match":"\\b(preload)\\b"},{"name":"entity.name.function.gdscript","match":"\\b([a-zA-Z_]\\w*)\\b"}]},"getter_setter_godot4":{"patterns":[{"name":"meta.variable.declaration.getter.gdscript","match":"(get)\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"}}},{"name":"meta.variable.declaration.setter.gdscript","match":"(set)\\s*(\\()\\s*([A-Za-z_]\\w*)\\s*(\\))\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"},"3":{"name":"variable.other.gdscript"},"4":{"name":"punctuation.definition.arguments.end.gdscript"},"5":{"name":"punctuation.separator.annotation.gdscript"}}}]},"in_keyword":{"patterns":[{"begin":"\\b(for)\\b","end":":","patterns":[{"name":"keyword.control.gdscript","match":"\\bin\\b"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"captures":{"1":{"name":"keyword.control.gdscript"}}},{"name":"keyword.operator.wordlike.gdscript","match":"\\bin\\b"}]},"keywords":{"name":"keyword.language.gdscript","match":"\\b(?:class|class_name|abstract|is|onready|tool|static|export|as|void|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace|super|self)\\b"},"lambda_declaration":{"name":"meta.function.gdscript","begin":"(func)\\s?(?=\\()","end":"(:|(?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"letter":{"name":"constant.language.gdscript","match":"\\b(?:true|false|null)\\b"},"line_continuation":{"patterns":[{"match":"(\\\\)\\s*(\\S.*$\\n?)","captures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"},"2":{"name":"invalid.illegal.line.continuation.gdscript"}}},{"begin":"(\\\\)\\s*$\\n?","end":"(?x)\n (?=^\\s*$)\n |\n (?! (\\s* [rR]? (\\'\\'\\'|\\\"\\\"\\\"|\\'|\\\"))\n |\n (\\G $) (?# '\\G' is necessary for ST)\n )\n","patterns":[{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"}}}]},"loose_default":{"begin":"(=)","end":"(,)|(?=\\))","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"match_keyword":{"match":"^\n\\s*(match)","captures":{"1":{"name":"keyword.control.gdscript"}}},"nodepath_function":{"name":"meta.function.gdscript","contentName":"meta.function.parameters.gdscript","begin":"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\s*(\\()","end":"(\\))","patterns":[{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]},{"include":"#expression"}],"beginCaptures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"nodepath_object":{"name":"meta.literal.nodepath.gdscript","begin":"(NodePath)\\s*(?:\\()","end":"(?:\\))","patterns":[{"name":"string.quoted.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]}],"beginCaptures":{"1":{"name":"support.class.library.gdscript"}}},"numbers":{"patterns":[{"name":"constant.numeric.integer.binary.gdscript","match":"0b[01_]+"},{"name":"constant.numeric.integer.hexadecimal.gdscript","match":"0x[0-9A-Fa-f_]+"},{"name":"constant.numeric.float.gdscript","match":"\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)\\.[0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)?\\.[0-9_]*([eE][+-]?[0-9_]+)"},{"name":"constant.numeric.float.gdscript","match":"[0-9][0-9_]*[eE][+-]?[0-9_]+"},{"name":"constant.numeric.integer.gdscript","match":"[-]?[0-9][0-9_]*"}]},"operators":{"patterns":[{"include":"#wordlike_operator"},{"include":"#boolean_operator"},{"include":"#arithmetic_operator"},{"include":"#bitwise_operator"},{"include":"#compare_operator"}]},"parameters":{"name":"meta.function.parameters.gdscript","begin":"(\\()","end":"(\\))","patterns":[{"include":"#annotated_parameter"},{"match":"(?x)\n ([a-zA-Z_]\\w*)\n \\s* (?: (,) | (?=[)#\\n=]))\n","captures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.parameters.gdscript"}}},{"include":"#comment"},{"include":"#loose_default"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"pascal_case_class":{"name":"entity.name.type.class.gdscript","match":"\\b([A-Z]+[a-z_0-9]*([A-Z]?[a-z_0-9]+)*[A-Z]?)\\b"},"region":{"name":"keyword.language.region.gdscript","match":"#(end)?region.*$\\n?"},"round_braces":{"begin":"\\(","end":"\\)","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.end.gdscript"}}},"signal_declaration":{"name":"meta.signal.gdscript","begin":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"((?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"signal_declaration_bare":{"name":"meta.signal.gdscript","match":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*)(?=[\\n\\s])","captures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"square_braces":{"begin":"\\[","end":"\\]","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.list.end.gdscript"}}},"statement":{"patterns":[{"include":"#extends_statement"}]},"statement_keyword":{"patterns":[{"name":"keyword.control.flow.gdscript","match":"(?x)\n \\b(?\u003c!\\.)(\n continue | assert | break | elif | else | if | pass | return | while )\\b\n"},{"name":"storage.type.class.gdscript","match":"\\b(?\u003c!\\.)(class)\\b"},{"match":"(?x)\n ^\\s*(\n case | match\n )(?=\\s*([-+\\w\\d(\\[{'\":#]|$))\\b\n","captures":{"1":{"name":"keyword.control.flow.gdscript"}}}]},"string_bracket_placeholders":{"patterns":[{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {{ | }}\n | (?:\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n ( : \\w? [\u003c\u003e=^]? [-+ ]? \\#?\n \\d* ,? (\\.\\d+)? [bcdeEfFgGnosxX%]? )?\n })\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}},{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n (:)\n [^'\"{}\\n]* (?:\n \\{ [^'\"}\\n]*? \\} [^'\"{}\\n]*\n )*\n }\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}}]},"string_percent_placeholders":{"name":"meta.format.percent.gdscript","match":"(?x)\n (\n % (\\([\\w\\s]*\\))?\n [-+#0 ]*\n (\\d+|\\*)? (\\.(\\d+|\\*))?\n ([hlL])?\n [diouxXeEfFgGcrsab%]\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"}}},"strings":{"name":"string.quoted.gdscript","begin":"(r)?(\"\"\"|'''|\"|')","end":"\\2","patterns":[{"name":"constant.character.escape.gdscript","match":"\\\\."},{"include":"#string_percent_placeholders"},{"include":"#string_bracket_placeholders"}],"beginCaptures":{"1":{"name":"constant.character.escape.gdscript"}}},"variable_declaration":{"name":"meta.variable.declaration.gdscript","begin":"\\b(?:(var)|(const))\\b","end":"$|;","patterns":[{"match":"(:)?\\s*(set|get)\\s+=\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":":=|=(?!=)"},{"match":"(:)\\s*([a-zA-Z_]\\w*)?","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},{"match":"(setget)\\s+([a-zA-Z_]\\w*)(?:[,]\\s*([a-zA-Z_]\\w*))?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"include":"#expression"},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.var.gdscript"},"2":{"name":"keyword.language.gdscript storage.type.const.gdscript"}}},"wordlike_operator":{"name":"keyword.operator.wordlike.gdscript","match":"\\b(and|or|not)\\b"}}}
1
+ {"name":"GDScript","scopeName":"source.gdscript","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated_parameter":{"begin":"(?x)\n \\s* ([a-zA-Z_]\\w*) \\s* (:)\\s* ([a-zA-Z_]\\w*)? \n","end":"(,)|(?=\\))","patterns":[{"include":"#expression"},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"}],"beginCaptures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"},"3":{"name":"entity.name.type.class.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"annotations":{"match":"(@)(abstract|export|export_category|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_file_path|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_flags_avoidance|export_global_dir|export_global_file|export_group|export_multiline|export_node_path|export_placeholder|export_range|export_storage|export_subgroup|export_tool_button|icon|onready|rpc|static_unload|tool|warning_ignore|warning_ignore_restore|warning_ignore_start)\\b","captures":{"1":{"name":"entity.name.function.decorator.gdscript"},"2":{"name":"entity.name.function.decorator.gdscript"}}},"any_method":{"name":"entity.name.function.other.gdscript","match":"\\b([A-Za-z_]\\w*)\\b(?=\\s*(?:[(]))"},"any_property":{"match":"\\b(\\.)\\s*(?\u003c![@\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\w*))\\b(?![(])","captures":{"1":{"name":"punctuation.accessor.gdscript"},"2":{"name":"constant.language.gdscript"},"3":{"name":"variable.other.property.gdscript"}}},"any_variable":{"name":"variable.other.gdscript","match":"\\b(?\u003c![@\\$#%])([A-Za-z_]\\w*)\\b(?![(])"},"arithmetic_operator":{"name":"keyword.operator.arithmetic.gdscript","match":"-\u003e|\\+=|-=|\\*\\*=|\\*=|\\^=|/=|%=|\u0026=|~=|\\|=|\\*\\*|\\*|/|%|\\+|-"},"assignment_operator":{"name":"keyword.operator.assignment.gdscript","match":"="},"base_expression":{"patterns":[{"include":"#builtin_get_node_shorthand"},{"include":"#nodepath_object"},{"include":"#nodepath_function"},{"include":"#strings"},{"include":"#builtin_classes"},{"include":"#const_vars"},{"include":"#keywords"},{"include":"#operators"},{"include":"#lambda_declaration"},{"include":"#class_declaration"},{"include":"#variable_declaration"},{"include":"#signal_declaration_bare"},{"include":"#signal_declaration"},{"include":"#function_declaration"},{"include":"#statement_keyword"},{"include":"#assignment_operator"},{"include":"#in_keyword"},{"include":"#control_flow"},{"include":"#match_keyword"},{"include":"#curly_braces"},{"include":"#square_braces"},{"include":"#round_braces"},{"include":"#function_call"},{"include":"#region"},{"include":"#comment"},{"include":"#func"},{"include":"#letter"},{"include":"#numbers"},{"include":"#pascal_case_class"},{"include":"#line_continuation"}]},"bitwise_operator":{"name":"keyword.operator.bitwise.gdscript","match":"\u0026|\\||\u003c\u003c=|\u003e\u003e=|\u003c\u003c|\u003e\u003e|\\^|~"},"boolean_operator":{"name":"keyword.operator.boolean.gdscript","match":"(\u0026\u0026|\\|\\|)"},"builtin_classes":{"name":"entity.name.type.class.builtin.gdscript","match":"(?\u003c![^.]\\.|:)\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|JSON|UPNP|OS|IP|JSONRPC|XRVRS|Variant|void)\\b"},"builtin_get_node_shorthand":{"patterns":[{"include":"#builtin_get_node_shorthand_quoted"},{"include":"#builtin_get_node_shorthand_bare"},{"include":"#builtin_get_node_shorthand_bare_multi"}]},"builtin_get_node_shorthand_bare":{"name":"meta.literal.nodepath.bare.gdscript","captures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"},"4":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_bare_multi":{"name":"meta.literal.nodepath.bare.gdscript","begin":"(\\$\\s*|%|\\$%\\s*)(/\\s*)?([a-zA-Z_]\\w*)","end":"(?!\\s*/\\s*%?\\s*[a-zA-Z_]\\w*)","patterns":[{"match":"(/)\\s*(%)?\\s*([a-zA-Z_]\\w*)\\s*","captures":{"1":{"name":"constant.character.escape.gdscript"},"2":{"name":"keyword.control.flow.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"}}},"builtin_get_node_shorthand_quoted":{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(?:(\\$|%)|(\u0026|\\^|@))(\"|')","end":"(\\3)","patterns":[{"name":"keyword.control.flow","match":"%"}],"beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_declaration":{"match":"(?\u003c=^class)\\s+([a-zA-Z_]\\w*)\\s*(?=:)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_enum":{"match":"\\b([A-Z][a-zA-Z_0-9]*)\\.([A-Z_0-9]+)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}}},"class_is":{"match":"\\s+(is)\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"storage.type.is.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},"class_name":{"match":"(?\u003c=class_name)\\s+([a-zA-Z_]\\w*(\\.([a-zA-Z_]\\w*))?)","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}}},"class_new":{"match":"\\b([a-zA-Z_]\\w*).(new)\\(","captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"storage.type.new.gdscript"},"3":{"name":"punctuation.parenthesis.begin.gdscript"}}},"comment":{"name":"comment.line.number-sign.gdscript","match":"(##|#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.number-sign.gdscript"}}},"compare_operator":{"name":"keyword.operator.comparison.gdscript","match":"\u003c=|\u003e=|==|\u003c|\u003e|!=|!"},"const_vars":{"name":"variable.other.constant.gdscript","match":"\\b([A-Z_][A-Z_0-9]*)\\b"},"control_flow":{"name":"keyword.control.gdscript","match":"\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\b"},"curly_braces":{"begin":"\\{","end":"\\}","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.dict.end.gdscript"}}},"expression":{"patterns":[{"include":"#getter_setter_godot4"},{"include":"#base_expression"},{"include":"#assignment_operator"},{"include":"#annotations"},{"include":"#class_name"},{"include":"#builtin_classes"},{"include":"#class_new"},{"include":"#class_is"},{"include":"#class_enum"},{"include":"#any_method"},{"include":"#any_variable"},{"include":"#any_property"}]},"extends_statement":{"match":"(extends)\\s+([a-zA-Z_]\\w*\\.[a-zA-Z_]\\w*)?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.other.inherited-class.gdscript"}}},"func":{"name":"keyword.language.gdscript storage.type.function.gdscript","match":"\\bfunc\\b"},"function_arguments":{"contentName":"meta.function.parameters.gdscript","begin":"(\\()","end":"(?=\\))(?!\\)\\s*\\()","patterns":[{"name":"punctuation.separator.arguments.gdscript","match":"(,)"},{"match":"\\b([a-zA-Z_]\\w*)\\s*(=)(?!=)","captures":{"1":{"name":"variable.parameter.function-call.gdscript"},"2":{"name":"keyword.operator.assignment.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":"=(?!=)"},{"include":"#base_expression"},{"match":"\\s*(\\))\\s*(\\()","captures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"}}},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.gdscript"}}},"function_call":{"name":"meta.function-call.gdscript","begin":"(?=\\b[a-zA-Z_]\\w*\\b\\()","end":"(\\))","patterns":[{"include":"#function_name"},{"include":"#function_arguments"}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"}}},"function_declaration":{"name":"meta.function.gdscript","begin":"(?x) \\s*\n (func) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"(:)","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"endCaptures":{"1":{"name":"punctuation.section.function.begin.gdscript"}}},"function_name":{"patterns":[{"include":"#builtin_classes"},{"name":"keyword.language.gdscript","match":"\\b(preload)\\b"},{"name":"entity.name.function.gdscript","match":"\\b([a-zA-Z_]\\w*)\\b"}]},"getter_setter_godot4":{"patterns":[{"name":"meta.variable.declaration.getter.gdscript","match":"(get)\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"}}},{"name":"meta.variable.declaration.setter.gdscript","match":"(set)\\s*(\\()\\s*([A-Za-z_]\\w*)\\s*(\\))\\s*(:)","captures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"},"3":{"name":"variable.other.gdscript"},"4":{"name":"punctuation.definition.arguments.end.gdscript"},"5":{"name":"punctuation.separator.annotation.gdscript"}}}]},"in_keyword":{"patterns":[{"begin":"\\b(for)\\b","end":":","patterns":[{"name":"keyword.control.gdscript","match":"\\bin\\b"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"captures":{"1":{"name":"keyword.control.gdscript"}}},{"name":"keyword.operator.wordlike.gdscript","match":"\\bin\\b"}]},"keywords":{"name":"keyword.language.gdscript","match":"\\b(?:class|class_name|is|onready|tool|static|export|as|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace|super|self)\\b"},"lambda_declaration":{"name":"meta.function.gdscript","begin":"(func)\\s?(?=\\()","end":"(:|(?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"letter":{"name":"constant.language.gdscript","match":"\\b(?:true|false|null)\\b"},"line_continuation":{"patterns":[{"match":"(\\\\)\\s*(\\S.*$\\n?)","captures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"},"2":{"name":"invalid.illegal.line.continuation.gdscript"}}},{"begin":"(\\\\)\\s*$\\n?","end":"(?x)\n (?=^\\s*$)\n |\n (?! (\\s* [rR]? (\\'\\'\\'|\\\"\\\"\\\"|\\'|\\\"))\n |\n (\\G $) (?# '\\G' is necessary for ST)\n )\n","patterns":[{"include":"#base_expression"}],"beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"}}}]},"loose_default":{"begin":"(=)","end":"(,)|(?=\\))","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.gdscript"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}}},"match_keyword":{"match":"^\n\\s*(match)","captures":{"1":{"name":"keyword.control.gdscript"}}},"nodepath_function":{"name":"meta.function.gdscript","contentName":"meta.function.parameters.gdscript","begin":"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\s*(\\()","end":"(\\))","patterns":[{"name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]},{"include":"#expression"}],"beginCaptures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"nodepath_object":{"name":"meta.literal.nodepath.gdscript","begin":"(NodePath)\\s*(?:\\()","end":"(?:\\))","patterns":[{"name":"string.quoted.gdscript constant.character.escape.gdscript","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.control.flow.gdscript","match":"%"}]}],"beginCaptures":{"1":{"name":"support.class.library.gdscript"}}},"numbers":{"patterns":[{"name":"constant.numeric.integer.binary.gdscript","match":"0b[01_]+"},{"name":"constant.numeric.integer.hexadecimal.gdscript","match":"0x[0-9A-Fa-f_]+"},{"name":"constant.numeric.float.gdscript","match":"\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)\\.[0-9_]*([eE][+-]?[0-9_]+)?"},{"name":"constant.numeric.float.gdscript","match":"([0-9][0-9_]*)?\\.[0-9_]*([eE][+-]?[0-9_]+)"},{"name":"constant.numeric.float.gdscript","match":"[0-9][0-9_]*[eE][+-]?[0-9_]+"},{"name":"constant.numeric.integer.gdscript","match":"[-]?[0-9][0-9_]*"}]},"operators":{"patterns":[{"include":"#wordlike_operator"},{"include":"#boolean_operator"},{"include":"#arithmetic_operator"},{"include":"#bitwise_operator"},{"include":"#compare_operator"}]},"parameters":{"name":"meta.function.parameters.gdscript","begin":"(\\()","end":"(\\))","patterns":[{"include":"#annotated_parameter"},{"match":"(?x)\n ([a-zA-Z_]\\w*)\n \\s* (?: (,) | (?=[)#\\n=]))\n","captures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.parameters.gdscript"}}},{"include":"#comment"},{"include":"#loose_default"}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.gdscript"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}}},"pascal_case_class":{"name":"entity.name.type.class.gdscript","match":"\\b[A-Z]+(?:[a-z]+[A-Za-z0-9_]*)+\\b"},"region":{"name":"keyword.language.region.gdscript","match":"#(end)?region.*$\\n?"},"round_braces":{"begin":"\\(","end":"\\)","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.end.gdscript"}}},"signal_declaration":{"name":"meta.signal.gdscript","begin":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*) \\s*\n (?=\\()","end":"((?=[#'\"\\n]))","patterns":[{"include":"#parameters"},{"include":"#line_continuation"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"signal_declaration_bare":{"name":"meta.signal.gdscript","match":"(?x) \\s*\n (signal) \\s+\n ([a-zA-Z_]\\w*)(?=[\\n\\s])","captures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}}},"square_braces":{"begin":"\\[","end":"\\]","patterns":[{"include":"#base_expression"},{"include":"#any_variable"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.begin.gdscript"}},"endCaptures":{"0":{"name":"punctuation.definition.list.end.gdscript"}}},"statement":{"patterns":[{"include":"#extends_statement"}]},"statement_keyword":{"patterns":[{"name":"keyword.control.flow.gdscript","match":"(?x)\n \\b(?\u003c!\\.)(\n continue | assert | break | elif | else | if | pass | return | while )\\b\n"},{"name":"storage.type.class.gdscript","match":"\\b(?\u003c!\\.)(class)\\b"},{"match":"(?x)\n ^\\s*(\n case | match\n )(?=\\s*([-+\\w\\d(\\[{'\":#]|$))\\b\n","captures":{"1":{"name":"keyword.control.flow.gdscript"}}}]},"string_bracket_placeholders":{"patterns":[{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {{ | }}\n | (?:\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n ( : \\w? [\u003c\u003e=^]? [-+ ]? \\#?\n \\d* ,? (\\.\\d+)? [bcdeEfFgGnosxX%]? )?\n })\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}},{"name":"meta.format.brace.gdscript","match":"(?x)\n (\n {\n \\w* (\\.[[:alpha:]_]\\w* | \\[[^\\]'\"]+\\])*\n (![rsa])?\n (:)\n [^'\"{}\\n]* (?:\n \\{ [^'\"}\\n]*? \\} [^'\"{}\\n]*\n )*\n }\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}}}]},"string_percent_placeholders":{"name":"meta.format.percent.gdscript","match":"(?x)\n (\n % (\\([\\w\\s]*\\))?\n [-+#0 ]*\n (\\d+|\\*)? (\\.(\\d+|\\*))?\n ([hlL])?\n [diouxXeEfFgGcrsab%]\n )\n","captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"}}},"strings":{"name":"string.quoted.gdscript","begin":"(r)?(\"\"\"|'''|\"|')","end":"\\2","patterns":[{"name":"constant.character.escape.gdscript","match":"\\\\."},{"include":"#string_percent_placeholders"},{"include":"#string_bracket_placeholders"}],"beginCaptures":{"1":{"name":"constant.character.escape.gdscript"}}},"variable_declaration":{"name":"meta.variable.declaration.gdscript","begin":"\\b(?:(var)|(const))\\b","end":"$|;","patterns":[{"match":"(:)?\\s*(set|get)\\s+=\\s+([a-zA-Z_]\\w*)","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"name":"keyword.operator.assignment.gdscript","match":":=|=(?!=)"},{"match":"(:)\\s*([a-zA-Z_]\\w*)?","captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}}},{"match":"(setget)\\s+([a-zA-Z_]\\w*)(?:[,]\\s*([a-zA-Z_]\\w*))?","captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}}},{"include":"#expression"},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}],"beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.var.gdscript"},"2":{"name":"keyword.language.gdscript storage.type.const.gdscript"}}},"wordlike_operator":{"name":"keyword.operator.wordlike.gdscript","match":"\\b(and|or|not)\\b"}}}
@@ -1 +1 @@
1
- {"name":"Blade (Markdown)","scopeName":"source.gfm.blade","patterns":[{"include":"text.html.php.blade#blade"},{"include":"text.html.basic"},{}]}
1
+ {"name":"Blade (Markdown)","scopeName":"source.gfm.blade","patterns":[{"include":"text.html.php.blade#blade"},{"include":"text.html.basic"},{"include":"text.md"}]}
@@ -1 +1 @@
1
- {"name":"Ignore List","scopeName":"source.gitignore","patterns":[{"include":"#main"}],"repository":{"bazaarPrefixes":{"patterns":[{"name":"storage.modifier.bazaar.re-prefix.gitignore","match":"^RE(:)(?=\\S)"},{"name":"keyword.operator.logical.not.negation.elevated.bazaar.gitignore","match":"^!!(?=\\S)"}]},"comment":{"name":"comment.line.number-sign.gitignore","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.gitignore"}}},"cvsSyntax":{"match":"\\A(syntax)(:)\\s+(glob)$","captures":{"1":{"name":"variable.parameter.assignment.glob-syntax.cvs.gitignore"},"2":{"name":"keyword.operator.assignment.separator.key-value.cvs.gitignore"},"3":{"name":"support.constant.language.syntax-type.cvs.gitignore"}}},"escape":{"name":"constant.character.escape.backslash.gitignore","match":"(\\\\).","captures":{"1":{"name":"punctuation.definition.escape.backslash.gitignore"}}},"magic":{"patterns":[{"name":"meta.magic-signature.long.gitignore","begin":"^(:)(\\()(?=.*?\\))","end":"(?\u003c!\\\\)\\)|(?=\\s*$)","patterns":[{"include":"#escape"},{"include":"#magicInnards"}],"beginCaptures":{"1":{"name":"keyword.operator.signature.begin.gitignore"},"2":{"name":"punctuation.section.signature.begin.gitignore"}},"endCaptures":{"0":{"name":"punctuation.section.signature.end.gitignore"}}},{"name":"meta.magic-signature.short.gitignore","match":"^(:)([!^]+)","captures":{"1":{"name":"keyword.operator.signature.begin.gitignore"},"2":{"name":"keyword.operator.mnemonic.gitignore"}}}]},"magicInnards":{"patterns":[{"include":"etc#comma"},{"name":"meta.attribute-list.gitignore","begin":"(?:\\G|(?\u003c=,|\\())(attr)(:)","end":"(?=,|\\)|$)","patterns":[{"name":"meta.attribute.gitignore","match":"(-|!)?((?:[^\\\\\\s=\\(\\),]|\\\\.)++)(?:(=)((?:[^\\\\\\s=\\(\\),]|\\\\.)*+))?","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"variable.parameter.attribute.gitignore","patterns":[{"include":"#escape"}]},"3":{"name":"punctuation.definition.assignment.equals-sign.gitignore"},"4":{"name":"constant.language.other.gitignore","patterns":[{"include":"#escape"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.magic-signature.$1.gitignore"},"2":{"patterns":[{"include":"etc#colon"}]}}},{"name":"meta.$1-attribute.gitignore","match":"(?:\\G|(?\u003c=,|\\())(-|!)?(attr|exclude|glob|icase|literal|top)(?=,|\\))","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"keyword.control.magic-signature.$2.gitignore"}}},{"name":"meta.unknown-attribute.gitignore","match":"(?:\\G|(?\u003c=,|\\())(-|!)?((?:[^\\\\=\\s,:\\)]|\\\\.)++)(?=,|\\))","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"keyword.control.magic-signature.unknown.gitignore"}}}]},"magicMnemonic":{"patterns":[{"name":"keyword.operator.logical.not.negation.gitignore","match":"-"},{"name":"keyword.operator.unset.delete.gitignore","match":"!"}]},"main":{"patterns":[{"include":"#comment"},{"include":"#cvsSyntax"},{"include":"#magic"},{"include":"#pattern"},{"include":"#escape"}]},"pattern":{"name":"meta.pattern.gitignore","begin":"(?=[^#\\s])","end":"$|(?=#)","patterns":[{"include":"#bazaarPrefixes"},{"include":"#patternInnards"}]},"patternInnards":{"patterns":[{"include":"#escape"},{"include":"#range"},{"name":"keyword.operator.logical.not.negation.gitignore","match":"\\G!"},{"name":"keyword.operator.glob.wildcard.globstar.gitignore","match":"\\*\\*"},{"name":"keyword.operator.glob.wildcard.gitignore","match":"[*?]"},{"name":"punctuation.directory.separator.meta.gitignore","match":"/"},{"name":"entity.other.file.name.gitignore","match":"[^\\[\\]\\\\*?#/\\s]+"}]},"range":{"name":"meta.character-range.gitignore","contentName":"constant.character.class.gitignore","begin":"\\[","end":"\\]|(?=$)","patterns":[{"include":"#escape"},{"name":"punctuation.delimiter.range.character-set.gitignore","match":"-"}],"beginCaptures":{"0":{"name":"punctuation.definition.square.bracket.begin.gitignore"}},"endCaptures":{"0":{"name":"punctuation.definition.square.bracket.end.gitignore"}}}}}
1
+ {"name":"Ignore List","scopeName":"source.gitignore","patterns":[{"include":"#main"}],"repository":{"bazaarPrefixes":{"patterns":[{"name":"storage.modifier.bazaar.re-prefix.gitignore","match":"^RE(:)(?=\\S)"},{"name":"keyword.operator.logical.not.negation.elevated.bazaar.gitignore","match":"^!!(?=\\S)"}]},"comment":{"name":"comment.line.number-sign.gitignore","begin":"^\\s*(#)","end":"$","beginCaptures":{"1":{"name":"punctuation.definition.comment.gitignore"}}},"cvsSyntax":{"match":"\\A(syntax)(:)\\s+(glob)$","captures":{"1":{"name":"variable.parameter.assignment.glob-syntax.cvs.gitignore"},"2":{"name":"keyword.operator.assignment.separator.key-value.cvs.gitignore"},"3":{"name":"support.constant.language.syntax-type.cvs.gitignore"}}},"escape":{"name":"constant.character.escape.backslash.gitignore","match":"(\\\\).","captures":{"1":{"name":"punctuation.definition.escape.backslash.gitignore"}}},"magic":{"patterns":[{"name":"meta.magic-signature.long.gitignore","begin":"^(:)(\\()(?=.*?\\))","end":"(?\u003c!\\\\)\\)|(?=\\s*$)","patterns":[{"include":"#escape"},{"include":"#magicInnards"}],"beginCaptures":{"1":{"name":"keyword.operator.signature.begin.gitignore"},"2":{"name":"punctuation.section.signature.begin.gitignore"}},"endCaptures":{"0":{"name":"punctuation.section.signature.end.gitignore"}}},{"name":"meta.magic-signature.short.gitignore","match":"^(:)([!^]+)","captures":{"1":{"name":"keyword.operator.signature.begin.gitignore"},"2":{"name":"keyword.operator.mnemonic.gitignore"}}}]},"magicInnards":{"patterns":[{"include":"etc#comma"},{"name":"meta.attribute-list.gitignore","begin":"(?:\\G|(?\u003c=,|\\())(attr)(:)","end":"(?=,|\\)|$)","patterns":[{"name":"meta.attribute.gitignore","match":"(-|!)?((?:[^\\\\\\s=\\(\\),]|\\\\.)++)(?:(=)((?:[^\\\\\\s=\\(\\),]|\\\\.)*+))?","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"variable.parameter.attribute.gitignore","patterns":[{"include":"#escape"}]},"3":{"name":"punctuation.definition.assignment.equals-sign.gitignore"},"4":{"name":"constant.language.other.gitignore","patterns":[{"include":"#escape"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.magic-signature.$1.gitignore"},"2":{"patterns":[{"include":"etc#colon"}]}}},{"name":"meta.$1-attribute.gitignore","match":"(?:\\G|(?\u003c=,|\\())(-|!)?(attr|exclude|glob|icase|literal|top)(?=,|\\))","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"keyword.control.magic-signature.$2.gitignore"}}},{"name":"meta.unknown-attribute.gitignore","match":"(?:\\G|(?\u003c=,|\\())(-|!)?((?:[^\\\\=\\s,:\\)]|\\\\.)++)(?=,|\\))","captures":{"1":{"patterns":[{"include":"#magicMnemonic"}]},"2":{"name":"keyword.control.magic-signature.unknown.gitignore"}}}]},"magicMnemonic":{"patterns":[{"name":"keyword.operator.logical.not.negation.gitignore","match":"-"},{"name":"keyword.operator.unset.delete.gitignore","match":"!"}]},"main":{"patterns":[{"include":"#comment"},{"include":"#cvsSyntax"},{"include":"#magic"},{"include":"#pattern"},{"include":"#escape"}]},"pattern":{"name":"meta.pattern.gitignore","begin":"(?=[^#\\s])","end":"$|(?=#)","patterns":[{"include":"#bazaarPrefixes"},{"include":"#patternInnards"}]},"patternInnards":{"patterns":[{"include":"#escape"},{"include":"#range"},{"name":"keyword.operator.logical.not.negation.gitignore","match":"\\G!"},{"name":"keyword.operator.glob.wildcard.globstar.gitignore","match":"\\*\\*"},{"name":"keyword.operator.glob.wildcard.gitignore","match":"[*?]"},{"name":"punctuation.directory.separator.meta.gitignore","match":"/"},{"name":"entity.other.file.name.gitignore","match":"[^\\[\\]\\\\*?#/\\s]+"}]},"range":{"name":"meta.character-range.gitignore","contentName":"constant.character.class.gitignore","begin":"\\[","end":"\\]|(?=$)","patterns":[{"include":"#escape"},{"name":"punctuation.delimiter.range.character-set.gitignore","match":"-"}],"beginCaptures":{"0":{"name":"punctuation.definition.square.bracket.begin.gitignore"}},"endCaptures":{"0":{"name":"punctuation.definition.square.bracket.end.gitignore"}}}}}
@@ -0,0 +1 @@
1
+ {"name":"Go Template","scopeName":"source.go-template","patterns":[{"include":"#comments"},{"include":"#operators"},{"include":"#variables"},{"include":"#keywords"},{"name":"string.quoted.double.go-template","begin":"\"","end":"(?\u003c!(?\u003c!\\\\)\\\\)\"","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go-template"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.go-template"}}},{"name":"string.quoted.raw.go-template","begin":"`","end":"`","patterns":[{"include":"#string_placeholder"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go-template"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.go-template"}}}],"repository":{"comments":{"patterns":[{"name":"comment.block.go-template","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.go-template"}}}]},"keywords":{"patterns":[{"name":"keyword.control.go-template","match":"\\b(if|else|range|template|with|end|nil|with|define|block)\\b"},{"name":"support.function.builtin.go-template","match":"\\b(and|call|html|index|slice|js|len|not|or|print(f|ln)?|urlquery|eq|ne|lt|le|gt|ge)\\b"}]},"operators":{"patterns":[{"name":"keyword.operator.assignment.go-template","match":":?="},{"name":"keyword.operator.pipe.go-template","match":"\\|"}]},"string_escaped_char":{"patterns":[{"name":"constant.character.escape.go-template","match":"\\\\([0-7]{3}|[abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})"},{"name":"invalid.illegal.unknown-escape.go-template","match":"\\\\[^0-7xuUabfnrtv\\'\"]"}]},"string_placeholder":{"patterns":[{"name":"constant.other.placeholder.go-template","match":"%(\\[\\d+\\])?([+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGspw]"}]},"variables":{"patterns":[{"name":"variable.sub.property.go-template","match":"\\.\\w*"},{"name":"variable.other.readwrite.go-template","match":"\\$\\w*"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Go Injection Template","scopeName":"source.go.injection.double.go-template","patterns":[{"include":"#go-template-tag"}],"repository":{"go-template-tag":{"name":"meta.embedded.go-template","contentName":"source.go-template","begin":"\\{\\{-?[\\t ]*","end":"[\\t ]*-?\\}\\}|(?\u003c!\\\\)(?=\")","patterns":[{"include":"source.go-template"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.go-template"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.go-template"},"1":{"name":"source.go-template"}}}}}
@@ -0,0 +1 @@
1
+ {"name":"Go Injection Template","scopeName":"source.go.injection.raw.go-template","patterns":[{"include":"#go-template-tag"}],"repository":{"go-template-tag":{"name":"meta.embedded.go-template","contentName":"source.go-template","begin":"\\{\\{-?[\\t ]*","end":"[\\t ]*-?\\}\\}|(?=`)","patterns":[{"include":"source.go-template"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.go-template"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.go-template"},"1":{"name":"source.go-template"}}}}}