github-linguist 9.2.0 → 9.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. checksums.yaml +4 -4
  2. data/bin/github-linguist +23 -4
  3. data/grammars/dart.inline.edgeql.json +1 -0
  4. data/grammars/go.inline.edgeql.json +1 -0
  5. data/grammars/injection.interpolated-ruby.json +1 -0
  6. data/grammars/injections.etc.json +1 -1
  7. data/grammars/inline.surrealql-js-literal.json +1 -0
  8. data/grammars/js.inline.edgeql.json +1 -0
  9. data/grammars/markdown.move.codeblock.json +1 -1
  10. data/grammars/markdown.surrealql.codeblock.json +1 -0
  11. data/grammars/markdown.vue.codeblock.json +1 -1
  12. data/grammars/markdown.wesl.codeblock.json +1 -0
  13. data/grammars/markdown.wgsl.codeblock.json +1 -0
  14. data/grammars/mdx.vue.codeblock.json +1 -1
  15. data/grammars/res.inline.edgeql.json +1 -0
  16. data/grammars/source.abl.json +1 -1
  17. data/grammars/source.agda.json +1 -1
  18. data/grammars/source.al.json +1 -1
  19. data/grammars/source.algol60.json +1 -0
  20. data/grammars/source.apex.json +1 -1
  21. data/grammars/source.ash.json +1 -0
  22. data/grammars/source.ats.json +1 -1
  23. data/grammars/source.b.json +1 -0
  24. data/grammars/source.bicep.json +1 -1
  25. data/grammars/source.brs.json +1 -1
  26. data/grammars/source.bru.json +1 -0
  27. data/grammars/source.c++.json +1 -1
  28. data/grammars/source.c.json +1 -1
  29. data/grammars/source.c.linker.json +1 -1
  30. data/grammars/source.c3.json +1 -0
  31. data/grammars/source.cadence.json +1 -1
  32. data/grammars/source.cj.json +1 -0
  33. data/grammars/source.clar.json +1 -1
  34. data/grammars/source.clean.json +1 -1
  35. data/grammars/source.cmake.json +1 -1
  36. data/grammars/source.cmakecache.json +1 -1
  37. data/grammars/source.cobol.json +1 -1
  38. data/grammars/source.comment-string.wesl.json +1 -0
  39. data/grammars/source.comment-string.wgsl.json +1 -0
  40. data/grammars/source.cooklang.json +1 -0
  41. data/grammars/source.cql.json +1 -0
  42. data/grammars/source.cs.json +1 -1
  43. data/grammars/source.csv.json +1 -0
  44. data/grammars/source.curlrc.json +1 -1
  45. data/grammars/source.data-weave.json +1 -1
  46. data/grammars/source.dotenv.json +1 -1
  47. data/grammars/source.dsv.json +1 -0
  48. data/grammars/source.edgeql.json +1 -1
  49. data/grammars/source.erlang.json +1 -1
  50. data/grammars/source.flix.json +1 -0
  51. data/grammars/source.fsharp.json +1 -1
  52. data/grammars/source.gdscript.json +1 -1
  53. data/grammars/source.gfm.blade.json +1 -1
  54. data/grammars/source.gitignore.json +1 -1
  55. data/grammars/source.go-template.json +1 -0
  56. data/grammars/source.go.injection.double.go-template.json +1 -0
  57. data/grammars/source.go.injection.raw.go-template.json +1 -0
  58. data/grammars/source.hack.json +1 -1
  59. data/grammars/source.harbour.json +1 -1
  60. data/grammars/source.httpspec.json +1 -1
  61. data/grammars/source.hurl.json +1 -0
  62. data/grammars/source.hx.json +1 -1
  63. data/grammars/source.ilecobol.json +1 -1
  64. data/grammars/source.inputrc.json +1 -1
  65. data/grammars/source.isabelle.theory.json +1 -1
  66. data/grammars/source.jac.json +1 -0
  67. data/grammars/source.jai.json +1 -1
  68. data/grammars/source.jq.json +1 -1
  69. data/grammars/source.json.comments.json +1 -1
  70. data/grammars/source.julia.json +1 -1
  71. data/grammars/source.just.json +1 -1
  72. data/grammars/source.kcl.json +1 -0
  73. data/grammars/source.langium.json +1 -0
  74. data/grammars/source.lean.markdown.json +1 -1
  75. data/grammars/source.lean4.json +1 -1
  76. data/grammars/source.lean4.markdown.json +1 -1
  77. data/grammars/source.lp.json +1 -0
  78. data/grammars/source.lua.json +1 -1
  79. data/grammars/source.luau.json +1 -1
  80. data/grammars/source.m2.json +1 -1
  81. data/grammars/source.mask.json +1 -1
  82. data/grammars/source.mdx.json +1 -1
  83. data/grammars/source.mermaid.flowchart.json +1 -1
  84. data/grammars/source.mermaid.gantt.json +1 -1
  85. data/grammars/source.mermaid.json +1 -1
  86. data/grammars/source.mermaid.pie-chart.json +1 -1
  87. data/grammars/source.mermaid.quad-chart.json +1 -0
  88. data/grammars/source.mermaid.sankey.json +1 -0
  89. data/grammars/source.mermaid.timeline.json +1 -0
  90. data/grammars/source.mermaid.user-journey.json +1 -1
  91. data/grammars/source.mermaid.zenuml.json +1 -0
  92. data/grammars/source.mo.json +1 -1
  93. data/grammars/source.mojo.json +1 -1
  94. data/grammars/source.moonbit.json +1 -1
  95. data/grammars/source.move.json +1 -1
  96. data/grammars/source.ned.json +1 -1
  97. data/grammars/source.nginx.json +1 -1
  98. data/grammars/source.nickel.json +1 -0
  99. data/grammars/source.nim.json +1 -1
  100. data/grammars/source.nr.json +1 -1
  101. data/grammars/source.nushell.json +1 -1
  102. data/grammars/source.odin-ehr.json +1 -1
  103. data/grammars/source.openqasm.json +1 -1
  104. data/grammars/source.postscript.json +1 -1
  105. data/grammars/source.proto.json +1 -1
  106. data/grammars/source.psl.json +1 -0
  107. data/grammars/source.pyjade.json +1 -1
  108. data/grammars/source.quakec.json +1 -0
  109. data/grammars/source.rascript.json +1 -0
  110. data/grammars/source.record-jar.json +1 -1
  111. data/grammars/source.rego.json +1 -1
  112. data/grammars/source.roc.json +1 -1
  113. data/grammars/source.rosmsg.json +1 -0
  114. data/grammars/source.rpgle.json +1 -1
  115. data/grammars/source.shell.json +1 -1
  116. data/grammars/source.sieve.json +1 -1
  117. data/grammars/source.singularity.json +1 -1
  118. data/grammars/source.slang.json +1 -1
  119. data/grammars/source.slint.json +1 -1
  120. data/grammars/source.soql.json +1 -1
  121. data/grammars/source.sqf.json +1 -1
  122. data/grammars/source.stan.json +1 -1
  123. data/grammars/source.surrealql.json +1 -0
  124. data/grammars/source.swift.json +1 -1
  125. data/grammars/source.teal.json +1 -0
  126. data/grammars/source.templ.json +1 -1
  127. data/grammars/source.tmdl.json +1 -0
  128. data/grammars/source.tsp.json +1 -1
  129. data/grammars/source.tsv.json +1 -0
  130. data/grammars/source.vb6.json +1 -0
  131. data/grammars/source.vba.json +1 -1
  132. data/grammars/source.vcl.json +1 -0
  133. data/grammars/source.vento.json +1 -1
  134. data/grammars/source.vhdl.json +1 -1
  135. data/grammars/source.vscode.c3.json +1 -0
  136. data/grammars/source.wdl.json +1 -1
  137. data/grammars/source.wesl.json +1 -0
  138. data/grammars/source.wgsl.json +1 -1
  139. data/grammars/source.wit.json +1 -1
  140. data/grammars/source.wwb.json +1 -1
  141. data/grammars/text.codeowners.json +1 -1
  142. data/grammars/text.git-commit.json +1 -0
  143. data/grammars/text.haml.json +1 -1
  144. data/grammars/text.html.jte.json +1 -1
  145. data/grammars/text.html.markdown.d2.json +1 -1
  146. data/grammars/text.html.vue.json +1 -0
  147. data/grammars/text.injection.go-template.json +1 -0
  148. data/grammars/text.jira.json +1 -0
  149. data/grammars/text.k.json +1 -0
  150. data/grammars/text.markdown.go-template.codeblock.json +1 -0
  151. data/grammars/text.marko.json +1 -1
  152. data/grammars/text.md.json +1 -1
  153. data/grammars/text.slim.json +1 -1
  154. data/grammars/text.source.mps.json +1 -0
  155. data/grammars/text.srt.json +1 -1
  156. data/grammars/text.valve-cfg.json +1 -1
  157. data/grammars/text.xml.svg.json +1 -1
  158. data/grammars/v.mod.json +1 -0
  159. data/grammars/version +1 -1
  160. data/grammars/vue.directives.json +1 -1
  161. data/grammars/vue.interpolations.json +1 -1
  162. data/grammars/vue.sfc.script.leading-operator-fix.json +1 -0
  163. data/lib/linguist/VERSION +1 -1
  164. data/lib/linguist/generated.rb +29 -5
  165. data/lib/linguist/generic.yml +3 -0
  166. data/lib/linguist/heuristics.yml +98 -11
  167. data/lib/linguist/instrumenter.rb +19 -0
  168. data/lib/linguist/languages.json +1 -1
  169. data/lib/linguist/languages.yml +405 -117
  170. data/lib/linguist/samples.json +1 -1
  171. data/lib/linguist.rb +1 -0
  172. metadata +59 -5
  173. data/grammars/inline.edgeql.json +0 -1
  174. data/grammars/source.varnish.vcl.json +0 -1
  175. data/grammars/source.vue.json +0 -1
