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
@@ -0,0 +1 @@
1
+ {"name":"gnolang","scopeName":"source.gno","patterns":[{"include":"#statements"}],"repository":{"after_control_variables":{"match":"(?:(?\u003c=\\brange\\b|\\bswitch\\b|\\;|\\bif\\b|\\bfor\\b|\\\u003c|\\\u003e|\\\u003c\\=|\\\u003e\\=|\\=\\=|\\!\\=|\\w(?:\\+|/|\\-|\\*|\\%)|\\w(?:\\+|/|\\-|\\*|\\%)\\=|\\|\\||\\\u0026\\\u0026)(?:\\s*)((?![\\[\\]]+)[[:alnum:]\\-\\_\\!\\.\\[\\]\\\u003c\\\u003e\\=\\*/\\+\\%\\:]+)(?:\\s*)(?=\\{))","captures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"variable.other.go","match":"(?:\\w+)"}]}}},"brackets":{"patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.curly.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"begin":"\\[","end":"\\]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}}]},"built_in_functions":{"patterns":[{"name":"entity.name.function.support.builtin.go","match":"\\b(append|cap|close|complex|copy|delete|imag|len|panic|print|println|real|recover|min|max|clear)\\b(?=\\()"},{"begin":"(?:(\\bnew\\b)(\\())","end":"\\)","patterns":[{"include":"#functions"},{"include":"#struct_variables_types"},{"include":"#type-declarations"},{"include":"#generic_types"},{"name":"entity.name.type.go","match":"(?:\\w+)"},{"include":"$self"}],"beginCaptures":{"1":{"name":"entity.name.function.support.builtin.go"},"2":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"begin":"(?:(\\bmake\\b)(?:(\\()((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?:[\\[\\]\\*]+)?(?:(?!\\bmap\\b)(?:[\\w\\.]+))?(\\[(?:(?:[\\S]+)(?:(?:\\,\\s*(?:[\\S]+))*))?\\])?(?:\\,)?)?))","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"entity.name.function.support.builtin.go"},"2":{"name":"punctuation.definition.begin.bracket.round.go"},"3":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"\\w+"}]}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}}]},"comments":{"patterns":[{"name":"comment.block.go","begin":"(\\/\\*)","end":"(\\*\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"endCaptures":{"1":{"name":"punctuation.definition.comment.go"}}},{"name":"comment.line.double-slash.go","begin":"(\\/\\/)","end":"(?:\\n|$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}}}]},"const_assignment":{"patterns":[{"match":"(?:(?\u003c=\\bconst\\b)(?:\\s*)(\\b[\\w\\.]+(?:\\,\\s*[\\w\\.]+)*)(?:\\s*)((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?!(?:[\\[\\]\\*]+)?\\b(?:struct|func|map)\\b)(?:[\\w\\.\\[\\]\\*]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*)?(?:\\s*)(?:\\=)?)?)","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.other.constant.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}},{"begin":"(?:(?\u003c=\\bconst\\b)(?:\\s*)(\\())","end":"\\)","patterns":[{"match":"(?:(?:^\\s*)(\\b[\\w\\.]+(?:\\,\\s*[\\w\\.]+)*)(?:\\s*)((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?!(?:[\\[\\]\\*]+)?\\b(?:struct|func|map)\\b)(?:[\\w\\.\\[\\]\\*]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*)?(?:\\s*)(?:\\=)?)?)","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.other.constant.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}}]},"delimiters":{"patterns":[{"name":"punctuation.other.comma.go","match":"\\,"},{"name":"punctuation.other.period.go","match":"\\.(?!\\.\\.)"},{"name":"punctuation.other.colon.go","match":":(?!=)"}]},"double_parentheses_types":{"match":"(?:(?\u003c!\\w)(\\((?:[\\w\\.\\[\\]\\*\\\u0026]+)\\))(?=\\())","captures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}},"field_hover":{"match":"(?:(?\u003c=^\\bfield\\b)\\s+([\\w\\*\\.]+)\\s+([\\s\\S]+))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"\\w+"}]},"2":{"patterns":[{"name":"invalid.field.go","match":"\\binvalid\\b\\s+\\btype\\b"},{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"\\w+"}]}}},"function_declaration":{"begin":"(?:^(\\bfunc\\b)(?:\\s*(\\([^\\)]+\\)\\s*)?(?:(\\w+)(?=\\(|\\[))?))","end":"(?:(?\u003c=\\))\\s*((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?!(?:[\\[\\]\\*]+)?(?:\\bstruct\\b|\\binterface\\b))[\\w\\.\\-\\*\\[\\]]+)?\\s*(?=\\{))","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"begin":"(?:([\\w\\.\\*]+)?(\\[))","end":"\\]","patterns":[{"include":"#generic_param_types"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}},{"match":"(?:(?\u003c=\\))(?:\\s*)((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?[\\w\\*\\.\\[\\]\\\u003c\\\u003e\\-]+(?:\\s*)(?:\\/(?:\\/|\\*).*)?)$)","captures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"\\w+"}]}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.function.go"},"2":{"patterns":[{"begin":"\\(","end":"\\)","patterns":[{"match":"(?:(\\w+(?:\\s+))?((?:[\\w\\.\\*]+)(?:\\[(?:(?:(?:[\\w\\.\\*]+)(?:\\,\\s+)?)+)?\\])?))","captures":{"1":{"name":"variable.parameter.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}}]},"3":{"patterns":[{"name":"invalid.illegal.identifier.go","match":"\\d\\w*"},{"name":"entity.name.function.go","match":"\\w+"}]}},"endCaptures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},"function_param_types":{"patterns":[{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#type-declarations-without-brackets"},{"match":"((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)\\s+(?=(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\[\\]\\*]+)?\\b(?:struct|interface)\\b\\s*\\{)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.parameter.go","match":"\\w+"}]}}},{"match":"(?:(?:(?\u003c=\\()|^\\s*)((?:(?:\\b\\w+\\,\\s*)+)(?:/(?:/|\\*).*)?)$)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.parameter.go","match":"\\w+"}]}}},{"match":"(?:((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)(?:\\s+)((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:(?:(?:[\\w\\[\\]\\.\\*]+)?(?:(?:\\bfunc\\b\\((?:[^\\)]+)?\\))(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:\\s*))+(?:(?:(?:[\\w\\*\\.\\[\\]]+)|(?:\\((?:[^\\)]+)?\\))))?)|(?:(?:[\\[\\]\\*]+)?[\\w\\*\\.]+(?:\\[(?:[^\\]]+)\\])?(?:[\\w\\.\\*]+)?)+)))","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.parameter.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"begin":"(?:([\\w\\.\\*]+)?(\\[))","end":"\\]","patterns":[{"include":"#generic_param_types"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"match":"([\\w\\.]+)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"include":"$self"}]},"functions":{"begin":"(?:(\\bfunc\\b)(?=\\())","end":"(?:(?\u003c=\\))(\\s*(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?((?:(?:\\s*(?:(?:[\\[\\]\\*]+)?[\\w\\.\\*]+)?(?:(?:\\[(?:(?:[\\w\\.\\*]+)?(?:\\[(?:[^\\]]+)?\\])?(?:\\,\\s+)?)+\\])|(?:\\((?:[^\\)]+)?\\)))?(?:[\\w\\.\\*]+)?)(?:\\s*)(?=\\{))|(?:\\s*(?:(?:(?:[\\[\\]\\*]+)?(?!\\bfunc\\b)(?:[\\w\\.\\*]+)(?:\\[(?:(?:[\\w\\.\\*]+)?(?:\\[(?:[^\\]]+)?\\])?(?:\\,\\s+)?)+\\])?(?:[\\w\\.\\*]+)?)|(?:\\((?:[^\\)]+)?\\)))))?)","patterns":[{"include":"#parameter-variable-types"}],"beginCaptures":{"1":{"name":"keyword.function.go"}},"endCaptures":{"1":{"patterns":[{"include":"#type-declarations"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},"functions_inline":{"match":"(?:(\\bfunc\\b)((?:\\((?:[^/]*?)\\))(?:\\s+)(?:\\((?:[^/]*?)\\)))(?:\\s+)(?=\\{))","captures":{"1":{"name":"keyword.function.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"punctuation.definition.begin.bracket.curly.go","match":"\\{"},{"name":"punctuation.definition.end.bracket.curly.go","match":"\\}"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},"generic_param_types":{"patterns":[{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#type-declarations-without-brackets"},{"match":"((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)\\s+(?=(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\[\\]\\*]+)?\\b(?:struct|interface)\\b\\s*\\{)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.parameter.go","match":"\\w+"}]}}},{"match":"(?:(?:(?\u003c=\\()|^\\s*)((?:(?:\\b\\w+\\,\\s*)+)(?:/(?:/|\\*).*)?)$)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.parameter.go","match":"\\w+"}]}}},{"match":"(?:((?:(?:\\b\\w+\\,\\s*)+)?\\b\\w+)(?:\\s+)((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:(?:(?:[\\w\\[\\]\\.\\*]+)?(?:(?:\\bfunc\\b\\((?:[^\\)]+)?\\))(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:\\s*))+(?:(?:(?:[\\w\\*\\.]+)|(?:\\((?:[^\\)]+)?\\))))?)|(?:(?:(?:[\\w\\*\\.\\~]+)|(?:\\[(?:(?:[\\w\\.\\*]+)?(?:\\[(?:[^\\]]+)?\\])?(?:\\,\\s+)?)+\\]))(?:[\\w\\.\\*]+)?)+)))","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.parameter.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]},"3":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"begin":"(?:([\\w\\.\\*]+)?(\\[))","end":"\\]","patterns":[{"include":"#generic_param_types"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"match":"(?:\\b([\\w\\.]+))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"include":"$self"}]},"generic_types":{"match":"(?:([\\w\\.\\*]+)(\\[(?:[^\\]]+)?\\]))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#parameter-variable-types"}]}}},"group-functions":{"patterns":[{"include":"#function_declaration"},{"include":"#functions_inline"},{"include":"#functions"},{"include":"#built_in_functions"},{"include":"#support_functions"}]},"group-types":{"patterns":[{"include":"#other_struct_interface_expressions"},{"include":"#type_assertion_inline"},{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#single_type"},{"include":"#multi_types"},{"include":"#struct_interface_declaration"},{"include":"#double_parentheses_types"},{"include":"#switch_types"},{"include":"#type-declarations"}]},"group-variables":{"patterns":[{"include":"#const_assignment"},{"include":"#var_assignment"},{"include":"#variable_assignment"},{"include":"#label_loop_variables"},{"include":"#slice_index_variables"},{"include":"#property_variables"},{"include":"#switch_select_case_variables"},{"include":"#other_variables"}]},"import":{"patterns":[{"begin":"\\b(import)\\s+","end":"(?!\\G)","patterns":[{"include":"#imports"}],"beginCaptures":{"1":{"name":"keyword.control.import.go"}}}]},"imports":{"patterns":[{"match":"(\\s*[\\w\\.]+)?\\s*((\")([^\"]*)(\"))","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.other.import.go","match":"(?:\\w+)"}]},"2":{"name":"string.quoted.double.go"},"3":{"name":"punctuation.definition.string.begin.go"},"4":{"name":"entity.name.import.go"},"5":{"name":"punctuation.definition.string.end.go"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#imports"}],"beginCaptures":{"0":{"name":"punctuation.definition.imports.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.imports.end.bracket.round.go"}}},{"include":"$self"}]},"interface_variables_types":{"begin":"(\\binterface\\b)\\s*(\\{)","end":"\\}","patterns":[{"include":"#interface_variables_types_field"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.interface.go"},"2":{"name":"punctuation.definition.begin.bracket.curly.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}}},"interface_variables_types_field":{"patterns":[{"include":"#support_functions"},{"include":"#type-declarations-without-brackets"},{"begin":"(?:([\\w\\.\\*]+)?(\\[))","end":"\\]","patterns":[{"include":"#generic_param_types"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"match":"([\\w\\.]+)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}]}}}]},"keywords":{"patterns":[{"name":"keyword.control.go","match":"\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\b"},{"name":"keyword.channel.go","match":"\\bchan\\b"},{"name":"keyword.const.go","match":"\\bconst\\b"},{"name":"keyword.var.go","match":"\\bvar\\b"},{"name":"keyword.function.go","match":"\\bfunc\\b"},{"name":"keyword.interface.go","match":"\\binterface\\b"},{"name":"keyword.map.go","match":"\\bmap\\b"},{"name":"keyword.struct.go","match":"\\bstruct\\b"},{"name":"keyword.control.import.go","match":"\\bimport\\b"},{"name":"keyword.type.go","match":"\\btype\\b"}]},"label_loop_variables":{"match":"((?:^\\s*\\w+:\\s*$)|(?:^\\s*(?:\\bbreak\\b|\\bgoto\\b|\\bcontinue\\b)\\s+\\w+(?:\\s*/(?:/|\\*)\\s*.*)?$))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.label.go","match":"\\w+"}]}}},"language_constants":{"match":"\\b(?:(true|false)|(nil)|(iota))\\b","captures":{"1":{"name":"constant.language.boolean.go"},"2":{"name":"constant.language.null.go"},"3":{"name":"constant.language.iota.go"}}},"map_types":{"begin":"(?:(\\bmap\\b)(\\[))","end":"(?:(\\])((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?!(?:[\\[\\]\\*]+)?\\b(?:func|struct|map)\\b)(?:[\\*\\[\\]]+)?(?:[\\w\\.]+)(?:\\[(?:(?:[\\w\\.\\*\\[\\]\\{\\}]+)(?:(?:\\,\\s*(?:[\\w\\.\\*\\[\\]\\{\\}]+))*))?\\])?)?)","patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"include":"#functions"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"punctuation.definition.begin.bracket.curly.go","match":"\\{"},{"name":"punctuation.definition.end.bracket.curly.go","match":"\\}"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"entity.name.type.go","match":"\\w+"}],"beginCaptures":{"1":{"name":"keyword.map.go"},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"1":{"name":"punctuation.definition.end.bracket.square.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}},"multi_types":{"begin":"(\\btype\\b)\\s*(\\()","end":"\\)","patterns":[{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}],"beginCaptures":{"1":{"name":"keyword.type.go"},"2":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},"numeric_literals":{"match":"(?\u003c!\\w)\\.?\\d(?:(?:[0-9a-zA-Z_\\.])|(?\u003c=[eEpP])[+-])*","captures":{"0":{"patterns":[{"begin":"(?=.)","end":"(?:\\n|$)","patterns":[{"match":"(?:(?:(?:(?:(?:\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?\u003c=[0-9])\\.|\\.(?=[0-9])))([0-9](?:[0-9]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?:(?\u003c!_)([eE])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\w))?(?:\\n|$)|\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?\u003c!_)([eE])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))|\\G((?:(?\u003c=[0-9])\\.|\\.(?=[0-9])))([0-9](?:[0-9]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?:(?\u003c!_)([eE])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\w))?(?:\\n|$))|(\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?\u003c=[0-9a-fA-F])\\.|\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?\u003c!_)([pP])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))|(\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?\u003c!_)([pP])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))|(\\G0[xX])((?:(?\u003c=[0-9a-fA-F])\\.|\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?\u003c!_)([pP])(\\+?)(\\-?)((?:[0-9](?:[0-9]|(?:(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\w))?(?:\\n|$))","captures":{"1":{"name":"constant.numeric.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"10":{"name":"keyword.other.unit.imaginary.go"},"11":{"name":"constant.numeric.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"12":{"name":"punctuation.separator.constant.numeric.go"},"13":{"name":"keyword.other.unit.exponent.decimal.go"},"14":{"name":"keyword.operator.plus.exponent.decimal.go"},"15":{"name":"keyword.operator.minus.exponent.decimal.go"},"16":{"name":"constant.numeric.exponent.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"17":{"name":"keyword.other.unit.imaginary.go"},"18":{"name":"constant.numeric.decimal.point.go"},"19":{"name":"constant.numeric.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"2":{"name":"punctuation.separator.constant.numeric.go"},"20":{"name":"punctuation.separator.constant.numeric.go"},"21":{"name":"keyword.other.unit.exponent.decimal.go"},"22":{"name":"keyword.operator.plus.exponent.decimal.go"},"23":{"name":"keyword.operator.minus.exponent.decimal.go"},"24":{"name":"constant.numeric.exponent.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"25":{"name":"keyword.other.unit.imaginary.go"},"26":{"name":"keyword.other.unit.hexadecimal.go"},"27":{"name":"constant.numeric.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"28":{"name":"punctuation.separator.constant.numeric.go"},"29":{"name":"constant.numeric.hexadecimal.go"},"3":{"name":"constant.numeric.decimal.point.go"},"30":{"name":"constant.numeric.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"31":{"name":"punctuation.separator.constant.numeric.go"},"32":{"name":"keyword.other.unit.exponent.hexadecimal.go"},"33":{"name":"keyword.operator.plus.exponent.hexadecimal.go"},"34":{"name":"keyword.operator.minus.exponent.hexadecimal.go"},"35":{"name":"constant.numeric.exponent.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"36":{"name":"keyword.other.unit.imaginary.go"},"37":{"name":"keyword.other.unit.hexadecimal.go"},"38":{"name":"constant.numeric.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"39":{"name":"punctuation.separator.constant.numeric.go"},"4":{"name":"constant.numeric.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"40":{"name":"keyword.other.unit.exponent.hexadecimal.go"},"41":{"name":"keyword.operator.plus.exponent.hexadecimal.go"},"42":{"name":"keyword.operator.minus.exponent.hexadecimal.go"},"43":{"name":"constant.numeric.exponent.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"44":{"name":"keyword.other.unit.imaginary.go"},"45":{"name":"keyword.other.unit.hexadecimal.go"},"46":{"name":"constant.numeric.hexadecimal.go"},"47":{"name":"constant.numeric.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"48":{"name":"punctuation.separator.constant.numeric.go"},"49":{"name":"keyword.other.unit.exponent.hexadecimal.go"},"5":{"name":"punctuation.separator.constant.numeric.go"},"50":{"name":"keyword.operator.plus.exponent.hexadecimal.go"},"51":{"name":"keyword.operator.minus.exponent.hexadecimal.go"},"52":{"name":"constant.numeric.exponent.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"53":{"name":"keyword.other.unit.imaginary.go"},"6":{"name":"keyword.other.unit.exponent.decimal.go"},"7":{"name":"keyword.operator.plus.exponent.decimal.go"},"8":{"name":"keyword.operator.minus.exponent.decimal.go"},"9":{"name":"constant.numeric.exponent.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]}}},{"match":"(?:(?:(?:\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\w))?(?:\\n|$)|(\\G0[bB])_?([01](?:[01]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\w))?(?:\\n|$))|(\\G0[oO]?)_?((?:[0-7]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))+)(i(?!\\w))?(?:\\n|$))|(\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\w))?(?:\\n|$))","captures":{"1":{"name":"constant.numeric.decimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"10":{"name":"punctuation.separator.constant.numeric.go"},"11":{"name":"keyword.other.unit.imaginary.go"},"12":{"name":"keyword.other.unit.hexadecimal.go"},"13":{"name":"constant.numeric.hexadecimal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"14":{"name":"punctuation.separator.constant.numeric.go"},"15":{"name":"keyword.other.unit.imaginary.go"},"2":{"name":"punctuation.separator.constant.numeric.go"},"3":{"name":"keyword.other.unit.imaginary.go"},"4":{"name":"keyword.other.unit.binary.go"},"5":{"name":"constant.numeric.binary.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]},"6":{"name":"punctuation.separator.constant.numeric.go"},"7":{"name":"keyword.other.unit.imaginary.go"},"8":{"name":"keyword.other.unit.octal.go"},"9":{"name":"constant.numeric.octal.go","patterns":[{"name":"punctuation.separator.constant.numeric.go","match":"(?\u003c=[0-9a-fA-F])_(?=[0-9a-fA-F])"}]}}},{"name":"invalid.illegal.constant.numeric.go","match":"(?:(?:[0-9a-zA-Z_\\.])|(?\u003c=[eEpP])[+-])+"}]}]}}},"operators":{"patterns":[{"name":"keyword.operator.address.go","match":"((?:\\*|\\\u0026)+)(?:(?!\\d)(?=(?:[\\w\\[\\]])|(?:\\\u003c\\-)))"},{"name":"keyword.operator.channel.go","match":"\u003c\\-"},{"name":"keyword.operator.decrement.go","match":"\\-\\-"},{"name":"keyword.operator.increment.go","match":"\\+\\+"},{"name":"keyword.operator.comparison.go","match":"(==|!=|\u003c=|\u003e=|\u003c(?!\u003c)|\u003e(?!\u003e))"},{"name":"keyword.operator.logical.go","match":"(\u0026\u0026|\\|\\||!)"},{"name":"keyword.operator.assignment.go","match":"(=|\\+=|\\-=|\\|=|\\^=|\\*=|/=|:=|%=|\u003c\u003c=|\u003e\u003e=|\u0026\\^=|\u0026=)"},{"name":"keyword.operator.arithmetic.go","match":"(\\+|\\-|\\*|/|%)"},{"name":"keyword.operator.arithmetic.bitwise.go","match":"(\u0026(?!\\^)|\\||\\^|\u0026\\^|\u003c\u003c|\u003e\u003e|\\~)"},{"name":"keyword.operator.ellipsis.go","match":"\\.\\.\\."}]},"other_struct_interface_expressions":{"patterns":[{"include":"#after_control_variables"},{"match":"(\\b[\\w\\.]+)(\\[(?:[^\\]]+)?\\])?(?=\\{)(?\u003c!\\bstruct\\b|\\binterface\\b)","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}]},"2":{"patterns":[{"begin":"\\[","end":"\\]","patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}}]}}}]},"other_variables":{"name":"variable.other.go","match":"\\w+"},"package_name":{"patterns":[{"begin":"\\b(package)\\s+","end":"(?!\\G)","patterns":[{"name":"invalid.illegal.identifier.go","match":"\\d\\w*"},{"name":"entity.name.type.package.go","match":"\\w+"}],"beginCaptures":{"1":{"name":"keyword.package.go"}}}]},"parameter-variable-types":{"patterns":[{"name":"punctuation.definition.begin.bracket.curly.go","match":"\\{"},{"name":"punctuation.definition.end.bracket.curly.go","match":"\\}"},{"begin":"(?:([\\w\\.\\*]+)?(\\[))","end":"\\]","patterns":[{"include":"#generic_param_types"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}}},{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}}]},"property_variables":{"match":"((?:\\b[\\w\\.]+)(?:\\:(?!\\=)))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"\\w+"}]}}},"raw_string_literals":{"name":"string.quoted.raw.go","begin":"`","end":"`","patterns":[{"include":"#string_placeholder"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}}},"runes":{"patterns":[{"name":"string.quoted.rune.go","begin":"'","end":"'","patterns":[{"name":"constant.other.rune.go","match":"\\G(\\\\([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-rune.go","match":"[^']+"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}}}]},"single_type":{"patterns":[{"match":"(?:(?:^\\s*)(\\btype\\b)(?:\\s*)([\\w\\.\\*]+)(?:\\s+)(?!(?:\\=\\s*)?(?:[\\[\\]\\*]+)?\\b(?:struct|interface)\\b)([\\s\\S]+))","captures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}]},"3":{"patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#function_param_types"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"include":"#type-declarations"},{"include":"#generic_types"},{"name":"entity.name.type.go","match":"\\w+"}]}}},{"begin":"(?:(?:^|\\s+)(\\btype\\b)(?:\\s*)([\\w\\.\\*]+)(?=\\[))","end":"(?:(?\u003c=\\])((?:\\s+)(?:\\=\\s*)?(?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:(?!(?:[\\[\\]\\*]+)?(?:\\bstruct\\b|\\binterface\\b|\\bfunc\\b))[\\w\\.\\-\\*\\[\\]]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*))?)","patterns":[{"include":"#struct_variables_types"},{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"punctuation.definition.begin.bracket.curly.go","match":"\\{"},{"name":"punctuation.definition.end.bracket.curly.go","match":"\\}"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"entity.name.type.go","match":"\\w+"}],"beginCaptures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"name":"entity.name.type.go","match":"\\w+"}]}},"endCaptures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}}]},"slice_index_variables":{"match":"(?\u003c=\\w\\[)((?:(?:\\b[\\w\\.\\*\\+/\\-\\%\\\u003c\\\u003e\\|\\\u0026]+\\:)|(?:\\:\\b[\\w\\.\\*\\+/\\-\\%\\\u003c\\\u003e\\|\\\u0026]+))(?:\\b[\\w\\.\\*\\+/\\-\\%\\\u003c\\\u003e\\|\\\u0026]+)?(?:\\:\\b[\\w\\.\\*\\+/\\-\\%\\\u003c\\\u003e\\|\\\u0026]+)?)(?=\\])","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.go","match":"\\w+"}]}}},"statements":{"patterns":[{"include":"#package_name"},{"include":"#import"},{"include":"#syntax_errors"},{"include":"#group-functions"},{"include":"#group-types"},{"include":"#group-variables"},{"include":"#field_hover"}]},"storage_types":{"patterns":[{"name":"storage.type.boolean.go","match":"\\bbool\\b"},{"name":"storage.type.byte.go","match":"\\bbyte\\b"},{"name":"storage.type.error.go","match":"\\berror\\b"},{"name":"storage.type.numeric.go","match":"\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\b"},{"name":"storage.type.rune.go","match":"\\brune\\b"},{"name":"storage.type.string.go","match":"\\bstring\\b"},{"name":"storage.type.uintptr.go","match":"\\buintptr\\b"},{"name":"entity.name.type.any.go","match":"\\bany\\b"}]},"string_escaped_char":{"patterns":[{"name":"constant.character.escape.go","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","match":"\\\\[^0-7xuUabfnrtv\\'\"]"}]},"string_literals":{"patterns":[{"name":"string.quoted.double.go","begin":"\"","end":"\"","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}}}]},"string_placeholder":{"patterns":[{"name":"constant.other.placeholder.go","match":"%(\\[\\d+\\])?([\\+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGspw]"}]},"struct_interface_declaration":{"match":"(?:(?:^\\s*)(\\btype\\b)(?:\\s*)([\\w\\.]+))","captures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}]}}},"struct_variable_types_fields_multi":{"patterns":[{"begin":"(?:((?:\\w+(?:\\,\\s*\\w+)*)(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:\\s+)(?:[\\[\\]\\*]+)?)(\\bstruct\\b)(?:\\s*)(\\{))","end":"\\}","patterns":[{"include":"#struct_variables_types_fields"},{"include":"$self"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"\\w+"}]},"2":{"name":"keyword.struct.go"},"3":{"name":"punctuation.definition.begin.bracket.curly.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}}},{"begin":"(?:((?:\\w+(?:\\,\\s*\\w+)*)(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:\\s+)(?:[\\[\\]\\*]+)?)(\\binterface\\b)(?:\\s*)(\\{))","end":"\\}","patterns":[{"include":"#interface_variables_types_field"},{"include":"$self"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"\\w+"}]},"2":{"name":"keyword.interface.go"},"3":{"name":"punctuation.definition.begin.bracket.curly.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}}},{"begin":"(?:((?:\\w+(?:\\,\\s*\\w+)*)(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:\\s+)(?:[\\[\\]\\*]+)?)(\\bfunc\\b)(?:\\s*)(\\())","end":"\\)","patterns":[{"include":"#function_param_types"},{"include":"$self"}],"beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"\\w+"}]},"2":{"name":"keyword.function.go"},"3":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}},{"include":"#parameter-variable-types"}]},"struct_variables_types":{"begin":"(\\bstruct\\b)\\s*(\\{)","end":"\\}","patterns":[{"include":"#struct_variables_types_fields"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.struct.go"},"2":{"name":"punctuation.definition.begin.bracket.curly.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}}},"struct_variables_types_fields":{"patterns":[{"include":"#struct_variable_types_fields_multi"},{"match":"(?:(?\u003c=\\{)\\s*((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\w\\.\\*\\[\\]]+))\\s*(?=\\}))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"match":"(?:(?\u003c=\\{)\\s*((?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\w\\.\\*\\[\\]]+))\\s*(?=\\}))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"(?:\\w+)"}]},"2":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"match":"(?:(?\u003c=\\{)((?:\\s*(?:(?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))?(?:(?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\S]+)(?:\\;)?))+)\\s*(?=\\}))","captures":{"1":{"patterns":[{"match":"(?:((?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))?((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\S]+)(?:\\;)?))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"(?:\\w+)"}]},"2":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}}]}}},{"match":"(?:((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?(?:[\\w\\.\\*]+)\\s*)(?:(?=\\`|\\/|\")|$))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},{"match":"(?:((?:(?:\\w+\\,\\s*)+)?(?:\\w+\\s+))([^\\`\"\\/]+))","captures":{"1":{"patterns":[{"include":"#type-declarations"},{"name":"variable.other.property.go","match":"(?:\\w+)"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}}]},"support_functions":{"match":"(?:(?:((?\u003c=\\.)\\b\\w+)|(\\b\\w+))(\\[(?:(?:[\\w\\.\\*\\[\\]\\{\\}\"\\']+)(?:(?:\\,\\s*(?:[\\w\\.\\*\\[\\]\\{\\}]+))*))?\\])?(?=\\())","captures":{"1":{"name":"entity.name.function.support.go"},"2":{"patterns":[{"include":"#type-declarations"},{"name":"invalid.illegal.identifier.go","match":"\\d\\w*"},{"name":"entity.name.function.support.go","match":"\\w+"}]},"3":{"patterns":[{"include":"#type-declarations-without-brackets"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"punctuation.definition.begin.bracket.curly.go","match":"\\{"},{"name":"punctuation.definition.end.bracket.curly.go","match":"\\}"},{"name":"entity.name.type.go","match":"\\w+"}]}}},"switch_select_case_variables":{"match":"(?:(?:^\\s*(\\bcase\\b))(?:\\s+)([\\s\\S]+(?:\\:)\\s*(?:/(?:/|\\*).*)?)$)","captures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"#type-declarations"},{"include":"#support_functions"},{"include":"#variable_assignment"},{"name":"variable.other.go","match":"\\w+"}]}}},"switch_types":{"begin":"(?\u003c=\\bswitch\\b)(?:\\s*)(?:(\\w+\\s*\\:\\=)?\\s*([\\w\\.\\*\\(\\)\\[\\]\\+/\\-\\%\\\u003c\\\u003e\\|\\\u0026]+))(\\.\\(\\btype\\b\\)\\s*)(\\{)","end":"(?:\\})","patterns":[{"match":"(?:^\\s*(\\bcase\\b))(?:\\s+)([\\w\\.\\,\\*\\=\\\u003c\\\u003e\\!\\s]+)(:)(\\s*/(?:/|\\*)\\s*.*)?$","captures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}]},"3":{"name":"punctuation.other.colon.go"},"4":{"patterns":[{"include":"#comments"}]}}},{"begin":"\\bcase\\b","end":"\\:","patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"\\w+"}],"beginCaptures":{"0":{"name":"keyword.control.go"}},"endCaptures":{"0":{"name":"punctuation.other.colon.go"}}},{"include":"$self"}],"beginCaptures":{"1":{"patterns":[{"include":"#operators"},{"name":"variable.other.assignment.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#support_functions"},{"include":"#type-declarations"},{"name":"variable.other.go","match":"\\w+"}]},"3":{"patterns":[{"include":"#delimiters"},{"include":"#brackets"},{"name":"keyword.type.go","match":"\\btype\\b"}]},"4":{"name":"punctuation.definition.begin.bracket.curly.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}}},"syntax_errors":{"patterns":[{"match":"\\[\\](\\s+)","captures":{"1":{"name":"invalid.illegal.slice.go"}}},{"name":"invalid.illegal.numeric.go","match":"\\b0[0-7]*[89]\\d*\\b"}]},"terminators":{"name":"punctuation.terminator.go","match":";"},"type-declarations":{"patterns":[{"include":"#language_constants"},{"include":"#comments"},{"include":"#map_types"},{"include":"#brackets"},{"include":"#delimiters"},{"include":"#keywords"},{"include":"#operators"},{"include":"#runes"},{"include":"#storage_types"},{"include":"#raw_string_literals"},{"include":"#string_literals"},{"include":"#numeric_literals"},{"include":"#terminators"}]},"type-declarations-without-brackets":{"patterns":[{"include":"#language_constants"},{"include":"#comments"},{"include":"#map_types"},{"include":"#delimiters"},{"include":"#keywords"},{"include":"#operators"},{"include":"#runes"},{"include":"#storage_types"},{"include":"#raw_string_literals"},{"include":"#string_literals"},{"include":"#numeric_literals"},{"include":"#terminators"}]},"type_assertion_inline":{"match":"(?:(?\u003c=\\.\\()(?:(\\btype\\b)|((?:(?:\\s*(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+)?[\\w\\.\\[\\]\\*]+))(?=\\)))","captures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations"},{"name":"entity.name.type.go","match":"(?:\\w+)"}]}}},"var_assignment":{"patterns":[{"match":"(?:(?\u003c=\\bvar\\b)(?:\\s*)(\\b[\\w\\.]+(?:\\,\\s*[\\w\\.]+)*)(?:\\s*)((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?!(?:[\\[\\]\\*]+)?\\b(?:struct|func|map)\\b)(?:[\\w\\.\\[\\]\\*]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*)?(?:\\s*)(?:\\=)?)?)","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.other.assignment.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}},{"begin":"(?:(?\u003c=\\bvar\\b)(?:\\s*)(\\())","end":"\\)","patterns":[{"match":"(?:(?:^\\s*)(\\b[\\w\\.]+(?:\\,\\s*[\\w\\.]+)*)(?:\\s*)((?:(?:(?:[\\*\\[\\]]+)?(?:\\\u003c\\-\\s*)?\\bchan\\b(?:\\s*\\\u003c\\-)?\\s*)+(?:\\([^\\)]+\\))?)?(?!(?:[\\[\\]\\*]+)?\\b(?:struct|func|map)\\b)(?:[\\w\\.\\[\\]\\*]+(?:\\,\\s*[\\w\\.\\[\\]\\*]+)*)?(?:\\s*)(?:\\=)?)?)","captures":{"1":{"patterns":[{"include":"#delimiters"},{"name":"variable.other.assignment.go","match":"\\w+"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"name":"punctuation.definition.begin.bracket.round.go","match":"\\("},{"name":"punctuation.definition.end.bracket.round.go","match":"\\)"},{"name":"punctuation.definition.begin.bracket.square.go","match":"\\["},{"name":"punctuation.definition.end.bracket.square.go","match":"\\]"},{"name":"entity.name.type.go","match":"\\w+"}]}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.round.go"}},"endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}}}]},"variable_assignment":{"patterns":[{"match":"\\b\\w+(?:\\,\\s*\\w+)*(?=\\s*:=)","captures":{"0":{"patterns":[{"include":"#delimiters"},{"name":"invalid.illegal.identifier.go","match":"\\d\\w*"},{"name":"variable.other.assignment.go","match":"\\w+"}]}}},{"match":"\\b[\\w\\.\\*]+(?:\\,\\s*[\\w\\.\\*]+)*(?=\\s*=(?!=))","captures":{"0":{"patterns":[{"include":"#delimiters"},{"include":"#operators"},{"name":"invalid.illegal.identifier.go","match":"\\d\\w*"},{"name":"variable.other.assignment.go","match":"\\w+"}]}}}]}}}
@@ -1 +1 @@
1
- {"name":"GraphQL","scopeName":"source.graphql","patterns":[{"include":"#graphql"}],"repository":{"graphql":{"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-fragment-definition"},{"include":"#graphql-directive-definition"},{"include":"#graphql-type-interface"},{"include":"#graphql-enum"},{"include":"#graphql-scalar"},{"include":"#graphql-union"},{"include":"#graphql-schema"},{"include":"#graphql-operation-def"},{"include":"#literal-quasi-embedded"}]},"graphql-ampersand":{"match":"\\s*(\u0026)","captures":{"1":{"name":"keyword.operator.logical.graphql"}}},"graphql-arguments":{"name":"meta.arguments.graphql","begin":"\\s*(\\()","end":"\\s*(\\))","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"begin":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\s*(:))","end":"(?=\\s*(?:(?:([_A-Za-z][_0-9A-Za-z]*)\\s*(:))|\\)))|\\s*(,)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-value"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"variable.parameter.graphql"},"2":{"name":"punctuation.colon.graphql"}},"endCaptures":{"3":{"name":"punctuation.comma.graphql"}}},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"meta.brace.round.directive.graphql"}},"endCaptures":{"1":{"name":"meta.brace.round.directive.graphql"}}},"graphql-boolean-value":{"match":"\\s*\\b(true|false)\\b","captures":{"1":{"name":"constant.language.boolean.graphql"}}},"graphql-colon":{"match":"\\s*(:)","captures":{"1":{"name":"punctuation.colon.graphql"}}},"graphql-comma":{"match":"\\s*(,)","captures":{"1":{"name":"punctuation.comma.graphql"}}},"graphql-comment":{"patterns":[{"name":"comment.line.graphql.js","match":"(\\s*)(#).*","captures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}}},{"name":"comment.line.graphql.js","begin":"(\"\"\")","end":"(\"\"\")","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}}},{"name":"comment.line.graphql.js","begin":"(\")","end":"(\")","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}}}]},"graphql-description-docstring":{"name":"comment.block.graphql","begin":"\"\"\"","end":"\"\"\""},"graphql-description-singleline":{"name":"comment.line.number-sign.graphql","match":"#(?=([^\"]*\"[^\"]*\")*[^\"]*$).*$"},"graphql-directive":{"begin":"\\s*((@)\\s*([_A-Za-z][_0-9A-Za-z]*))","end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-arguments"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"entity.name.function.directive.graphql"}},"applyEndPatternLast":true},"graphql-directive-definition":{"begin":"\\s*(\\bdirective\\b)\\s*(@[_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-variable-definitions"},{"begin":"\\s*(\\brepeatable\\b)?\\s*(\\bon\\b)\\s*([_A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-skip-newlines"},{"include":"#graphql-comment"},{"include":"#literal-quasi-embedded"},{"match":"\\s*(\\|)\\s*([_A-Za-z]*)","captures":{"2":{"name":"support.type.location.graphql"}}}],"beginCaptures":{"1":{"name":"keyword.repeatable.graphql"},"2":{"name":"keyword.on.graphql"},"3":{"name":"support.type.location.graphql"}},"applyEndPatternLast":true},{"include":"#graphql-skip-newlines"},{"include":"#graphql-comment"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"keyword.directive.graphql"},"2":{"name":"entity.name.function.directive.graphql"},"3":{"name":"keyword.repeatable.graphql"},"4":{"name":"keyword.on.graphql"},"5":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-enum":{"name":"meta.enum.graphql","begin":"\\s*+\\b(enum)\\b\\s*([_A-Za-z][_0-9A-Za-z]*)","end":"(?\u003c=})","patterns":[{"name":"meta.type.object.graphql","begin":"\\s*({)","end":"\\s*(})","patterns":[{"include":"#graphql-object-type"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-enum-value"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"}],"beginCaptures":{"1":{"name":"keyword.enum.graphql"},"2":{"name":"support.type.enum.graphql"}}},"graphql-enum-value":{"name":"constant.character.enum.graphql","match":"\\s*(?!=\\b(true|false|null)\\b)([_A-Za-z][_0-9A-Za-z]*)"},"graphql-field":{"patterns":[{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)\\s*(:)","captures":{"1":{"name":"string.unquoted.alias.graphql"},"2":{"name":"punctuation.colon.graphql"}}},{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"variable.graphql"}}},{"include":"#graphql-arguments"},{"include":"#graphql-directive"},{"include":"#graphql-selection-set"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}]},"graphql-float-value":{"match":"\\s*(-?(0|[1-9][0-9]*)(\\.[0-9]+)?((e|E)(\\+|-)?[0-9]+)?)","captures":{"1":{"name":"constant.numeric.float.graphql"}}},"graphql-fragment-definition":{"name":"meta.fragment.graphql","begin":"\\s*(?:(\\bfragment\\b)\\s*([_A-Za-z][_0-9A-Za-z]*)?)","end":"(?\u003c=})","patterns":[{"match":"\\s*(?:(\\bon\\b)\\s*([_A-Za-z][_0-9A-Za-z]*))","captures":{"1":{"name":"keyword.on.graphql"},"2":{"name":"support.type.graphql"}}},{"include":"#graphql-variable-definitions"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"keyword.fragment.graphql"},"2":{"name":"entity.name.fragment.graphql"}}},"graphql-fragment-spread":{"begin":"\\s*(\\.\\.\\.)\\s*(?!\\bon\\b)([_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-arguments"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}],"captures":{"1":{"name":"keyword.operator.spread.graphql"},"2":{"name":"variable.fragment.graphql"}},"applyEndPatternLast":true},"graphql-ignore-spaces":{"match":"\\s*"},"graphql-inline-fragment":{"begin":"\\s*(\\.\\.\\.)\\s*(?:(\\bon\\b)\\s*([_A-Za-z][_0-9A-Za-z]*))?","end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"keyword.operator.spread.graphql"},"2":{"name":"keyword.on.graphql"},"3":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-input-types":{"patterns":[{"include":"#graphql-scalar-type"},{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\s*(!))?","captures":{"1":{"name":"support.type.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}}},{"name":"meta.type.list.graphql","begin":"\\s*(\\[)","end":"\\s*(\\])(?:\\s*(!))?","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-input-types"},{"include":"#graphql-comma"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"meta.brace.square.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}}}]},"graphql-list-value":{"patterns":[{"name":"meta.listvalues.graphql","begin":"\\s*+(\\[)","end":"\\s*(\\])","patterns":[{"include":"#graphql-value"}],"beginCaptures":{"1":{"name":"meta.brace.square.graphql"}},"endCaptures":{"1":{"name":"meta.brace.square.graphql"}}}]},"graphql-name":{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"entity.name.function.graphql"}}},"graphql-null-value":{"match":"\\s*\\b(null)\\b","captures":{"1":{"name":"constant.language.null.graphql"}}},"graphql-object-field":{"match":"\\s*(([_A-Za-z][_0-9A-Za-z]*))\\s*(:)","captures":{"1":{"name":"constant.object.key.graphql"},"2":{"name":"string.unquoted.graphql"},"3":{"name":"punctuation.graphql"}}},"graphql-object-value":{"patterns":[{"name":"meta.objectvalues.graphql","begin":"\\s*+({)","end":"\\s*(})","patterns":[{"include":"#graphql-object-field"},{"include":"#graphql-value"}],"beginCaptures":{"1":{"name":"meta.brace.curly.graphql"}},"endCaptures":{"1":{"name":"meta.brace.curly.graphql"}}}]},"graphql-operation-def":{"patterns":[{"include":"#graphql-query-mutation"},{"include":"#graphql-name"},{"include":"#graphql-variable-definitions"},{"include":"#graphql-directive"},{"include":"#graphql-selection-set"}]},"graphql-query-mutation":{"match":"\\s*\\b(query|mutation)\\b","captures":{"1":{"name":"keyword.operation.graphql"}}},"graphql-scalar":{"match":"\\s*\\b(scalar)\\b\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"keyword.scalar.graphql"},"2":{"name":"entity.scalar.graphql"}}},"graphql-scalar-type":{"match":"\\s*\\b(Int|Float|String|Boolean|ID)\\b(?:\\s*(!))?","captures":{"1":{"name":"support.type.builtin.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}}},"graphql-schema":{"begin":"\\s*\\b(schema)\\b","end":"(?\u003c=})","patterns":[{"begin":"\\s*({)","end":"\\s*(})","patterns":[{"begin":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\s*\\(|:)","end":"(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(})))|\\s*(,)","patterns":[{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"support.type.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-colon"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"variable.arguments.graphql"}},"endCaptures":{"5":{"name":"punctuation.comma.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"keyword.schema.graphql"}}},"graphql-selection-set":{"name":"meta.selectionset.graphql","begin":"\\s*({)","end":"\\s*(})","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-field"},{"include":"#graphql-fragment-spread"},{"include":"#graphql-inline-fragment"},{"include":"#graphql-comma"},{"include":"#native-interpolation"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},"graphql-skip-newlines":{"match":"\\s*\n"},"graphql-string-content":{"patterns":[{"name":"constant.character.escape.graphql","match":"\\\\[/'\"\\\\nrtbf]"},{"name":"constant.character.escape.graphql","match":"\\\\u([0-9a-fA-F]{4})"}]},"graphql-string-value":{"contentName":"string.quoted.double.graphql","begin":"\\s*+((\"))","end":"\\s*+(?:((\"))|(\n))","patterns":[{"include":"#graphql-string-content"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"string.quoted.double.graphql"},"2":{"name":"punctuation.definition.string.begin.graphql"}},"endCaptures":{"1":{"name":"string.quoted.double.graphql"},"2":{"name":"punctuation.definition.string.end.graphql"},"3":{"name":"invalid.illegal.newline.graphql"}}},"graphql-type-definition":{"begin":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\s*\\(|:)","end":"(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(})))|\\s*(,)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-variable-definitions"},{"include":"#graphql-type-object"},{"include":"#graphql-colon"},{"include":"#graphql-input-types"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"variable.graphql"}},"endCaptures":{"5":{"name":"punctuation.comma.graphql"}}},"graphql-type-interface":{"name":"meta.type.interface.graphql","begin":"\\s*\\b(?:(extends?)?\\b\\s*\\b(type)|(interface)|(input))\\b\\s*([_A-Za-z][_0-9A-Za-z]*)?","end":"(?=.)","patterns":[{"begin":"\\s*\\b(implements)\\b\\s*","end":"\\s*(?={)","patterns":[{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"support.type.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-ampersand"},{"include":"#graphql-comma"}],"beginCaptures":{"1":{"name":"keyword.implements.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-type-object"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-ignore-spaces"}],"captures":{"1":{"name":"keyword.type.graphql"},"2":{"name":"keyword.type.graphql"},"3":{"name":"keyword.interface.graphql"},"4":{"name":"keyword.input.graphql"},"5":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-type-object":{"name":"meta.type.object.graphql","begin":"\\s*({)","end":"\\s*(})","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-object-type"},{"include":"#graphql-type-definition"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},"graphql-union":{"begin":"\\s*\\b(union)\\b\\s*([_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"begin":"\\s*(=)\\s*([_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"},{"match":"\\s*(\\|)\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"punctuation.or.graphql"},"2":{"name":"support.type.graphql"}}}],"captures":{"1":{"name":"punctuation.assignment.graphql"},"2":{"name":"support.type.graphql"}},"applyEndPatternLast":true},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"keyword.union.graphql"},"2":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-union-mark":{"match":"\\s*(\\|)","captures":{"1":{"name":"punctuation.union.graphql"}}},"graphql-value":{"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-variable-name"},{"include":"#graphql-float-value"},{"include":"#graphql-string-value"},{"include":"#graphql-boolean-value"},{"include":"#graphql-null-value"},{"include":"#graphql-enum-value"},{"include":"#graphql-list-value"},{"include":"#graphql-object-value"},{"include":"#literal-quasi-embedded"}]},"graphql-variable-assignment":{"begin":"\\s(=)","end":"(?=[\n,)])","patterns":[{"include":"#graphql-value"}],"beginCaptures":{"1":{"name":"punctuation.assignment.graphql"}},"applyEndPatternLast":true},"graphql-variable-definition":{"name":"meta.variables.graphql","begin":"\\s*(\\$?[_A-Za-z][_0-9A-Za-z]*)(?=\\s*\\(|:)","end":"(?=\\s*((\\$?[_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(}|\\))))|\\s*(,)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-colon"},{"include":"#graphql-input-types"},{"include":"#graphql-variable-assignment"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"variable.parameter.graphql"}},"endCaptures":{"5":{"name":"punctuation.comma.graphql"}}},"graphql-variable-definitions":{"begin":"\\s*(\\()","end":"\\s*(\\))","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-variable-definition"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"meta.brace.round.graphql"}}},"graphql-variable-name":{"match":"\\s*(\\$[_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"variable.graphql"}}},"native-interpolation":{"name":"native.interpolation","begin":"\\s*(\\${)","end":"(})","patterns":[{"include":"source.js"},{"include":"source.ts"},{},{"include":"source.tsx"}],"beginCaptures":{"1":{"name":"keyword.other.substitution.begin"}},"endCaptures":{"1":{"name":"keyword.other.substitution.end"}}}}}
1
+ {"name":"GraphQL","scopeName":"source.graphql","patterns":[{"include":"#graphql"}],"repository":{"graphql":{"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-string"},{"include":"#graphql-description-singleline"},{"include":"#graphql-fragment-definition"},{"include":"#graphql-directive-definition"},{"include":"#graphql-type-interface"},{"include":"#graphql-enum"},{"include":"#graphql-scalar"},{"include":"#graphql-union"},{"include":"#graphql-schema"},{"include":"#graphql-operation-def"},{"include":"#literal-quasi-embedded"}]},"graphql-ampersand":{"match":"\\s*(\u0026)","captures":{"1":{"name":"keyword.operator.logical.graphql"}}},"graphql-arguments":{"name":"meta.arguments.graphql","begin":"\\s*(\\()","end":"\\s*(\\))","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"begin":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\s*(:))","end":"(?=\\s*(?:(?:([_A-Za-z][_0-9A-Za-z]*)\\s*(:))|\\)))|\\s*(,)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-value"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"variable.parameter.graphql"},"2":{"name":"punctuation.colon.graphql"}},"endCaptures":{"3":{"name":"punctuation.comma.graphql"}}},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"meta.brace.round.directive.graphql"}},"endCaptures":{"1":{"name":"meta.brace.round.directive.graphql"}}},"graphql-block-string-value":{"contentName":"string.quoted.triple.graphql","begin":"\\s*+((\"\"\"))","end":"((\"\"\"))","patterns":[{"name":"constant.character.escape.graphql","match":"\\\\\"\"\""},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"string.quoted.triple.graphql"},"2":{"name":"punctuation.definition.string.begin.graphql"}},"endCaptures":{"1":{"name":"string.quoted.triple.graphql"},"2":{"name":"punctuation.definition.string.end.graphql"}}},"graphql-boolean-value":{"match":"\\s*\\b(true|false)\\b","captures":{"1":{"name":"constant.language.boolean.graphql"}}},"graphql-colon":{"match":"\\s*(:)","captures":{"1":{"name":"punctuation.colon.graphql"}}},"graphql-comma":{"match":"\\s*(,)","captures":{"1":{"name":"punctuation.comma.graphql"}}},"graphql-comment":{"patterns":[{"name":"comment.line.graphql.js","match":"(\\s*)(#).*","captures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}}}]},"graphql-description-docstring":{"name":"comment.block.documentation.graphql","begin":"\"\"\"","end":"\"\"\""},"graphql-description-singleline":{"name":"comment.line.number-sign.graphql","match":"#(?=([^\"]*\"[^\"]*\")*[^\"]*$).*$"},"graphql-description-string":{"name":"comment.line.documentation.graphql","begin":"(\")","end":"(\")","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}}},"graphql-directive":{"begin":"\\s*((@)\\s*([_A-Za-z][_0-9A-Za-z]*))","end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-arguments"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"entity.name.function.directive.graphql"}},"applyEndPatternLast":true},"graphql-directive-definition":{"begin":"\\s*(\\bdirective\\b)\\s*(@[_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-variable-definitions"},{"begin":"\\s*(\\brepeatable\\b)?\\s*(\\bon\\b)\\s*([_A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-skip-newlines"},{"include":"#graphql-comment"},{"include":"#literal-quasi-embedded"},{"match":"\\s*(\\|)\\s*([_A-Za-z]*)","captures":{"2":{"name":"support.type.location.graphql"}}}],"beginCaptures":{"1":{"name":"keyword.repeatable.graphql"},"2":{"name":"keyword.on.graphql"},"3":{"name":"support.type.location.graphql"}},"applyEndPatternLast":true},{"include":"#graphql-skip-newlines"},{"include":"#graphql-comment"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"keyword.directive.graphql"},"2":{"name":"entity.name.function.directive.graphql"},"3":{"name":"keyword.repeatable.graphql"},"4":{"name":"keyword.on.graphql"},"5":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-enum":{"name":"meta.enum.graphql","begin":"\\s*+\\b(enum)\\b\\s*([_A-Za-z][_0-9A-Za-z]*)","end":"(?\u003c=})","patterns":[{"name":"meta.type.object.graphql","begin":"\\s*({)","end":"\\s*(})","patterns":[{"include":"#graphql-object-type"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-string"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-enum-value"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"}],"beginCaptures":{"1":{"name":"keyword.enum.graphql"},"2":{"name":"support.type.enum.graphql"}}},"graphql-enum-value":{"name":"constant.character.enum.graphql","match":"\\s*(?!=\\b(true|false|null)\\b)([_A-Za-z][_0-9A-Za-z]*)"},"graphql-field":{"patterns":[{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)\\s*(:)","captures":{"1":{"name":"string.unquoted.alias.graphql"},"2":{"name":"punctuation.colon.graphql"}}},{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"variable.graphql"}}},{"include":"#graphql-arguments"},{"include":"#graphql-directive"},{"include":"#graphql-selection-set"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}]},"graphql-float-value":{"match":"\\s*(-?(0|[1-9][0-9]*)(\\.[0-9]+)?((e|E)(\\+|-)?[0-9]+)?)","captures":{"1":{"name":"constant.numeric.float.graphql"}}},"graphql-fragment-definition":{"name":"meta.fragment.graphql","begin":"\\s*(?:(\\bfragment\\b)\\s*([_A-Za-z][_0-9A-Za-z]*)?)","end":"(?\u003c=})","patterns":[{"match":"\\s*(?:(\\bon\\b)\\s*([_A-Za-z][_0-9A-Za-z]*))","captures":{"1":{"name":"keyword.on.graphql"},"2":{"name":"support.type.graphql"}}},{"include":"#graphql-variable-definitions"},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"keyword.fragment.graphql"},"2":{"name":"entity.name.fragment.graphql"}}},"graphql-fragment-spread":{"begin":"\\s*(\\.\\.\\.)\\s*(?!\\bon\\b)([_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-arguments"},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}],"captures":{"1":{"name":"keyword.operator.spread.graphql"},"2":{"name":"variable.fragment.graphql"}},"applyEndPatternLast":true},"graphql-ignore-spaces":{"match":"\\s*"},"graphql-inline-fragment":{"begin":"\\s*(\\.\\.\\.)\\s*(?:(\\bon\\b)\\s*([_A-Za-z][_0-9A-Za-z]*))?","end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"keyword.operator.spread.graphql"},"2":{"name":"keyword.on.graphql"},"3":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-input-types":{"patterns":[{"include":"#graphql-scalar-type"},{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\s*(!))?","captures":{"1":{"name":"support.type.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}}},{"name":"meta.type.list.graphql","begin":"\\s*(\\[)","end":"\\s*(\\])(?:\\s*(!))?","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-input-types"},{"include":"#graphql-comma"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"meta.brace.square.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}}}]},"graphql-list-value":{"patterns":[{"name":"meta.listvalues.graphql","begin":"\\s*+(\\[)","end":"\\s*(\\])","patterns":[{"include":"#graphql-value"}],"beginCaptures":{"1":{"name":"meta.brace.square.graphql"}},"endCaptures":{"1":{"name":"meta.brace.square.graphql"}}}]},"graphql-name":{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"entity.name.function.graphql"}}},"graphql-null-value":{"match":"\\s*\\b(null)\\b","captures":{"1":{"name":"constant.language.null.graphql"}}},"graphql-object-field":{"match":"\\s*(([_A-Za-z][_0-9A-Za-z]*))\\s*(:)","captures":{"1":{"name":"constant.object.key.graphql"},"2":{"name":"string.unquoted.graphql"},"3":{"name":"punctuation.graphql"}}},"graphql-object-value":{"patterns":[{"name":"meta.objectvalues.graphql","begin":"\\s*+({)","end":"\\s*(})","patterns":[{"include":"#graphql-object-field"},{"include":"#graphql-value"}],"beginCaptures":{"1":{"name":"meta.brace.curly.graphql"}},"endCaptures":{"1":{"name":"meta.brace.curly.graphql"}}}]},"graphql-operation-def":{"patterns":[{"include":"#graphql-query-mutation-subscription"},{"include":"#graphql-name"},{"include":"#graphql-variable-definitions"},{"include":"#graphql-directive"},{"include":"#graphql-selection-set"}]},"graphql-query-mutation-subscription":{"match":"\\s*\\b(query|mutation|subscription)\\b","captures":{"1":{"name":"keyword.operation.graphql"}}},"graphql-scalar":{"match":"\\s*\\b(scalar)\\b\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"keyword.scalar.graphql"},"2":{"name":"entity.scalar.graphql"}}},"graphql-scalar-type":{"match":"\\s*\\b(Int|Float|String|Boolean|ID)\\b(?:\\s*(!))?","captures":{"1":{"name":"support.type.builtin.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}}},"graphql-schema":{"begin":"\\s*\\b(schema)\\b","end":"(?\u003c=})","patterns":[{"begin":"\\s*({)","end":"\\s*(})","patterns":[{"begin":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\s*\\(|:)","end":"(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(})))|\\s*(,)","patterns":[{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"support.type.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-colon"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"variable.arguments.graphql"}},"endCaptures":{"5":{"name":"punctuation.comma.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"keyword.schema.graphql"}}},"graphql-selection-set":{"name":"meta.selectionset.graphql","begin":"\\s*({)","end":"\\s*(})","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-field"},{"include":"#graphql-fragment-spread"},{"include":"#graphql-inline-fragment"},{"include":"#graphql-comma"},{"include":"#native-interpolation"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},"graphql-skip-newlines":{"match":"\\s*\n"},"graphql-string-content":{"patterns":[{"name":"constant.character.escape.graphql","match":"\\\\[/'\"\\\\nrtbf]"},{"name":"constant.character.escape.graphql","match":"\\\\u([0-9a-fA-F]{4})"}]},"graphql-string-value":{"contentName":"string.quoted.double.graphql","begin":"\\s*+((\"))","end":"\\s*+(?:((\"))|(\n))","patterns":[{"include":"#graphql-string-content"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"string.quoted.double.graphql"},"2":{"name":"punctuation.definition.string.begin.graphql"}},"endCaptures":{"1":{"name":"string.quoted.double.graphql"},"2":{"name":"punctuation.definition.string.end.graphql"},"3":{"name":"invalid.illegal.newline.graphql"}}},"graphql-type-definition":{"begin":"\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\s*\\(|:)","end":"(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(})))|\\s*(,)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-variable-definitions"},{"include":"#graphql-type-object"},{"include":"#graphql-colon"},{"include":"#graphql-input-types"},{"include":"#graphql-variable-assignment"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"variable.graphql"}},"endCaptures":{"5":{"name":"punctuation.comma.graphql"}}},"graphql-type-interface":{"name":"meta.type.interface.graphql","begin":"\\s*\\b(?:(extends?)?\\b\\s*\\b(type)|(interface)|(input))\\b\\s*([_A-Za-z][_0-9A-Za-z]*)?","end":"(?=.)","patterns":[{"begin":"\\s*\\b(implements)\\b\\s*","end":"\\s*(?={)","patterns":[{"match":"\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"support.type.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-ampersand"},{"include":"#graphql-comma"}],"beginCaptures":{"1":{"name":"keyword.implements.graphql"}}},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-type-object"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-ignore-spaces"}],"captures":{"1":{"name":"keyword.type.graphql"},"2":{"name":"keyword.type.graphql"},"3":{"name":"keyword.interface.graphql"},"4":{"name":"keyword.input.graphql"},"5":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-type-object":{"name":"meta.type.object.graphql","begin":"\\s*({)","end":"\\s*(})","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-string"},{"include":"#graphql-description-singleline"},{"include":"#graphql-object-type"},{"include":"#graphql-type-definition"},{"include":"#literal-quasi-embedded"}],"beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"endCaptures":{"1":{"name":"punctuation.operation.graphql"}}},"graphql-union":{"begin":"\\s*\\b(union)\\b\\s*([_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"begin":"\\s*(=)\\s*([_A-Za-z][_0-9A-Za-z]*)","end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"},{"match":"\\s*(\\|)\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"punctuation.or.graphql"},"2":{"name":"support.type.graphql"}}}],"captures":{"1":{"name":"punctuation.assignment.graphql"},"2":{"name":"support.type.graphql"}},"applyEndPatternLast":true},{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"keyword.union.graphql"},"2":{"name":"support.type.graphql"}},"applyEndPatternLast":true},"graphql-union-mark":{"match":"\\s*(\\|)","captures":{"1":{"name":"punctuation.union.graphql"}}},"graphql-value":{"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-variable-name"},{"include":"#graphql-float-value"},{"include":"#graphql-string-value"},{"include":"#graphql-boolean-value"},{"include":"#graphql-null-value"},{"include":"#graphql-enum-value"},{"include":"#graphql-list-value"},{"include":"#graphql-object-value"},{"include":"#literal-quasi-embedded"}]},"graphql-variable-assignment":{"begin":"\\s(=)","end":"(?=[\n,)])","patterns":[{"include":"#graphql-value"}],"beginCaptures":{"1":{"name":"punctuation.assignment.graphql"}},"applyEndPatternLast":true},"graphql-variable-definition":{"name":"meta.variables.graphql","begin":"\\s*(\\$?[_A-Za-z][_0-9A-Za-z]*)(?=\\s*\\(|:)","end":"(?=\\s*((\\$?[_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(}|\\))))|\\s*(,)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-block-string-value"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-colon"},{"include":"#graphql-input-types"},{"include":"#graphql-variable-assignment"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}],"beginCaptures":{"1":{"name":"variable.parameter.graphql"}},"endCaptures":{"5":{"name":"punctuation.comma.graphql"}}},"graphql-variable-definitions":{"begin":"\\s*(\\()","end":"\\s*(\\))","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-string"},{"include":"#graphql-description-singleline"},{"include":"#graphql-variable-definition"},{"include":"#literal-quasi-embedded"}],"captures":{"1":{"name":"meta.brace.round.graphql"}}},"graphql-variable-name":{"match":"\\s*(\\$[_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"variable.graphql"}}},"native-interpolation":{"name":"native.interpolation","begin":"\\s*(\\${)","end":"(})","patterns":[{"include":"source.js"},{"include":"source.ts"},{},{"include":"source.tsx"}],"beginCaptures":{"1":{"name":"keyword.other.substitution.begin"}},"endCaptures":{"1":{"name":"keyword.other.substitution.end"}}}}}
@@ -0,0 +1 @@
1
+ {"name":"GtkRC","scopeName":"source.gtkrc","patterns":[{"include":"#main"}],"repository":{"attachment":{"name":"meta.attachment.gtkrc","begin":"^\\s*(class|widget_class|widget)(?=$|\\s)","end":"$","patterns":[{"begin":"\\G\\s+(?=\"|')","end":"(?!\\G)","patterns":[{"include":"#widgetPath"}]},{"begin":"(?\u003c=\\s|^)(style|binding)(?=$|\\s)","end":"(\"[^\"]*\"|'[^']*')|(?=\\s*(?:$|#))","patterns":[{"name":"meta.priority.gtkrc","match":"\\G\\s*(:)\\s*(application|gtk|highest|lowest|rc|theme)(?=$|\\s)","captures":{"1":{"patterns":[{"include":"etc#kolon"}]},"2":{"name":"storage.modifier.priority.gtkrc"}}}],"beginCaptures":{"1":{"name":"keyword.operator.$1.gtkrc"}},"endCaptures":{"1":{"patterns":[{"include":"#styleName"}]}}},{"include":"etc#comment"}],"beginCaptures":{"1":{"name":"storage.type.subject.gtkrc"}}},"binding":{"patterns":[{"name":"meta.binding.gtkrc","begin":"(?\u003c=\\s|^|\\G)(bind)(?=$|\\s)","end":"(?\u003c=})","patterns":[{"begin":"\\G\\s*(?=\"|')","end":"(?!\\G)","patterns":[{"include":"#bindingKey"}]},{"name":"meta.block.gtkrc","begin":"{","end":"}","patterns":[{"include":"#bindingAction"},{"include":"etc#comment"}],"captures":{"0":{"patterns":[{"include":"#brackets"}]}}},{"include":"etc#comment"}],"beginCaptures":{"1":{"name":"storage.type.bind.gtkrc"}}},{"name":"meta.unbinding.gtkrc","begin":"(?\u003c=\\s|^|\\G)(unbind)(?=$|\\s)","end":"\\s*(\"[^\"]*\"|'[^']*')|(?=\\s*(?:$|#))","beginCaptures":{"1":{"name":"storage.type.unbind.gtkrc"}},"endCaptures":{"1":{"patterns":[{"include":"#bindingKey"}]}}}]},"bindingAction":{"name":"meta.action.signal.gtkrc","begin":"(\"|')(?!\\d)\\w+(?:[-_]\\w+)*(\\1)(?=$|\\s)","end":"(?\u003c=\\))|(?=\\s*})","patterns":[{"name":"meta.parameters.gtkrc","begin":"(\\()","end":"(\\))","patterns":[{"include":"#miscValues"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.begin.bracket.round.gtkrc"},"1":{"name":"brackethighlighter.round"}},"endCaptures":{"0":{"name":"punctuation.definition.list.end.bracket.round.gtkrc"},"1":{"name":"brackethighlighter.round"}}}],"beginCaptures":{"0":{"name":"entity.name.signal.gtkrc"},"1":{"name":"punctuation.definition.signal.begin.gtkrc"},"2":{"name":"punctuation.definition.signal.end.gtkrc"}}},"bindingBlock":{"name":"meta.binding-set.gtkrc","begin":"^\\s*(binding)(?=$|\\s)","end":"(?\u003c=})","patterns":[{"begin":"\\G\\s*(?=\"|')","end":"(?!\\G)","patterns":[{"include":"#styleName"}]},{"name":"meta.block.gtkrc","begin":"{","end":"}","patterns":[{"include":"#binding"},{"include":"etc#comment"}],"captures":{"0":{"patterns":[{"include":"#brackets"}]}}}],"beginCaptures":{"1":{"name":"storage.type.subject.gtkrc"}}},"bindingKey":{"name":"constant.other.keybinding.gtkrc","begin":"(\"|')","end":"\\1","patterns":[{"name":"keyword.operator.modifier.${2:/downcase}.gtkrc","match":"(?i)(\u003c)(alt|control|ctl|hyper|meta|mod[1-5]|release|shi?ft|super)(\u003e)","captures":{"1":{"name":"punctuation.definition.begin.modifier.gtkrc"},"3":{"name":"punctuation.definition.end.modifier.gtkrc"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.keybinding.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.keybinding.end.gtkrc"}}},"brackets":{"patterns":[{"name":"punctuation.section.block.begin.bracket.curly.gtkrc","match":"{","captures":{"0":{"name":"brackethighlighter.curly"}}},{"name":"punctuation.section.block.end.bracket.curly.gtkrc","match":"}","captures":{"0":{"name":"brackethighlighter.curly"}}}]},"classProperty":{"name":"meta.property.gtkrc","begin":"(?\u003c=\\s|^|\\G)\\s*((?!\\d)[-\\w]+)\\s*((::))\\s*((?!\\d)[-\\w]+)\\s*(=)[ \\t]*","end":"$|(?=\\s*#)","patterns":[{"include":"#miscValues"}],"beginCaptures":{"1":{"name":"entity.name.tag.class.gtkrc"},"2":{"name":"punctuation.separator.double-colon.gtkrc"},"3":{"name":"meta.separator.gtkrc"},"4":{"name":"support.variable.property.gtkrc"},"5":{"patterns":[{"include":"etc#eql"}]}}},"colourDef":{"name":"meta.definition.colour.gtkrc","begin":"(?\u003c=\\s|^|\\G)(color)((\\[))\\s*(\"[^\"]*\"|'[^']*')\\s*((\\]))\\s*(=)[ \\t]*","end":"(?=\\s*(?:$|#))","patterns":[{"include":"#colourValue"}],"beginCaptures":{"1":{"name":"storage.type.colour.gtkrc"},"2":{"name":"punctuation.definition.colour.begin.gtkrc"},"3":{"name":"brackethighlighter.square"},"4":{"patterns":[{"include":"#styleName"}]},"5":{"name":"punctuation.definition.colour.end.gtkrc"},"6":{"name":"brackethighlighter.square"},"7":{"patterns":[{"include":"etc#eql"}]}}},"colourRef":{"name":"variable.colour-name.gtkrc","match":"(?:\\G|(?\u003c=,)\\s*)(@)\\w+","captures":{"1":{"name":"punctuation.definition.colour-name.gtkrc"}}},"colourValue":{"patterns":[{"include":"#colourRef"},{"match":"(?i)(?:\\G|(?\u003c=,)\\s*)((\"|')(#)([0-9A-F]{12}|[0-9A-F]{9}|[0-9A-F]{6}|[0-9A-F]{3})(\\2))","captures":{"1":{"name":"string.quoted.colour-value.gtkrc"},"2":{"name":"punctuation.definition.colour-value.begin.gtkrc"},"3":{"name":"punctuation.definition.constant.gtkrc"},"4":{"name":"constant.other.colour.rgb-value.hex.gtkrc"},"5":{"name":"punctuation.definition.colour-value.end.gtkrc"}}},{"name":"meta.triplet.colour-value.gtkrc","begin":"(?:\\G|(?\u003c=,)\\s*)({)","end":"(})","patterns":[{"include":"etc#num"},{"include":"etc#comma"}],"captures":{"1":{"patterns":[{"include":"#brackets"}]}}},{"name":"meta.function.colour.$1.gtkrc","begin":"(?:\\G|(?\u003c=,)\\s*)(mix|shade|lighter|darker)\\s*(?=\\()","end":"(?!\\G)","patterns":[{"name":"meta.parameters.gtkrc","begin":"\\G(\\()","end":"(\\))","patterns":[{"include":"etc#num"},{"include":"etc#comma"},{"include":"#colourValue"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.begin.bracket.round.gtkrc"},"1":{"name":"brackethighlighter.round"}},"endCaptures":{"0":{"name":"punctuation.definition.list.end.bracket.round.gtkrc"},"1":{"name":"brackethighlighter.round"}}}],"beginCaptures":{"1":{"name":"keyword.other.function.expression.gtkrc"}}}]},"engine":{"name":"meta.definition.engine.${4:/downcase}.gtkrc","begin":"(?\u003c=\\s|^|\\G)(engine)\\s*((\"|')((?:(?!\\3).)++)(\\3))","end":"(?\u003c=})","patterns":[{"name":"meta.block.engine-config.gtkrc","begin":"{","end":"}","patterns":[{"include":"#engineInnards"}],"captures":{"0":{"patterns":[{"include":"#brackets"}]}}},{"include":"etc#comment"}],"beginCaptures":{"1":{"name":"storage.type.colour.gtkrc"},"2":{"name":"entity.name.engine.gtkrc"},"3":{"name":"punctuation.definition.engine.begin.gtkrc"},"5":{"name":"punctuation.definition.engine.end.gtkrc"}}},"engineInnards":{"patterns":[{"include":"#engineNestedBlock"},{"include":"#style"},{"include":"#styleCustom"},{"include":"#setting"},{"include":"etc#comment"},{"match":"^\\s*(image|boxfill)(?=\\s*(?:$|#))","captures":{"1":{"name":"storage.type.block.label.gtkrc"}}}]},"engineKnown":{"name":"entity.name.engine.known.gtkrc","match":"(?xi)(?\u003c!-)\\b (adwaita|anachron|aurora|bluecurve|blueprint|candido|carbon-gtk|cleanice |clean|clearlooks|crux-engine|crux|default-theme|dwerg|dyndyn|engradient |equinox|excelsior|experience|galaxy|gflat|glide|hcengine|hc|ia_ora|industrial |lighthouseblue|lua|macstyle|maigre|metal|mgicchikn|mist|moblin-netbook-engine |moblin|moko-engine|murrine|nimbus|nodoka|notif|oxygen-gtk|pixbuf|pixmap |qt4engine|qtcurve|quartz|raleigh|redmond95|redmond|rezlooks|sapwood|smooth |step|sugar|svg|thinice|ubuntulooks|uebergau|vyatta|whistler|wimp|wonderland |xamarin|xeno|xfce)\\b(?!-)"},"engineNestedBlock":{"name":"meta.block.${1:/downcase}.gtkrc","begin":"(?\u003c=\\s|^|\\G)(?:((?!\\d)\\w+(?:[-_]\\w+)*+))?\\s*({)","end":"}","patterns":[{"include":"#engineInnards"}],"beginCaptures":{"1":{"name":"storage.type.block.label.gtkrc"},"2":{"patterns":[{"include":"#brackets"}]}},"endCaptures":{"0":{"patterns":[{"include":"#brackets"}]}}},"include":{"begin":"(?\u003c=\\s|^|\\G)(include)(?=$|\\s|\"|')","end":"\\s*(?:(\"[^\"]*\")|('[^']*'))|(?=\\s*#)","beginCaptures":{"1":{"name":"keyword.control.directive.include.gtkrc"}},"endCaptures":{"1":{"patterns":[{"include":"etc#strDouble"}]},"2":{"patterns":[{"include":"etc#strSingle"}]}}},"main":{"patterns":[{"include":"etc#comment"},{"include":"#attachment"},{"include":"#include"},{"include":"#paths"},{"include":"#bindingBlock"},{"include":"#styleBlock"},{"include":"#setting"},{"include":"#colourDef"},{"include":"#stock"},{"include":"#engine"}]},"miscValues":{"patterns":[{"include":"#colourValue"},{"include":"#stateDefinedOnly"},{"include":"etc#comma"},{"include":"etc#num"},{"include":"etc#str"},{"include":"etc#comment"},{"match":"(?:(?\u003c==|\\G|^|,)\\s*)(true|false|TRUE|FALSE)(?=\\s*(?:$|#))","captures":{"1":{"patterns":[{"include":"etc#bool"}]}}},{"name":"string.unquoted.bareword.gtkrc","match":"(?!\\d)[^\"'\\s\\(\\),]"}]},"paths":{"patterns":[{"begin":"(?\u003c=\\s|^|\\G)((module|pixmap)_path)(?=$|\\s)","end":"\\s+(\"[^\"]*\"|'[^']*')|(?=\\s*#)","beginCaptures":{"1":{"name":"keyword.operator.set-path.$2.gtkrc"}},"endCaptures":{"1":{"patterns":[{"name":"string.quoted.path-list.gtkrc","begin":"(\"|')","end":"\\1","patterns":[{"name":"punctuation.delimiter.separator.path.colon.gtkrc","match":":"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.gtkrc"}}}]}}},{"begin":"(?\u003c=\\s|^|\\G)(im_module_path)(?=$|\\s)","end":"\\s+(?:(\"[^\"]*\")|('[^']*'))|(?=\\s*#)","beginCaptures":{"1":{"name":"keyword.operator.set-path.im-module.gtkrc"}},"endCaptures":{"1":{"patterns":[{"include":"etc#strDouble"}]},"2":{"patterns":[{"include":"etc#strSingle"}]}}}]},"setting":{"name":"meta.setting.gtkrc","begin":"^\\s*(?!\\d)([-\\w]+)\\s*(=)[ \\t]*","end":"(?=\\s*(?:$|#))","patterns":[{"include":"#miscValues"}],"beginCaptures":{"1":{"name":"variable.assignment.setting.gtkrc"},"2":{"patterns":[{"include":"etc#eql"}]}}},"state":{"patterns":[{"include":"#stateDefinedOnly"},{"name":"invalid.unimplemented.state.gtkrc","match":"\\w+"}]},"stateDefinedOnly":{"name":"constant.language.state.gtkrc","match":"\\b(NORMAL|ACTIVE|PRELIGHT|SELECTED|INSENSITIVE)\\b"},"stock":{"name":"meta.definition.stock-icon.gtkrc","begin":"(?\u003c=\\s|^|\\G)(stock)((\\[))\\s*(\"[^\"]*\"|'[^']*')\\s*((\\]))\\s*(=)[ \\t]*","end":"(?\u003c=})","patterns":[{"begin":"\\G(?=\\s*$)","end":"\\s*(?=\\S)"},{"name":"meta.block.icon-sources.gtkrc","begin":"{","end":"}","patterns":[{"name":"meta.block.icon-source.gtkrc","begin":"{","end":"}","patterns":[{"include":"etc#comma"},{"begin":"\\G\\s*(?=@?[\"'])","end":"(?!\\G)","patterns":[{"name":"string.quoted.filename.gtkrc","begin":"\\G(\"|')","end":"\\1","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.gtkrc"}}},{"name":"variable.icon-name.gtkrc","begin":"\\G(@(\"|'))","end":"\\2","beginCaptures":{"1":{"name":"punctuation.definition.icon-name.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.icon-name.end.gtkrc"}}}]},{"match":"(?:(?:^|(?\u003c=,))\\s*)(LTR|RTL)(?=\\s*(?:$|[,}#]))","captures":{"1":{"name":"constant.language.text-direction.$1.gtkrc"}}},{"match":"(?:(?:^|(?\u003c=,))\\s*)(\\*)(?=\\s*(?:$|[,}#]))","captures":{"1":{"patterns":[{"include":"etc#globSimple"}]}}},{"match":"(?:(?:^|(?\u003c=,))\\s*)((\"|')(?:(?!\\2).)*+(\\2))","captures":{"1":{"name":"constant.language.icon-size.gtkrc"},"2":{"name":"punctuation.definition.icon-size.begin.gtkrc"},"3":{"name":"punctuation.definition.icon-size.end.gtkrc"}}},{"include":"etc#comment"}],"captures":{"0":{"patterns":[{"include":"#brackets"}]}}},{"include":"etc#comma"},{"include":"etc#comment"}],"captures":{"0":{"patterns":[{"include":"#brackets"}]}}}],"beginCaptures":{"1":{"name":"storage.type.icon.gtkrc"},"2":{"name":"punctuation.definition.icon.begin.gtkrc"},"3":{"name":"brackethighlighter.square"},"4":{"patterns":[{"include":"#styleName"}]},"5":{"name":"punctuation.definition.icon.end.gtkrc"},"6":{"name":"brackethighlighter.square"},"7":{"patterns":[{"include":"etc#eql"}]}}},"style":{"patterns":[{"include":"#colourDef"},{"include":"#stock"},{"name":"meta.property.$1.gtkrc","begin":"(?\u003c=\\s|^|\\G)\\s*([fb]g|(?:fore|back)ground|base|text)(((\\[))\\s*(\\w+)\\s*((\\])))\\s*(=)[ \\t]*","end":"$|(?=\\s*#)","patterns":[{"include":"#colourValue"}],"beginCaptures":{"1":{"name":"support.type.property-name.gtkrc"},"2":{"name":"meta.state.gtkrc"},"3":{"name":"punctuation.definition.state.begin.gtkrc"},"4":{"name":"brackethighlighter.square"},"5":{"patterns":[{"include":"#state"}]},"6":{"name":"punctuation.definition.state.end.gtkrc"},"7":{"name":"brackethighlighter.square"},"8":{"patterns":[{"include":"etc#eql"}]}}},{"name":"meta.property.$1.gtkrc","begin":"(?\u003c=\\s|^|\\G)\\s*([xy]thickness)\\s*(=)[ \\t]*","end":"$|(?=\\s*#)","patterns":[{"include":"etc#num"}],"beginCaptures":{"1":{"name":"support.type.property-name.gtkrc"},"2":{"patterns":[{"include":"etc#eql"}]}}},{"name":"meta.property.$1.gtkrc","begin":"(?\u003c=\\s|^|\\G)\\s*(font(?:set|_name)?)\\s*(=)[ \\t]*","end":"$|(?=\\s*#)","patterns":[{"name":"meta.pango-font.gtkrc","begin":"\\G(\"|')","end":"\\1|(?=\\s*$)","patterns":[{"include":"source.xlfd"},{"match":"\\G(?:(?\u003c=(\"|'))((?!\\1)\\S(?:(?!\\1).)*))\\s+(\\d+(?:\\.\\d+)?)(?=\\1)","captures":{"2":{"name":"constant.other.font-family.gtkrc"},"3":{"name":"constant.numeric.font-size.gtkrc"}}},{"match":"\\G(?\u003c=(\"|'))(?:(?=(?:\\d+(?:\\.\\d+)?|\\.\\d+)\\1)([.\\d+]{1,27})|((?:(?!\\1)\\S){1,27}))(?=\\1)","captures":{"2":{"name":"constant.numeric.font-size.gtkrc"},"3":{"name":"constant.other.font-name.gtkrc"}}},{"include":"etc#comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.font.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.font.end.gtkrc"}}}],"beginCaptures":{"1":{"name":"support.type.property-name.gtkrc"},"2":{"patterns":[{"include":"etc#eql"}]}}},{"name":"meta.property.$1.gtkrc","begin":"(?\u003c=\\s|^|\\G)\\s*(bg_pixmap)(((\\[))\\s*(\\w+)\\s*((\\])))\\s*(=)[ \\t]*","end":"$|(?=\\s*#)","patterns":[{"begin":"\\G\\s*(?=\"|')","end":"(?!\\G)","patterns":[{"name":"string.quoted.pixmap.gtkrc","match":"\\G(\"|')((\u003c)(parent|none)(\u003e))(\\1)","captures":{"1":{"name":"punctuation.definition.string.begin.gtkrc"},"2":{"name":"keyword.other.pixmap-spec.$4.gtkrc"},"3":{"name":"punctuation.definition.keyword.begin.gtkrc"},"5":{"name":"punctuation.definition.keyword.end.gtkrc"},"6":{"name":"punctuation.definition.string.end.gtkrc"}}},{"name":"string.quoted.pixmap.gtkrc","begin":"(\"|')","end":"\\1","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.gtkrc"}}}]}],"beginCaptures":{"1":{"name":"support.type.property-name.gtkrc"},"2":{"name":"meta.state.gtkrc"},"3":{"name":"punctuation.definition.state.begin.gtkrc"},"4":{"name":"brackethighlighter.square"},"5":{"patterns":[{"include":"#state"}]},"6":{"name":"punctuation.definition.state.end.gtkrc"},"7":{"name":"brackethighlighter.square"},"8":{"patterns":[{"include":"etc#eql"}]}}},{"include":"#classProperty"}]},"styleBlock":{"name":"meta.style.gtkrc","begin":"(?\u003c=\\s|^|\\G)style(?=$|\\s)","end":"(?\u003c=})","patterns":[{"begin":"\\G\\s*(?=[\"'])","end":"(?!\\G)","patterns":[{"include":"#styleName"}]},{"name":"meta.parent-style.gtkrc","begin":"=","end":"\\s*(\"[^\"]*\"|'[^']*')|(?=\\s*{)","beginCaptures":{"0":{"name":"keyword.operator.assignment.parent.gtkrc"}},"endCaptures":{"1":{"patterns":[{"include":"#styleName"}]}}},{"name":"meta.block.gtkrc","begin":"{","end":"}","patterns":[{"include":"#style"},{"include":"#engine"},{"include":"etc#comment"}],"captures":{"0":{"patterns":[{"include":"#brackets"}]}}}],"beginCaptures":{"0":{"name":"storage.type.style.gtkrc"}}},"styleCustom":{"name":"meta.property.custom.gtkrc","begin":"(?\u003c=\\s|^|\\G)\\s*((?!\\d)[-\\w]+)(?=\\[\\s*[^\\s\\[\\]]+\\s*\\])","end":"$|(?=\\s*#)","patterns":[{"name":"meta.item-access.gtkrc","begin":"(?:\\G|(?\u003c=\\]))((\\[))\\s*","end":"\\s*((\\]))","patterns":[{"include":"#stateDefinedOnly"},{"include":"etc#num"},{"include":"etc#bool"},{"name":"constant.other.qualifier.gtkrc","match":"\\w+"}],"beginCaptures":{"1":{"name":"punctuation.definition.accessor.begin.bracket.square.gtkrc"},"2":{"name":"brackethighlighter.square"}},"endCaptures":{"1":{"name":"punctuation.definition.accessor.begin.bracket.square.gtkrc"},"2":{"name":"brackethighlighter.square"}}},{"begin":"(?\u003c=\\])\\s*(=)[ \\t]*","end":"$|(?=\\s*#)","patterns":[{"include":"#miscValues"}],"beginCaptures":{"1":{"patterns":[{"include":"etc#eql"}]}}}],"beginCaptures":{"1":{"name":"support.type.property-name.gtkrc"}}},"styleName":{"name":"entity.name.style.gtkrc","begin":"(\"|')","end":"\\1","beginCaptures":{"0":{"name":"punctuation.definition.style.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.style.end.gtkrc"}}},"widgetPath":{"name":"constant.other.selector.widget.gtkrc","begin":"(\"|')","end":"\\1","patterns":[{"name":"meta.separator.gtkrc","match":"\\.","captures":{"0":{"name":"punctuation.separator.parent.selector.gtkrc"}}},{"name":"entity.name.class.gtkrc","match":"(\u003c)\\w+(\u003e)","captures":{"1":{"name":"punctuation.definition.class.begin.gtkrc"},"2":{"name":"punctuation.definition.class.end.gtkrc"}}},{"include":"etc#globSimple"}],"beginCaptures":{"0":{"name":"punctuation.definition.selector.begin.gtkrc"}},"endCaptures":{"0":{"name":"punctuation.definition.selector.end.gtkrc"}}}}}