@@ -0,0 +1 @@
1
+ {"name":"Comma-separated values","scopeName":"source.csv","patterns":[{"include":"#main"}],"repository":{"escape":{"name":"constant.character.escape.quote.csv","match":"\"\""},"header":{"begin":"\\A","end":"(?!\\G)","patterns":[{"begin":"\\G(?=\\s*$)","end":"\\s*(?=\\S)"},{"name":"meta.table.header.csv","begin":"(?=\\S)","end":"(?!\\G)","patterns":[{"name":"meta.table.field.csv","begin":"(?:^|\\G|(?\u003c=,))(\\s*)(?=[^\\s,])","end":"([ \\t\\f\\v]*)(?=,|$)","patterns":[{"name":"entity.name.column.quoted.csv","begin":"\\G\"","end":"\"","patterns":[{"include":"#escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.column.begin.csv"}},"endCaptures":{"0":{"name":"punctuation.definition.column.end.csv"}},"applyEndPatternLast":true},{"name":"entity.name.column.unquoted.csv","begin":"\\G(?=[^\\s,\"])","end":"(?=\\s*(?:,|$))"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.csv"}},"endCaptures":{"1":{"name":"punctuation.whitespace.trailing.csv"}}},{"include":"#separator"}],"applyEndPatternLast":true}],"applyEndPatternLast":true},"main":{"patterns":[{"include":"#header"},{"include":"#record"}]},"record":{"name":"meta.table.record.csv","begin":"^(?=.*?,)","end":"$","patterns":[{"name":"meta.table.field.csv","begin":"(?:^|\\G|(?\u003c=,))(\\s*)(?=[^\\s,])","end":"([ \\t\\f\\v]*)(?=,|$)","patterns":[{"name":"string.quoted.double.csv","begin":"\\G\"","end":"\"","patterns":[{"include":"#escape"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.csv"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.csv"}},"applyEndPatternLast":true},{"name":"string.unquoted.csv","begin":"\\G(?=[^\\s,\"])","end":"(?=\\s*(?:,|$))"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.csv"}},"endCaptures":{"1":{"name":"punctuation.whitespace.trailing.csv"}},"applyEndPatternLast":true},{"include":"#separator"}],"applyEndPatternLast":true},"separator":{"name":"keyword.operator.separator.csv","match":",","captures":{"0":{"name":"punctuation.separator.delimiter.comma.csv"}}}}}
@@ -1 +1 @@
1
- {"name":".curlrc","scopeName":"source.curlrc","patterns":[{"include":"#main"}],"repository":{"auth":{"patterns":[{"match":"([^\\s:;]+)(:)([^\\s=:;]*)","captures":{"1":{"name":"constant.other.auth-info.curlrc"},"2":{"patterns":[{"include":"etc#kolon"}]},"3":{"name":"constant.other.auth-info.curlrc"}}},{"match":"(:)([^\\s:;]*)","captures":{"1":{"patterns":[{"include":"etc#kolon"}]},"2":{"name":"constant.other.auth-info.curlrc"}}}]},"authProtocol":{"match":"(?:\\G|^)([^\\\\:\\s/]*)(://|:)","captures":{"1":{"name":"entity.other.protocol.curlrc"},"2":{"name":"keyword.operator.protocol.separator.curlrc"}}},"autoRefer":{"match":"(;)(auto)\\b","captures":{"1":{"name":"punctuation.separator.key-value.semicolon.curlrc"},"2":{"name":"variable.assignment.parameter.name.curlrc"}}},"comment":{"name":"comment.line.number-sign.curlrc","begin":"(?:^|(?\u003c=[ \\t\\xA0\"]))#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.curlrc"}}},"header":{"match":"(?:\\G|^)\\s*([-A-Za-z0-9]+)\\s*(?:(:)\\s*(.*)|(;))","captures":{"1":{"name":"entity.name.header.curlrc"},"2":{"patterns":[{"include":"etc#kolon"}]},"3":{"name":"string.unquoted.header-value.curlrc"},"4":{"name":"punctuation.terminator.statement.semicolon.curlrc"}}},"longOptions":{"patterns":[{"name":"meta.option.long.curlrc","match":"(?x)\n(?:\\G|^|(?\u003c=[ \\t])) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_no_parameter\u003e\n\t\tanyauth\n\t|\tappend\n\t|\tbasic\n\t|\tca-native\n\t|\tcert-status\n\t|\tcompressed-ssh\n\t|\tcompressed\n\t|\tcreate-dirs\n\t|\tcrlf\n\t|\tdigest\n\t|\tdisable-eprt\n\t|\tdisable-epsv\n\t|\tdisable\n\t|\tdisallow-username-in-url\n\t|\tdoh-cert-status\n\t|\tdoh-insecure\n\t|\tdump-ca-embed\n\t|\tfail-early\n\t|\tfail-with-body\n\t|\tfail\n\t|\tfalse-start\n\t|\tform-escape\n\t|\tftp-create-dirs\n\t|\tftp-pasv\n\t|\tftp-pret\n\t|\tftp-skip-pasv-ip\n\t|\tftp-ssl-ccc\n\t|\tftp-ssl-control\n\t|\tget\n\t|\tgloboff\n\t|\thaproxy-protocol\n\t|\thead\n\t|\thttp0.9\n\t|\thttp1.0\n\t|\thttp1.1\n\t|\thttp2-prior-knowledge\n\t|\thttp2\n\t|\thttp3-only\n\t|\thttp3\n\t|\tignore-content-length\n\t|\tinclude\n\t|\tinsecure\n\t|\tipv4\n\t|\tipv6\n\t|\tjunk-session-cookies\n\t|\tlist-only\n\t|\tlocation-trusted\n\t|\tlocation\n\t|\tmail-rcpt-allowfails\n\t|\tmanual\n\t|\tmetalink\n\t|\tnegotiate\n\t|\tnetrc-optional\n\t|\tnetrc\n\t|\tnext\n\t|\tno-alpn\n\t|\tno-buffer\n\t|\tno-clobber\n\t|\tno-keepalive\n\t|\tno-npn\n\t|\tno-progress-meter\n\t|\tno-sessionid\n\t|\tmptcp\n\t|\tntlm-wb\n\t|\tntlm\n\t|\tparallel-immediate\n\t|\tparallel\n\t|\tpath-as-is\n\t|\tpost301\n\t|\tpost302\n\t|\tpost303\n\t|\tprogress-bar\n\t|\tproxy-anyauth\n\t|\tproxy-basic\n\t|\tproxy-ca-native\n\t|\tproxy-digest\n\t|\tproxy-http2\n\t|\tproxy-insecure\n\t|\tproxy-negotiate\n\t|\tproxy-ntlm\n\t|\tproxy-ssl-allow-beast\n\t|\tproxy-ssl-auto-client-cert\n\t|\tproxy-tlsv1\n\t|\tproxytunnel\n\t|\traw\n\t|\tremote-header-name\n\t|\tremote-name-all\n\t|\tremote-name\n\t|\tremote-time\n\t|\tremove-on-error\n\t|\tretry-all-errors\n\t|\tretry-connrefused\n\t|\tsasl-ir\n\t|\tshow-error\n\t|\tshow-headers\n\t|\tsilent\n\t|\tskip-existing\n\t|\tsocks5-basic\n\t|\tsocks5-gssapi-nec\n\t|\tsocks5-gssapi\n\t|\tssl-allow-beast\n\t|\tssl-auto-client-cert\n\t|\tssl-no-revoke\n\t|\tssl-reqd\n\t|\tssl-revoke-best-effort\n\t|\tsslv2\n\t|\tsslv3\n\t|\tssl\n\t|\tstyled-output\n\t|\tsuppress-connect-headers\n\t|\ttcp-fastopen\n\t|\ttcp-nodelay\n\t|\ttftp-no-options\n\t|\ttlsv1.0\n\t|\ttlsv1.1\n\t|\ttlsv1.2\n\t|\ttlsv1.3\n\t|\ttlsv1\n\t|\ttls-earlydata\n\t|\ttr-encoding\n\t|\ttrace-ids\n\t|\ttrace-time\n\t|\tuse-ascii\n\t|\tverbose\n\t|\tversion\n\t|\txattr\n\t)\n)\n(?=\\s|$)","captures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_urls\u003e\n\t\tdns-ipv4-addr\n\t|\tdns-ipv6-addr\n\t|\tdns-servers\n\t|\tdoh-url\n\t|\thaproxy-clientip\n\t|\tipfs-gateway\n\t|\tmail-auth\n\t|\tmail-from\n\t|\tmail-rcpt\n\t|\tnoproxy\n\t|\treferer\n\t|\turl\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|(?=$)))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#url"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"name":"string.unquoted.curlrc","patterns":[{"include":"#url"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_headers\u003e\n\t\theader\n\t|\tproxy-header\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|(?=$)))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#header"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#header"},{"include":"etc#bareword"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_form_data\u003e\n\t\tcookie\n\t|\tform-string\n\t|\tform\n\t|\ttelnet-option\n\t|\tvariable\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|(?=$)))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#params"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#params"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_protocols\u003e\n\t\tproto-default\n\t|\tproto-redir\n\t|\tproto\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#protocols"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#protocols"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_port\u003e\n\t\tftp-port\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"name":"constant.other.port-address.curlrc","patterns":[{"include":"etc#esc"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"name":"constant.other.port-address.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_md5\u003e\n\t\thostpubmd5\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"name":"constant.other.md5.checksum.curlrc","patterns":[{"include":"etc#esc"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"name":"constant.other.md5.checksum.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_range\u003e\n\t\tlocal-port\n\t|\trange\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#range"},{"include":"etc#esc"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#range"},{"include":"etc#bareword"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:](?=\\s)) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_kv_colon\u003e\n\t\taws-sigv4\n\t|\tcert\n\t|\tconnect-to\n\t|\tpreproxy\n\t|\tproxy-cert\n\t|\tproxy-user\n\t|\tproxy1.0\n\t|\tproxy\n\t|\tresolve\n\t|\tsocks4a\n\t|\tsocks4\n\t|\tsocks5-hostname\n\t|\tsocks5\n\t|\tuser\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#auth"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#auth"},{"include":"etc#bareword"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:](?=\\s)) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_string\u003e\n\t\tabstract-unix-socket\n\t|\talt-svc\n\t|\tcacert\n\t|\tcapath\n\t|\tcert-type\n\t|\tciphers\n\t|\tconfig\n\t|\tcookie-jar\n\t|\tcrlfile\n\t|\tcurves\n\t|\tdata-ascii\n\t|\tdata-binary\n\t|\tdata-raw\n\t|\tdata-urlencode\n\t|\tdata\n\t|\tdelegation\n\t|\tdns-interface\n\t|\tdump-header\n\t|\tech\n\t|\tegd-file\n\t|\tengine\n\t|\tetag-compare\n\t|\tetag-save\n\t|\tftp-account\n\t|\tftp-alternative-to-user\n\t|\tftp-method\n\t|\tftp-ssl-ccc-mode\n\t|\thappy-eyeballs-timeout-ms\n\t|\thelp\n\t|\thostpubsha256\n\t|\thsts\n\t|\tinterface\n\t|\tjson\n\t|\tkey-type\n\t|\tkey\n\t|\tkrb\n\t|\tlibcurl\n\t|\tlogin-options\n\t|\tnetrc-file\n\t|\toauth2-bearer\n\t|\toutput-dir\n\t|\toutput\n\t|\tpass\n\t|\tpinnedpubkey\n\t|\tproxy-cacert\n\t|\tproxy-capath\n\t|\tproxy-cert-type\n\t|\tproxy-ciphers\n\t|\tproxy-crlfile\n\t|\tproxy-key-type\n\t|\tproxy-key\n\t|\tproxy-pass\n\t|\tproxy-pinnedpubkey\n\t|\tproxy-service-name\n\t|\tproxy-tls13-ciphers\n\t|\tproxy-tlsauthtype\n\t|\tproxy-tlspassword\n\t|\tproxy-tlsuser\n\t|\tpubkey\n\t|\tquote\n\t|\trandom-file\n\t|\trequest-target\n\t|\trequest\n\t|\tsasl-authzid\n\t|\tservice-name\n\t|\tsocks5-gssapi-service\n\t|\tssl-sessions\n\t|\tstderr\n\t|\ttls-max\n\t|\ttls13-ciphers\n\t|\ttlsauthtype\n\t|\ttlspassword\n\t|\ttlsuser\n\t|\ttrace-ascii\n\t|\ttrace-config\n\t|\ttrace\n\t|\tunix-socket\n\t|\tupload-file\n\t|\tupload-flags\n\t|\turl-query\n\t|\tuser-agent\n\t|\twrite-out\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:(=)?|(?:([-A-Za-z0-9%_]+)(=)?)?([@\u003c]))?(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"keyword.operator.encoding-modifier.curlrc"},"2":{"name":"entity.name.form-field.curlrc"},"3":{"patterns":[{"include":"etc#eql"}]},"4":{"name":"keyword.operator.source-modifier.curlrc"},"5":{"name":"string.quoted.double.curlrc"},"6":{"name":"punctuation.definition.string.begin.curlrc"},"7":{"patterns":[{"include":"etc#esc"}]},"8":{"name":"punctuation.definition.string.end.curlrc"},"9":{"name":"string.unquoted.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:])\n\\s*\n(\n\t(--)?\n\t(?\u003coptlist_numeric\u003e\n\t\tconnect-timeout\n\t|\tcontinue-at\n\t|\tcreate-file-mode\n\t|\texpect100-timeout\n\t|\tip-tos\n\t|\tkeepalive-cnt\n\t|\tkeepalive-time\n\t|\tlimit-rate\n\t|\tmax-filesize\n\t|\tmax-redirs\n\t|\tmax-time\n\t|\tparallel-max\n\t|\trate\n\t|\tretry-delay\n\t|\tretry-max-time\n\t|\tretry\n\t|\tspeed-limit\n\t|\tspeed-time\n\t|\ttftp-blksize\n\t|\ttime-cond\n\t|\tvlan-priority\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"etc#num"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"etc#num"},{"include":"etc#bareword"}]}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#shortOptions"},{"include":"#longOptions"}]},"params":{"patterns":[{"include":"#autoRefer"},{"name":"keyword.operator.encoding-modifier.curlrc","match":"(?:\\G|^|(?\u003c=\\G\"|^\"))="},{"match":"(?:\\G|^|(?\u003c=\\G\"|^\"))(;)([^\\s=;\"]+(?=\"?(?:\\s|$)))?","captures":{"1":{"name":"punctuation.separator.key-value.semicolon.curlrc"},"2":{"name":"variable.assignment.parameter.name.curlrc"}}},{"match":"(?:\\G|^|(?\u003c=\\G\"|^\"))(?:([-A-Za-z0-9%_]+)(=)?)?([@\u003c])","captures":{"1":{"name":"entity.name.form-field.curlrc"},"2":{"patterns":[{"include":"etc#eql"}]},"3":{"name":"keyword.operator.source-modifier.curlrc"}}},{"name":"meta.parameter.curlrc","match":"([^\\s=;]+)(=)([^\\s=;]*)(;)?","captures":{"1":{"name":"variable.assignment.parameter.name.curlrc"},"2":{"patterns":[{"include":"etc#eql"}]},"3":{"name":"constant.other.parameter.value.curlrc"},"4":{"name":"punctuation.separator.key-value.semicolon.curlrc"}}},{"match":"(?\u003c=@)(\"(?:[^\\\\\"]|\\\\.)++\"|(?:[^\"\\s;\\\\]|\\\\.)++)(?:(;)|(?=$|\\s))","captures":{"1":{"name":"variable.assignment.parameter.name.curlrc","patterns":[{"include":"etc#esc"}]},"2":{"name":"punctuation.separator.key-value.semicolon.curlrc"}}},{"include":"etc#esc"},{"include":"etc#bareword"}]},"protocols":{"patterns":[{"name":"constant.other.protocol-name.curlrc","match":"[^\\s,+=-]+"},{"name":"keyword.control.permit-protocol.curlrc","match":"\\+"},{"name":"keyword.control.deny-protocol.curlrc","match":"-"},{"name":"keyword.control.permit-protocol.only.curlrc","match":"="},{"include":"etc#comma"}]},"range":{"patterns":[{"name":"meta.byte-range.curlrc","match":"([0-9]+)(-)([0-9]+)?|(-)([0-9]+)","captures":{"1":{"name":"constant.numeric.integer.int.decimal.dec.range.start.curlrc"},"2":{"name":"punctuation.separator.range.dash.curlrc"},"3":{"name":"constant.numeric.integer.int.decimal.dec.range.end.curlrc"},"4":{"name":"punctuation.separator.range.dash.curlrc"},"5":{"name":"constant.numeric.integer.int.decimal.dec.range.end.curlrc"}}},{"include":"etc#comma"},{"include":"etc#int"}]},"separators":{"patterns":[{"include":"etc#eql"},{"include":"etc#kolon"}]},"shortOptions":{"patterns":[{"name":"meta.option.short.curlrc","begin":"^\\s*((-)[:#012346BGIJLMNOQRSVafghijklnpqsv]*[ACDEFHKPQTUXYbcdehmortuwxyz])","end":"(?x)\n$\n|\n\n# Numbers\n(?\u003c=(?#optlist_numeric)[CYmyz])\n\\G (?:(?! )\\s)*\n([-+]?[0-9.]+)\n\n|\n\n# Byte range\n(?\u003c=(?#optlist_range)r)\n\\G (?:(?! )\\s)*\n([-0-9,]+)\n\n|\n\n# “key=value” pairs\n(?\u003c=(?#optlist_form_data)[Fbt])\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# “key:value” pairs\n(?\u003c=(?#optlist_kv_colon)[EUux])\n\\G (?:(?! )\\s)*\n((?:[^\\\\:\\s/]| )*://)?\n(\n\t(?:[^\\\\:\\s]|\\\\.| )+\n\t(?::(?:[^\\\\:\\s]|\\\\.| )+)*\n\t:?\n)\n\n|\n\n# Headers\n(?\u003c=(?#optlist_headers)H)\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# URLs\n(?\u003c=(?#optlist_urls)e)\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# Port address\n(?\u003c=(?#optlist_port)P)\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# Anything else\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)","beginCaptures":{"1":{"name":"entity.short.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.short.option.curlrc"}},"endCaptures":{"1":{"patterns":[{"include":"etc#num"}]},"10":{"name":"meta.http-headers.curlrc"},"11":{"name":"punctuation.definition.string.begin.curlrc"},"12":{"patterns":[{"include":"#header"}]},"13":{"name":"punctuation.definition.string.end.curlrc"},"14":{"patterns":[{"include":"#header"}]},"15":{"name":"meta.url-string.curlrc"},"16":{"name":"punctuation.definition.string.begin.curlrc"},"17":{"patterns":[{"include":"#url"}]},"18":{"name":"punctuation.definition.string.end.curlrc"},"19":{"patterns":[{"include":"#url"}]},"2":{"patterns":[{"include":"#range"}]},"20":{"name":"string.quoted.double.curlrc"},"21":{"name":"punctuation.definition.string.begin.curlrc"},"22":{"name":"constant.other.port-address.curlrc","patterns":[{"include":"etc#esc"}]},"23":{"name":"punctuation.definition.string.end.curlrc"},"24":{"name":"constant.other.port-address.curlrc"},"25":{"name":"string.quoted.double.curlrc"},"26":{"name":"punctuation.definition.string.begin.curlrc"},"27":{"patterns":[{"include":"etc#esc"}]},"28":{"name":"punctuation.definition.string.end.curlrc"},"29":{"name":"string.unquoted.curlrc"},"3":{"name":"meta.parameter-string.curlrc"},"4":{"name":"punctuation.definition.string.begin.curlrc"},"5":{"patterns":[{"include":"#params"}]},"6":{"name":"punctuation.definition.string.end.curlrc"},"7":{"patterns":[{"include":"#params"}]},"8":{"patterns":[{"include":"#authProtocol"}]},"9":{"patterns":[{"include":"#auth"}]}}},{"name":"meta.option.short.curlrc","match":"^\\s*((-)(?#optlist_no_parameter)[#012346:BGIJLMNORSVZafgijklnpqsv]+)","captures":{"1":{"name":"entity.short.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.short.option.curlrc"}}}]},"string":{"name":"string.quoted.double.curlrc","begin":"\"","end":"\"|(?=$)","patterns":[{"name":"constant.character.escape.backslash.curlrc","match":"(\\\\)[\\\\\"tnrv]","captures":{"1":{"name":"punctuation.definition.escape.backslash.curlrc"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.curlrc"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.curlrc"}}},"url":{"patterns":[{"include":"#autoRefer"},{"include":"etc#comma"},{"match":"(?\u003c=\\G\"|^\")((?:[^\"\\\\]|\\\\.)*)(?=$|\"|;)|(?:\\G(?\u003c!\")|^)([^\\s,]+?)(?=$|\\s|;|,)","captures":{"1":{"patterns":[{"include":"etc#url"},{"include":"#urlNoSchema"}]},"2":{"patterns":[{"include":"etc#url"},{"include":"#urlNoSchema"}]}}},{"include":"#params"},{"include":"etc#bareword"}]},"urlNoSchema":{"match":"(?:\\G|^)\\s*([-a-zA-Z0-9]+(?:\\.|@)[-a-zA-Z0-9]+.*)\\s*","captures":{"1":{"name":"constant.other.reference.link.underline.url.curlrc"}}}}}
1
+ {"name":".curlrc","scopeName":"source.curlrc","patterns":[{"include":"#main"}],"repository":{"auth":{"patterns":[{"match":"([^\\s:;]+)(:)([^\\s=:;]*)","captures":{"1":{"name":"constant.other.auth-info.curlrc"},"2":{"patterns":[{"include":"etc#kolon"}]},"3":{"name":"constant.other.auth-info.curlrc"}}},{"match":"(:)([^\\s:;]*)","captures":{"1":{"patterns":[{"include":"etc#kolon"}]},"2":{"name":"constant.other.auth-info.curlrc"}}}]},"authProtocol":{"match":"(?:\\G|^)([^\\\\:\\s/]*)(://|:)","captures":{"1":{"name":"entity.other.protocol.curlrc"},"2":{"name":"keyword.operator.protocol.separator.curlrc"}}},"autoRefer":{"match":"(;)(auto)\\b","captures":{"1":{"name":"punctuation.separator.key-value.semicolon.curlrc"},"2":{"name":"variable.assignment.parameter.name.curlrc"}}},"comment":{"name":"comment.line.number-sign.curlrc","begin":"(?:^|(?\u003c=[ \\t\\xA0\"]))#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.curlrc"}}},"header":{"match":"(?:\\G|^)\\s*([-A-Za-z0-9]+)\\s*(?:(:)\\s*(.*)|(;))","captures":{"1":{"name":"entity.name.header.curlrc"},"2":{"patterns":[{"include":"etc#kolon"}]},"3":{"name":"string.unquoted.header-value.curlrc"},"4":{"name":"punctuation.terminator.statement.semicolon.curlrc"}}},"longOptions":{"patterns":[{"name":"meta.option.long.curlrc","match":"(?x)\n(?:\\G|^|(?\u003c=[ \\t])) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_no_parameter\u003e\n\t\tanyauth\n\t|\tappend\n\t|\tbasic\n\t|\tca-native\n\t|\tcert-status\n\t|\tcompressed-ssh\n\t|\tcompressed\n\t|\tcreate-dirs\n\t|\tcrlf\n\t|\tdigest\n\t|\tdisable-eprt\n\t|\tdisable-epsv\n\t|\tdisable\n\t|\tdisallow-username-in-url\n\t|\tdoh-cert-status\n\t|\tdoh-insecure\n\t|\tdump-ca-embed\n\t|\tfail-early\n\t|\tfail-with-body\n\t|\tfail\n\t|\tfalse-start\n\t|\tfollow\n\t|\tform-escape\n\t|\tftp-create-dirs\n\t|\tftp-pasv\n\t|\tftp-pret\n\t|\tftp-skip-pasv-ip\n\t|\tftp-ssl-ccc\n\t|\tftp-ssl-control\n\t|\tget\n\t|\tgloboff\n\t|\thaproxy-protocol\n\t|\thead\n\t|\thttp0.9\n\t|\thttp1.0\n\t|\thttp1.1\n\t|\thttp2-prior-knowledge\n\t|\thttp2\n\t|\thttp3-only\n\t|\thttp3\n\t|\tignore-content-length\n\t|\tinclude\n\t|\tinsecure\n\t|\tipv4\n\t|\tipv6\n\t|\tjunk-session-cookies\n\t|\tlist-only\n\t|\tlocation-trusted\n\t|\tlocation\n\t|\tmail-rcpt-allowfails\n\t|\tmanual\n\t|\tmetalink\n\t|\tnegotiate\n\t|\tnetrc-optional\n\t|\tnetrc\n\t|\tnext\n\t|\tno-alpn\n\t|\tno-buffer\n\t|\tno-clobber\n\t|\tno-keepalive\n\t|\tno-npn\n\t|\tno-progress-meter\n\t|\tno-sessionid\n\t|\tmptcp\n\t|\tntlm-wb\n\t|\tntlm\n\t|\tout-null\n\t|\tparallel-immediate\n\t|\tparallel\n\t|\tpath-as-is\n\t|\tpost301\n\t|\tpost302\n\t|\tpost303\n\t|\tprogress-bar\n\t|\tproxy-anyauth\n\t|\tproxy-basic\n\t|\tproxy-ca-native\n\t|\tproxy-digest\n\t|\tproxy-http2\n\t|\tproxy-insecure\n\t|\tproxy-negotiate\n\t|\tproxy-ntlm\n\t|\tproxy-ssl-allow-beast\n\t|\tproxy-ssl-auto-client-cert\n\t|\tproxy-tlsv1\n\t|\tproxytunnel\n\t|\traw\n\t|\tremote-header-name\n\t|\tremote-name-all\n\t|\tremote-name\n\t|\tremote-time\n\t|\tremove-on-error\n\t|\tretry-all-errors\n\t|\tretry-connrefused\n\t|\tsasl-ir\n\t|\tshow-error\n\t|\tshow-headers\n\t|\tsilent\n\t|\tskip-existing\n\t|\tsocks5-basic\n\t|\tsocks5-gssapi-nec\n\t|\tsocks5-gssapi\n\t|\tssl-allow-beast\n\t|\tssl-auto-client-cert\n\t|\tssl-no-revoke\n\t|\tssl-reqd\n\t|\tssl-revoke-best-effort\n\t|\tsslv2\n\t|\tsslv3\n\t|\tssl\n\t|\tstyled-output\n\t|\tsuppress-connect-headers\n\t|\ttcp-fastopen\n\t|\ttcp-nodelay\n\t|\ttftp-no-options\n\t|\ttlsv1.0\n\t|\ttlsv1.1\n\t|\ttlsv1.2\n\t|\ttlsv1.3\n\t|\ttlsv1\n\t|\ttls-earlydata\n\t|\ttr-encoding\n\t|\ttrace-ids\n\t|\ttrace-time\n\t|\tuse-ascii\n\t|\tverbose\n\t|\tversion\n\t|\txattr\n\t)\n)\n(?=\\s|$)","captures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_urls\u003e\n\t\tdns-ipv4-addr\n\t|\tdns-ipv6-addr\n\t|\tdns-servers\n\t|\tdoh-url\n\t|\thaproxy-clientip\n\t|\tipfs-gateway\n\t|\tmail-auth\n\t|\tmail-from\n\t|\tmail-rcpt\n\t|\tnoproxy\n\t|\treferer\n\t|\turl\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|(?=$)))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#url"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"name":"string.unquoted.curlrc","patterns":[{"include":"#url"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_headers\u003e\n\t\theader\n\t|\tproxy-header\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|(?=$)))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#header"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#header"},{"include":"etc#bareword"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_form_data\u003e\n\t\tcookie\n\t|\tform-string\n\t|\tform\n\t|\ttelnet-option\n\t|\tvariable\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|(?=$)))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#params"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#params"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_protocols\u003e\n\t\tproto-default\n\t|\tproto-redir\n\t|\tproto\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#protocols"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#protocols"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_port\u003e\n\t\tftp-port\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"name":"constant.other.port-address.curlrc","patterns":[{"include":"etc#esc"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"name":"constant.other.port-address.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_md5\u003e\n\t\thostpubmd5\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"name":"constant.other.md5.checksum.curlrc","patterns":[{"include":"etc#esc"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"name":"constant.other.md5.checksum.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:]) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_range\u003e\n\t\tlocal-port\n\t|\trange\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#range"},{"include":"etc#esc"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#range"},{"include":"etc#bareword"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:](?=\\s)) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_kv_colon\u003e\n\t\taws-sigv4\n\t|\tcert\n\t|\tconnect-to\n\t|\tpreproxy\n\t|\tproxy-cert\n\t|\tproxy-user\n\t|\tproxy1.0\n\t|\tproxy\n\t|\tresolve\n\t|\tsocks4a\n\t|\tsocks4\n\t|\tsocks5-hostname\n\t|\tsocks5\n\t|\tuser\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"#auth"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"#auth"},{"include":"etc#bareword"}]}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:](?=\\s)) \\s*\n(\n\t(--)?\n\t(?\u003coptlist_string\u003e\n\t\tabstract-unix-socket\n\t|\talt-svc\n\t|\tcacert\n\t|\tcapath\n\t|\tcert-type\n\t|\tciphers\n\t|\tconfig\n\t|\tcookie-jar\n\t|\tcrlfile\n\t|\tcurves\n\t|\tdata-ascii\n\t|\tdata-binary\n\t|\tdata-raw\n\t|\tdata-urlencode\n\t|\tdata\n\t|\tdelegation\n\t|\tdns-interface\n\t|\tdump-header\n\t|\tech\n\t|\tegd-file\n\t|\tengine\n\t|\tetag-compare\n\t|\tetag-save\n\t|\tftp-account\n\t|\tftp-alternative-to-user\n\t|\tftp-method\n\t|\tftp-ssl-ccc-mode\n\t|\thappy-eyeballs-timeout-ms\n\t|\thelp\n\t|\thostpubsha256\n\t|\thsts\n\t|\tinterface\n\t|\tjson\n\t|\tkey-type\n\t|\tkey\n\t|\tkrb\n\t|\tlibcurl\n\t|\tlogin-options\n\t|\tnetrc-file\n\t|\toauth2-bearer\n\t|\toutput-dir\n\t|\toutput\n\t|\tpass\n\t|\tpinnedpubkey\n\t|\tproxy-cacert\n\t|\tproxy-capath\n\t|\tproxy-cert-type\n\t|\tproxy-ciphers\n\t|\tproxy-crlfile\n\t|\tproxy-key-type\n\t|\tproxy-key\n\t|\tproxy-pass\n\t|\tproxy-pinnedpubkey\n\t|\tproxy-service-name\n\t|\tproxy-tls13-ciphers\n\t|\tproxy-tlsauthtype\n\t|\tproxy-tlspassword\n\t|\tproxy-tlsuser\n\t|\tpubkey\n\t|\tquote\n\t|\trandom-file\n\t|\trequest-target\n\t|\trequest\n\t|\tsasl-authzid\n\t|\tservice-name\n\t|\tsigalgs\n\t|\tsocks5-gssapi-service\n\t|\tssl-sessions\n\t|\tstderr\n\t|\ttls-max\n\t|\ttls13-ciphers\n\t|\ttlsauthtype\n\t|\ttlspassword\n\t|\ttlsuser\n\t|\ttrace-ascii\n\t|\ttrace-config\n\t|\ttrace\n\t|\tunix-socket\n\t|\tupload-file\n\t|\tupload-flags\n\t|\turl-query\n\t|\tuser-agent\n\t|\twrite-out\n\t)\n)\n(?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:(=)?|(?:([-A-Za-z0-9%_]+)(=)?)?([@\u003c]))?(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"keyword.operator.encoding-modifier.curlrc"},"2":{"name":"entity.name.form-field.curlrc"},"3":{"patterns":[{"include":"etc#eql"}]},"4":{"name":"keyword.operator.source-modifier.curlrc"},"5":{"name":"string.quoted.double.curlrc"},"6":{"name":"punctuation.definition.string.begin.curlrc"},"7":{"patterns":[{"include":"etc#esc"}]},"8":{"name":"punctuation.definition.string.end.curlrc"},"9":{"name":"string.unquoted.curlrc"}}},{"name":"meta.option.long.curlrc","begin":"(?x) (?:\\G|^|(?\u003c=[ \\t]))\n(?!\\s*--\\w[-\\w]*\\s*[=:])\n\\s*\n(\n\t(--)?\n\t(?\u003coptlist_numeric\u003e\n\t\tconnect-timeout\n\t|\tcontinue-at\n\t|\tcreate-file-mode\n\t|\texpect100-timeout\n\t|\tip-tos\n\t|\tkeepalive-cnt\n\t|\tkeepalive-time\n\t|\tlimit-rate\n\t|\tmax-filesize\n\t|\tmax-redirs\n\t|\tmax-time\n\t|\tparallel-max-host\n\t|\tparallel-max\n\t|\trate\n\t|\tretry-delay\n\t|\tretry-max-time\n\t|\tretry\n\t|\tspeed-limit\n\t|\tspeed-time\n\t|\ttftp-blksize\n\t|\ttime-cond\n\t|\tvlan-priority\n\t)\n) (?:\\s*(=|:)|(?=\\s|$))","end":"$|(?:((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))|([^\\s]+))","beginCaptures":{"1":{"name":"entity.long.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.long.option.curlrc"},"4":{"patterns":[{"include":"#separators"}]}},"endCaptures":{"1":{"name":"string.quoted.double.curlrc"},"2":{"name":"punctuation.definition.string.begin.curlrc"},"3":{"patterns":[{"include":"etc#num"},{"include":"etc#bareword"}]},"4":{"name":"punctuation.definition.string.end.curlrc"},"5":{"patterns":[{"include":"etc#num"},{"include":"etc#bareword"}]}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#shortOptions"},{"include":"#longOptions"}]},"params":{"patterns":[{"include":"#autoRefer"},{"name":"keyword.operator.encoding-modifier.curlrc","match":"(?:\\G|^|(?\u003c=\\G\"|^\"))="},{"match":"(?:\\G|^|(?\u003c=\\G\"|^\"))(;)([^\\s=;\"]+(?=\"?(?:\\s|$)))?","captures":{"1":{"name":"punctuation.separator.key-value.semicolon.curlrc"},"2":{"name":"variable.assignment.parameter.name.curlrc"}}},{"match":"(?:\\G|^|(?\u003c=\\G\"|^\"))(?:([-A-Za-z0-9%_]+)(=)?)?([@\u003c])","captures":{"1":{"name":"entity.name.form-field.curlrc"},"2":{"patterns":[{"include":"etc#eql"}]},"3":{"name":"keyword.operator.source-modifier.curlrc"}}},{"name":"meta.parameter.curlrc","match":"([^\\s=;]+)(=)([^\\s=;]*)(;)?","captures":{"1":{"name":"variable.assignment.parameter.name.curlrc"},"2":{"patterns":[{"include":"etc#eql"}]},"3":{"name":"constant.other.parameter.value.curlrc"},"4":{"name":"punctuation.separator.key-value.semicolon.curlrc"}}},{"match":"(?\u003c=@)(\"(?:[^\\\\\"]|\\\\.)++\"|(?:[^\"\\s;\\\\]|\\\\.)++)(?:(;)|(?=$|\\s))","captures":{"1":{"name":"variable.assignment.parameter.name.curlrc","patterns":[{"include":"etc#esc"}]},"2":{"name":"punctuation.separator.key-value.semicolon.curlrc"}}},{"include":"etc#esc"},{"include":"etc#bareword"}]},"protocols":{"patterns":[{"name":"constant.other.protocol-name.curlrc","match":"[^\\s,+=-]+"},{"name":"keyword.control.permit-protocol.curlrc","match":"\\+"},{"name":"keyword.control.deny-protocol.curlrc","match":"-"},{"name":"keyword.control.permit-protocol.only.curlrc","match":"="},{"include":"etc#comma"}]},"range":{"patterns":[{"name":"meta.byte-range.curlrc","match":"([0-9]+)(-)([0-9]+)?|(-)([0-9]+)","captures":{"1":{"name":"constant.numeric.integer.int.decimal.dec.range.start.curlrc"},"2":{"name":"punctuation.separator.range.dash.curlrc"},"3":{"name":"constant.numeric.integer.int.decimal.dec.range.end.curlrc"},"4":{"name":"punctuation.separator.range.dash.curlrc"},"5":{"name":"constant.numeric.integer.int.decimal.dec.range.end.curlrc"}}},{"include":"etc#comma"},{"include":"etc#int"}]},"separators":{"patterns":[{"include":"etc#eql"},{"include":"etc#kolon"}]},"shortOptions":{"patterns":[{"name":"meta.option.short.curlrc","begin":"^\\s*((-)[:#012346BGIJLMNOQRSVafghijklnpqsv]*[ACDEFHKPQTUXYbcdehmortuwxyz])","end":"(?x)\n$\n|\n\n# Numbers\n(?\u003c=(?#optlist_numeric)[CYmyz])\n\\G (?:(?! )\\s)*\n([-+]?[0-9.]+)\n\n|\n\n# Byte range\n(?\u003c=(?#optlist_range)r)\n\\G (?:(?! )\\s)*\n([-0-9,]+)\n\n|\n\n# “key=value” pairs\n(?\u003c=(?#optlist_form_data)[Fbt])\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.)*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# “key:value” pairs\n(?\u003c=(?#optlist_kv_colon)[EUux])\n\\G (?:(?! )\\s)*\n((?:[^\\\\:\\s/]| )*://)?\n(\n\t(?:[^\\\\:\\s]|\\\\.| )+\n\t(?::(?:[^\\\\:\\s]|\\\\.| )+)*\n\t:?\n)\n\n|\n\n# Headers\n(?\u003c=(?#optlist_headers)H)\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# URLs\n(?\u003c=(?#optlist_urls)e)\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# Port address\n(?\u003c=(?#optlist_port)P)\n\\G (?:(?! )\\s)*\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)\n\n|\n\n# Anything else\n(?:\n\t((\")((?:[^\"\\\\]|\\\\.| )*)(?:(\")|$))\n\t|\n\t([\\S ]+)\n)","beginCaptures":{"1":{"name":"entity.short.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.short.option.curlrc"}},"endCaptures":{"1":{"patterns":[{"include":"etc#num"}]},"10":{"name":"meta.http-headers.curlrc"},"11":{"name":"punctuation.definition.string.begin.curlrc"},"12":{"patterns":[{"include":"#header"}]},"13":{"name":"punctuation.definition.string.end.curlrc"},"14":{"patterns":[{"include":"#header"}]},"15":{"name":"meta.url-string.curlrc"},"16":{"name":"punctuation.definition.string.begin.curlrc"},"17":{"patterns":[{"include":"#url"}]},"18":{"name":"punctuation.definition.string.end.curlrc"},"19":{"patterns":[{"include":"#url"}]},"2":{"patterns":[{"include":"#range"}]},"20":{"name":"string.quoted.double.curlrc"},"21":{"name":"punctuation.definition.string.begin.curlrc"},"22":{"name":"constant.other.port-address.curlrc","patterns":[{"include":"etc#esc"}]},"23":{"name":"punctuation.definition.string.end.curlrc"},"24":{"name":"constant.other.port-address.curlrc"},"25":{"name":"string.quoted.double.curlrc"},"26":{"name":"punctuation.definition.string.begin.curlrc"},"27":{"patterns":[{"include":"etc#esc"}]},"28":{"name":"punctuation.definition.string.end.curlrc"},"29":{"name":"string.unquoted.curlrc"},"3":{"name":"meta.parameter-string.curlrc"},"4":{"name":"punctuation.definition.string.begin.curlrc"},"5":{"patterns":[{"include":"#params"}]},"6":{"name":"punctuation.definition.string.end.curlrc"},"7":{"patterns":[{"include":"#params"}]},"8":{"patterns":[{"include":"#authProtocol"}]},"9":{"patterns":[{"include":"#auth"}]}}},{"name":"meta.option.short.curlrc","match":"^\\s*((-)(?#optlist_no_parameter)[#012346:BGIJLMNORSVZafgijklnpqsv]+)","captures":{"1":{"name":"entity.short.option.name.curlrc"},"2":{"name":"punctuation.definition.dash.short.option.curlrc"}}}]},"string":{"name":"string.quoted.double.curlrc","begin":"\"","end":"\"|(?=$)","patterns":[{"name":"constant.character.escape.backslash.curlrc","match":"(\\\\)[\\\\\"tnrv]","captures":{"1":{"name":"punctuation.definition.escape.backslash.curlrc"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.curlrc"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.curlrc"}}},"url":{"patterns":[{"include":"#autoRefer"},{"include":"etc#comma"},{"match":"(?\u003c=\\G\"|^\")((?:[^\"\\\\]|\\\\.)*)(?=$|\"|;)|(?:\\G(?\u003c!\")|^)([^\\s,]+?)(?=$|\\s|;|,)","captures":{"1":{"patterns":[{"include":"etc#url"},{"include":"#urlNoSchema"}]},"2":{"patterns":[{"include":"etc#url"},{"include":"#urlNoSchema"}]}}},{"include":"#params"},{"include":"etc#bareword"}]},"urlNoSchema":{"match":"(?:\\G|^)\\s*([-a-zA-Z0-9]+(?:\\.|@)[-a-zA-Z0-9]+.*)\\s*","captures":{"1":{"name":"constant.other.reference.link.underline.url.curlrc"}}}}}
@@ -1 +1 @@
1
- {"name":"DataWeave","scopeName":"source.data-weave","patterns":[{"include":"#comments"},{"include":"#directives"},{"name":"keyword.operator.body-marker.dw","match":"(---)"},{"include":"#expressions"},{"name":"invalid","match":"([^\\s]+)"}],"repository":{"annotation-directive":{"name":"meta.directive.annot.dw","begin":"(\\s*(annotation)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(?=\\n)","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]}],"beginCaptures":{"2":{"name":"storage.type.annotation.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"annotation-usage":{"name":"meta.annot.usage.dw","begin":"(\\s*(\\@)([a-zA-Z][a-zA-Z0-9]*))","end":"(?=\\n)","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]}],"beginCaptures":{"2":{"name":"storage.type.annotation.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"array-literal":{"name":"meta.array.literal.dw","begin":"(?\u003c!\\w|}|])(\\[)","end":"\\]","patterns":[{"include":"#expressions"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.square.dw"}},"endCaptures":{"0":{"name":"meta.brace.square.dw"}}},"attr-literal":{"name":"meta.attributes.dw","begin":"\\@\\(","end":"\\)","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"keyword.operator.attributes.dw"}},"endCaptures":{"0":{"name":"keyword.operator.attributes.dw"}}},"case-clause":{"name":"case-clause.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(case|else(?=\\s*-\u003e))\\b(?!\\$|\\.)","end":"\\-\\\u003e","patterns":[{"begin":"(?\u003c!\\.|\\$)\\b(is)\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.control.is.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b(matches)\\b","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.matches.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b([A-Za-z][a-zA-Z0-9_]*)\\s*:\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"entity.name.variable.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b([A-Za-z][a-zA-Z0-9_]*)\\s*(if|matches)\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"entity.name.variable.dw"},"2":{"name":"keyword.control.if.dw"}}},{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.switch.dw"}},"endCaptures":{"0":{"name":"keyword.control.switch.dw"}}},"cast":{"begin":"(?\u003c!\\.|\\$)\\b(as|is)\\s+","end":"(?=$|^|[;,:})\\]\\s])","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.control.as.dw"}}},"comments":{"patterns":[{"name":"comment.block.dw","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.dw"}}},{"match":"\\s*((//).*$\\n?)","captures":{"1":{"name":"comment.line.double-slash.dw"},"2":{"name":"punctuation.definition.comment.dw"}}}]},"constants":{"patterns":[{"name":"constant.language.dw","match":"\\b(true|false|null)\\b"},{"name":"constant.numeric.dw","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b"},{"begin":"\\|","end":"\\|","patterns":[{"name":"constant.numeric.dw","match":"([0-9]+)"},{"name":"constant.character.escape.dw","match":"([+:\\-WYMDTHSPZ\\.])"},{"name":"invalid","match":"([^\\|])"}],"beginCaptures":{"0":{"name":"constant.numeric.dw"}},"endCaptures":{"0":{"name":"constant.numeric.dw"}}}]},"directives":{"patterns":[{"include":"#dw-directive"},{"include":"#import-directive"},{"include":"#type-directive"},{"include":"#fun-directive"},{"include":"#var-directive"},{"include":"#ns-directive"},{"include":"#input-directive"},{"include":"#output-directive"},{"include":"#annotation-usage"},{"include":"#annotation-directive"}]},"do-statement":{"name":"do-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(do)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comments"},{"include":"#directives"},{"name":"keyword.operator.body-marker.dw","match":"(---)"},{"include":"#expressions"},{"name":"invalid","match":"([^\\s]+)"}],"beginCaptures":{"1":{"name":"keyword.control.do.dw"},"2":{"name":"punctuation.definitions.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definitions.end.dw"}}},"dw-directive":{"name":"meta.directive.version.dw","begin":"(?\u003c!\\.|\\$)(%dw)\\s+([0-9]\\.[0-9])(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"comment.dw"},"2":{"name":"comment.dw"}}},"expressions":{"name":"expression","patterns":[{"name":"keyword.other.dw","match":"\\b(not)\\s+"},{"include":"#undefined-fun-character"},{"include":"#paren-expression"},{"include":"#strings"},{"include":"#constants"},{"include":"#comments"},{"include":"#match-statement"},{"include":"#using-statement"},{"include":"#do-statement"},{"include":"#if-statement"},{"include":"#regex"},{"include":"#type_parameters"},{"include":"#keywords"},{"include":"#object-literal"},{"include":"#array-literal"},{"include":"#cast"},{"include":"#object-member"},{"include":"#variable-reference"},{"include":"#selectors"},{"include":"#directives"},{"include":"#infix"}]},"fun-directive":{"name":"meta.directive.fun.dw","begin":"(\\s*(fun)\\s+([a-zA-Z][a-zA-Z0-9_]*|--|\\+\\+))","end":"(=)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]},{"begin":"(:)","end":"(?==)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"generics":{"patterns":[{"begin":"(:)","end":"(?=,|\u003e)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"keyword.operator.extends.dw","match":"\u003c:"},{"include":"#keywords"},{"name":"entity.name.type.parameter.dw","match":"\\w+"}]},"if-statement":{"name":"meta.if.dw","begin":"(?\u003c!\\.|\\$)\\b(if\\s*)\\(","end":"\\)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.if.dw"}}},"import-directive":{"name":"meta.directive.import.dw","begin":"(\\s*(import)\\s+)","end":"(?=(fun|input|output|type|var|ns|import|%dw|private|annotation|\\@|---)\\s|$)","patterns":[{"include":"#comments"},{"match":"(,)"},{"name":"entity.name.type.dw","match":"(\\*)"},{"match":"\\s+(from)\\s+","captures":{"1":{"name":"keyword.control.from"}}},{"name":"entity.name.type.dw","match":"(?:[a-zA-Z][a-zA-Z0-9]*(?:::[a-zA-Z][a-zA-Z0-9]*)+)\n"},{"name":"entity.name.function.dw","match":"(?:[a-zA-Z][a-zA-Z0-9]*)\n"},{"match":"\\s+(as)\\s+([a-zA-Z][a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.control.as"},"2":{"name":"entity.name.function.dw"}}}],"beginCaptures":{"2":{"name":"keyword.control.import"}}},"infix":{"name":"support.function.dw","match":"(?\u003c!^|,|\\[|\\(|=|\\+|\u003e|\u003c|\\-|\\*|:|\\{|case|is|else|not|as|and|or)(?\u003c=[a-zA-Z0-9_$\\}\\])\"'`|/])\\s*(?!(var|match|case|else|fun|input|output|is|as|default|ns|import|null|false|true|using|do|not|and|or)\\s)(\\+\\+|\\-\\-|[a-zA-Z][a-zA-Z_0-9]*)(\\s+|\\s*(?=[\"'/|{]))"},"input-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(input)\\s+([[:alpha:]][[:alnum:]]*)\\s*","end":"(?=\\n)","patterns":[{"begin":"(\\:\\s*)","end":"(\\s|\\n)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.other.dw"}}},{"name":"string.mime.dw","match":"([^{\\n\\s])"}],"beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.variable.dw"}}},"keywords":{"patterns":[{"name":"keyword.reserved.dw","match":"\\b(throw|for|yield|enum|private|async)\\b"},{"name":"invalid","match":"\\b(not)\\b"},{"name":"keyword.control.dw","match":"\\b(if|else|while|for|do|using|unless|default)\\b"},{"name":"keyword.operator.comparison.dw","match":"(~=|==|!=|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.dw","match":"(=)"},{"name":"keyword.operator.declaration.dw","match":"(:)"},{"name":"keyword.operator.arithmetic.dw","match":"(\\-|\\+|\\*|\\/)"},{"name":"keyword.other.dw","match":"\\b(and|or)\\b"}]},"match-block":{"name":"match-block.expr.dw","begin":"\\{","end":"(?=\\})","patterns":[{"include":"#case-clause"},{"include":"#expressions"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.dw"}}},"match-statement":{"name":"match-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(match)\\s*(?=\\{)","end":"\\}","patterns":[{"include":"#match-block"}],"beginCaptures":{"1":{"name":"keyword.control.switch.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.block.dw"}}},"ns-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(ns)\\s+([A-Za-z][a-zA-Z0-9_]*)\\s+([^\\n]*)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.namespace.dw"},"3":{"name":"meta.definition.ns.dw string.url.dw"}}},"object-key":{"patterns":[{"name":"variable.object.member.dw meta.object-literal.namespace.dw","match":"\\b([[:alpha:]][_[:alnum:]]+#)","captures":{"0":{"name":"variable.language.dw"}}},{"name":"variable.object.member.dw meta.object-literal.key.dw","begin":"(?=[\\'\\\"\\`])","end":"(?=@\\(|:)","patterns":[{"include":"#strings"}]},{"name":"variable.object.member.dw","match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:|@\\()","end":"(?=,|\\}|\\))","captures":{"1":{"name":"meta.object-literal.key.dw"}}}]},"object-literal":{"name":"meta.objectliteral.dw","begin":"\\{","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.dw"}},"endCaptures":{"0":{"name":"punctuation.definition.block.dw"}}},"object-member":{"name":"meta.object.member.first.dw","patterns":[{"include":"#comments"},{"include":"#paren-expression"},{"include":"#object-key"},{"include":"#attr-literal"},{"include":"#object-member-body"},{"include":"#punctuation-comma"}]},"object-member-body":{"name":"variable.object.member.dw","begin":":","end":"(?=,|\\}|\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"meta.object-literal.key.dw punctuation.separator.key-value.dw"}}},"object-member-type":{"patterns":[{"include":"#comments"},{"name":"variable.language.dw","match":"_"},{"name":"variable.language.dw","match":"([a-zA-Z0-9]+#)"},{"name":"entity.name.type.dw","match":"\\(\\s*([a-zA-Z][a-zA-Z0-9]*)\\s*\\)"},{"name":"variable.object.member.dw","match":"([a-zA-Z][a-zA-Z0-9]*)"},{"include":"#strings"},{"name":"keyword.operator.optional.dw","match":"\\?"},{"name":"keyword.operator.optional.dw","match":"\\*"},{"begin":"(\\@\\()","end":"(\\))","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}],"beginCaptures":{"1":{"name":"keyword.operator.attributes.dw"}},"endCaptures":{"1":{"name":"keyword.operator.attributes.dw"}}},{"begin":"(:)","end":"(?=,|}|\\)|\\|}|\\-}|\\|\\-})","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"invalid","match":"([^\\s])"}]},"output-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(output)\\s+([^\\n{\\s]*)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"string.other.dw"}}},"parameters":{"patterns":[{"begin":"(:)","end":"(?=,|\\)|=)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"begin":"(=)","end":"(?=,|\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"variable.parameter.dw","match":"\\w+"}]},"paren-expression":{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"punctuation.expression.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.expression.end.dw"}}},"punctuation-comma":{"name":"punctuation.separator.comma.dw","match":","},"qstring-backtick":{"begin":"`","end":"`","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.template.dw","match":"([^`])"}],"beginCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.end.dw"}}},"qstring-double":{"begin":"\"","end":"\"","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.quoted.double.dw","match":"([^\"])"}],"beginCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.end.dw"}}},"qstring-single":{"begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.quoted.single.dw","match":"([^'])"}],"beginCaptures":{"0":{"name":"string.quoted.single.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"string.quoted.single.dw punctuation.definition.string.end.dw"},"2":{"name":"invalid.illegal.newline.dw"}}},"regex":{"patterns":[{"name":"string.regexp.dw","begin":"(?\u003c=[=(:,\\[?+!]|replace|match|scan|matches|contains|---|case|-\u003e|and|or|\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\])+\\/(?![\\/*])(?!\\s*[a-zA-Z0-9_$]))","end":"(/)","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.dw"}}},{"name":"string.regexp.dw","begin":"(?\u003c![_$[:alnum:])])\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\])+\\/(?![\\/*])(?!\\s*[a-zA-Z0-9_$]))","end":"(/)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.dw"}}}]},"regex-character-class":{"patterns":[{"name":"constant.other.character-class.regexp","match":"\\\\[wWsSdDtrnvf]|\\."},{"name":"constant.character.numeric.regexp","match":"\\\\([0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]])"},{"name":"constant.character.control.regexp","match":"\\\\c[A-Z]"},{"name":"constant.character.escape.backslash.regexp","match":"\\\\."}]},"regexp":{"patterns":[{"name":"keyword.control.anchor.regexp","match":"\\\\[bB]|\\^|\\$"},{"name":"keyword.other.back-reference.regexp","match":"\\\\[1-9]\\d*"},{"name":"keyword.operator.quantifier.regexp","match":"[?+*]|\\{(\\d+,\\d+|\\d+,|,\\d+|\\d+)\\}\\??"},{"name":"keyword.operator.or.regexp","match":"\\|"},{"name":"meta.group.assertion.regexp","begin":"(\\()((\\?=)|(\\?!))","end":"(\\))","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}}},{"name":"meta.group.regexp","begin":"\\((\\?:)?","end":"\\)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.capture.regexp"}},"endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}}},{"name":"constant.other.character-class.set.regexp","begin":"(\\[)(\\^)?","end":"(\\])","patterns":[{"name":"constant.other.character-class.range.regexp","match":"(?:.|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))\\-(?:[^\\]\\\\]|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))","captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}}},{"include":"#regex-character-class"}],"beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}}},{"include":"#regex-character-class"}]},"selectors":{"name":"meta.selector.data-weave","begin":"(?\u003c![\\[\\(:+*/\\-])(\\s*\\.\\.\\*|\\s*\\.\\.|\\s*\\.\\*|\\s*\\.\\@|\\s*\\.#|\\s*\\.\u0026|\\s*\\.|(?=\\[)|\\:\\:)","end":"(?=\\s|,|\\}|\\)|\\n|\\]|\\(|-|$)","patterns":[{"name":"variable.object.member.dw","match":"\\b([[:alpha:]][_[:alnum:]]+#)","captures":{"0":{"name":"variable.language.dw"}}},{"name":"variable.object.member.dw","match":"((?:[A-Za-z])([a-zA-Z0-9_]*)[?!]?|(\\$)+)"},{"include":"#strings"},{"begin":"(\\[(@|\\^)?)","end":"(\\])","patterns":[{"include":"#expressions"},{"name":"invalid","match":"([\\)])"}]},{"include":"#selectors"}]},"string-character-escape":{"name":"constant.character.escape.dw","match":"\\\\(u[[:xdigit:]]{4}|$|.)"},"strings":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#qstring-backtick"},{"include":"#template"}]},"template":{"begin":"([$[:alpha:]][_$[:alnum:]]*)\\s*(`)","end":"`","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.template.dw","match":"([^`])"}],"beginCaptures":{"1":{"name":"support.function.dw"},"2":{"name":"string.template.dw punctuation.definition.string.template.begin.dw"}},"endCaptures":{"0":{"name":"string.template.dw punctuation.definition.string.template.end.dw"}}},"template-dollar":{"patterns":[{"name":"variable.parameter.dw","match":"(\\$(\\$)+)"},{"name":"variable.parameter.dw","match":"(\\$)(?![a-zA-Z(])"},{"name":"variable.parameter.dw","match":"(\\$)([a-zA-Z][a-zA-Z0-9_]*)","captures":{"1":{"name":"keyword.other.dw"},"2":{"name":"variable.other.dw"}}}]},"template-substitution-element":{"name":"meta.template.expression.dw","begin":"\\$\\(","end":"\\)","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"keyword.other.dw"}},"endCaptures":{"0":{"name":"keyword.other.dw"}}},"type-directive":{"name":"meta.directive.type.dw","begin":"(\\s*(type)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(?=(fun|input|output|type|var|ns|import|%dw|private|---)\\s|(\\@[a-zA-Z][a-zA-Z0-9]*))","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"name":"keyword.other.dw","match":"\\="},{"include":"#types"}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.type.dw"}}},"type_parameters":{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#types"},{"include":"#punctuation-comma"},{"include":"#comments"}]},"types":{"patterns":[{"include":"#comments"},{"name":"constant.language.dw","match":"\\b(true|false|null)\\b"},{"name":"constant.numeric.dw","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b"},{"include":"#strings"},{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#types"},{"include":"#punctuation-comma"},{"include":"#comments"}]},{"begin":"\\{\\-\\|","end":"\\|\\-\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{\\|","end":"\\|\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{\\-","end":"\\-\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{","end":"\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"(\\()","end":"(\\)\\s*-\u003e|\\))","patterns":[{"include":"#types"},{"include":"#parameters"}],"beginCaptures":{"0":{"name":"keyword.operator.grouping.dw"}},"endCaptures":{"0":{"name":"keyword.operator.grouping.dw"}}},{"name":"support.class.dw","match":"(String|Boolean|Number|Range|Namespace|Uri|DateTime|LocalDateTime|Date|LocalTime|TimeZone|Time|Period|Binary|Null|Regex|Nothing|Any|Object|Key)"},{"begin":"(Array|Type)\\s*\u003c","end":"\u003e","patterns":[{"name":"invalid","match":","},{"include":"#types"}],"beginCaptures":{"1":{"name":"support.type.dw"}}},{"name":"keyword.operator.declaration.dw","match":"(\u0026|\\|)"},{"name":"keyword.operator.declaration.dw","match":"\u003c:"},{"name":"support.class.dw","match":"\\b([A-Z][a-zA-Z0-9_]*)"},{"include":"#undefined-fun-character"},{"match":"\\b(var|fun|ns)\\b"},{"name":"invalid","match":"\\b(input|output|var|ns|import|try|catch|throw|do|for|yield|enum|private|async)\\b"},{"name":"invalid","match":"\\b(if|else|while|for|do|using|unless|default|match)\\b"},{"name":"invalid","match":"(~=|==|!=|===|!==|\u003c=|\u003e=|\u003c|\u003e|\\$+)"}]},"undefined-fun-character":{"name":"constant.language.undefined.dw","match":"\\?\\?\\?"},"using-statement":{"name":"using-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(using)\\s*(\\()","end":"(\\))","patterns":[{"match":"((?:\\+\\+|\\-\\-|[A-Za-z])(?:[a-zA-Z0-9_]*))(\\s*=)","captures":{"1":{"name":"entity.name.variable.dw"},"2":{"name":"keyword.operator.dw"}}},{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.using.dw"},"2":{"name":"punctuation.definitions.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definitions.end.dw"}}},"var-directive":{"name":"meta.directive.var.dw","begin":"(\\s*(var)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(=)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"begin":"(:)","end":"(?==|$)","patterns":[{"include":"#comments"},{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.variable.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"variable-reference":{"patterns":[{"name":"variable.other.dw","match":"\\b(?!(fun|input|output|type|var|ns|import|%dw|private|---)\\b)((\\+\\+|\\-\\-|[A-Za-z])[a-zA-Z0-9_]*)"},{"name":"invalid","match":"\\b(fun|input|output|type|var|ns|import|private)\\b"},{"name":"variable.parameter.dw","match":"(\\$+)"}]}}}
1
+ {"name":"DataWeave","scopeName":"source.data-weave","patterns":[{"include":"#namespace"},{"include":"#comment"},{"include":"#document"},{"include":"#constant"},{"include":"#keyword"},{"include":"#directive"},{"include":"#identifier"},{"include":"#selector"}],"repository":{"comment":{"patterns":[{"name":"comment.block.dw","begin":"/\\*","end":"\\*/"},{"match":"\\s*((//).*$\\n?)","captures":{"1":{"name":"comment.line.double-slash.dw"},"2":{"name":"punctuation.definition.comment.dw"}}}]},"constant":{"patterns":[{"include":"#regex"},{"include":"#string-constants"},{"include":"#number-constants"},{"name":"constant.language.dw","match":"(?\u003c![[:alnum:]])(?:true|false|null)(?![[:alnum:]_])"}]},"directive":{"patterns":[{"name":"meta.directive.version.dw","begin":"(%dw)\\s+([0-9]+\\.[0-9]+)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"keyword.directive.version.dw"},"2":{"name":"constant.numeric.version.dw"}}},{"name":"storage.type.dw","match":"(?\u003c![[:alnum:]_])(?:import|fun|ns|input|var|type|annotation|output|from)(?![[:alnum:]_])"}]},"document":{"patterns":[{"name":"keyword.operator.body-marker.dw","match":"(---)"}]},"identifier":{"patterns":[{"name":"entity.name.variable.dw","match":"[[:alpha:]][[:alnum:]_]*"}]},"keyword":{"patterns":[{"name":"keyword.control.dw","match":"(?\u003c![[:alnum:]])(?:if|else|unless|do|using|default|match|case|update)(?![[:alnum:]_])"},{"name":"keyword.operator.dw","match":"(?\u003c![[:alnum:]_])(?:and|or|not|as|is)(?![[:alnum:]_])"},{"name":"keyword.operator.case.dw","match":"(-\u003e)"},{"name":"keyword.operator.assignment.metadata.dw","match":"(\u003c~)"},{"name":"keyword.operator.comparison.dw","match":"(~=|==|!=|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.dw","match":"(=)"},{"name":"keyword.operator.declaration.dw","match":"(:)"},{"name":"keyword.operator.arithmetic.dw","match":"(\\-|\\+|\\*|\\/)"},{"name":"keyword.operator.implement.dw","match":"\\?\\?\\?"}]},"namespace":{"patterns":[{"match":"(ns)\\s+([[:alpha:]][[:alnum:]_]*)\\s+([^\\s]*)","captures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.variable.dw"},"3":{"name":"markup.underline.link"}}}]},"number-constants":{"patterns":[{"name":"constant.numeric.dw","match":"(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][0-9]*)?"}]},"regex":{"patterns":[{"name":"string.regexp.dw","match":"\\/.*\\/"}]},"selector":{"patterns":[{"name":"storage.type.dw","match":"\\.\\.|\\.\\*|\\.\\^|\\.\\@|\\."},{"name":"storage.type.dw","begin":"\\[","end":"\\]","patterns":[{"include":"$self"}]}]},"string-constants":{"patterns":[{"name":"string.quoted.double.dw","begin":"\"","end":"\"","patterns":[{"include":"#string-interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dw"}}},{"name":"string.quoted.single.dw","begin":"'","end":"'","patterns":[{"include":"#string-interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dw"}}},{"name":"string.quoted.backtick.dw","begin":"`","end":"`","patterns":[{"include":"#string-interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dw"}}}]},"string-interpolation":{"patterns":[{"begin":"\\$\\(","end":"\\)","patterns":[{"include":"#selector"},{"include":"$self"}],"beginCaptures":{"0":{"name":"keyword.other.dw"}},"endCaptures":{"0":{"name":"keyword.other.dw"}}},{"match":"(\\$)([[:alpha:]][[:alnum:]_]*)","captures":{"1":{"name":"keyword.other.dw"},"2":{"name":"entity.name.variable.dw"}}}]}}}
@@ -1 +1 @@
1
- {"name":".env","scopeName":"source.dotenv","patterns":[{"include":"#main"}],"repository":{"comment":{"begin":"^([ \\t]*)(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.dotenv","begin":"\\G(#)","end":"$","beginCaptures":{"1":{"name":"punctuation.definition.comment.dotenv"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.comment.dotenv"}}},"field":{"name":"meta.field.dotenv","contentName":"meta.field.rhs.dotenv","begin":"^(([ \\t]*)(?:(export)\\s+)?([-\\w.]+)\\s*)(=|:)","end":"(?!\\G)","patterns":[{"name":"punctuation.whitespace.trailing.empty-value.dotenv","match":"\\G[ \\t]+$"},{"begin":"\\G[ \\t]*(?=(\"|')(?:[^\\\\\"']|(?!\\1)[\"']|\\\\.)*+\\1$)","end":"(?!\\G)","patterns":[{"include":"#strings"}]},{"contentName":"string.unquoted.field.dotenv","begin":"\\G[ \\t]*(?!\"|')(?=\\S)","end":"([ \\t]*)$","endCaptures":{"1":{"name":"punctuation.whitespace.trailing.dotenv"}}}],"beginCaptures":{"1":{"name":"meta.field.lhs.dotenv"},"2":{"name":"punctuation.whitespace.leading.field.dotenv"},"3":{"name":"storage.modifier.export.dotenv"},"4":{"name":"variable.assignment.environment.dotenv"},"5":{"name":"keyword.operator.assignment.key-value.dotenv"}}},"main":{"patterns":[{"include":"#comment"},{"include":"#field"}]},"strings":{"patterns":[{"name":"string.quoted.double.dotenv","begin":"\\G\"","end":"\"","patterns":[{"name":"constant.character.escape.newline.dotenv","match":"(\\\\)n","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}},{"name":"constant.character.escape.quote.dotenv","match":"(\\\\)\"","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dotenv"}},"endCaptures":{"0":{"name":"punctuation.definition.string.env.dotenv"}}},{"name":"string.quoted.single.dotenv","begin":"\\G'","end":"'","patterns":[{"name":"constant.character.escape.quote.dotenv","match":"(\\\\)'","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dotenv"}},"endCaptures":{"0":{"name":"punctuation.definition.string.env.dotenv"}}}]}},"injections":{"source.dotenv meta.field.rhs string - string.quoted.single":{"patterns":[{"name":"source.shell.embedded.dotenv","match":"(?\u003c!\\\\)(\\${)(.*?)(?\u003c!\\\\)(})","captures":{"1":{"name":"punctuation.section.embedded.begin.dotenv"},"2":{"name":"constant.language.environment.variable.dotenv"},"3":{"name":"punctuation.section.embedded.end.dotenv"}}},{"name":"entity.name.variable.dotenv","match":"(?\u003c!\\\\)(\\$)[a-zA-Z0-9_]+","captures":{"1":{"name":"punctuation.definition.variable.dotenv"}}},{"name":"source.shell.embedded.dotenv","match":"(?\u003c!\\\\)(\\$\\()(.*?)(?\u003c!\\\\)(\\))","captures":{"1":{"name":"punctuation.section.embedded.begin.dotenv"},"2":{"patterns":[{"include":"source.shell"}]},"3":{"name":"punctuation.section.embedded.end.dotenv"}}}]},"source.dotenv meta.field.rhs string.unquoted":{"patterns":[{"name":"comment.line.number-sign.inline.dotenv","begin":"(?\u003c=\\S)[ \\t]+(#)","end":"(?=$)","captures":{"1":{"name":"punctuation.definition.comment.dotenv"}}}]}}}
1
+ {"name":".env","scopeName":"source.dotenv","patterns":[{"include":"#main"}],"repository":{"comment":{"name":"comment.line.number-sign.dotenv","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.dotenv"}}},"field":{"name":"meta.field.dotenv","contentName":"meta.field.rhs.dotenv","begin":"^(([ \\t]*)(?:(export)\\s+)?([-\\w.]+)\\s*)(=|:)","end":"(?!\\G)","patterns":[{"name":"punctuation.whitespace.trailing.empty-value.dotenv","match":"\\G[ \\t]+$"},{"begin":"\\G[ \\t]*(?=[\"'`])","end":"(?!\\G)","patterns":[{"include":"#strings"}]},{"contentName":"string.unquoted.field.dotenv","begin":"\\G[ \\t]*(?!\"|')(?=[^#\\s])","end":"([ \\t]*)(?=$|#)","endCaptures":{"1":{"name":"punctuation.whitespace.trailing.dotenv"}}}],"beginCaptures":{"1":{"name":"meta.field.lhs.dotenv"},"2":{"name":"punctuation.whitespace.leading.field.dotenv"},"3":{"name":"storage.modifier.export.dotenv"},"4":{"name":"variable.assignment.environment.dotenv"},"5":{"name":"keyword.operator.assignment.key-value.dotenv"}}},"main":{"patterns":[{"include":"#comment"},{"include":"#field"}]},"stringBackticks":{"name":"string.quoted.backticks.dotenv","begin":"\\G`","end":"`","patterns":[{"name":"constant.character.escape.quote.dotenv","match":"(\\\\)`","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dotenv"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dotenv"}}},"stringDoubleQuoted":{"name":"string.quoted.double.dotenv","begin":"\\G\"","end":"\"","patterns":[{"name":"constant.character.escape.newline.dotenv","match":"(\\\\)n","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}},{"name":"constant.character.escape.quote.dotenv","match":"(\\\\)\"","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dotenv"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dotenv"}}},"stringSingleQuoted":{"name":"string.quoted.single.dotenv","begin":"\\G'","end":"'","patterns":[{"name":"constant.character.escape.quote.dotenv","match":"(\\\\)'","captures":{"1":{"name":"punctuation.definition.escape.backslash.dotenv"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dotenv"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dotenv"}}},"strings":{"patterns":[{"include":"#stringDoubleQuoted"},{"include":"#stringSingleQuoted"},{"include":"#stringBackticks"}]}},"injections":{"source.dotenv meta.field.rhs string - string.quoted.single":{"patterns":[{"name":"source.shell.embedded.dotenv","match":"(?\u003c!\\\\)(\\${)(.*?)(?\u003c!\\\\)(})","captures":{"1":{"name":"punctuation.section.embedded.begin.dotenv"},"2":{"name":"constant.language.environment.variable.dotenv"},"3":{"name":"punctuation.section.embedded.end.dotenv"}}},{"name":"entity.name.variable.dotenv","match":"(?\u003c!\\\\)(\\$)[a-zA-Z0-9_]+","captures":{"1":{"name":"punctuation.definition.variable.dotenv"}}},{"name":"source.shell.embedded.dotenv","match":"(?\u003c!\\\\)(\\$\\()(.*?)(?\u003c!\\\\)(\\))","captures":{"1":{"name":"punctuation.section.embedded.begin.dotenv"},"2":{"patterns":[{"include":"source.shell"}]},"3":{"name":"punctuation.section.embedded.end.dotenv"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Delimiter-separated values","scopeName":"source.dsv","patterns":[{"include":"#main"}],"repository":{"field":{"patterns":[{"name":"meta.field.empty.dsv","match":"(.)[ \\t\\v\\f]*(?=$|\\1)","captures":{"1":{"patterns":[{"include":"#separator"}]}}},{"name":"meta.field.dsv","contentName":"string.unquoted.dsv","begin":"(.)(\\s*)(?=\\S)(?!\\1)","end":"([ \\t\\v\\f]*)(?=\\1|$)","beginCaptures":{"1":{"patterns":[{"include":"#separator"}]},"2":{"name":"punctuation.whitespace.leading.dsv"}},"endCaptures":{"1":{"name":"punctuation.whitespace.trailing.dsv"}}}]},"main":{"patterns":[{"include":"#record"}]},"record":{"name":"meta.record.dsv","begin":"(?:^(\\s*)([^;:|~#^!\\x1C-\\x1F]+?)(\\s*))?(?=([;:|~#^!\\x1C-\\x1F]))","end":"(?!\\G)(?=\\4|$)","patterns":[{"include":"#field"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.dsv"},"2":{"name":"string.unquoted.dsv"},"3":{"name":"punctuation.whitespace.trailing.dsv"}}},"separator":{"name":"keyword.operator.separator.dsv","match":".","captures":{"0":{"patterns":[{"name":"punctuation.c0.ctrl-char.file-separator.dsv","match":"\\x1C"},{"name":"punctuation.c0.ctrl-char.group-separator.dsv","match":"\\x1D"},{"name":"punctuation.c0.ctrl-char.record-separator.dsv","match":"\\x1E"},{"name":"punctuation.c0.ctrl-char.unit-separator.dsv","match":"\\x1F"},{"name":"punctuation.separator.delimiter.dsv","match":"."}]}}}}}
@@ -1 +1 @@
1
- {"name":"EdgeQL","scopeName":"source.edgeql","patterns":[{"include":"#all"}],"repository":{"all":{"patterns":[{"include":"#fnstatement"},{"include":"#expressions"},{"name":"punctuation.statement.delimiter.edgeql","match":"(;)"}]},"array-dimensions":{"begin":"(\\[)","end":"(\\])","patterns":[{"name":"constant.numeric.edgeql","match":"(\\d+)"},{"name":"invalid.illegal.type.edgeql","match":"\\S+"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"builtin-indexes":{"name":"support.other.index.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n brin | btree | gin | gist |\n hash | index | spgist\n)\\b\n"},"builtin-modules":{"name":"support.other.module.builtin.edgeql","match":"(?x) \\b(?\u003c!::|\\.|\\.\u003c|\\.\u003e)(\n cal | cfg | enc | ext |\n fts | math | pg | schema |\n std | sys\n)\\b\n"},"builtin-types":{"name":"support.type.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n Base64Alphabet | BaseObject | ElasticLanguage | FreeObject |\n JsonEmpty | Language | LuceneLanguage | Object |\n PGLanguage | Weight | anycontiguous | anydiscrete |\n anyenum | anyfloat | anyint | anynumeric |\n anypoint | anyreal | anyscalar | anytype |\n array | bigint | bool | bytes |\n date_duration | datetime | decimal | document |\n duration | enum | float32 | float64 |\n int16 | int32 | int64 | json |\n local_date | local_datetime | local_time | multirange |\n range | relative_duration | sequence | str |\n tuple | uuid\n)\\b\n"},"builtins":{"patterns":[{"name":"support.function.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n abs | adjacent | all |\n any | array_agg | array_fill |\n array_get | array_join | array_replace |\n array_unpack | assert | assert_distinct |\n assert_exists | assert_single | bit_and |\n bit_lshift | bit_not | bit_or |\n bit_rshift | bit_xor | bounded_above |\n bounded_below | bytes_get_bit | ceil |\n contains | count | date_get |\n datetime_current | datetime_get | datetime_of_statement |\n datetime_of_transaction | datetime_truncate | duration_get |\n duration_normalize_days | duration_normalize_hours | duration_to_seconds |\n duration_truncate | enumerate | find |\n floor | get_current_database | get_instance_name |\n get_transaction_isolation | get_version | get_version_as_str |\n json_array_unpack | json_get | json_object_pack |\n json_object_unpack | json_set | json_typeof |\n len | lg | ln |\n log | max | mean |\n min | multirange | multirange_unpack |\n overlaps | random | range |\n range_get_lower | range_get_upper | range_is_empty |\n range_is_inclusive_lower | range_is_inclusive_upper | range_unpack |\n re_match | re_match_all | re_replace |\n re_test | round | search |\n sequence_next | sequence_reset | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n time_get | to_bigint | to_bytes |\n to_date_duration | to_datetime | to_decimal |\n to_duration | to_float32 | to_float64 |\n to_int16 | to_int32 | to_int64 |\n to_json | to_local_date | to_local_datetime |\n to_local_time | to_relative_duration | to_str |\n uuid_generate_v1mc | uuid_generate_v4 | var |\n var_pop | with_options\n)(?=\\s*\\()\\b\n"},{"name":"support.function.constraint.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n)\\b\n"},{"include":"#builtin-modules"},{"name":"support.other.link.builtin.edgeql","match":"(?x) \\b(\n __edgedbsys__ | __edgedbtpl__ | __new__ |\n __old__ | __source__ | __specified__ |\n __std__ | __subject__ | __type__\n)\\b\n"}]},"bytes":{"patterns":[{"name":"string.quoted.bytes.edgeql","begin":"(b)(')","end":"(\\2)","patterns":[{"include":"#bytes-escapes"},{"match":"([\\n -\u0026(-\\[\\]-~])+"},{"name":"invalid.illegal.bytes.edgeql","match":"(\\\\x.{1,2})|(\\\\.)|(.)"}],"beginCaptures":{"1":{"name":"storage.type.string.edgeql"},"2":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}},{"name":"string.quoted.bytes.edgeql","begin":"(b)(\")","end":"(\\2)","patterns":[{"include":"#bytes-escapes"},{"match":"([\\n -!#-\\[\\]-~])+"},{"name":"invalid.illegal.bytes.edgeql","match":"(\\\\x.{1,2})|(\\\\.)|(.)"}],"beginCaptures":{"1":{"name":"storage.type.string.edgeql"},"2":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}}]},"bytes-escapes":{"name":"constant.character.escape.edgeql","match":"(?x)\n (\n \\\\[\\\\'\"bfnrt] |\n \\\\x[0-9a-fA-F]{2}\n )\n"},"casts":{"contentName":"meta.typecast.edgeql","begin":"(?xi)\n (?:\n (?\u003c= ^ | [@~+\\-*/%^\u003c\u003e=?,:(\\[{])\n |\n (?\u003c=\n AND | OR | NOT | LIKE | ILIKE | IS | IN | IF | ELSE |\n UNION | ALL | EXISTS |\n\n SELECT | GROUP | UPDATE | BY | THEN | LIMIT |\n # there are some ligature-related issues with \"fi\" and \"ff\"\n F[Ii]LTER | OF[Ff]SET\n )\n ) \\s* (\\\u003c)\n","end":"(\\\u003e)","patterns":[{"include":"#types"},{"include":"#types-common"}],"beginCaptures":{"1":{"name":"keyword.operator.cast.begin.edgeql"}},"endCaptures":{"1":{"name":"keyword.operator.cast.end.edgeql"}}},"code":{"patterns":[{"match":"(?xi)\n \\b(FROM) \\s+ (EDGEQL | SQL) \\s+ (EXPRESSION)\n","captures":{"1":{"name":"keyword.declaration.edgeql"},"3":{"name":"keyword.declaration.edgeql"}}},{"begin":"(?xi)\n \\b(FROM) \\s+\n (SQL) \\s+\n (\\$\\w?\\$)\n","end":"(\\3)","patterns":[{"include":"source.sql"}],"beginCaptures":{"1":{"name":"keyword.declaration.edgeql"},"3":{"name":"string.quoted.edgeql"}},"endCaptures":{"1":{"name":"string.quoted.edgeql"}}},{"begin":"(?xi)\n \\b(FROM) \\s+\n (EDGEQL) \\s+\n (\\$\\w?\\$)\n","end":"(\\3)","patterns":[{"include":"source.edgeql"}],"beginCaptures":{"1":{"name":"keyword.declaration.edgeql"},"3":{"name":"string.quoted.edgeql"}},"endCaptures":{"1":{"name":"string.quoted.edgeql"}}}]},"commandblock":{"begin":"(?=SET|CREATE|ALTER|DROP|RENAME|FROM)","end":"(?=\\})","patterns":[{"include":"#all"}]},"comments":{"patterns":[{"name":"comment.line.number-sign.edgeql","match":"(#)\\s*((BUG|FIXME|TODO|XXX)).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.edgeql"},"2":{"name":"comment.line.note.notation.edgeql"},"3":{"name":"comment.line.note.edgeql"}}},{"name":"comment.line.number-sign.edgeql","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.edgeql"}}}]},"curlybraces":{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"#comments"},{"include":"#commandblock"},{"include":"#shape"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"definition":{"match":"(?x)\n (?:\n ([[:alpha:]_][[:alnum:]_]*)\n |\n ([\\.\\d]\\S*?)\n ) (?=\\s*:=)\n","captures":{"1":{"name":"variable.parameter.definition.edgeql"},"2":{"name":"invalid.illegal.definition.edgeql"}}},"expressions":{"patterns":[{"include":"#comments"},{"include":"#code"},{"include":"#keywords"},{"include":"#fncalls"},{"include":"#operators"},{"include":"#builtins"},{"include":"#types"},{"include":"#quoted-name"},{"include":"#values"},{"include":"#link-properties"},{"include":"#variables"},{"include":"#parentheses"},{"include":"#squarebraces"},{"include":"#curlybraces"},{"include":"#casts"}]},"fncallargs":{"patterns":[{"include":"#definition"},{"include":"#expressions"},{"name":"punctuation.separator.arguments.edgeql","match":"(,)"},{"name":"invalid.illegal.delimiter.edgeql","match":"(;)"}]},"fncalls":{"patterns":[{"name":"meta.function-call.edgeql","begin":"(?x)\n \\b(?\u003c!\\.|\\.\u003c|\\.\u003e)\n # function name\n (?:\n (\n # functions\n abs | adjacent | all |\n any | array_agg | array_fill |\n array_get | array_join | array_replace |\n array_unpack | assert | assert_distinct |\n assert_exists | assert_single | bit_and |\n bit_lshift | bit_not | bit_or |\n bit_rshift | bit_xor | bounded_above |\n bounded_below | bytes_get_bit | ceil |\n contains | count | date_get |\n datetime_current | datetime_get | datetime_of_statement |\n datetime_of_transaction | datetime_truncate | duration_get |\n duration_normalize_days | duration_normalize_hours | duration_to_seconds |\n duration_truncate | enumerate | find |\n floor | get_current_database | get_instance_name |\n get_transaction_isolation | get_version | get_version_as_str |\n json_array_unpack | json_get | json_object_pack |\n json_object_unpack | json_set | json_typeof |\n len | lg | ln |\n log | max | mean |\n min | multirange | multirange_unpack |\n overlaps | random | range |\n range_get_lower | range_get_upper | range_is_empty |\n range_is_inclusive_lower | range_is_inclusive_upper | range_unpack |\n re_match | re_match_all | re_replace |\n re_test | round | search |\n sequence_next | sequence_reset | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n time_get | to_bigint | to_bytes |\n to_date_duration | to_datetime | to_decimal |\n to_duration | to_float32 | to_float64 |\n to_int16 | to_int32 | to_int64 |\n to_json | to_local_date | to_local_datetime |\n to_local_time | to_relative_duration | to_str |\n uuid_generate_v1mc | uuid_generate_v4 | var |\n var_pop | with_options\n |\n # constraints\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n )\n |\n ([[:alpha:]_][[:alnum:]_]*)\n |\n (`.*?`)\n ) \\s*(\\()\n","end":"(\\))","patterns":[{"include":"#fncallargs"}],"beginCaptures":{"1":{"name":"support.function.builtin.edgeql"},"2":{"name":"entity.name.function.edgeql"},"3":{"name":"string.interpolated.edgeql"},"4":{"name":"punctuation.definition.arguments.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.edgeql"}}},{"name":"meta.function-call.edgeql","begin":"(?x)\n \\b(?\u003c!\\.|\\.\u003c|\\.\u003e)\n # module\n (?:\n (\n cal | cfg | enc |\n ext | fts | math |\n pg | schema | std |\n sys\n )\n |\n (?# masking built-ins in odd ways)\n (\n #functions\n abs | adjacent | all |\n any | array_agg | array_fill |\n array_get | array_join | array_replace |\n array_unpack | assert | assert_distinct |\n assert_exists | assert_single | bit_and |\n bit_lshift | bit_not | bit_or |\n bit_rshift | bit_xor | bounded_above |\n bounded_below | bytes_get_bit | ceil |\n contains | count | date_get |\n datetime_current | datetime_get | datetime_of_statement |\n datetime_of_transaction | datetime_truncate | duration_get |\n duration_normalize_days | duration_normalize_hours | duration_to_seconds |\n duration_truncate | enumerate | find |\n floor | get_current_database | get_instance_name |\n get_transaction_isolation | get_version | get_version_as_str |\n json_array_unpack | json_get | json_object_pack |\n json_object_unpack | json_set | json_typeof |\n len | lg | ln |\n log | max | mean |\n min | multirange | multirange_unpack |\n overlaps | random | range |\n range_get_lower | range_get_upper | range_is_empty |\n range_is_inclusive_lower | range_is_inclusive_upper | range_unpack |\n re_match | re_match_all | re_replace |\n re_test | round | search |\n sequence_next | sequence_reset | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n time_get | to_bigint | to_bytes |\n to_date_duration | to_datetime | to_decimal |\n to_duration | to_float32 | to_float64 |\n to_int16 | to_int32 | to_int64 |\n to_json | to_local_date | to_local_datetime |\n to_local_time | to_relative_duration | to_str |\n uuid_generate_v1mc | uuid_generate_v4 | var |\n var_pop | with_options\n |\n #constraints\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n )\n |\n ([[:alpha:]_][[:alnum:]_]*)\n |\n (`.*?`)\n )\n\n \\s*(::)\\s*\n\n # function name\n (?:\n (\n #functions\n abs | adjacent | all |\n any | array_agg | array_fill |\n array_get | array_join | array_replace |\n array_unpack | assert | assert_distinct |\n assert_exists | assert_single | bit_and |\n bit_lshift | bit_not | bit_or |\n bit_rshift | bit_xor | bounded_above |\n bounded_below | bytes_get_bit | ceil |\n contains | count | date_get |\n datetime_current | datetime_get | datetime_of_statement |\n datetime_of_transaction | datetime_truncate | duration_get |\n duration_normalize_days | duration_normalize_hours | duration_to_seconds |\n duration_truncate | enumerate | find |\n floor | get_current_database | get_instance_name |\n get_transaction_isolation | get_version | get_version_as_str |\n json_array_unpack | json_get | json_object_pack |\n json_object_unpack | json_set | json_typeof |\n len | lg | ln |\n log | max | mean |\n min | multirange | multirange_unpack |\n overlaps | random | range |\n range_get_lower | range_get_upper | range_is_empty |\n range_is_inclusive_lower | range_is_inclusive_upper | range_unpack |\n re_match | re_match_all | re_replace |\n re_test | round | search |\n sequence_next | sequence_reset | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n time_get | to_bigint | to_bytes |\n to_date_duration | to_datetime | to_decimal |\n to_duration | to_float32 | to_float64 |\n to_int16 | to_int32 | to_int64 |\n to_json | to_local_date | to_local_datetime |\n to_local_time | to_relative_duration | to_str |\n uuid_generate_v1mc | uuid_generate_v4 | var |\n var_pop | with_options\n |\n #constraints\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n )\n |\n ([[:alpha:]_][[:alnum:]_]*)\n |\n (`.*?`)\n ) \\s*(\\()\n","end":"(\\))","patterns":[{"include":"#fncallargs"}],"beginCaptures":{"1":{"name":"support.other.module.builtin.edgeql"},"2":{"name":"support.function.builtin.edgeql"},"3":{"name":"entity.name.function.edgeql"},"4":{"name":"string.interpolated.edgeql"},"5":{"name":"keyword.operator.namespace.edgeql"},"6":{"name":"support.function.builtin.edgeql"},"7":{"name":"entity.name.function.edgeql"},"8":{"name":"string.interpolated.edgeql"},"9":{"name":"punctuation.definition.arguments.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.edgeql"}}}]},"fnstatement":{"begin":"(?ix) \\b(?\u003c![:\\.])(FUNCTION|AGGREGATE|ABSTRACT CONSTRAINT)\\b","end":"(?=[^\\s\\w:]|\\bEXTENDING\\b|$)","patterns":[{"include":"#builtins"},{"include":"#identifier"},{"name":"keyword.operator.namespace.edgeql","match":"(::)"}],"beginCaptures":{"1":{"name":"keyword.declaration.edgeql"}}},"identifier":{"match":"([[:alpha:]_][[:alnum:]_]*)"},"keywords":{"patterns":[{"name":"constant.language.boolean.true.edgeql","match":"(?i)\\b(TRUE)\\b"},{"name":"constant.language.boolean.false.edgeql","match":"(?i)\\b(FALSE)\\b"},{"name":"constant.language.empty.edgeql","match":"(?i)\\b(EMPTY)\\b"},{"name":"keyword.declaration.edgeql","match":"(?i)\\b(?\u003c!::|\\.|\\.\u003c|\\.\u003e)(CONSTRAINT)\\b(?!=\\s+\\()"},{"name":"keyword.declaration.edgeql","match":"(?ix) \\b(?\u003c!::|\\.|\\.\u003c|\\.\u003e)(\n (?# special case)\n (named \\s+ only)\n |\n (as \\s+ text)\n |\n (all (?!\\s*\\())\n |\n\n (?# unreserved)\n abort | abstract | access | after | alias |\n allow | annotation | applied | as | asc |\n assignment | before | cardinality | cast | committed |\n config | conflict | cube | current | database |\n ddl | declare | default | deferrable | deferred |\n delegated | deny | desc | each | empty |\n extension | final | first | from | function |\n future | implicit | index | infix | inheritable |\n instance | into | isolation | last | link |\n migration | multi | object | of | only |\n onto | operator | optionality | order | orphan |\n overloaded | owned | package | policy | populate |\n postfix | prefix | property | proposed | pseudo |\n read | reject | release | rename | required |\n reset | restrict | rewrite | role | roles |\n rollup | savepoint | scalar | schema | sdl |\n serializable | session | source | superuser | system |\n target | ternary | then | to | transaction |\n trigger | type | unless | using | verbose |\n version | view | write\n |\n (?# reserved)\n administer | alter | analyze | and | anyarray |\n anyobject | anytuple | begin | by | case |\n check | commit | configure | create | deallocate |\n delete | describe | detached | discard | distinct |\n do | drop | else | end | except |\n exists | explain | extending | fetch | filter |\n for | get | global | grant | group |\n if | ilike | import | in | insert |\n intersect | introspect | is | like | limit |\n listen | load | lock | match | module |\n move | never | not | notify | offset |\n on | optional | or | over | partition |\n prepare | raise | refresh | revoke | rollback |\n select | set | single | start | typeof |\n union | update | variadic | when | window |\n with\n)\\b\n"}]},"link-properties":{"name":"support.other.linkproperty.edgeql","begin":"(\\@)","end":"(?\u003c=[[:alnum:]_`])","patterns":[{"include":"#identifier"},{"include":"#quoted-name"}]},"number":{"patterns":[{"name":"constant.numeric.float.edgeql","match":"(?x)\n (?:\n #decimal part\n \\.(_*)(?:[0-9](?:[0-9_]*[0-9])?)\n |\n # integer part\n \\b(?: [1-9](?: [0-9_]*[0-9] )? | 0 )\n (?:\\.(_*)[0-9](?:[0-9_]*[0-9])?)\n )\n ((_*)([eE][\\+\\-]?)(_*)[0-9](?:[0-9_]*[0-9])?)?\n\n (_*)\n \\b\n","captures":{"1":{"name":"invalid.illegal.dec.edgeql"},"2":{"name":"invalid.illegal.dec.edgeql"},"4":{"name":"invalid.illegal.dec.edgeql"},"5":{"name":"storage.type.number.edgeql"},"6":{"name":"invalid.illegal.dec.edgeql"},"7":{"name":"invalid.illegal.dec.edgeql"}}},{"name":"constant.numeric.float.edgeql","match":"(?x)\n (?:\n # integer part\n \\b(?:[1-9](?:[0-9_]*[0-9])?|0)\n )\n ((_*)([eE][\\+\\-]?)(_*)[0-9](?:[0-9_]*[0-9])?)\n\n (_*)\n \\b\n","captures":{"2":{"name":"invalid.illegal.dec.edgeql"},"3":{"name":"storage.type.number.edgeql"},"4":{"name":"invalid.illegal.dec.edgeql"},"5":{"name":"invalid.illegal.dec.edgeql"}}},{"name":"constant.numeric.decimal.edgeql","match":"(?x)\n (?:\n #decimal part\n \\.(_*)(?:[0-9](?:[0-9_]*[0-9])?)\n |\n # integer part\n \\b(?:[1-9](?:[0-9_]*[0-9])?|0)\n (?:\\.(_*)[0-9](?:[0-9_]*[0-9])?)?\n )\n ((_*)([eE][\\+\\-]?)(_*)[0-9](?:[0-9_]*[0-9])?)?\n\n (_*)\n (n)\n","captures":{"1":{"name":"invalid.illegal.dec.edgeql"},"2":{"name":"invalid.illegal.dec.edgeql"},"4":{"name":"invalid.illegal.dec.edgeql"},"5":{"name":"storage.type.number.edgeql"},"6":{"name":"invalid.illegal.dec.edgeql"},"7":{"name":"invalid.illegal.dec.edgeql"},"8":{"name":"storage.type.number.edgeql"}}},{"name":"constant.numeric.integer.edgeql","match":"(?x)\n (?:\n # integer part\n \\b(?:[1-9](?:[0-9_]*[0-9])?|0)\n )\n (_*)\n \\b\n","captures":{"1":{"name":"invalid.illegal.dec.edgeql"},"2":{"name":"invalid.illegal.dec.edgeql"}}}]},"operators":{"patterns":[{"name":"keyword.operator.navigation.edgeql","match":"(\\.[\u003c\u003e])"},{"name":"keyword.operator.namespace.edgeql","match":"(::)"},{"name":"keyword.declaration.edgeql","match":"-\u003e"},{"name":"punctuation.declaration.delimiter.edgeql","match":"(:(?!=))"},{"name":"keyword.operator.edgeql","match":"(?x)\n \\?\\!\\= | \\?\\? | \\?\\= | \\\u003e\\= | \\\u003c\\= | \\:\\= | \\/\\/ | \\+\\+ |\n \\!\\= | \\^ | \\\u003e | \\= | \\\u003c | \\/ | \\- | \\+ |\n \\* | \\%\n"}]},"parencommon":{"patterns":[{"name":"punctuation.separator.element.edgeql","match":"(,)"},{"name":"invalid.illegal.delimiter.edgeql","match":"(;)"}]},"parentheses":{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#expressions"},{"include":"#parencommon"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"quoted-name":{"name":"string.interpolated.edgeql","match":"(`.*?`)"},"shape":{"begin":"(?=\\S)","end":"(?=\\})","patterns":[{"name":"punctuation.statement.delimiter.edgeql","match":"(;)"},{"include":"#expressions"},{"include":"#parencommon"}]},"squarebraces":{"begin":"(\\[)","end":"(\\])","patterns":[{"name":"keyword.operator.edgeql","match":"(^|\\b|\\s)(-\u003e)($|\\b|\\s)"},{"include":"#expressions"},{"include":"#parencommon"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"string":{"patterns":[{"name":"string.quoted.raw.edgeql","begin":"(r)(['\"])","end":"(\\2)","beginCaptures":{"1":{"name":"storage.type.string.edgeql"},"2":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}},{"name":"string.quoted.edgeql","begin":"(['\"])","end":"(\\1)","patterns":[{"include":"#string-escapes"},{"include":"#string-invalid-escapes"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}},{"name":"string.dollar.edgeql","begin":"(\\$([[:alpha:]_][[:alnum:]]*)*\\$)","end":"(\\1)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}}]},"string-escapes":{"name":"constant.character.escape.edgeql","match":"(?x)\n (\n \\\\(?=\\s*\\n) |\n \\\\[\\\\'\"bfnrt] |\n \\\\x[0-7][0-9a-fA-F] |\n \\\\u[0-9a-fA-F]{4} |\n \\\\U[0-9a-fA-F]{8}\n )\n"},"string-invalid-escapes":{"name":"invalid.illegal.escapes.edgeql","match":"(\\\\.)"},"types":{"patterns":[{"begin":"\\b(?\u003c!::|\\.)(tuple)\\s*(\u003c)","end":"(\u003e)","patterns":[{"include":"#types"},{"name":"punctuation.separator.type.edgeql","match":"(,)"},{"match":"(:)"},{"include":"#types-common"}],"beginCaptures":{"1":{"name":"storage.type.edgeql"},"2":{"name":"storage.type.placeholder.begin.edgeql"}},"endCaptures":{"1":{"name":"storage.type.placeholder.end.edgeql"}}},{"begin":"\\b(?\u003c!::|\\.)(array)\\s*(\u003c)","end":"(\u003e)","patterns":[{"name":"invalid.illegal.type.edgeql","match":"array"},{"include":"#types"},{"include":"#array-dimensions"},{"include":"#types-common"}],"beginCaptures":{"1":{"name":"storage.type.edgeql"},"2":{"name":"storage.type.placeholder.begin.edgeql"}},"endCaptures":{"1":{"name":"storage.type.placeholder.end.edgeql"}}},{"name":"storage.type.edgeql","match":"(?x) \\b(?\u003c!::|\\.)(\n array | tuple\n)\\b\n"},{"include":"#builtin-modules"},{"include":"#builtin-types"},{"include":"#builtin-indexes"}]},"types-common":{"patterns":[{"include":"#identifier"},{"name":"keyword.operator.namespace.edgeql","match":"(::)"}]},"values":{"patterns":[{"include":"#number"},{"include":"#bytes"},{"include":"#string"}]},"variables":{"name":"constant.language.variable.edgeql","begin":"(\\$)(?=[[:alnum:]_]|`)","end":"(?\u003c=[[:alnum:]_`])","patterns":[{"include":"#identifier"},{"include":"#quoted-name"},{"match":"(\\d)+"}]}}}
1
+ {"name":"EdgeQL","scopeName":"source.edgeql","patterns":[{"include":"#all"}],"repository":{"all":{"patterns":[{"include":"#fnstatement"},{"include":"#expressions"},{"name":"punctuation.statement.delimiter.edgeql","match":"(;)"}]},"array-dimensions":{"begin":"(\\[)","end":"(\\])","patterns":[{"name":"constant.numeric.edgeql","match":"(\\d+)"},{"name":"invalid.illegal.type.edgeql","match":"\\S+"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"builtin-indexes":{"name":"support.other.index.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n brin | btree | gin | gist |\n hash | index | spgist\n)\\b\n"},"builtin-modules":{"name":"support.other.module.builtin.edgeql","match":"(?x) \\b(?\u003c!::|\\.|\\.\u003c|\\.\u003e)(\n cal | cfg | enc | ext |\n fts | go | http | js |\n lang | math | net | perm |\n pg | py | rs | schema |\n std | sys\n)\\b\n"},"builtin-types":{"name":"support.type.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n Base64Alphabet | BaseObject | ElasticLanguage | Endian |\n FreeObject | JsonEmpty | Language | LuceneLanguage |\n Method | Object | PGLanguage | RequestFailureKind |\n RequestState | Response | ScheduledRequest | Weight |\n anycontiguous | anydiscrete | anyenum | anyfloat |\n anyint | anynumeric | anypoint | anyreal |\n anyscalar | anytype | array | bigint |\n bool | bytes | date | date_duration |\n datetime | decimal | document | duration |\n enum | float32 | float64 | int16 |\n int32 | int64 | interval | json |\n local_date | local_datetime | local_time | multirange |\n range | relative_duration | sequence | str |\n timestamp | timestamptz | tuple | uuid\n)\\b\n"},"builtins":{"patterns":[{"name":"support.function.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n abs | acos | adjacent |\n all | any | approximate_count |\n array_agg | array_fill | array_get |\n array_insert | array_join | array_replace |\n array_set | array_unpack | asin |\n assert | assert_distinct | assert_exists |\n assert_single | atan | atan2 |\n bit_and | bit_count | bit_lshift |\n bit_not | bit_or | bit_rshift |\n bit_xor | bounded_above | bounded_below |\n bytes_get_bit | ceil | contains |\n cos | cot | count |\n date_get | datetime_current | datetime_get |\n datetime_of_statement | datetime_of_transaction | datetime_truncate |\n duration_get | duration_normalize_days | duration_normalize_hours |\n duration_to_seconds | duration_truncate | enumerate |\n find | floor | get_current_branch |\n get_current_database | get_instance_name | get_transaction_isolation |\n get_version | get_version_as_str | json_array_unpack |\n json_get | json_object_pack | json_object_unpack |\n json_set | json_typeof | len |\n lg | ln | log |\n materialized | max | mean |\n min | multirange | multirange_unpack |\n overlaps | pi | random |\n range | range_get_lower | range_get_upper |\n range_is_empty | range_is_inclusive_lower | range_is_inclusive_upper |\n range_unpack | re_match | re_match_all |\n re_replace | re_test | reset_query_stats |\n round | search | sequence_next |\n sequence_reset | sin | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n tan | time_get | to_bigint |\n to_bytes | to_date_duration | to_datetime |\n to_decimal | to_duration | to_float32 |\n to_float64 | to_int16 | to_int32 |\n to_int64 | to_json | to_local_date |\n to_local_datetime | to_local_time | to_relative_duration |\n to_str | to_uuid | uuid_generate_v1mc |\n uuid_generate_v4 | var | var_pop |\n with_options\n)(?=\\s*\\()\\b\n"},{"name":"support.function.constraint.builtin.edgeql","match":"(?x) \\b(?\u003c!\\.|\\.\u003c|\\.\u003e) (\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n)\\b\n"},{"include":"#builtin-modules"},{"name":"support.other.link.builtin.edgeql","match":"(?x) \\b(\n __default__ | __edgedbsys__ | __edgedbtpl__ |\n __new__ | __old__ | __source__ |\n __specified__ | __std__ | __subject__ |\n __type__\n)\\b\n"}]},"bytes":{"patterns":[{"name":"string.quoted.bytes.edgeql","begin":"(b)(')","end":"(\\2)","patterns":[{"include":"#bytes-escapes"},{"match":"([\\n -\u0026(-\\[\\]-~])+"},{"name":"invalid.illegal.bytes.edgeql","match":"(\\\\x.{1,2})|(\\\\.)|(.)"}],"beginCaptures":{"1":{"name":"storage.type.string.edgeql"},"2":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}},{"name":"string.quoted.bytes.edgeql","begin":"(b)(\")","end":"(\\2)","patterns":[{"include":"#bytes-escapes"},{"match":"([\\n -!#-\\[\\]-~])+"},{"name":"invalid.illegal.bytes.edgeql","match":"(\\\\x.{1,2})|(\\\\.)|(.)"}],"beginCaptures":{"1":{"name":"storage.type.string.edgeql"},"2":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}}]},"bytes-escapes":{"name":"constant.character.escape.edgeql","match":"(?x)\n (\n \\\\[\\\\'\"bfnrt] |\n \\\\x[0-9a-fA-F]{2}\n )\n"},"casts":{"contentName":"meta.typecast.edgeql","begin":"(?xi)\n (?:\n (?\u003c= ^ | [@~+\\-*/%^\u003c\u003e=?,:(\\[{])\n |\n (?\u003c=\n AND | OR | NOT | LIKE | ILIKE | IS | IN | IF | ELSE |\n UNION | ALL | EXISTS |\n\n SELECT | GROUP | UPDATE | BY | THEN | LIMIT |\n # there are some ligature-related issues with \"fi\" and \"ff\"\n F[Ii]LTER | OF[Ff]SET\n )\n ) \\s* (\\\u003c)\n","end":"(\\\u003e)","patterns":[{"include":"#types"},{"include":"#types-common"}],"beginCaptures":{"1":{"name":"keyword.operator.cast.begin.edgeql"}},"endCaptures":{"1":{"name":"keyword.operator.cast.end.edgeql"}}},"code":{"patterns":[{"match":"(?xi)\n \\b(FROM) \\s+ (EDGEQL | SQL) \\s+ (EXPRESSION)\n","captures":{"1":{"name":"keyword.declaration.edgeql"},"3":{"name":"keyword.declaration.edgeql"}}},{"begin":"(?xi)\n \\b(FROM) \\s+\n (SQL) \\s+\n (\\$\\w?\\$)\n","end":"(\\3)","patterns":[{"include":"source.sql"}],"beginCaptures":{"1":{"name":"keyword.declaration.edgeql"},"3":{"name":"string.quoted.edgeql"}},"endCaptures":{"1":{"name":"string.quoted.edgeql"}}},{"begin":"(?xi)\n \\b(FROM) \\s+\n (EDGEQL) \\s+\n (\\$\\w?\\$)\n","end":"(\\3)","patterns":[{"include":"source.edgeql"}],"beginCaptures":{"1":{"name":"keyword.declaration.edgeql"},"3":{"name":"string.quoted.edgeql"}},"endCaptures":{"1":{"name":"string.quoted.edgeql"}}}]},"commandblock":{"begin":"(?=SET|CREATE|ALTER|DROP|RENAME|FROM)","end":"(?=\\})","patterns":[{"include":"#all"}]},"comments":{"patterns":[{"name":"comment.line.number-sign.edgeql","match":"(#)\\s*((BUG|FIXME|TODO|XXX)).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.edgeql"},"2":{"name":"comment.line.note.notation.edgeql"},"3":{"name":"comment.line.note.edgeql"}}},{"name":"comment.line.number-sign.edgeql","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.edgeql"}}}]},"curlybraces":{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"#comments"},{"include":"#commandblock"},{"include":"#shape"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"definition":{"match":"(?x)\n (?:\n ([[:alpha:]_][[:alnum:]_]*)\n |\n ([\\.\\d]\\S*?)\n ) (?=\\s*:=)\n","captures":{"1":{"name":"variable.parameter.definition.edgeql"},"2":{"name":"invalid.illegal.definition.edgeql"}}},"expressions":{"patterns":[{"include":"#comments"},{"include":"#code"},{"include":"#keywords"},{"include":"#fncalls"},{"include":"#operators"},{"include":"#builtins"},{"include":"#types"},{"include":"#quoted-name"},{"include":"#values"},{"include":"#link-properties"},{"include":"#variables"},{"include":"#parentheses"},{"include":"#squarebraces"},{"include":"#curlybraces"},{"include":"#casts"}]},"fncallargs":{"patterns":[{"include":"#definition"},{"include":"#expressions"},{"name":"punctuation.separator.arguments.edgeql","match":"(,)"},{"name":"invalid.illegal.delimiter.edgeql","match":"(;)"}]},"fncalls":{"patterns":[{"name":"meta.function-call.edgeql","begin":"(?x)\n \\b(?\u003c!\\.|\\.\u003c|\\.\u003e)\n # function name\n (?:\n (\n # functions\n abs | acos | adjacent |\n all | any | approximate_count |\n array_agg | array_fill | array_get |\n array_insert | array_join | array_replace |\n array_set | array_unpack | asin |\n assert | assert_distinct | assert_exists |\n assert_single | atan | atan2 |\n bit_and | bit_count | bit_lshift |\n bit_not | bit_or | bit_rshift |\n bit_xor | bounded_above | bounded_below |\n bytes_get_bit | ceil | contains |\n cos | cot | count |\n date_get | datetime_current | datetime_get |\n datetime_of_statement | datetime_of_transaction | datetime_truncate |\n duration_get | duration_normalize_days | duration_normalize_hours |\n duration_to_seconds | duration_truncate | enumerate |\n find | floor | get_current_branch |\n get_current_database | get_instance_name | get_transaction_isolation |\n get_version | get_version_as_str | json_array_unpack |\n json_get | json_object_pack | json_object_unpack |\n json_set | json_typeof | len |\n lg | ln | log |\n materialized | max | mean |\n min | multirange | multirange_unpack |\n overlaps | pi | random |\n range | range_get_lower | range_get_upper |\n range_is_empty | range_is_inclusive_lower | range_is_inclusive_upper |\n range_unpack | re_match | re_match_all |\n re_replace | re_test | reset_query_stats |\n round | search | sequence_next |\n sequence_reset | sin | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n tan | time_get | to_bigint |\n to_bytes | to_date_duration | to_datetime |\n to_decimal | to_duration | to_float32 |\n to_float64 | to_int16 | to_int32 |\n to_int64 | to_json | to_local_date |\n to_local_datetime | to_local_time | to_relative_duration |\n to_str | to_uuid | uuid_generate_v1mc |\n uuid_generate_v4 | var | var_pop |\n with_options\n |\n # constraints\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n )\n |\n ([[:alpha:]_][[:alnum:]_]*)\n |\n (`.*?`)\n ) \\s*(\\()\n","end":"(\\))","patterns":[{"include":"#fncallargs"}],"beginCaptures":{"1":{"name":"support.function.builtin.edgeql"},"2":{"name":"entity.name.function.edgeql"},"3":{"name":"string.interpolated.edgeql"},"4":{"name":"punctuation.definition.arguments.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.edgeql"}}},{"name":"meta.function-call.edgeql","begin":"(?x)\n \\b(?\u003c!\\.|\\.\u003c|\\.\u003e)\n # module\n (?:\n (\n cal | cfg | enc |\n ext | fts | go |\n http | js | lang |\n math | net | perm |\n pg | py | rs |\n schema | std | sys\n )\n |\n (?# masking built-ins in odd ways)\n (\n #functions\n abs | acos | adjacent |\n all | any | approximate_count |\n array_agg | array_fill | array_get |\n array_insert | array_join | array_replace |\n array_set | array_unpack | asin |\n assert | assert_distinct | assert_exists |\n assert_single | atan | atan2 |\n bit_and | bit_count | bit_lshift |\n bit_not | bit_or | bit_rshift |\n bit_xor | bounded_above | bounded_below |\n bytes_get_bit | ceil | contains |\n cos | cot | count |\n date_get | datetime_current | datetime_get |\n datetime_of_statement | datetime_of_transaction | datetime_truncate |\n duration_get | duration_normalize_days | duration_normalize_hours |\n duration_to_seconds | duration_truncate | enumerate |\n find | floor | get_current_branch |\n get_current_database | get_instance_name | get_transaction_isolation |\n get_version | get_version_as_str | json_array_unpack |\n json_get | json_object_pack | json_object_unpack |\n json_set | json_typeof | len |\n lg | ln | log |\n materialized | max | mean |\n min | multirange | multirange_unpack |\n overlaps | pi | random |\n range | range_get_lower | range_get_upper |\n range_is_empty | range_is_inclusive_lower | range_is_inclusive_upper |\n range_unpack | re_match | re_match_all |\n re_replace | re_test | reset_query_stats |\n round | search | sequence_next |\n sequence_reset | sin | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n tan | time_get | to_bigint |\n to_bytes | to_date_duration | to_datetime |\n to_decimal | to_duration | to_float32 |\n to_float64 | to_int16 | to_int32 |\n to_int64 | to_json | to_local_date |\n to_local_datetime | to_local_time | to_relative_duration |\n to_str | to_uuid | uuid_generate_v1mc |\n uuid_generate_v4 | var | var_pop |\n with_options\n |\n #constraints\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n )\n |\n ([[:alpha:]_][[:alnum:]_]*)\n |\n (`.*?`)\n )\n\n \\s*(::)\\s*\n\n # function name\n (?:\n (\n #functions\n abs | acos | adjacent |\n all | any | approximate_count |\n array_agg | array_fill | array_get |\n array_insert | array_join | array_replace |\n array_set | array_unpack | asin |\n assert | assert_distinct | assert_exists |\n assert_single | atan | atan2 |\n bit_and | bit_count | bit_lshift |\n bit_not | bit_or | bit_rshift |\n bit_xor | bounded_above | bounded_below |\n bytes_get_bit | ceil | contains |\n cos | cot | count |\n date_get | datetime_current | datetime_get |\n datetime_of_statement | datetime_of_transaction | datetime_truncate |\n duration_get | duration_normalize_days | duration_normalize_hours |\n duration_to_seconds | duration_truncate | enumerate |\n find | floor | get_current_branch |\n get_current_database | get_instance_name | get_transaction_isolation |\n get_version | get_version_as_str | json_array_unpack |\n json_get | json_object_pack | json_object_unpack |\n json_set | json_typeof | len |\n lg | ln | log |\n materialized | max | mean |\n min | multirange | multirange_unpack |\n overlaps | pi | random |\n range | range_get_lower | range_get_upper |\n range_is_empty | range_is_inclusive_lower | range_is_inclusive_upper |\n range_unpack | re_match | re_match_all |\n re_replace | re_test | reset_query_stats |\n round | search | sequence_next |\n sequence_reset | sin | sqrt |\n stddev | stddev_pop | str_lower |\n str_lpad | str_ltrim | str_pad_end |\n str_pad_start | str_repeat | str_replace |\n str_reverse | str_rpad | str_rtrim |\n str_split | str_title | str_trim |\n str_trim_end | str_trim_start | str_upper |\n strictly_above | strictly_below | sum |\n tan | time_get | to_bigint |\n to_bytes | to_date_duration | to_datetime |\n to_decimal | to_duration | to_float32 |\n to_float64 | to_int16 | to_int32 |\n to_int64 | to_json | to_local_date |\n to_local_datetime | to_local_time | to_relative_duration |\n to_str | to_uuid | uuid_generate_v1mc |\n uuid_generate_v4 | var | var_pop |\n with_options\n |\n #constraints\n constraint | exclusive | expression |\n len_value | max_ex_value | max_len_value |\n max_value | min_ex_value | min_len_value |\n min_value | one_of | regexp\n )\n |\n ([[:alpha:]_][[:alnum:]_]*)\n |\n (`.*?`)\n ) \\s*(\\()\n","end":"(\\))","patterns":[{"include":"#fncallargs"}],"beginCaptures":{"1":{"name":"support.other.module.builtin.edgeql"},"2":{"name":"support.function.builtin.edgeql"},"3":{"name":"entity.name.function.edgeql"},"4":{"name":"string.interpolated.edgeql"},"5":{"name":"keyword.operator.namespace.edgeql"},"6":{"name":"support.function.builtin.edgeql"},"7":{"name":"entity.name.function.edgeql"},"8":{"name":"string.interpolated.edgeql"},"9":{"name":"punctuation.definition.arguments.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.edgeql"}}}]},"fnstatement":{"begin":"(?ix) \\b(?\u003c![:\\.])(FUNCTION|AGGREGATE|ABSTRACT CONSTRAINT)\\b","end":"(?=[^\\s\\w:]|\\bEXTENDING\\b|$)","patterns":[{"include":"#builtins"},{"include":"#identifier"},{"name":"keyword.operator.namespace.edgeql","match":"(::)"}],"beginCaptures":{"1":{"name":"keyword.declaration.edgeql"}}},"identifier":{"match":"([[:alpha:]_][[:alnum:]_]*)"},"keywords":{"patterns":[{"name":"constant.language.boolean.true.edgeql","match":"(?i)\\b(TRUE)\\b"},{"name":"constant.language.boolean.false.edgeql","match":"(?i)\\b(FALSE)\\b"},{"name":"constant.language.empty.edgeql","match":"(?i)\\b(EMPTY)\\b"},{"name":"keyword.declaration.edgeql","match":"(?i)\\b(?\u003c!::|\\.|\\.\u003c|\\.\u003e)(CONSTRAINT)\\b(?!=\\s+\\()"},{"name":"keyword.declaration.edgeql","match":"(?ix) \\b(?\u003c!::|\\.|\\.\u003c|\\.\u003e)(\n (?# special case)\n (named \\s+ only)\n |\n (as \\s+ text)\n |\n (all (?!\\s*\\())\n |\n\n (?# unreserved)\n abort | abstract | access | after | alias |\n allow | annotation | applied | as | asc |\n assignment | before | blobal | branch | cardinality |\n cast | committed | config | conflict | cube |\n current | data | database | ddl | declare |\n default | deferrable | deferred | delegated | deny |\n desc | each | empty | extension | final |\n first | force | from | function | future |\n implicit | index | infix | inheritable | instance |\n into | isolation | last | link | migration |\n multi | object | of | only | onto |\n operator | optionality | order | orphan | overloaded |\n owned | package | permission | policy | populate |\n postfix | prefix | property | proposed | pseudo |\n read | reject | release | rename | repeatable |\n required | reset | restrict | rewrite | role |\n roles | rollup | savepoint | scalar | schema |\n sdl | serializable | session | source | superuser |\n system | target | template | ternary | then |\n to | transaction | trigger | type | unless |\n using | verbose | version | view | write\n |\n (?# reserved)\n administer | alter | analyze | and | anyarray |\n anyobject | anytuple | begin | by | case |\n check | commit | configure | create | deallocate |\n delete | describe | detached | discard | distinct |\n do | drop | else | end | except |\n exists | explain | extending | fetch | filter |\n for | get | global | grant | group |\n if | ilike | import | in | insert |\n intersect | introspect | is | like | limit |\n listen | load | lock | match | module |\n move | never | not | notify | offset |\n on | optional | or | over | partition |\n prepare | raise | refresh | revoke | rollback |\n select | set | single | start | typeof |\n union | update | variadic | when | window |\n with\n)\\b\n"}]},"link-properties":{"name":"support.other.linkproperty.edgeql","begin":"(\\@)","end":"(?\u003c=[[:alnum:]_`])","patterns":[{"include":"#identifier"},{"include":"#quoted-name"}]},"number":{"patterns":[{"name":"constant.numeric.float.edgeql","match":"(?x)\n (?:\n #decimal part\n \\.(_*)(?:[0-9](?:[0-9_]*[0-9])?)\n |\n # integer part\n \\b(?: [1-9](?: [0-9_]*[0-9] )? | 0 )\n (?:\\.(_*)[0-9](?:[0-9_]*[0-9])?)\n )\n ((_*)([eE][\\+\\-]?)(_*)[0-9](?:[0-9_]*[0-9])?)?\n\n (_*)\n \\b\n","captures":{"1":{"name":"invalid.illegal.dec.edgeql"},"2":{"name":"invalid.illegal.dec.edgeql"},"4":{"name":"invalid.illegal.dec.edgeql"},"5":{"name":"storage.type.number.edgeql"},"6":{"name":"invalid.illegal.dec.edgeql"},"7":{"name":"invalid.illegal.dec.edgeql"}}},{"name":"constant.numeric.float.edgeql","match":"(?x)\n (?:\n # integer part\n \\b(?:[1-9](?:[0-9_]*[0-9])?|0)\n )\n ((_*)([eE][\\+\\-]?)(_*)[0-9](?:[0-9_]*[0-9])?)\n\n (_*)\n \\b\n","captures":{"2":{"name":"invalid.illegal.dec.edgeql"},"3":{"name":"storage.type.number.edgeql"},"4":{"name":"invalid.illegal.dec.edgeql"},"5":{"name":"invalid.illegal.dec.edgeql"}}},{"name":"constant.numeric.decimal.edgeql","match":"(?x)\n (?:\n #decimal part\n \\.(_*)(?:[0-9](?:[0-9_]*[0-9])?)\n |\n # integer part\n \\b(?:[1-9](?:[0-9_]*[0-9])?|0)\n (?:\\.(_*)[0-9](?:[0-9_]*[0-9])?)?\n )\n ((_*)([eE][\\+\\-]?)(_*)[0-9](?:[0-9_]*[0-9])?)?\n\n (_*)\n (n)\n","captures":{"1":{"name":"invalid.illegal.dec.edgeql"},"2":{"name":"invalid.illegal.dec.edgeql"},"4":{"name":"invalid.illegal.dec.edgeql"},"5":{"name":"storage.type.number.edgeql"},"6":{"name":"invalid.illegal.dec.edgeql"},"7":{"name":"invalid.illegal.dec.edgeql"},"8":{"name":"storage.type.number.edgeql"}}},{"name":"constant.numeric.integer.edgeql","match":"(?x)\n (?:\n # integer part\n \\b(?:[1-9](?:[0-9_]*[0-9])?|0)\n )\n (_*)\n \\b\n","captures":{"1":{"name":"invalid.illegal.dec.edgeql"},"2":{"name":"invalid.illegal.dec.edgeql"}}}]},"operators":{"patterns":[{"name":"keyword.operator.navigation.edgeql","match":"(\\.[\u003c\u003e])"},{"name":"keyword.operator.namespace.edgeql","match":"(::)"},{"name":"keyword.declaration.edgeql","match":"-\u003e"},{"name":"punctuation.declaration.delimiter.edgeql","match":"(:(?!=))"},{"name":"keyword.operator.edgeql","match":"(?x)\n \\?\\!\\= | \\?\\? | \\?\\= | \\\u003e\\= | \\\u003c\\= | \\:\\= | \\/\\/ | \\+\\+ |\n \\!\\= | \\^ | \\\u003e | \\= | \\\u003c | \\/ | \\- | \\+ |\n \\* | \\%\n"}]},"parencommon":{"patterns":[{"name":"punctuation.separator.element.edgeql","match":"(,)"},{"name":"invalid.illegal.delimiter.edgeql","match":"(;)"}]},"parentheses":{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#expressions"},{"include":"#parencommon"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"quoted-name":{"name":"string.interpolated.edgeql","match":"(`.*?`)"},"shape":{"begin":"(?=\\S)","end":"(?=\\})","patterns":[{"name":"punctuation.statement.delimiter.edgeql","match":"(;)"},{"include":"#expressions"},{"include":"#parencommon"}]},"squarebraces":{"begin":"(\\[)","end":"(\\])","patterns":[{"name":"keyword.operator.edgeql","match":"(^|\\b|\\s)(-\u003e)($|\\b|\\s)"},{"include":"#expressions"},{"include":"#parencommon"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.parenthesis.end.edgeql"}}},"string":{"patterns":[{"name":"string.quoted.raw.edgeql","begin":"(r)(['\"])","end":"(\\2)","beginCaptures":{"1":{"name":"storage.type.string.edgeql"},"2":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}},{"name":"string.quoted.edgeql","begin":"(['\"])","end":"(\\1)","patterns":[{"include":"#string-escapes"},{"include":"#string-invalid-escapes"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}},{"name":"string.dollar.edgeql","begin":"(\\$([[:alpha:]_][[:alnum:]]*)*\\$)","end":"(\\1)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.edgeql"}}}]},"string-escapes":{"name":"constant.character.escape.edgeql","match":"(?x)\n (\n \\\\(?=\\s*\\n) |\n \\\\[\\\\'\"bfnrt] |\n \\\\x[0-7][0-9a-fA-F] |\n \\\\u[0-9a-fA-F]{4} |\n \\\\U[0-9a-fA-F]{8}\n )\n"},"string-invalid-escapes":{"name":"invalid.illegal.escapes.edgeql","match":"(\\\\.)"},"types":{"patterns":[{"begin":"\\b(?\u003c!::|\\.)(tuple)\\s*(\u003c)","end":"(\u003e)","patterns":[{"include":"#types"},{"name":"punctuation.separator.type.edgeql","match":"(,)"},{"match":"(:)"},{"include":"#types-common"}],"beginCaptures":{"1":{"name":"storage.type.edgeql"},"2":{"name":"storage.type.placeholder.begin.edgeql"}},"endCaptures":{"1":{"name":"storage.type.placeholder.end.edgeql"}}},{"begin":"\\b(?\u003c!::|\\.)(array)\\s*(\u003c)","end":"(\u003e)","patterns":[{"name":"invalid.illegal.type.edgeql","match":"array"},{"include":"#types"},{"include":"#array-dimensions"},{"include":"#types-common"}],"beginCaptures":{"1":{"name":"storage.type.edgeql"},"2":{"name":"storage.type.placeholder.begin.edgeql"}},"endCaptures":{"1":{"name":"storage.type.placeholder.end.edgeql"}}},{"name":"storage.type.edgeql","match":"(?x) \\b(?\u003c!::|\\.)(\n array | tuple\n)\\b\n"},{"include":"#builtin-modules"},{"include":"#builtin-types"},{"include":"#builtin-indexes"}]},"types-common":{"patterns":[{"include":"#identifier"},{"name":"keyword.operator.namespace.edgeql","match":"(::)"}]},"values":{"patterns":[{"include":"#number"},{"include":"#bytes"},{"include":"#string"}]},"variables":{"name":"constant.language.variable.edgeql","begin":"(\\$)(?=[[:alnum:]_]|`)","end":"(?\u003c=[[:alnum:]_`])","patterns":[{"include":"#identifier"},{"include":"#quoted-name"},{"match":"(\\d)+"}]}}}