@shikijs/langs 1.26.1 → 1.27.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 (198) hide show
  1. package/dist/abap.mjs +1 -1
  2. package/dist/actionscript-3.mjs +1 -1
  3. package/dist/ada.mjs +1 -1
  4. package/dist/angular-expression.mjs +1 -1
  5. package/dist/angular-let-declaration.mjs +1 -1
  6. package/dist/angular-ts.mjs +1 -1
  7. package/dist/apex.mjs +1 -1
  8. package/dist/apl.mjs +1 -1
  9. package/dist/applescript.mjs +1 -1
  10. package/dist/ara.mjs +1 -1
  11. package/dist/asciidoc.mjs +1 -1
  12. package/dist/asm.mjs +1 -1
  13. package/dist/astro.mjs +1 -1
  14. package/dist/awk.mjs +1 -1
  15. package/dist/ballerina.mjs +1 -1
  16. package/dist/bat.mjs +1 -1
  17. package/dist/beancount.mjs +1 -1
  18. package/dist/berry.mjs +1 -1
  19. package/dist/bibtex.mjs +1 -1
  20. package/dist/bicep.mjs +1 -1
  21. package/dist/blade.mjs +1 -1
  22. package/dist/c.mjs +1 -1
  23. package/dist/cadence.mjs +1 -1
  24. package/dist/cairo.mjs +1 -1
  25. package/dist/clarity.mjs +1 -1
  26. package/dist/clojure.mjs +1 -1
  27. package/dist/cobol.mjs +1 -1
  28. package/dist/codeql.mjs +1 -1
  29. package/dist/coffee.mjs +1 -1
  30. package/dist/common-lisp.mjs +1 -1
  31. package/dist/coq.mjs +1 -1
  32. package/dist/cpp-macro.mjs +1 -1
  33. package/dist/cpp.mjs +1 -1
  34. package/dist/crystal.mjs +1 -1
  35. package/dist/csharp.mjs +1 -1
  36. package/dist/css.mjs +1 -1
  37. package/dist/cue.mjs +1 -1
  38. package/dist/cypher.mjs +1 -1
  39. package/dist/d.mjs +1 -1
  40. package/dist/dart.mjs +1 -1
  41. package/dist/dax.mjs +1 -1
  42. package/dist/diff.mjs +1 -1
  43. package/dist/dotenv.mjs +1 -1
  44. package/dist/dream-maker.mjs +1 -1
  45. package/dist/edge.mjs +1 -1
  46. package/dist/elixir.mjs +1 -1
  47. package/dist/elm.mjs +1 -1
  48. package/dist/emacs-lisp.mjs +1 -1
  49. package/dist/erlang.mjs +1 -1
  50. package/dist/es-tag-css.mjs +1 -1
  51. package/dist/es-tag-glsl.mjs +1 -1
  52. package/dist/es-tag-html.mjs +1 -1
  53. package/dist/es-tag-sql.mjs +1 -1
  54. package/dist/es-tag-xml.mjs +1 -1
  55. package/dist/fennel.mjs +1 -1
  56. package/dist/fish.mjs +1 -1
  57. package/dist/fluent.mjs +1 -1
  58. package/dist/fortran-free-form.mjs +1 -1
  59. package/dist/fsharp.mjs +1 -1
  60. package/dist/gdresource.mjs +1 -1
  61. package/dist/gdscript.mjs +1 -1
  62. package/dist/gdshader.mjs +1 -1
  63. package/dist/genie.mjs +1 -1
  64. package/dist/git-commit.mjs +1 -1
  65. package/dist/gleam.mjs +1 -1
  66. package/dist/glimmer-js.mjs +1 -1
  67. package/dist/glimmer-ts.mjs +1 -1
  68. package/dist/gnuplot.mjs +1 -1
  69. package/dist/go.mjs +1 -1
  70. package/dist/graphql.mjs +1 -1
  71. package/dist/groovy.mjs +1 -1
  72. package/dist/hack.mjs +1 -1
  73. package/dist/haml.mjs +1 -1
  74. package/dist/handlebars.mjs +1 -1
  75. package/dist/haskell.mjs +1 -1
  76. package/dist/haxe.mjs +1 -1
  77. package/dist/hcl.mjs +1 -1
  78. package/dist/hjson.mjs +1 -1
  79. package/dist/hlsl.mjs +1 -1
  80. package/dist/html.mjs +1 -1
  81. package/dist/http.mjs +1 -1
  82. package/dist/hy.mjs +1 -1
  83. package/dist/imba.mjs +1 -1
  84. package/dist/java.mjs +1 -1
  85. package/dist/javascript.mjs +1 -1
  86. package/dist/jinja.mjs +1 -1
  87. package/dist/jison.mjs +1 -1
  88. package/dist/json.mjs +1 -1
  89. package/dist/json5.mjs +1 -1
  90. package/dist/jsonc.mjs +1 -1
  91. package/dist/jsonl.mjs +1 -1
  92. package/dist/jsonnet.mjs +1 -1
  93. package/dist/jssm.mjs +1 -1
  94. package/dist/jsx.mjs +1 -1
  95. package/dist/julia.mjs +1 -1
  96. package/dist/kotlin.mjs +1 -1
  97. package/dist/kusto.mjs +1 -1
  98. package/dist/latex.mjs +1 -1
  99. package/dist/lean.mjs +1 -1
  100. package/dist/less.mjs +1 -1
  101. package/dist/liquid.mjs +1 -1
  102. package/dist/log.mjs +1 -1
  103. package/dist/logo.mjs +1 -1
  104. package/dist/lua.mjs +1 -1
  105. package/dist/luau.mjs +1 -1
  106. package/dist/make.mjs +1 -1
  107. package/dist/markdown.mjs +1 -1
  108. package/dist/marko.mjs +1 -1
  109. package/dist/matlab.mjs +1 -1
  110. package/dist/mdc.mjs +1 -1
  111. package/dist/mdx.mjs +1 -1
  112. package/dist/mermaid.mjs +1 -1
  113. package/dist/mipsasm.mjs +1 -1
  114. package/dist/mojo.mjs +1 -1
  115. package/dist/move.mjs +1 -1
  116. package/dist/nextflow.mjs +1 -1
  117. package/dist/nginx.mjs +1 -1
  118. package/dist/nim.mjs +1 -1
  119. package/dist/nix.mjs +1 -1
  120. package/dist/nushell.mjs +1 -1
  121. package/dist/objective-c.mjs +1 -1
  122. package/dist/objective-cpp.mjs +1 -1
  123. package/dist/ocaml.mjs +1 -1
  124. package/dist/perl.mjs +1 -1
  125. package/dist/php.mjs +1 -1
  126. package/dist/polar.mjs +1 -1
  127. package/dist/postcss.mjs +1 -1
  128. package/dist/powerquery.mjs +1 -1
  129. package/dist/powershell.mjs +1 -1
  130. package/dist/prisma.mjs +1 -1
  131. package/dist/prolog.mjs +1 -1
  132. package/dist/proto.mjs +1 -1
  133. package/dist/pug.mjs +1 -1
  134. package/dist/puppet.mjs +1 -1
  135. package/dist/purescript.mjs +1 -1
  136. package/dist/python.mjs +1 -1
  137. package/dist/qml.mjs +1 -1
  138. package/dist/r.mjs +1 -1
  139. package/dist/racket.mjs +1 -1
  140. package/dist/raku.mjs +1 -1
  141. package/dist/razor.mjs +1 -1
  142. package/dist/reg.mjs +1 -1
  143. package/dist/regexp.mjs +1 -1
  144. package/dist/rel.mjs +1 -1
  145. package/dist/riscv.mjs +1 -1
  146. package/dist/rst.mjs +1 -1
  147. package/dist/ruby.mjs +1 -1
  148. package/dist/rust.mjs +1 -1
  149. package/dist/sas.mjs +1 -1
  150. package/dist/sass.mjs +1 -1
  151. package/dist/scala.mjs +1 -1
  152. package/dist/scheme.mjs +1 -1
  153. package/dist/scss.mjs +1 -1
  154. package/dist/shaderlab.mjs +1 -1
  155. package/dist/shellscript.mjs +1 -1
  156. package/dist/smalltalk.mjs +1 -1
  157. package/dist/solidity.mjs +1 -1
  158. package/dist/soy.mjs +1 -1
  159. package/dist/sparql.mjs +1 -1
  160. package/dist/splunk.mjs +1 -1
  161. package/dist/sql.mjs +1 -1
  162. package/dist/ssh-config.mjs +1 -1
  163. package/dist/stata.mjs +1 -1
  164. package/dist/stylus.mjs +1 -1
  165. package/dist/svelte.mjs +1 -1
  166. package/dist/swift.mjs +1 -1
  167. package/dist/system-verilog.mjs +1 -1
  168. package/dist/systemd.mjs +1 -1
  169. package/dist/talonscript.mjs +1 -1
  170. package/dist/tcl.mjs +1 -1
  171. package/dist/templ.mjs +1 -1
  172. package/dist/terraform.mjs +1 -1
  173. package/dist/tex.mjs +1 -1
  174. package/dist/toml.mjs +1 -1
  175. package/dist/tsx.mjs +1 -1
  176. package/dist/turtle.mjs +1 -1
  177. package/dist/twig.mjs +1 -1
  178. package/dist/typescript.mjs +1 -1
  179. package/dist/typespec.mjs +1 -1
  180. package/dist/typst.mjs +1 -1
  181. package/dist/v.mjs +1 -1
  182. package/dist/vala.mjs +1 -1
  183. package/dist/vb.mjs +1 -1
  184. package/dist/verilog.mjs +1 -1
  185. package/dist/vhdl.mjs +1 -1
  186. package/dist/viml.mjs +1 -1
  187. package/dist/vue-html.mjs +1 -1
  188. package/dist/vue.mjs +1 -1
  189. package/dist/vyper.mjs +1 -1
  190. package/dist/wasm.mjs +1 -1
  191. package/dist/wgsl.mjs +1 -1
  192. package/dist/wikitext.mjs +1 -1
  193. package/dist/wolfram.mjs +1 -1
  194. package/dist/xml.mjs +1 -1
  195. package/dist/yaml.mjs +1 -1
  196. package/dist/zenscript.mjs +1 -1
  197. package/dist/zig.mjs +1 -1
  198. package/package.json +3 -3
package/dist/cadence.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Cadence\",\"name\":\"cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#expressions\"},{\"include\":\"#declarations\"},{\"include\":\"#keywords\"},{\"include\":\"#code-block\"},{\"include\":\"#composite\"},{\"include\":\"#event\"}],\"repository\":{\"code-block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.scope.begin.cadence\"}},\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.scope.end.cadence\"}},\"patterns\":[{\"include\":\"$self\"}]},\"comments\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"match\":\"\\\\A^(#!).*$\\\\n?\",\"name\":\"comment.line.number-sign.cadence\"},{\"begin\":\"/\\\\*\\\\*(?!/)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.cadence\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.cadence\"}},\"name\":\"comment.block.documentation.cadence\",\"patterns\":[{\"include\":\"#nested\"}]},{\"begin\":\"/\\\\*:\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.cadence\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.cadence\"}},\"name\":\"comment.block.documentation.playground.cadence\",\"patterns\":[{\"include\":\"#nested\"}]},{\"begin\":\"/\\\\*\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.cadence\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.cadence\"}},\"name\":\"comment.block.cadence\",\"patterns\":[{\"include\":\"#nested\"}]},{\"match\":\"\\\\*/\",\"name\":\"invalid.illegal.unexpected-end-of-block-comment.cadence\"},{\"begin\":\"(^[ \\\\t]+)?(?=//)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cadence\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"///\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"end\":\"^\",\"name\":\"comment.line.triple-slash.documentation.cadence\"},{\"begin\":\"//:\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"end\":\"^\",\"name\":\"comment.line.double-slash.documentation.cadence\"},{\"begin\":\"//\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"end\":\"^\",\"name\":\"comment.line.double-slash.cadence\"}]}],\"repository\":{\"nested\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"patterns\":[{\"include\":\"#nested\"}]}}},\"composite\":{\"begin\":\"\\\\b((?:(?:struct|resource|contract)(?:\\\\s+interface)?)|transaction|enum)\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.$1.cadence\"},\"2\":{\"name\":\"entity.name.type.$1.cadence\"}},\"end\":\"(?<=\\\\})\",\"name\":\"meta.definition.type.composite.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#conformance-clause\"},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.type.begin.cadence\"}},\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.type.end.cadence\"}},\"name\":\"meta.definition.type.body.cadence\",\"patterns\":[{\"include\":\"$self\"}]}]},\"conformance-clause\":{\"begin\":\"(:)(?=\\\\s*\\\\{)|(:)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"invalid.illegal.empty-conformance-clause.cadence\"},\"2\":{\"name\":\"punctuation.separator.conformance-clause.cadence\"}},\"end\":\"(?!\\\\G)$|(?=[={}])\",\"name\":\"meta.conformance-clause.cadence\",\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?!\\\\G)$|(?=[={}])\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#type\"}]}]},\"declarations\":{\"patterns\":[{\"include\":\"#var-let-declaration\"},{\"include\":\"#function\"},{\"include\":\"#initializer\"}]},\"event\":{\"begin\":\"\\\\b(event)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.event.cadence\"},\"2\":{\"name\":\"entity.name.type.event.cadence\"}},\"end\":\"(?<=\\\\))|$\",\"name\":\"meta.definition.type.event.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#parameter-clause\"}]},\"expression-element-list\":{\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.any-method.cadence\"},\"2\":{\"name\":\"punctuation.separator.argument-label.cadence\"}},\"comment\":\"an element with a label\",\"end\":\"(?=[,)\\\\]])\",\"patterns\":[{\"include\":\"#expressions\"}]},{\"begin\":\"(?![,)\\\\]])(?=\\\\S)\",\"comment\":\"an element without a label (i.e. anything else)\",\"end\":\"(?=[,)\\\\]])\",\"patterns\":[{\"include\":\"#expressions\"}]}]},\"expressions\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#function-call-expression\"},{\"include\":\"#literals\"},{\"include\":\"#operators\"},{\"include\":\"#language-variables\"}]},\"function\":{\"begin\":\"\\\\b(fun)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cadence\"},\"2\":{\"name\":\"entity.name.function.cadence\"}},\"end\":\"(?<=\\\\})|$\",\"name\":\"meta.definition.function.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#parameter-clause\"},{\"include\":\"#function-result\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.cadence\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.end.cadence\"}},\"name\":\"meta.definition.function.body.cadence\",\"patterns\":[{\"include\":\"$self\"}]}]},\"function-call-expression\":{\"patterns\":[{\"begin\":\"(?!(?:set|init))([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.any-method.cadence\"},\"4\":{\"name\":\"punctuation.definition.arguments.begin.cadence\"}},\"comment\":\"foo(args) -- a call whose callee is a highlightable name\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.arguments.end.cadence\"}},\"name\":\"meta.function-call.cadence\",\"patterns\":[{\"include\":\"#expression-element-list\"}]}]},\"function-result\":{\"begin\":\"(?<![/=\\\\-+!*%<>&|\\\\^~.])(:)(?![/=\\\\-+!*%<>&|\\\\^~.])\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.function-result.cadence\"}},\"end\":\"(?!\\\\G)(?=\\\\{|;)|$\",\"name\":\"meta.function-result.cadence\",\"patterns\":[{\"include\":\"#type\"}]},\"initializer\":{\"begin\":\"(?<!\\\\.)\\\\b(init)\\\\s*(?=\\\\(|<)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cadence\"}},\"end\":\"(?<=\\\\})|$\",\"name\":\"meta.definition.function.initializer.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#parameter-clause\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.cadence\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.end.cadence\"}},\"name\":\"meta.definition.function.body.cadence\",\"patterns\":[{\"include\":\"$self\"}]}]},\"keywords\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\b(?:if|else|switch|case|default)\\\\b\",\"name\":\"keyword.control.branch.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:return|continue|break)\\\\b\",\"name\":\"keyword.control.transfer.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:while|for|in)\\\\b\",\"name\":\"keyword.control.loop.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:pre|post|prepare|execute|create|destroy|emit)\\\\b\",\"name\":\"keyword.other.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:private|pub(?:\\\\(set\\\\))?|access\\\\((?:self|contract|account|all)\\\\))\\\\b\",\"name\":\"keyword.other.declaration-specifier.accessibility.cadence\"},{\"match\":\"\\\\b(?:init|destroy)\\\\b\",\"name\":\"storage.type.function.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:import|from)\\\\b\",\"name\":\"keyword.control.import.cadence\"}]},\"language-variables\":{\"patterns\":[{\"match\":\"\\\\b(self)\\\\b\",\"name\":\"variable.language.cadence\"}]},\"literals\":{\"patterns\":[{\"include\":\"#boolean\"},{\"include\":\"#numeric\"},{\"include\":\"#string\"},{\"match\":\"\\\\bnil\\\\b\",\"name\":\"constant.language.nil.cadence\"}],\"repository\":{\"boolean\":{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean.cadence\"},\"numeric\":{\"patterns\":[{\"include\":\"#binary\"},{\"include\":\"#octal\"},{\"include\":\"#decimal\"},{\"include\":\"#hexadecimal\"}],\"repository\":{\"binary\":{\"comment\":\"\",\"match\":\"(\\\\B-|\\\\b)0b[01]([_01]*[01])?\\\\b\",\"name\":\"constant.numeric.integer.binary.cadence\"},\"decimal\":{\"comment\":\"\",\"match\":\"(\\\\B-|\\\\b)\\\\d([_0-9]*\\\\d)?\\\\b\",\"name\":\"constant.numeric.integer.decimal.cadence\"},\"hexadecimal\":{\"comment\":\"\",\"match\":\"(\\\\B-|\\\\b)0x[0-9A-Fa-f]([_0-9A-Fa-f]*[0-9A-Fa-f])?\\\\b\",\"name\":\"constant.numeric.integer.hexadecimal.cadence\"},\"octal\":{\"comment\":\"\",\"match\":\"(\\\\B-|\\\\b)0o[0-7]([_0-7]*[0-7])?\\\\b\",\"name\":\"constant.numeric.integer.octal.cadence\"}}},\"string\":{\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cadence\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cadence\"}},\"name\":\"string.quoted.double.single-line.cadence\",\"patterns\":[{\"match\":\"\\\\r|\\\\n\",\"name\":\"invalid.illegal.returns-not-allowed.cadence\"},{\"include\":\"#string-guts\"}]}],\"repository\":{\"string-guts\":{\"patterns\":[{\"match\":\"\\\\\\\\[0\\\\\\\\tnr\\\"']\",\"name\":\"constant.character.escape.cadence\"},{\"match\":\"\\\\\\\\u\\\\{[0-9a-fA-F]{1,8}\\\\}\",\"name\":\"constant.character.escape.unicode.cadence\"}]}}}}},\"operators\":{\"patterns\":[{\"match\":\"-\",\"name\":\"keyword.operator.arithmetic.unary.cadence\"},{\"match\":\"!\",\"name\":\"keyword.operator.logical.not.cadence\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.cadence\"},{\"match\":\"<-\",\"name\":\"keyword.operator.move.cadence\"},{\"match\":\"<-!\",\"name\":\"keyword.operator.force-move.cadence\"},{\"match\":\"\\\\+|-|\\\\*|/\",\"name\":\"keyword.operator.arithmetic.cadence\"},{\"match\":\"%\",\"name\":\"keyword.operator.arithmetic.remainder.cadence\"},{\"match\":\"==|!=|>|<|>=|<=\",\"name\":\"keyword.operator.comparison.cadence\"},{\"match\":\"\\\\?\\\\?\",\"name\":\"keyword.operator.coalescing.cadence\"},{\"match\":\"&&|\\\\|\\\\|\",\"name\":\"keyword.operator.logical.cadence\"},{\"match\":\"[?!]\",\"name\":\"keyword.operator.type.optional.cadence\"}]},\"parameter-clause\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.begin.cadence\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.cadence\"}},\"name\":\"meta.parameter-clause.cadence\",\"patterns\":[{\"include\":\"#parameter-list\"}]},\"parameter-list\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.function.cadence\"},\"2\":{\"name\":\"variable.parameter.function.cadence\"}},\"comment\":\"External parameter labels are considered part of the function name\",\"match\":\"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)(?=\\\\s*:)\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.cadence\"},\"2\":{\"name\":\"entity.name.function.cadence\"}},\"comment\":\"If no external label is given, the name is both the external label and the internal variable name\",\"match\":\"(([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*))(?=\\\\s*:)\"},{\"begin\":\":\\\\s*(?!\\\\s)\",\"end\":\"(?=[,)])\",\"patterns\":[{\"include\":\"#type\"},{\"match\":\":\",\"name\":\"invalid.illegal.extra-colon-in-parameter-list.cadence\"}]}]},\"type\":{\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\",\"name\":\"storage.type.cadence\"}]},\"var-let-declaration\":{\"begin\":\"\\\\b(var|let)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.$1.cadence\"},\"2\":{\"name\":\"entity.name.type.$1.cadence\"}},\"end\":\"=|<-|<-!|$\",\"patterns\":[{\"include\":\"#type\"}]}},\"scopeName\":\"source.cadence\",\"aliases\":[\"cdc\"]}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Cadence\",\"name\":\"cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#expressions\"},{\"include\":\"#declarations\"},{\"include\":\"#keywords\"},{\"include\":\"#code-block\"},{\"include\":\"#composite\"},{\"include\":\"#event\"}],\"repository\":{\"code-block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.scope.begin.cadence\"}},\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.scope.end.cadence\"}},\"patterns\":[{\"include\":\"$self\"}]},\"comments\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"match\":\"\\\\A^(#!).*$\\\\n?\",\"name\":\"comment.line.number-sign.cadence\"},{\"begin\":\"/\\\\*\\\\*(?!/)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.cadence\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.cadence\"}},\"name\":\"comment.block.documentation.cadence\",\"patterns\":[{\"include\":\"#nested\"}]},{\"begin\":\"/\\\\*:\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.cadence\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.cadence\"}},\"name\":\"comment.block.documentation.playground.cadence\",\"patterns\":[{\"include\":\"#nested\"}]},{\"begin\":\"/\\\\*\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.cadence\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.cadence\"}},\"name\":\"comment.block.cadence\",\"patterns\":[{\"include\":\"#nested\"}]},{\"match\":\"\\\\*/\",\"name\":\"invalid.illegal.unexpected-end-of-block-comment.cadence\"},{\"begin\":\"(^[ \\\\t]+)?(?=//)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cadence\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"///\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"end\":\"^\",\"name\":\"comment.line.triple-slash.documentation.cadence\"},{\"begin\":\"//:\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"end\":\"^\",\"name\":\"comment.line.double-slash.documentation.cadence\"},{\"begin\":\"//\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cadence\"}},\"end\":\"^\",\"name\":\"comment.line.double-slash.cadence\"}]}],\"repository\":{\"nested\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"patterns\":[{\"include\":\"#nested\"}]}}},\"composite\":{\"begin\":\"\\\\b((?:(?:struct|resource|contract)(?:\\\\s+interface)?)|transaction|enum)\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.$1.cadence\"},\"2\":{\"name\":\"entity.name.type.$1.cadence\"}},\"end\":\"(?<=\\\\})\",\"name\":\"meta.definition.type.composite.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#conformance-clause\"},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.type.begin.cadence\"}},\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.type.end.cadence\"}},\"name\":\"meta.definition.type.body.cadence\",\"patterns\":[{\"include\":\"$self\"}]}]},\"conformance-clause\":{\"begin\":\"(:)(?=\\\\s*\\\\{)|(:)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"invalid.illegal.empty-conformance-clause.cadence\"},\"2\":{\"name\":\"punctuation.separator.conformance-clause.cadence\"}},\"end\":\"(?!\\\\G)$|(?=[={}])\",\"name\":\"meta.conformance-clause.cadence\",\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?!\\\\G)$|(?=[={}])\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#type\"}]}]},\"declarations\":{\"patterns\":[{\"include\":\"#var-let-declaration\"},{\"include\":\"#function\"},{\"include\":\"#initializer\"}]},\"event\":{\"begin\":\"\\\\b(event)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.event.cadence\"},\"2\":{\"name\":\"entity.name.type.event.cadence\"}},\"end\":\"(?<=\\\\))|$\",\"name\":\"meta.definition.type.event.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#parameter-clause\"}]},\"expression-element-list\":{\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.any-method.cadence\"},\"2\":{\"name\":\"punctuation.separator.argument-label.cadence\"}},\"comment\":\"an element with a label\",\"end\":\"(?=[,)\\\\]])\",\"patterns\":[{\"include\":\"#expressions\"}]},{\"begin\":\"(?![,)\\\\]])(?=\\\\S)\",\"comment\":\"an element without a label (i.e. anything else)\",\"end\":\"(?=[,)\\\\]])\",\"patterns\":[{\"include\":\"#expressions\"}]}]},\"expressions\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#function-call-expression\"},{\"include\":\"#literals\"},{\"include\":\"#operators\"},{\"include\":\"#language-variables\"}]},\"function\":{\"begin\":\"\\\\b(fun)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cadence\"},\"2\":{\"name\":\"entity.name.function.cadence\"}},\"end\":\"(?<=\\\\})|$\",\"name\":\"meta.definition.function.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#parameter-clause\"},{\"include\":\"#function-result\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.cadence\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.end.cadence\"}},\"name\":\"meta.definition.function.body.cadence\",\"patterns\":[{\"include\":\"$self\"}]}]},\"function-call-expression\":{\"patterns\":[{\"begin\":\"(?!(?:set|init))([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.any-method.cadence\"},\"4\":{\"name\":\"punctuation.definition.arguments.begin.cadence\"}},\"comment\":\"foo(args) -- a call whose callee is a highlightable name\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.arguments.end.cadence\"}},\"name\":\"meta.function-call.cadence\",\"patterns\":[{\"include\":\"#expression-element-list\"}]}]},\"function-result\":{\"begin\":\"(?<![/=\\\\-+!*%<>&|\\\\^~.])(:)(?![/=\\\\-+!*%<>&|\\\\^~.])\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.function-result.cadence\"}},\"end\":\"(?!\\\\G)(?=\\\\{|;)|$\",\"name\":\"meta.function-result.cadence\",\"patterns\":[{\"include\":\"#type\"}]},\"initializer\":{\"begin\":\"(?<!\\\\.)\\\\b(init)\\\\s*(?=\\\\(|<)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cadence\"}},\"end\":\"(?<=\\\\})|$\",\"name\":\"meta.definition.function.initializer.cadence\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#parameter-clause\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.cadence\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.end.cadence\"}},\"name\":\"meta.definition.function.body.cadence\",\"patterns\":[{\"include\":\"$self\"}]}]},\"keywords\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\b(?:if|else|switch|case|default)\\\\b\",\"name\":\"keyword.control.branch.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:return|continue|break)\\\\b\",\"name\":\"keyword.control.transfer.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:while|for|in)\\\\b\",\"name\":\"keyword.control.loop.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:pre|post|prepare|execute|create|destroy|emit)\\\\b\",\"name\":\"keyword.other.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:private|pub(?:\\\\(set\\\\))?|access\\\\((?:self|contract|account|all)\\\\))\\\\b\",\"name\":\"keyword.other.declaration-specifier.accessibility.cadence\"},{\"match\":\"\\\\b(?:init|destroy)\\\\b\",\"name\":\"storage.type.function.cadence\"},{\"match\":\"(?<!\\\\.)\\\\b(?:import|from)\\\\b\",\"name\":\"keyword.control.import.cadence\"}]},\"language-variables\":{\"patterns\":[{\"match\":\"\\\\b(self)\\\\b\",\"name\":\"variable.language.cadence\"}]},\"literals\":{\"patterns\":[{\"include\":\"#boolean\"},{\"include\":\"#numeric\"},{\"include\":\"#string\"},{\"match\":\"\\\\bnil\\\\b\",\"name\":\"constant.language.nil.cadence\"}],\"repository\":{\"boolean\":{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean.cadence\"},\"numeric\":{\"patterns\":[{\"include\":\"#binary\"},{\"include\":\"#octal\"},{\"include\":\"#decimal\"},{\"include\":\"#hexadecimal\"}],\"repository\":{\"binary\":{\"comment\":\"\",\"match\":\"(\\\\B\\\\-|\\\\b)0b[01]([_01]*[01])?\\\\b\",\"name\":\"constant.numeric.integer.binary.cadence\"},\"decimal\":{\"comment\":\"\",\"match\":\"(\\\\B\\\\-|\\\\b)[0-9]([_0-9]*[0-9])?\\\\b\",\"name\":\"constant.numeric.integer.decimal.cadence\"},\"hexadecimal\":{\"comment\":\"\",\"match\":\"(\\\\B\\\\-|\\\\b)0x[0-9A-Fa-f]([_0-9A-Fa-f]*[0-9A-Fa-f])?\\\\b\",\"name\":\"constant.numeric.integer.hexadecimal.cadence\"},\"octal\":{\"comment\":\"\",\"match\":\"(\\\\B\\\\-|\\\\b)0o[0-7]([_0-7]*[0-7])?\\\\b\",\"name\":\"constant.numeric.integer.octal.cadence\"}}},\"string\":{\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cadence\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cadence\"}},\"name\":\"string.quoted.double.single-line.cadence\",\"patterns\":[{\"match\":\"\\\\r|\\\\n\",\"name\":\"invalid.illegal.returns-not-allowed.cadence\"},{\"include\":\"#string-guts\"}]}],\"repository\":{\"string-guts\":{\"patterns\":[{\"match\":\"\\\\\\\\[0\\\\\\\\tnr\\\"']\",\"name\":\"constant.character.escape.cadence\"},{\"match\":\"\\\\\\\\u\\\\{[0-9a-fA-F]{1,8}\\\\}\",\"name\":\"constant.character.escape.unicode.cadence\"}]}}}}},\"operators\":{\"patterns\":[{\"match\":\"\\\\-\",\"name\":\"keyword.operator.arithmetic.unary.cadence\"},{\"match\":\"!\",\"name\":\"keyword.operator.logical.not.cadence\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.cadence\"},{\"match\":\"<-\",\"name\":\"keyword.operator.move.cadence\"},{\"match\":\"<-!\",\"name\":\"keyword.operator.force-move.cadence\"},{\"match\":\"\\\\+|\\\\-|\\\\*|/\",\"name\":\"keyword.operator.arithmetic.cadence\"},{\"match\":\"%\",\"name\":\"keyword.operator.arithmetic.remainder.cadence\"},{\"match\":\"==|!=|>|<|>=|<=\",\"name\":\"keyword.operator.comparison.cadence\"},{\"match\":\"\\\\?\\\\?\",\"name\":\"keyword.operator.coalescing.cadence\"},{\"match\":\"&&|\\\\|\\\\|\",\"name\":\"keyword.operator.logical.cadence\"},{\"match\":\"[?!]\",\"name\":\"keyword.operator.type.optional.cadence\"}]},\"parameter-clause\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.begin.cadence\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.cadence\"}},\"name\":\"meta.parameter-clause.cadence\",\"patterns\":[{\"include\":\"#parameter-list\"}]},\"parameter-list\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.function.cadence\"},\"2\":{\"name\":\"variable.parameter.function.cadence\"}},\"comment\":\"External parameter labels are considered part of the function name\",\"match\":\"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)(?=\\\\s*:)\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.cadence\"},\"2\":{\"name\":\"entity.name.function.cadence\"}},\"comment\":\"If no external label is given, the name is both the external label and the internal variable name\",\"match\":\"(([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*))(?=\\\\s*:)\"},{\"begin\":\":\\\\s*(?!\\\\s)\",\"end\":\"(?=[,)])\",\"patterns\":[{\"include\":\"#type\"},{\"match\":\":\",\"name\":\"invalid.illegal.extra-colon-in-parameter-list.cadence\"}]}]},\"type\":{\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\",\"name\":\"storage.type.cadence\"}]},\"var-let-declaration\":{\"begin\":\"\\\\b(var|let)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.$1.cadence\"},\"2\":{\"name\":\"entity.name.type.$1.cadence\"}},\"end\":\"=|<-|<-!|$\",\"patterns\":[{\"include\":\"#type\"}]}},\"scopeName\":\"source.cadence\",\"aliases\":[\"cdc\"]}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/cairo.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import python from './python.mjs'
2
2
 
3
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Cairo\",\"name\":\"cairo\",\"patterns\":[{\"begin\":\"\\\\b(if).*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.if\"},\"2\":{\"name\":\"entity.name.condition\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.end\"}},\"name\":\"meta.control.if\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"begin\":\"\\\\b(with)\\\\s+(.+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.with\"},\"2\":{\"name\":\"entity.name.identifiers\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.end\"}},\"name\":\"meta.control.with\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"begin\":\"\\\\b(with_attr)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*[({]\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.with_attr\"},\"2\":{\"name\":\"entity.name.function\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.end\"}},\"name\":\"meta.control.with_attr\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"match\":\"\\\\belse\\\\b\",\"name\":\"keyword.control.else\"},{\"match\":\"\\\\b(call|jmp|ret|abs|rel|if)\\\\b\",\"name\":\"keyword.other.opcode\"},{\"match\":\"\\\\b(ap|fp)\\\\b\",\"name\":\"keyword.other.register\"},{\"match\":\"\\\\b(const|let|local|tempvar|felt|as|from|import|static_assert|return|assert|cast|alloc_locals|with|with_attr|nondet|dw|codeoffset|new|using|and)\\\\b\",\"name\":\"keyword.other.meta\"},{\"match\":\"\\\\b(SIZEOF_LOCALS|SIZE)\\\\b\",\"name\":\"markup.italic\"},{\"match\":\"//[^\\n]*\\n\",\"name\":\"comment.line.sharp\"},{\"match\":\"\\\\b[a-zA-Z_]\\\\w*:\\\\s*$\",\"name\":\"entity.name.function\"},{\"begin\":\"\\\\b(func)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*[({]\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cairo\"},\"2\":{\"name\":\"entity.name.function\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"storage.type.function.cairo\"}},\"name\":\"meta.function.cairo\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"begin\":\"\\\\b(struct|namespace)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cairo\"},\"2\":{\"name\":\"entity.name.function\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"storage.type.function.cairo\"}},\"name\":\"meta.function.cairo\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"match\":\"\\\\b[+-]?\\\\d+\\\\b\",\"name\":\"constant.numeric.decimal\"},{\"match\":\"\\\\b[+-]?0x[0-9a-fA-F]+\\\\b\",\"name\":\"constant.numeric.hexadecimal\"},{\"match\":\"'[^']*'\",\"name\":\"string.quoted.single\"},{\"match\":\"\\\"[^\\\"]*\\\"\",\"name\":\"string.quoted.double\"},{\"begin\":\"%{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.begin.python\"}},\"contentName\":\"source.python\",\"end\":\"%}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.end.python\"},\"1\":{\"name\":\"source.python\"}},\"name\":\"meta.embedded.block.python\",\"patterns\":[{\"include\":\"source.python\"}]}],\"scopeName\":\"source.cairo0\",\"embeddedLangs\":[\"python\"]}"))
3
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Cairo\",\"name\":\"cairo\",\"patterns\":[{\"begin\":\"\\\\b(if).*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.if\"},\"2\":{\"name\":\"entity.name.condition\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.end\"}},\"name\":\"meta.control.if\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"begin\":\"\\\\b(with)\\\\s+(.+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.with\"},\"2\":{\"name\":\"entity.name.identifiers\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.end\"}},\"name\":\"meta.control.with\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"begin\":\"\\\\b(with_attr)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*[({]\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.with_attr\"},\"2\":{\"name\":\"entity.name.function\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.end\"}},\"name\":\"meta.control.with_attr\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"match\":\"\\\\belse\\\\b\",\"name\":\"keyword.control.else\"},{\"match\":\"\\\\b(call|jmp|ret|abs|rel|if)\\\\b\",\"name\":\"keyword.other.opcode\"},{\"match\":\"\\\\b(ap|fp)\\\\b\",\"name\":\"keyword.other.register\"},{\"match\":\"\\\\b(const|let|local|tempvar|felt|as|from|import|static_assert|return|assert|cast|alloc_locals|with|with_attr|nondet|dw|codeoffset|new|using|and)\\\\b\",\"name\":\"keyword.other.meta\"},{\"match\":\"\\\\b(SIZEOF_LOCALS|SIZE)\\\\b\",\"name\":\"markup.italic\"},{\"match\":\"//[^\\n]*\\n\",\"name\":\"comment.line.sharp\"},{\"match\":\"\\\\b[a-zA-Z_][a-zA-Z0-9_]*:\\\\s*$\",\"name\":\"entity.name.function\"},{\"begin\":\"\\\\b(func)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*[({]\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cairo\"},\"2\":{\"name\":\"entity.name.function\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"storage.type.function.cairo\"}},\"name\":\"meta.function.cairo\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"begin\":\"\\\\b(struct|namespace)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.cairo\"},\"2\":{\"name\":\"entity.name.function\"}},\"contentName\":\"source.cairo0\",\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"storage.type.function.cairo\"}},\"name\":\"meta.function.cairo\",\"patterns\":[{\"include\":\"source.cairo0\"}]},{\"match\":\"\\\\b[+-]?[0-9]+\\\\b\",\"name\":\"constant.numeric.decimal\"},{\"match\":\"\\\\b[+-]?0x[0-9a-fA-F]+\\\\b\",\"name\":\"constant.numeric.hexadecimal\"},{\"match\":\"'[^']*'\",\"name\":\"string.quoted.single\"},{\"match\":\"\\\"[^\\\"]*\\\"\",\"name\":\"string.quoted.double\"},{\"begin\":\"%{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.begin.python\"}},\"contentName\":\"source.python\",\"end\":\"%}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.end.python\"},\"1\":{\"name\":\"source.python\"}},\"name\":\"meta.embedded.block.python\",\"patterns\":[{\"include\":\"source.python\"}]}],\"scopeName\":\"source.cairo0\",\"embeddedLangs\":[\"python\"]}"))
4
4
 
5
5
  export default [
6
6
  ...python,
package/dist/clarity.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Clarity\",\"name\":\"clarity\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#define-constant\"},{\"include\":\"#define-data-var\"},{\"include\":\"#define-map\"},{\"include\":\"#define-function\"},{\"include\":\"#define-fungible-token\"},{\"include\":\"#define-non-fungible-token\"},{\"include\":\"#define-trait\"},{\"include\":\"#use-trait\"}],\"repository\":{\"built-in-func\":{\"begin\":\"(\\\\()\\\\s*(-|\\\\+|<=|>=|<|>|\\\\*|/|and|append|as-contract|as-max-len\\\\?|asserts!|at-block|begin|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|buff-to-int-be|buff-to-int-le|buff-to-uint-be|buff-to-uint-le|concat|contract-call\\\\?|contract-of|default-to|element-at|element-at\\\\?|filter|fold|from-consensus-buff\\\\?|ft-burn\\\\?|ft-get-balance|ft-get-supply|ft-mint\\\\?|ft-transfer\\\\?|get-block-info\\\\?|get-burn-block-info\\\\?|get-stacks-block-info\\\\?|get-tenure-info\\\\?|get-burn-block-info\\\\?|hash160|if|impl-trait|index-of|index-of\\\\?|int-to-ascii|int-to-utf8|is-eq|is-err|is-none|is-ok|is-some|is-standard|keccak256|len|log2|map|match|merge|mod|nft-burn\\\\?|nft-get-owner\\\\?|nft-mint\\\\?|nft-transfer\\\\?|not|or|pow|principal-construct\\\\?|principal-destruct\\\\?|principal-of\\\\?|print|replace-at\\\\?|secp256k1-recover\\\\?|secp256k1-verify|sha256|sha512|sha512/256|slice\\\\?|sqrti|string-to-int\\\\?|string-to-uint\\\\?|stx-account|stx-burn\\\\?|stx-get-balance|stx-transfer-memo\\\\?|stx-transfer\\\\?|to-consensus-buff\\\\?|to-int|to-uint|try!|unwrap!|unwrap-err!|unwrap-err-panic|unwrap-panic|xor)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.built-in-function.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.built-in-function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.built-in-function.end.clarity\"}},\"name\":\"meta.built-in-function\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},\"comment\":{\"match\":\"(?<=^|[()\\\\[\\\\]{}\\\",'`;\\\\s])(;).*$\",\"name\":\"comment.line.semicolon.clarity\"},\"data-type\":{\"patterns\":[{\"include\":\"#comment\"},{\"comment\":\"numerics\",\"match\":\"\\\\b(uint|int)\\\\b\",\"name\":\"entity.name.type.numeric.clarity\"},{\"comment\":\"principal\",\"match\":\"\\\\b(principal)\\\\b\",\"name\":\"entity.name.type.principal.clarity\"},{\"comment\":\"bool\",\"match\":\"\\\\b(bool)\\\\b\",\"name\":\"entity.name.type.bool.clarity\"},{\"captures\":{\"1\":{\"name\":\"punctuation.string_type-def.start.clarity\"},\"2\":{\"name\":\"entity.name.type.string_type.clarity\"},\"3\":{\"name\":\"constant.numeric.string_type-len.clarity\"},\"4\":{\"name\":\"punctuation.string_type-def.end.clarity\"}},\"match\":\"(\\\\()\\\\s*(?:(string-ascii|string-utf8)\\\\s+(\\\\d+))\\\\s*(\\\\))\"},{\"captures\":{\"1\":{\"name\":\"punctuation.buff-def.start.clarity\"},\"2\":{\"name\":\"entity.name.type.buff.clarity\"},\"3\":{\"name\":\"constant.numeric.buf-len.clarity\"},\"4\":{\"name\":\"punctuation.buff-def.end.clarity\"}},\"match\":\"(\\\\()\\\\s*(buff)\\\\s+(\\\\d+)\\\\s*(\\\\))\"},{\"begin\":\"(\\\\()\\\\s*(optional)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.optional-def.start.clarity\"},\"2\":{\"name\":\"storage.type.modifier\"}},\"comment\":\"optional\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.optional-def.end.clarity\"}},\"name\":\"meta.optional-def\",\"patterns\":[{\"include\":\"#data-type\"}]},{\"begin\":\"(\\\\()\\\\s*(response)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.response-def.start.clarity\"},\"2\":{\"name\":\"storage.type.modifier\"}},\"comment\":\"response\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.response-def.end.clarity\"}},\"name\":\"meta.response-def\",\"patterns\":[{\"include\":\"#data-type\"}]},{\"begin\":\"(\\\\()\\\\s*(list)\\\\s+(\\\\d+)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.list-def.start.clarity\"},\"2\":{\"name\":\"entity.name.type.list.clarity\"},\"3\":{\"name\":\"constant.numeric.list-len.clarity\"}},\"comment\":\"list\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.list-def.end.clarity\"}},\"name\":\"meta.list-def\",\"patterns\":[{\"include\":\"#data-type\"}]},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.tuple-def.start.clarity\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.tuple-def.end.clarity\"}},\"name\":\"meta.tuple-def\",\"patterns\":[{\"match\":\"([a-zA-Z][\\\\w?!\\\\-]*)(?=:)\",\"name\":\"entity.name.tag.tuple-data-type-key.clarity\"},{\"include\":\"#data-type\"}]}]},\"define-constant\":{\"begin\":\"(\\\\()\\\\s*(define-constant)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-constant.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-constant.clarity\"},\"3\":{\"name\":\"entity.name.constant-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-constant.end.clarity\"}},\"name\":\"meta.define-constant\",\"patterns\":[{\"include\":\"#expression\"}]},\"define-data-var\":{\"begin\":\"(\\\\()\\\\s*(define-data-var)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-data-var.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-data-var.clarity\"},\"3\":{\"name\":\"entity.name.data-var-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-data-var.end.clarity\"}},\"name\":\"meta.define-data-var\",\"patterns\":[{\"include\":\"#data-type\"},{\"include\":\"#expression\"}]},\"define-function\":{\"begin\":\"(\\\\()\\\\s*(define-(?:public|private|read-only))\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-function.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-function.end.clarity\"}},\"name\":\"meta.define-function\",\"patterns\":[{\"include\":\"#expression\"},{\"begin\":\"(\\\\()\\\\s*([a-zA-Z][\\\\w?!\\\\-]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.function-signature.start.clarity\"},\"2\":{\"name\":\"entity.name.function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.function-signature.end.clarity\"}},\"name\":\"meta.define-function-signature\",\"patterns\":[{\"begin\":\"(\\\\()\\\\s*([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.function-argument.start.clarity\"},\"2\":{\"name\":\"variable.parameter.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.function-argument.end.clarity\"}},\"name\":\"meta.function-argument\",\"patterns\":[{\"include\":\"#data-type\"}]}]},{\"include\":\"#user-func\"}]},\"define-fungible-token\":{\"captures\":{\"1\":{\"name\":\"punctuation.define-fungible-token.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-fungible-token.clarity\"},\"3\":{\"name\":\"entity.name.fungible-token-name.clarity variable.other.clarity\"},\"4\":{\"name\":\"constant.numeric.fungible-token-total-supply.clarity\"},\"5\":{\"name\":\"punctuation.define-fungible-token.end.clarity\"}},\"match\":\"(\\\\()\\\\s*(define-fungible-token)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)(?:\\\\s+(u\\\\d+))?\"},\"define-map\":{\"begin\":\"(\\\\()\\\\s*(define-map)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-map.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-map.clarity\"},\"3\":{\"name\":\"entity.name.map-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-map.end.clarity\"}},\"name\":\"meta.define-map\",\"patterns\":[{\"include\":\"#data-type\"},{\"include\":\"#expression\"}]},\"define-non-fungible-token\":{\"begin\":\"(\\\\()\\\\s*(define-non-fungible-token)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-non-fungible-token.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-non-fungible-token.clarity\"},\"3\":{\"name\":\"entity.name.non-fungible-token-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-non-fungible-token.end.clarity\"}},\"name\":\"meta.define-non-fungible-token\",\"patterns\":[{\"include\":\"#data-type\"}]},\"define-trait\":{\"begin\":\"(\\\\()\\\\s*(define-trait)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-trait.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-trait.clarity\"},\"3\":{\"name\":\"entity.name.trait-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-trait.end.clarity\"}},\"name\":\"meta.define-trait\",\"patterns\":[{\"begin\":\"(\\\\()\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-trait-body.start.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-trait-body.end.clarity\"}},\"name\":\"meta.define-trait-body\",\"patterns\":[{\"include\":\"#expression\"},{\"begin\":\"(\\\\()\\\\s*([a-zA-Z][\\\\w!?\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.trait-function.start.clarity\"},\"2\":{\"name\":\"entity.name.function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.trait-function.end.clarity\"}},\"name\":\"meta.trait-function\",\"patterns\":[{\"include\":\"#data-type\"},{\"begin\":\"(\\\\()\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.trait-function-args.start.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.trait-function-args.end.clarity\"}},\"name\":\"meta.trait-function-args\",\"patterns\":[{\"include\":\"#data-type\"}]}]}]}]},\"expression\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#keyword\"},{\"include\":\"#literal\"},{\"include\":\"#let-func\"},{\"include\":\"#built-in-func\"},{\"include\":\"#get-set-func\"}]},\"get-set-func\":{\"begin\":\"(\\\\()\\\\s*(var-get|var-set|map-get\\\\?|map-set|map-insert|map-delete|get)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.get-set-func.start.clarity\"},\"2\":{\"name\":\"keyword.control.clarity\"},\"3\":{\"name\":\"variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.get-set-func.end.clarity\"}},\"name\":\"meta.get-set-func\",\"patterns\":[{\"include\":\"#expression\"}]},\"keyword\":{\"match\":\"(?<!\\\\S)(?!-)\\\\b(?:block-height|burn-block-height|chain-id|contract-caller|is-in-regtest|stacks-block-height|stx-liquid-supply|tenure-height|tx-sender|tx-sponsor?)\\\\b(?!\\\\s*-)\",\"name\":\"constant.language.clarity\"},\"let-func\":{\"begin\":\"(\\\\()\\\\s*(let)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.let-function.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.let-function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.let-function.end.clarity\"}},\"name\":\"meta.let-function\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"},{\"begin\":\"(\\\\()\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.let-var.start.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.let-var.end.clarity\"}},\"name\":\"meta.let-var\",\"patterns\":[{\"begin\":\"(\\\\()([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.let-local-var.start.clarity\"},\"2\":{\"name\":\"entity.name.let-local-var-name.clarity variable.parameter.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.let-local-var.end.clarity\"}},\"name\":\"meta.let-local-var\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},{\"include\":\"#expression\"}]}]},\"literal\":{\"patterns\":[{\"include\":\"#number-literal\"},{\"include\":\"#bool-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#tuple-literal\"},{\"include\":\"#principal-literal\"},{\"include\":\"#list-literal\"},{\"include\":\"#optional-literal\"},{\"include\":\"#response-literal\"}],\"repository\":{\"bool-literal\":{\"match\":\"(?<!\\\\S)(?!-)\\\\b(true|false)\\\\b(?!\\\\s*-)\",\"name\":\"constant.language.bool.clarity\"},\"list-literal\":{\"begin\":\"(\\\\()\\\\s*(list)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.list.start.clarity\"},\"2\":{\"name\":\"entity.name.type.list.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"names\":\"punctuation.list.end.clarity\"}},\"name\":\"meta.list\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},\"number-literal\":{\"patterns\":[{\"comment\":\"unsigned integers\",\"match\":\"(?<!\\\\S)(?!-)\\\\bu\\\\d+\\\\b(?!\\\\s*-)\",\"name\":\"constant.numeric.uint.clarity\"},{\"comment\":\"signed integers\",\"match\":\"(?<!\\\\S)(?!-)\\\\b\\\\d+\\\\b(?!\\\\s*-)\",\"name\":\"constant.numeric.int.clarity\"},{\"comment\":\"hexadecimals\",\"match\":\"(?<!\\\\S)(?!-)\\\\b0x[0-9a-f]*\\\\b(?!\\\\s*-)\",\"name\":\"constant.numeric.hex.clarity\"}]},\"optional-literal\":{\"patterns\":[{\"match\":\"(?<!\\\\S)(?!-)\\\\b(none)\\\\b(?!\\\\s*-)\",\"name\":\"constant.language.none.clarity\"},{\"begin\":\"(\\\\()\\\\s*(some)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.some.start.clarity\"},\"2\":{\"name\":\"constant.language.some.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.some.end.clarity\"}},\"name\":\"meta.some\",\"patterns\":[{\"include\":\"#expression\"}]}]},\"principal-literal\":{\"match\":\"\\\\'[0-9A-Z]{28,41}(:?\\\\.[a-zA-Z][a-zA-Z0-9\\\\-]+){0,2}|(\\\\.[a-zA-Z][a-zA-Z0-9\\\\-]*){1,2}(?=[\\\\s(){},]|$)\",\"name\":\"constant.other.principal.clarity\"},\"response-literal\":{\"begin\":\"(\\\\()\\\\s*(ok|err)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.response.start.clarity\"},\"2\":{\"name\":\"constant.language.ok-err.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.response.end.clarity\"}},\"name\":\"meta.response\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},\"string-literal\":{\"patterns\":[{\"begin\":\"(u?)(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.utf8.clarity\"},\"2\":{\"name\":\"punctuation.definition.string.begin.clarity\"}},\"end\":\"\\\"\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.clarity\"}},\"name\":\"string.quoted.double.clarity\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.quote\"}]}]},\"tuple-literal\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.tuple.start.clarity\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.tuple.end.clarity\"}},\"name\":\"meta.tuple\",\"patterns\":[{\"match\":\"([a-zA-Z][\\\\w?!\\\\-]*)(?=:)\",\"name\":\"entity.name.tag.tuple-key.clarity\"},{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]}}},\"use-trait\":{\"begin\":\"(\\\\()\\\\s*(use-trait)\\\\s+([a-zA-Z][\\\\w?!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.use-trait.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.use-trait.clarity\"},\"3\":{\"name\":\"entity.name.trait-alias.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.use-trait.end.clarity\"}},\"name\":\"meta.use-trait\",\"patterns\":[{\"include\":\"#literal\"}]},\"user-func\":{\"begin\":\"(\\\\()\\\\s*(([a-zA-Z][\\\\w?!\\\\-]*))\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.user-function.start.clarity\"},\"2\":{\"name\":\"entity.name.function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.user-function.end.clarity\"}},\"name\":\"meta.user-function\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"$self\"}]}},\"scopeName\":\"source.clar\"}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Clarity\",\"name\":\"clarity\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#define-constant\"},{\"include\":\"#define-data-var\"},{\"include\":\"#define-map\"},{\"include\":\"#define-function\"},{\"include\":\"#define-fungible-token\"},{\"include\":\"#define-non-fungible-token\"},{\"include\":\"#define-trait\"},{\"include\":\"#use-trait\"}],\"repository\":{\"built-in-func\":{\"begin\":\"(\\\\()\\\\s*(\\\\-|\\\\+|<\\\\=|>\\\\=|<|>|\\\\*|/|and|append|as-contract|as-max-len\\\\?|asserts!|at-block|begin|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|buff-to-int-be|buff-to-int-le|buff-to-uint-be|buff-to-uint-le|concat|contract-call\\\\?|contract-of|default-to|element-at|element-at\\\\?|filter|fold|from-consensus-buff\\\\?|ft-burn\\\\?|ft-get-balance|ft-get-supply|ft-mint\\\\?|ft-transfer\\\\?|get-block-info\\\\?|get-burn-block-info\\\\?|get-stacks-block-info\\\\?|get-tenure-info\\\\?|get-burn-block-info\\\\?|hash160|if|impl-trait|index-of|index-of\\\\?|int-to-ascii|int-to-utf8|is-eq|is-err|is-none|is-ok|is-some|is-standard|keccak256|len|log2|map|match|merge|mod|nft-burn\\\\?|nft-get-owner\\\\?|nft-mint\\\\?|nft-transfer\\\\?|not|or|pow|principal-construct\\\\?|principal-destruct\\\\?|principal-of\\\\?|print|replace-at\\\\?|secp256k1-recover\\\\?|secp256k1-verify|sha256|sha512|sha512/256|slice\\\\?|sqrti|string-to-int\\\\?|string-to-uint\\\\?|stx-account|stx-burn\\\\?|stx-get-balance|stx-transfer-memo\\\\?|stx-transfer\\\\?|to-consensus-buff\\\\?|to-int|to-uint|try!|unwrap!|unwrap-err!|unwrap-err-panic|unwrap-panic|xor)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.built-in-function.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.built-in-function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.built-in-function.end.clarity\"}},\"name\":\"meta.built-in-function\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},\"comment\":{\"match\":\"(?<=^|[()\\\\[\\\\]{}\\\",'`;\\\\s])(;).*$\",\"name\":\"comment.line.semicolon.clarity\"},\"data-type\":{\"patterns\":[{\"include\":\"#comment\"},{\"comment\":\"numerics\",\"match\":\"\\\\b(uint|int)\\\\b\",\"name\":\"entity.name.type.numeric.clarity\"},{\"comment\":\"principal\",\"match\":\"\\\\b(principal)\\\\b\",\"name\":\"entity.name.type.principal.clarity\"},{\"comment\":\"bool\",\"match\":\"\\\\b(bool)\\\\b\",\"name\":\"entity.name.type.bool.clarity\"},{\"captures\":{\"1\":{\"name\":\"punctuation.string_type-def.start.clarity\"},\"2\":{\"name\":\"entity.name.type.string_type.clarity\"},\"3\":{\"name\":\"constant.numeric.string_type-len.clarity\"},\"4\":{\"name\":\"punctuation.string_type-def.end.clarity\"}},\"match\":\"(\\\\()\\\\s*(?:(string-ascii|string-utf8)\\\\s+(\\\\d+))\\\\s*(\\\\))\"},{\"captures\":{\"1\":{\"name\":\"punctuation.buff-def.start.clarity\"},\"2\":{\"name\":\"entity.name.type.buff.clarity\"},\"3\":{\"name\":\"constant.numeric.buf-len.clarity\"},\"4\":{\"name\":\"punctuation.buff-def.end.clarity\"}},\"match\":\"(\\\\()\\\\s*(buff)\\\\s+(\\\\d+)\\\\s*(\\\\))\"},{\"begin\":\"(\\\\()\\\\s*(optional)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.optional-def.start.clarity\"},\"2\":{\"name\":\"storage.type.modifier\"}},\"comment\":\"optional\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.optional-def.end.clarity\"}},\"name\":\"meta.optional-def\",\"patterns\":[{\"include\":\"#data-type\"}]},{\"begin\":\"(\\\\()\\\\s*(response)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.response-def.start.clarity\"},\"2\":{\"name\":\"storage.type.modifier\"}},\"comment\":\"response\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.response-def.end.clarity\"}},\"name\":\"meta.response-def\",\"patterns\":[{\"include\":\"#data-type\"}]},{\"begin\":\"(\\\\()\\\\s*(list)\\\\s+(\\\\d+)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.list-def.start.clarity\"},\"2\":{\"name\":\"entity.name.type.list.clarity\"},\"3\":{\"name\":\"constant.numeric.list-len.clarity\"}},\"comment\":\"list\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.list-def.end.clarity\"}},\"name\":\"meta.list-def\",\"patterns\":[{\"include\":\"#data-type\"}]},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.tuple-def.start.clarity\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.tuple-def.end.clarity\"}},\"name\":\"meta.tuple-def\",\"patterns\":[{\"match\":\"([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)(?=:)\",\"name\":\"entity.name.tag.tuple-data-type-key.clarity\"},{\"include\":\"#data-type\"}]}]},\"define-constant\":{\"begin\":\"(\\\\()\\\\s*(define-constant)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-constant.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-constant.clarity\"},\"3\":{\"name\":\"entity.name.constant-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-constant.end.clarity\"}},\"name\":\"meta.define-constant\",\"patterns\":[{\"include\":\"#expression\"}]},\"define-data-var\":{\"begin\":\"(\\\\()\\\\s*(define-data-var)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-data-var.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-data-var.clarity\"},\"3\":{\"name\":\"entity.name.data-var-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-data-var.end.clarity\"}},\"name\":\"meta.define-data-var\",\"patterns\":[{\"include\":\"#data-type\"},{\"include\":\"#expression\"}]},\"define-function\":{\"begin\":\"(\\\\()\\\\s*(define-(?:public|private|read-only))\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-function.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-function.end.clarity\"}},\"name\":\"meta.define-function\",\"patterns\":[{\"include\":\"#expression\"},{\"begin\":\"(\\\\()\\\\s*([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.function-signature.start.clarity\"},\"2\":{\"name\":\"entity.name.function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.function-signature.end.clarity\"}},\"name\":\"meta.define-function-signature\",\"patterns\":[{\"begin\":\"(\\\\()\\\\s*([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.function-argument.start.clarity\"},\"2\":{\"name\":\"variable.parameter.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.function-argument.end.clarity\"}},\"name\":\"meta.function-argument\",\"patterns\":[{\"include\":\"#data-type\"}]}]},{\"include\":\"#user-func\"}]},\"define-fungible-token\":{\"captures\":{\"1\":{\"name\":\"punctuation.define-fungible-token.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-fungible-token.clarity\"},\"3\":{\"name\":\"entity.name.fungible-token-name.clarity variable.other.clarity\"},\"4\":{\"name\":\"constant.numeric.fungible-token-total-supply.clarity\"},\"5\":{\"name\":\"punctuation.define-fungible-token.end.clarity\"}},\"match\":\"(\\\\()\\\\s*(define-fungible-token)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)(?:\\\\s+(u\\\\d+))?\"},\"define-map\":{\"begin\":\"(\\\\()\\\\s*(define-map)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-map.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-map.clarity\"},\"3\":{\"name\":\"entity.name.map-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-map.end.clarity\"}},\"name\":\"meta.define-map\",\"patterns\":[{\"include\":\"#data-type\"},{\"include\":\"#expression\"}]},\"define-non-fungible-token\":{\"begin\":\"(\\\\()\\\\s*(define-non-fungible-token)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-non-fungible-token.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-non-fungible-token.clarity\"},\"3\":{\"name\":\"entity.name.non-fungible-token-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-non-fungible-token.end.clarity\"}},\"name\":\"meta.define-non-fungible-token\",\"patterns\":[{\"include\":\"#data-type\"}]},\"define-trait\":{\"begin\":\"(\\\\()\\\\s*(define-trait)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-trait.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.define-trait.clarity\"},\"3\":{\"name\":\"entity.name.trait-name.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-trait.end.clarity\"}},\"name\":\"meta.define-trait\",\"patterns\":[{\"begin\":\"(\\\\()\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.define-trait-body.start.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.define-trait-body.end.clarity\"}},\"name\":\"meta.define-trait-body\",\"patterns\":[{\"include\":\"#expression\"},{\"begin\":\"(\\\\()\\\\s*([a-zA-Z][\\\\w\\\\!\\\\?\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.trait-function.start.clarity\"},\"2\":{\"name\":\"entity.name.function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.trait-function.end.clarity\"}},\"name\":\"meta.trait-function\",\"patterns\":[{\"include\":\"#data-type\"},{\"begin\":\"(\\\\()\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.trait-function-args.start.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.trait-function-args.end.clarity\"}},\"name\":\"meta.trait-function-args\",\"patterns\":[{\"include\":\"#data-type\"}]}]}]}]},\"expression\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#keyword\"},{\"include\":\"#literal\"},{\"include\":\"#let-func\"},{\"include\":\"#built-in-func\"},{\"include\":\"#get-set-func\"}]},\"get-set-func\":{\"begin\":\"(\\\\()\\\\s*(var-get|var-set|map-get\\\\?|map-set|map-insert|map-delete|get)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.get-set-func.start.clarity\"},\"2\":{\"name\":\"keyword.control.clarity\"},\"3\":{\"name\":\"variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.get-set-func.end.clarity\"}},\"name\":\"meta.get-set-func\",\"patterns\":[{\"include\":\"#expression\"}]},\"keyword\":{\"match\":\"(?<!\\\\S)(?!-)\\\\b(?:block-height|burn-block-height|chain-id|contract-caller|is-in-regtest|stacks-block-height|stx-liquid-supply|tenure-height|tx-sender|tx-sponsor?)\\\\b(?!\\\\s*-)\",\"name\":\"constant.language.clarity\"},\"let-func\":{\"begin\":\"(\\\\()\\\\s*(let)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.let-function.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.let-function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.let-function.end.clarity\"}},\"name\":\"meta.let-function\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"},{\"begin\":\"(\\\\()\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.let-var.start.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.let-var.end.clarity\"}},\"name\":\"meta.let-var\",\"patterns\":[{\"begin\":\"(\\\\()([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.let-local-var.start.clarity\"},\"2\":{\"name\":\"entity.name.let-local-var-name.clarity variable.parameter.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.let-local-var.end.clarity\"}},\"name\":\"meta.let-local-var\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},{\"include\":\"#expression\"}]}]},\"literal\":{\"patterns\":[{\"include\":\"#number-literal\"},{\"include\":\"#bool-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#tuple-literal\"},{\"include\":\"#principal-literal\"},{\"include\":\"#list-literal\"},{\"include\":\"#optional-literal\"},{\"include\":\"#response-literal\"}],\"repository\":{\"bool-literal\":{\"match\":\"(?<!\\\\S)(?!-)\\\\b(true|false)\\\\b(?!\\\\s*-)\",\"name\":\"constant.language.bool.clarity\"},\"list-literal\":{\"begin\":\"(\\\\()\\\\s*(list)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.list.start.clarity\"},\"2\":{\"name\":\"entity.name.type.list.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"names\":\"punctuation.list.end.clarity\"}},\"name\":\"meta.list\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},\"number-literal\":{\"patterns\":[{\"comment\":\"unsigned integers\",\"match\":\"(?<!\\\\S)(?!-)\\\\bu\\\\d+\\\\b(?!\\\\s*-)\",\"name\":\"constant.numeric.uint.clarity\"},{\"comment\":\"signed integers\",\"match\":\"(?<!\\\\S)(?!-)\\\\b\\\\d+\\\\b(?!\\\\s*-)\",\"name\":\"constant.numeric.int.clarity\"},{\"comment\":\"hexadecimals\",\"match\":\"(?<!\\\\S)(?!-)\\\\b0x[0-9a-f]*\\\\b(?!\\\\s*-)\",\"name\":\"constant.numeric.hex.clarity\"}]},\"optional-literal\":{\"patterns\":[{\"match\":\"(?<!\\\\S)(?!-)\\\\b(none)\\\\b(?!\\\\s*-)\",\"name\":\"constant.language.none.clarity\"},{\"begin\":\"(\\\\()\\\\s*(some)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.some.start.clarity\"},\"2\":{\"name\":\"constant.language.some.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.some.end.clarity\"}},\"name\":\"meta.some\",\"patterns\":[{\"include\":\"#expression\"}]}]},\"principal-literal\":{\"match\":\"\\\\'[0-9A-Z]{28,41}(:?\\\\.[a-zA-Z][a-zA-Z0-9\\\\-]+){0,2}|(\\\\.[a-zA-Z][a-zA-Z0-9\\\\-]*){1,2}(?=[\\\\s(){},]|$)\",\"name\":\"constant.other.principal.clarity\"},\"response-literal\":{\"begin\":\"(\\\\()\\\\s*(ok|err)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.response.start.clarity\"},\"2\":{\"name\":\"constant.language.ok-err.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.response.end.clarity\"}},\"name\":\"meta.response\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]},\"string-literal\":{\"patterns\":[{\"begin\":\"(u?)(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.utf8.clarity\"},\"2\":{\"name\":\"punctuation.definition.string.begin.clarity\"}},\"end\":\"\\\"\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.clarity\"}},\"name\":\"string.quoted.double.clarity\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.quote\"}]}]},\"tuple-literal\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.tuple.start.clarity\"}},\"end\":\"(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.tuple.end.clarity\"}},\"name\":\"meta.tuple\",\"patterns\":[{\"match\":\"([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)(?=:)\",\"name\":\"entity.name.tag.tuple-key.clarity\"},{\"include\":\"#expression\"},{\"include\":\"#user-func\"}]}}},\"use-trait\":{\"begin\":\"(\\\\()\\\\s*(use-trait)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.use-trait.start.clarity\"},\"2\":{\"name\":\"keyword.declaration.use-trait.clarity\"},\"3\":{\"name\":\"entity.name.trait-alias.clarity variable.other.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.use-trait.end.clarity\"}},\"name\":\"meta.use-trait\",\"patterns\":[{\"include\":\"#literal\"}]},\"user-func\":{\"begin\":\"(\\\\()\\\\s*(([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*))\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.user-function.start.clarity\"},\"2\":{\"name\":\"entity.name.function.clarity\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.user-function.end.clarity\"}},\"name\":\"meta.user-function\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"$self\"}]}},\"scopeName\":\"source.clar\"}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/clojure.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Clojure\",\"name\":\"clojure\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#shebang-comment\"},{\"include\":\"#quoted-sexp\"},{\"include\":\"#sexp\"},{\"include\":\"#keyfn\"},{\"include\":\"#string\"},{\"include\":\"#vector\"},{\"include\":\"#set\"},{\"include\":\"#map\"},{\"include\":\"#regexp\"},{\"include\":\"#var\"},{\"include\":\"#constants\"},{\"include\":\"#dynamic-variables\"},{\"include\":\"#metadata\"},{\"include\":\"#namespace-symbol\"},{\"include\":\"#symbol\"}],\"repository\":{\"comment\":{\"begin\":\"(?<!\\\\\\\\);\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.clojure\"}},\"end\":\"$\",\"name\":\"comment.line.semicolon.clojure\"},\"constants\":{\"patterns\":[{\"match\":\"(nil)(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"constant.language.nil.clojure\"},{\"match\":\"(true|false)\",\"name\":\"constant.language.boolean.clojure\"},{\"match\":\"(##(?:Inf|-Inf|NaN))\",\"name\":\"constant.numeric.symbol.clojure\"},{\"match\":\"([-+]?\\\\d+/\\\\d+)\",\"name\":\"constant.numeric.ratio.clojure\"},{\"match\":\"([-+]?(?:(?:3[0-6])|(?:[12]\\\\d)|[2-9])[rR][0-9A-Za-z]+N?)\",\"name\":\"constant.numeric.arbitrary-radix.clojure\"},{\"match\":\"([-+]?0[xX][0-9a-fA-F]+N?)\",\"name\":\"constant.numeric.hexadecimal.clojure\"},{\"match\":\"([-+]?0[0-7]+N?)\",\"name\":\"constant.numeric.octal.clojure\"},{\"match\":\"([-+]?\\\\d+(?:(\\\\.|(?=[eEM]))\\\\d*([eE][-+]?\\\\d+)?)M?)\",\"name\":\"constant.numeric.double.clojure\"},{\"match\":\"([-+]?\\\\d+N?)\",\"name\":\"constant.numeric.long.clojure\"},{\"include\":\"#keyword\"}]},\"dynamic-variables\":{\"match\":\"\\\\*[\\\\w\\\\.\\\\-_:+=><!?\\\\d]+\\\\*\",\"name\":\"meta.symbol.dynamic.clojure\"},\"keyfn\":{\"patterns\":[{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(if(-[-\\\\p{Ll}?]*)?|when(-[-\\\\p{Ll}]*)?|for(-[-\\\\p{Ll}]*)?|cond|do|let(-[-\\\\p{Ll}?]*)?|binding|loop|recur|fn|throw[\\\\p{Ll}\\\\-]*|try|catch|finally|([\\\\p{Ll}]*case))(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"storage.control.clojure\"},{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[\\\\p{Ll}\\\\-]*))(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"keyword.control.clojure\"}]},\"keyword\":{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)):[\\\\w#\\\\.\\\\-_:+=><\\\\/!?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}|\\\\,))\",\"name\":\"constant.keyword.clojure\"},\"map\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.map.begin.clojure\"}},\"end\":\"(\\\\}(?=[}\\\\])\\\\s]*(?:;|$)))|(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.map.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.map.end.clojure\"}},\"name\":\"meta.map.clojure\",\"patterns\":[{\"include\":\"$self\"}]},\"metadata\":{\"patterns\":[{\"begin\":\"(\\\\^\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.metadata.map.begin.clojure\"}},\"end\":\"(\\\\}(?=[}\\\\])\\\\s]*(?:;|$)))|(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.metadata.map.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.metadata.map.end.clojure\"}},\"name\":\"meta.metadata.map.clojure\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(\\\\^)\",\"end\":\"(\\\\s)\",\"name\":\"meta.metadata.simple.clojure\",\"patterns\":[{\"include\":\"#keyword\"},{\"include\":\"$self\"}]}]},\"namespace-symbol\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"meta.symbol.namespace.clojure\"}},\"match\":\"([\\\\p{L}\\\\.\\\\-_+=><!?\\\\*][\\\\w\\\\.\\\\-_:+=><!?\\\\*\\\\d]*)/\"}]},\"quoted-sexp\":{\"begin\":\"(['``]\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.begin.clojure\"}},\"end\":\"(\\\\))$|(\\\\)(?=[}\\\\])\\\\s]*(?:;|$)))|(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"3\":{\"name\":\"punctuation.section.expression.end.clojure\"}},\"name\":\"meta.quoted-expression.clojure\",\"patterns\":[{\"include\":\"$self\"}]},\"regexp\":{\"begin\":\"#\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.regexp.begin.clojure\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.regexp.end.clojure\"}},\"name\":\"string.regexp.clojure\",\"patterns\":[{\"include\":\"#regexp_escaped_char\"}]},\"regexp_escaped_char\":{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.clojure\"},\"set\":{\"begin\":\"(\\\\#\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.set.begin.clojure\"}},\"end\":\"(\\\\}(?=[}\\\\])\\\\s]*(?:;|$)))|(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.set.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.set.end.clojure\"}},\"name\":\"meta.set.clojure\",\"patterns\":[{\"include\":\"$self\"}]},\"sexp\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.begin.clojure\"}},\"end\":\"(\\\\))$|(\\\\)(?=[}\\\\])\\\\s]*(?:;|$)))|(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"3\":{\"name\":\"punctuation.section.expression.end.clojure\"}},\"name\":\"meta.expression.clojure\",\"patterns\":[{\"begin\":\"(?<=\\\\()(ns|declare|def[\\\\w\\\\d._:+=><!?*-]*|[\\\\w._:+=><!?*-][\\\\w\\\\d._:+=><!?*-]*/def[\\\\w\\\\d._:+=><!?*-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.clojure\"}},\"end\":\"(?=\\\\))\",\"name\":\"meta.definition.global.clojure\",\"patterns\":[{\"include\":\"#metadata\"},{\"include\":\"#dynamic-variables\"},{\"match\":\"([\\\\p{L}\\\\.\\\\-_+=><!?\\\\*][\\\\w\\\\.\\\\-_:+=><!?\\\\*\\\\d]*)\",\"name\":\"entity.global.clojure\"},{\"include\":\"$self\"}]},{\"include\":\"#keyfn\"},{\"include\":\"#constants\"},{\"include\":\"#vector\"},{\"include\":\"#map\"},{\"include\":\"#set\"},{\"include\":\"#sexp\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.clojure\"}},\"match\":\"(?<=\\\\()(.+?)(?=\\\\s|\\\\))\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]},\"shebang-comment\":{\"begin\":\"^(#!)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.shebang.clojure\"}},\"end\":\"$\",\"name\":\"comment.line.shebang.clojure\"},\"string\":{\"begin\":\"(?<!\\\\\\\\)(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.clojure\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.clojure\"}},\"name\":\"string.quoted.double.clojure\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.clojure\"}]},\"symbol\":{\"patterns\":[{\"match\":\"([\\\\p{L}\\\\.\\\\-_+=><!?\\\\*][\\\\w\\\\.\\\\-_:+=><!?\\\\*\\\\d]*)\",\"name\":\"meta.symbol.clojure\"}]},\"var\":{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)\\\\#)'[\\\\w\\\\.\\\\-_:+=><\\\\/!?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"meta.var.clojure\"},\"vector\":{\"begin\":\"(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.vector.begin.clojure\"}},\"end\":\"(\\\\](?=[}\\\\])\\\\s]*(?:;|$)))|(\\\\])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.vector.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.vector.end.clojure\"}},\"name\":\"meta.vector.clojure\",\"patterns\":[{\"include\":\"$self\"}]}},\"scopeName\":\"source.clojure\",\"aliases\":[\"clj\"]}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Clojure\",\"name\":\"clojure\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#shebang-comment\"},{\"include\":\"#quoted-sexp\"},{\"include\":\"#sexp\"},{\"include\":\"#keyfn\"},{\"include\":\"#string\"},{\"include\":\"#vector\"},{\"include\":\"#set\"},{\"include\":\"#map\"},{\"include\":\"#regexp\"},{\"include\":\"#var\"},{\"include\":\"#constants\"},{\"include\":\"#dynamic-variables\"},{\"include\":\"#metadata\"},{\"include\":\"#namespace-symbol\"},{\"include\":\"#symbol\"}],\"repository\":{\"comment\":{\"begin\":\"(?<!\\\\\\\\);\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.clojure\"}},\"end\":\"$\",\"name\":\"comment.line.semicolon.clojure\"},\"constants\":{\"patterns\":[{\"match\":\"(nil)(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"constant.language.nil.clojure\"},{\"match\":\"(true|false)\",\"name\":\"constant.language.boolean.clojure\"},{\"match\":\"(##(?:Inf|-Inf|NaN))\",\"name\":\"constant.numeric.symbol.clojure\"},{\"match\":\"([-+]?\\\\d+/\\\\d+)\",\"name\":\"constant.numeric.ratio.clojure\"},{\"match\":\"([-+]?(?:(?:3[0-6])|(?:[12]\\\\d)|[2-9])[rR][0-9A-Za-z]+N?)\",\"name\":\"constant.numeric.arbitrary-radix.clojure\"},{\"match\":\"([-+]?0[xX][0-9a-fA-F]+N?)\",\"name\":\"constant.numeric.hexadecimal.clojure\"},{\"match\":\"([-+]?0[0-7]+N?)\",\"name\":\"constant.numeric.octal.clojure\"},{\"match\":\"([-+]?[0-9]+(?:(\\\\.|(?=[eEM]))[0-9]*([eE][-+]?[0-9]+)?)M?)\",\"name\":\"constant.numeric.double.clojure\"},{\"match\":\"([-+]?\\\\d+N?)\",\"name\":\"constant.numeric.long.clojure\"},{\"include\":\"#keyword\"}]},\"dynamic-variables\":{\"match\":\"\\\\*[\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\d]+\\\\*\",\"name\":\"meta.symbol.dynamic.clojure\"},\"keyfn\":{\"patterns\":[{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(if(-[-\\\\p{Ll}\\\\?]*)?|when(-[-\\\\p{Ll}]*)?|for(-[-\\\\p{Ll}]*)?|cond|do|let(-[-\\\\p{Ll}\\\\?]*)?|binding|loop|recur|fn|throw[\\\\p{Ll}\\\\-]*|try|catch|finally|([\\\\p{Ll}]*case))(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"storage.control.clojure\"},{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[\\\\p{Ll}\\\\-]*))(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"keyword.control.clojure\"}]},\"keyword\":{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)):[\\\\w\\\\#\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\/\\\\!\\\\?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}|\\\\,))\",\"name\":\"constant.keyword.clojure\"},\"map\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.map.begin.clojure\"}},\"end\":\"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.map.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.map.end.clojure\"}},\"name\":\"meta.map.clojure\",\"patterns\":[{\"include\":\"$self\"}]},\"metadata\":{\"patterns\":[{\"begin\":\"(\\\\^\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.metadata.map.begin.clojure\"}},\"end\":\"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.metadata.map.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.metadata.map.end.clojure\"}},\"name\":\"meta.metadata.map.clojure\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(\\\\^)\",\"end\":\"(\\\\s)\",\"name\":\"meta.metadata.simple.clojure\",\"patterns\":[{\"include\":\"#keyword\"},{\"include\":\"$self\"}]}]},\"namespace-symbol\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"meta.symbol.namespace.clojure\"}},\"match\":\"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)/\"}]},\"quoted-sexp\":{\"begin\":\"(['``]\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.begin.clojure\"}},\"end\":\"(\\\\))$|(\\\\)(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"3\":{\"name\":\"punctuation.section.expression.end.clojure\"}},\"name\":\"meta.quoted-expression.clojure\",\"patterns\":[{\"include\":\"$self\"}]},\"regexp\":{\"begin\":\"#\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.regexp.begin.clojure\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.regexp.end.clojure\"}},\"name\":\"string.regexp.clojure\",\"patterns\":[{\"include\":\"#regexp_escaped_char\"}]},\"regexp_escaped_char\":{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.clojure\"},\"set\":{\"begin\":\"(\\\\#\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.set.begin.clojure\"}},\"end\":\"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.set.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.set.end.clojure\"}},\"name\":\"meta.set.clojure\",\"patterns\":[{\"include\":\"$self\"}]},\"sexp\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.begin.clojure\"}},\"end\":\"(\\\\))$|(\\\\)(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.expression.end.trailing.clojure\"},\"3\":{\"name\":\"punctuation.section.expression.end.clojure\"}},\"name\":\"meta.expression.clojure\",\"patterns\":[{\"begin\":\"(?<=\\\\()(ns|declare|def[\\\\w\\\\d._:+=><!?*-]*|[\\\\w._:+=><!?*-][\\\\w\\\\d._:+=><!?*-]*/def[\\\\w\\\\d._:+=><!?*-]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.clojure\"}},\"end\":\"(?=\\\\))\",\"name\":\"meta.definition.global.clojure\",\"patterns\":[{\"include\":\"#metadata\"},{\"include\":\"#dynamic-variables\"},{\"match\":\"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)\",\"name\":\"entity.global.clojure\"},{\"include\":\"$self\"}]},{\"include\":\"#keyfn\"},{\"include\":\"#constants\"},{\"include\":\"#vector\"},{\"include\":\"#map\"},{\"include\":\"#set\"},{\"include\":\"#sexp\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.clojure\"}},\"match\":\"(?<=\\\\()(.+?)(?=\\\\s|\\\\))\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]},\"shebang-comment\":{\"begin\":\"^(#!)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.shebang.clojure\"}},\"end\":\"$\",\"name\":\"comment.line.shebang.clojure\"},\"string\":{\"begin\":\"(?<!\\\\\\\\)(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.clojure\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.clojure\"}},\"name\":\"string.quoted.double.clojure\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.clojure\"}]},\"symbol\":{\"patterns\":[{\"match\":\"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)\",\"name\":\"meta.symbol.clojure\"}]},\"var\":{\"match\":\"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)\\\\#)'[\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\/\\\\!\\\\?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\"name\":\"meta.var.clojure\"},\"vector\":{\"begin\":\"(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.vector.begin.clojure\"}},\"end\":\"(\\\\](?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.vector.end.trailing.clojure\"},\"2\":{\"name\":\"punctuation.section.vector.end.clojure\"}},\"name\":\"meta.vector.clojure\",\"patterns\":[{\"include\":\"$self\"}]}},\"scopeName\":\"source.clojure\",\"aliases\":[\"clj\"]}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/cobol.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import html from './html.mjs'
2
2
  import java from './java.mjs'
3
3
 
4
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"COBOL\",\"fileTypes\":[\"ccp\",\"scbl\",\"cobol\",\"cbl\",\"cblle\",\"cblsrce\",\"cblcpy\",\"lks\",\"pdv\",\"cpy\",\"copybook\",\"cobcopy\",\"fd\",\"sel\",\"scb\",\"scbl\",\"sqlcblle\",\"cob\",\"dds\",\"def\",\"src\",\"ss\",\"wks\",\"bib\",\"pco\"],\"name\":\"cobol\",\"patterns\":[{\"match\":\"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])([dD]\\\\s.*$)\",\"name\":\"token.info-token.cobol\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.newpage\"}},\"match\":\"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])(\\\\/.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.fixed\"}},\"match\":\"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])(\\\\*.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.newpage\"}},\"match\":\"(^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s])(\\\\/.*$)\"},{\"match\":\"^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s]$\",\"name\":\"constant.numeric.cobol\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.fixed\"}},\"match\":\"(^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s])(\\\\*.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.cobol\"},\"2\":{\"name\":\"comment.line.cobol.fixed\"}},\"match\":\"(^[0-9a-zA-Z\\\\s$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s$#%\\\\.@\\\\- ])(\\\\*.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"variable.other.constant\"}},\"match\":\"^\\\\s+(78)\\\\s+([0-9a-zA-Z][a-zA-Z\\\\-0-9_]+)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"variable.other.constant\"},\"3\":{\"name\":\"keyword.identifers.cobol\"}},\"match\":\"^\\\\s+(\\\\d+)\\\\s+([0-9a-zA-Z][a-zA-Z\\\\-0-9_]+)\\\\s+((?i:constant))\"},{\"captures\":{\"1\":{\"name\":\"constant.cobol\"},\"2\":{\"name\":\"comment.line.cobol.newpage\"}},\"match\":\"(^[0-9a-zA-Z\\\\s$#%\\\\.@][0-9a-zA-Z\\\\s$#%\\\\.@][0-9a-zA-Z\\\\s$#%\\\\.@][0-9a-zA-Z\\\\s$#%\\\\.@][0-9a-zA-Z\\\\s$#%\\\\.@][0-9a-zA-Z\\\\s$#%\\\\.@])(\\\\/.*$)\"},{\"match\":\"^\\\\*.*$\",\"name\":\"comment.line.cobol.fixed\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"entity.name.function.cobol\"},\"4\":{\"name\":\"keyword.control.directive.conditional.cobol\"}},\"match\":\"((?:^|\\\\s+)(?i:\\\\$set)\\\\s+)((?i:constant)\\\\s+)([0-9a-zA-Z][a-zA-Z\\\\-0-9]+\\\\s*)([a-zA-Z\\\\-0-9]*)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"2\":{\"name\":\"storage.modifier.import.cobol\"},\"3\":{\"name\":\"punctuation.begin.bracket.round.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.end.bracket.round.cobol\"}},\"match\":\"((?i:\\\\$\\\\s*set\\\\s+)(ilusing)(\\\\()(.*)(\\\\)))\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"2\":{\"name\":\"storage.modifier.import.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"match\":\"((?i:\\\\$\\\\s*set\\\\s+)(ilusing)(\\\")(.*)(\\\"))\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"match\":\"((?i:\\\\$set))\\\\s+(\\\\w+)\\\\s*(\\\")(\\\\w*)(\\\")\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"punctuation.begin.bracket.round.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.end.bracket.round.cobol\"}},\"match\":\"((?i:\\\\$set))\\\\s+(\\\\w+)\\\\s*(\\\\()(.*)(\\\\))\"},{\"captures\":{\"0\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"1\":{\"name\":\"invalid.illegal.directive\"},\"2\":{\"name\":\"comment.line.set.cobol\"}},\"match\":\"(?:^|\\\\s+)(?i:\\\\$\\\\s*set\\\\s)((?i:01SHUFFLE|64KPARA|64KSECT|AUXOPT|CHIP|DATALIT|EANIM|EXPANDDATA|FIXING|FLAG-CHIP|MASM|MODEL|OPTSIZE|OPTSPEED|PARAS|PROTMODE|REGPARM|SEGCROSS|SEGSIZE|SIGNCOMPARE|SMALLDD|TABLESEGCROSS|TRICKLECHECK|\\\\s)+).*$\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.cobol\"},\"2\":{\"name\":\"entity.other.attribute-name.preprocessor.cobol\"}},\"match\":\"(\\\\$region|\\\\$end-region)(.*$)\"},{\"begin\":\"\\\\$(?i:doc)(.*$)\",\"end\":\"\\\\$(?i:end-doc)(.*$)\",\"name\":\"invalid.illegal.iscobol\"},{\"match\":\">>\\\\s*(?i:turn|page|listing|leap-seconds|d)\\\\s+.*$\",\"name\":\"invalid.illegal.meta.preprocessor.cobolit\"},{\"match\":\"(?i:substitute-case|substitute)\\\\s+\",\"name\":\"invalid.illegal.functions.cobolit\"},{\"captures\":{\"1\":{\"name\":\"invalid.illegal.keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"invalid.illegal.entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"invalid.illegal.entity.name.function.preprocessor.cobol\"}},\"match\":\"((((>>|\\\\$)[\\\\s]*)(?i:elif))(.*$))\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"entity.name.function.preprocessor.cobol\"}},\"match\":\"((((>>|\\\\$)[\\\\s]*)(?i:if|else|elif|end-if|end-evaluate|end|define|evaluate|when|display|call-convention|set))(.*$))\"},{\"captures\":{\"1\":{\"name\":\"comment.line.scantoken.cobol\"},\"2\":{\"name\":\"keyword.cobol\"},\"3\":{\"name\":\"string.cobol\"}},\"match\":\"(\\\\*>)\\\\s+(@[0-9a-zA-Z][a-zA-Z\\\\-0-9]+)\\\\s+(.*$)\"},{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(>>.*)$\",\"name\":\"strong comment.line.set.acucobol\"},{\"match\":\"([nNuU][xX]|[hHxX])'\\\\h*'\",\"name\":\"constant.numeric.integer.hexadecimal.cobol\"},{\"match\":\"([nNuU][xX]|[hHxX])'.*'\",\"name\":\"invalid.illegal.hexadecimal.cobol\"},{\"match\":\"([nNuU][xX]|[hHxX])\\\"\\\\h*\\\"\",\"name\":\"constant.numeric.integer.hexadecimal.cobol\"},{\"match\":\"([nNuU][xX]|[hHxX])\\\".*\\\"\",\"name\":\"invalid.illegal.hexadecimal.cobol\"},{\"match\":\"[bB]\\\"[0-1]\\\"\",\"name\":\"constant.numeric.integer.boolean.cobol\"},{\"match\":\"[bB]'[0-1]'\",\"name\":\"constant.numeric.integer.boolean.cobol\"},{\"match\":\"[oO]\\\"[0-7]*\\\"\",\"name\":\"constant.numeric.integer.octal.cobol\"},{\"match\":\"[oO]\\\".*\\\"\",\"name\":\"invalid.illegal.octal.cobol\"},{\"match\":\"(#)([0-9a-zA-Z][a-zA-Z\\\\-0-9]+)\",\"name\":\"meta.symbol.cobol.forced\"},{\"begin\":\"((?<![-_a-zA-Z0-9()-])(?i:installation|author|source-computer|object-computer|date-written|security|date-compiled)(\\\\.|$))\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.identifiers.cobol\"}},\"end\":\"(?=((?<![-_])(?i:remarks|author|date-written|source-computer|object-computer|installation|date-compiled|special-names|security|environment\\\\s+division|data\\\\s+division|working-storage\\\\s+section|input-output\\\\s+section|linkage\\\\s+section|procedure\\\\s+division|local-storage\\\\s+section)|^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*]\\\\*.*$|^\\\\+$))\",\"name\":\"comment.block.cobol.remark\",\"patterns\":[{\"match\":\"(^[0-9 ][0-9 ][0-9 ][0-9 ][0-9 ][0-9 ])\",\"name\":\"constant.numeric.cobol\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.start.bracket.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"keyword.end.bracket.cobol\"}},\"comment\":\"simple numerics in () and []\",\"match\":\"(?<=(\\\\(|\\\\[))((-\\\\+)*\\\\s*[0-9 ,\\\\.+\\\\-\\\\*\\\\/]+)(?=(\\\\)|\\\\]))\",\"name\":\"constant.numeric.cobol\"},{\"include\":\"#number-complex-constant\"},{\"include\":\"#number-simple-constant\"},{\"match\":\"(?<![-_])(?i:true|false|null|nulls)(?![0-9A-Za-z_-])\",\"name\":\"constant.language.cobol\"},{\"match\":\"(?<![-_])(?i:zeroes|alphabetic-lower|alphabetic-upper|alphanumeric-edited|alphabetic|alphabet|alphanumeric|zeros|zeros|zero|spaces|space|quotes|quote|low-values|low-value|high-values|high-value)(?=\\\\s+|\\\\.|,|\\\\))\",\"name\":\"constant.language.figurative.cobol\"},{\"begin\":\"(?i:exec\\\\s+sqlims|exec\\\\s+sql)\",\"contentName\":\"meta.embedded.block.openesql\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(^\\\\s*\\\\*.*)$\",\"name\":\"comment.line.sql\"},{\"match\":\"(--.*$)\",\"name\":\"comment.line.sql\"},{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(:([0-9a-zA-Z\\\\-_])*)\",\"name\":\"variable.cobol\"},{\"include\":\"source.openesql\"}]},{\"begin\":\"(?i:exec\\\\s+cics)\",\"contentName\":\"meta.embedded.block.cics\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(\\\\()\",\"name\":\"meta.symbol.cobol\"},{\"include\":\"#cics-keywords\"},{\"include\":\"#string-double-quoted-constant\"},{\"include\":\"#string-quoted-constant\"},{\"include\":\"#number-complex-constant\"},{\"include\":\"#number-simple-constant\"},{\"match\":\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\",\"name\":\"variable.cobol\"}]},{\"begin\":\"(?i:exec\\\\s+dli)\",\"contentName\":\"meta.embedded.block.dli\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(\\\\()\",\"name\":\"meta.symbol.cobol\"},{\"include\":\"#dli-keywords\"},{\"include\":\"#dli-options\"},{\"include\":\"#string-double-quoted-constant\"},{\"include\":\"#string-quoted-constant\"},{\"include\":\"#number-complex-constant\"},{\"include\":\"#number-simple-constant\"},{\"match\":\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\",\"name\":\"variable.cobol\"}]},{\"begin\":\"(?i:exec\\\\s+sqlims)\",\"contentName\":\"meta.embedded.block.openesql\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(:([a-zA-Z\\\\-])*)\",\"name\":\"variable.cobol\"},{\"include\":\"source.openesql\"}]},{\"begin\":\"(?i:exec\\\\s+ado)\",\"contentName\":\"meta.embedded.block.openesql\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(--.*$)\",\"name\":\"comment.line.sql\"},{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(:([a-zA-Z\\\\-])*)\",\"name\":\"variable.cobol\"},{\"include\":\"source.openesql\"}]},{\"begin\":\"(?i:exec\\\\s+html)\",\"contentName\":\"meta.embedded.block.html\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"include\":\"text.html.basic\"}]},{\"begin\":\"(?i:exec\\\\s+java)\",\"contentName\":\"meta.embedded.block.java\",\"end\":\"(?i:end-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"include\":\"source.java\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\")(CBL_.*)(\\\")\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\")(PC_.*)(\\\")\"},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.double.cobol\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\\')(CBL_.*)(\\\\')\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\\')(PC_.*)(\\\\')\"},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"('|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGzZ]\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.double.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGzZ]'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGnN]\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.double.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGnN]'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[uU]\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.utf8.double.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[uU]'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.utf8.single.cobol\"},{\"match\":\"(?<![-_])(?i:id\\\\s+division|identification\\\\s+division|identification|id|property-id|getter|setter|entry|function-id|end\\\\s+attribute|attribute|interface-id|indexer-id|factory|ctl|class-control|options|environment\\\\s+division|environment-name|environment-value|environment|configuration\\\\s+section|configuration|decimal-point\\\\s+is|decimal-point|console\\\\s+is|call-convention|special-names|cursor\\\\s+is|update|picture\\\\s+symbol|currency\\\\s+sign|currency|repository|input-output\\\\s+section|input-output|file\\\\s+section|file-control|select|optional|i-o-control|data\\\\s+division|working-storage\\\\s+section|working-storage|section|local-storage|linkage\\\\s+section|linkage|communication|report|screen\\\\s+section|object-storage|object\\\\s+section|class-object|fd|rd|cd|sd|printing|procedure\\\\s+division|procedure|division|references|debugging|end\\\\s+declaratives|declaratives|end\\\\s+static|end\\\\s+factory|end\\\\s+class-object|based-storage|size|font|national-edited|national)(?![0-9A-Za-z_-])\",\"name\":\"keyword.identifiers.cobol\"},{\"captures\":{\"1\":{\"name\":\"keyword.verb.cobol\"},\"2\":{\"name\":\"entity.name.function.cobol\"}},\"match\":\"(?<![-_])((?i:valuetype-id|operator-id|method-id|method|property-id|attribute-id|enum-id|iterator-id|class-id|program-id|operator-id|end\\\\s+program|end\\\\s+valuetype|extension))[\\\\.]*[\\\\s]+([a-zA-Z0-9_-]*)\"},{\"match\":\"(?<![-_])(?i:implements|inherits|constraints|constrain)(?=\\\\s|\\\\.)\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:end\\\\s+enum|end\\\\s+interface|end\\\\s+class|end\\\\s+property|end\\\\s+method|end\\\\s+object|end\\\\s+iterator|end\\\\s+function|end\\\\s+operator|end\\\\s+program|end\\\\s+indexer|create|reset|instance|delegate|end-delegate|delegate-id|declare|exception-object|as|stop\\\\s+iterator|stop\\\\s+run|stop)(?=\\\\s|\\\\.|,|\\\\))\",\"name\":\"keyword.identifiers.cobol\"},{\"match\":\"\\\\s+(?i:attach\\\\s+method|attach\\\\s+del|attach|detach\\\\s+del|detach\\\\s+method|detach|method|del)(?=\\\\s|\\\\.|$)\",\"name\":\"keyword.identifiers.cobol\"},{\"match\":\"\\\\s+(?i:sync\\\\s+(?i:on))(?=\\\\s|\\\\.)\",\"name\":\"keyword.other.sync.cobol\"},{\"match\":\"\\\\s+(?i:try|finally|catch|end-try|throw)(?=\\\\s|\\\\.|$)\",\"name\":\"keyword.control.catch-exception.cobol\"},{\"match\":\"(?<![-_])(?i:select|use|thru|varying|giving|remainder|tallying|through|until|execute|returning|using|chaining|yielding|\\\\+\\\\+include|copy|replace)(?=\\\\s)\",\"name\":\"keyword.otherverb.cobol\"},{\"match\":\"(?i:dynamic)\\\\s+(?i:length)(?=\\\\s|\\\\.)\",\"name\":\"storage.type.dynamiclength.cobol\"},{\"match\":\"(?<![-_])(?i:assign|external|prototype|organization|organisation|indexed|column|plus|line\\\\*s*sequential|sequential|access|dynamic|relative|label|block|contains|standard|records|record\\\\s+key|record|is|alternate|duplicates|reel|tape|terminal|disk\\\\sfilename|disk|disc|recording\\\\smode|mode|random)(?=\\\\s|\\\\.)\",\"name\":\"keyword.identifers.cobol\"},{\"match\":\"(?<![-_])(?i:max|min|integer-of-date|integer-of-day|integer-part|integer|date-to-yyyymmdd|year-to-yyyy|day-to-yyyyddd|exp|exception-file|exception-location|exception-statement|exception-status|e|variance|integer-of-date|rem|pi|factorial|sqrt|log10|fraction-part|mean|exp|log|char|day-of-integer|date-of-integer|exp10|atan|integer-part|tan|sin|cos|midrange|addr|acos|asin|annuity|present-value|integer-of-day|ord-max|ord-min|ord|random|integer-of-date|sum|standard-deviation|median|reverse|abs|upper-case|lower-case|char-national|numval|mod|range|length|locale-date|locale-time-from-seconds|locale-time|seconds-past-midnight|stored-char-length|seconds-from-formatted-time|seconds-past-midnight|trim|length-an|numval-c|current-date|national-of|display-of|when-compiled|integer-of-boolean|combined-datetime|concatenate)(?=\\\\s|\\\\.|\\\\(|\\\\))\",\"name\":\"support.function.cobol\"},{\"captures\":{\"0\":{\"name\":\"support.function.cics.cobol\"},\"1\":{\"name\":\"punctuation.definition.string.end.cobol\"},\"2\":{\"name\":\"keyword.identifers.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(?<![-_])(?i:DFHRESP|DFHVALUE)(\\\\s*\\\\(\\\\s*)([a-zA-Z]*)(\\\\s*\\\\))\"},{\"match\":\"(?<![-_])(?i:function)(?=\\\\s|\\\\.)\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:end-accept|end-add|end-sync|end-compute|end-delete|end-display|end-divide|end-set|end-multiply|end-of-page|end-read|end-receive|end-return|end-rewrite|end-search|end-start|end-string|end-subtract|end-unstring|end-write|program|class|interface|enum|interface)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?:by value|by reference|by content|property-value)(?![0-9A-Za-z_-])\",\"name\":\"keyword.other.cobol\"},{\"match\":\"(?<![-_])(?i:attr-string|automatic|auto-skip|footing|next|group|indicate|source|control|full|required|of|input|output|i-o|extend|file|error|exception|overflow|goto|off|on|proceed|procedures|procedure|through|invalid|data|normal|eop|returning|to|for|giving|into|by|params|remainder|also|numeric|free|depending|converting|replacing|after|before|all|leading|first|recursive|initialized|global|common|initial|resident|reference|content|are\\\\sstandard|are|renames|like|format\\\\stime|values|omitted|value|constant|ascending|descending|key|retry|until|varying|with|no|advancing|up|down|uccurs|ignore\\\\s+lock|lock|length|delimited|count|delimiter|redefines|from\\\\s+console|from\\\\s+command-line|from\\\\s+user\\\\s+name|from\\\\s+day\\\\s+yyyyddd|from\\\\s+day|from\\\\s+time|from\\\\s+day-of-week|from\\\\s+escape|from\\\\s+day\\\\s+yyyyddd|from\\\\s+date\\\\s+yyyymmdd|from\\\\s+date|from|raising|crt\\\\s+status|status|class|upon\\\\s+crt|upon|lines|columns|step|linage|auto|line|position|col|reports|code-set|reporting|arithmetic|localize|program|class|interface|in|at\\\\s+end|page|name)(?![0-9A-Za-z_-])\",\"name\":\"keyword.identifers.cobol\"},{\"captures\":{\"0\":{\"name\":\"keyword.verb.cobol\"},\"1\":{\"name\":\"storage.type.cobol\"}},\"comment\":\"type ssss \",\"match\":\"(?<![-_])(?i:type|new)\\\\s+([a-zA-Z][a-zA-Z0-9$\\\\-\\\\._]*|[a-zA-Z])(?=\\\\.$)\"},{\"match\":\"(?<![-_])(?i:string)(?=\\\\s+value|\\\\.)\",\"name\":\"storage.type.cobol\"},{\"match\":\"(?<![-_])(?i:bit|byte|binary-char|binary-char-unsigned|binary-short|binary-short-unsigned|binary.long|binary-c-long|binary-long-unsigned|binary-long|binary-double|binary-double-unsigned|float-short|float-extended|float-long|bit|condition-value|characters|character\\\\s+type|character|comma|crt|decimal|object\\\\+sreference|object-reference|object|list|dictionary|unsigned)(?=\\\\s|\\\\.|,|\\\\]|\\\\[)\",\"name\":\"storage.type.cobol\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.verb.cobol\"},\"2\":{\"name\":\"meta.symbol.cobol\"}},\"comment\":\"operator-id ssss \",\"match\":\"(operator-id\\\\s+[+\\\\-\\\\*\\\\/])\",\"name\":\"keyword.operator-id.cobol\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cobol.b3\"},\"2\":{\"name\":\"entity.name.function.b3\"}},\"comment\":\" ::.. \",\"match\":\"(?i:self)(::)([0-9a-zA-Z_\\\\-\\\\.]*)(?=\\\\.$)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cobol\"},\"2\":{\"name\":\"entity.name.function.cobol\"}},\"comment\":\" ::.. \",\"match\":\"(::)([0-9a-zA-Z_\\\\-\\\\.]*)\"},{\"captures\":{\"0\":{\"name\":\"keyword.verb.cobol.aa\"},\"1\":{\"name\":\"storage.type.cobol.bb\"}},\"match\":\"(?<![-_])(?i:type)\\\\s+([0-9a-zA-Z\\\\.]*)\"},{\"match\":\"(?<![-_])(?i:if|else|end-if|exit\\\\s+iterator|exit\\\\s+program|exit\\\\s+method|evaluate|end-evaluate|exit\\\\s+perform|perform|end-perform|when\\\\s+other|when|continue|call|end-call|chain|end-chain|invoke|end\\\\s+invoke|go\\\\s+to|go|sort|merge|use|xml|parse|stop\\\\s+run|goback\\\\s+returning|goback|raise|exit\\\\s+function|exit\\\\sparagraph|await)(?![0-9A-Za-z_-])\",\"name\":\"keyword.control.cobol\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture10.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"storage.type.picture10.cobol\"},\"4\":{\"name\":\"constant.numeric.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\((\\\\d*)\\\\)([vV][-+sS\\\\*$09aAbBxXuUpPnNzZ/,\\\\.]*)\\\\((\\\\d*)\\\\)[-|+]\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture9.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"storage.type.picture9.cobol\"},\"4\":{\"name\":\"constant.numeric.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\((\\\\d*)\\\\)([vV][-+sS\\\\*$09aAbBxXuUpPnNzZ/,\\\\.]*)\\\\((\\\\d*)\\\\)\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture8.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"storage.type.picture8.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\((\\\\d*)\\\\)([vV\\\\.][-+s\\\\*$09aAbBsSnNxXuUzZ/,]*[0-9\\\\.()])*\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpPNxXuUzZ/,.]*\\\\(\\\\d*\\\\)[Vv\\\\.][-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\",\"name\":\"storage.type.picture7.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpPNxXuUzZ/,.]*\\\\(\\\\d*\\\\)[-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*[Vv\\\\.][-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\",\"name\":\"storage.type.picture6.cobol\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture5.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpPNxuUXzZ/,.]*)\\\\((\\\\d*)\\\\)[-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpNNxXuUzZ/,.]*\\\\(\\\\d*\\\\)\",\"name\":\"storage.type.picture4.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[sS]?[9aAbBsSnNxXuUzZ]*[Vv][9aAxbXuUzZ]*\\\\(\\\\d*\\\\)\",\"name\":\"storage.type.picture3.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[sS]?[9aAbBsSnNxXuUzZ]*[Vv][9aAxbXuUzZ]*\",\"name\":\"storage.type.picture2.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+\\\\*$9aAbBsSnpPNxXuUzZ/,.vV]*\",\"name\":\"storage.type.picture1.cobol\"},{\"captures\":{\"1\":{\"name\":\"invalid.illegal.keyword.verb.acu.cobol\"},\"2\":{\"name\":\"invalid.illegal.constant.numeric.integer\"}},\"match\":\"((?<![-_])(?i:binary|computational-4|comp-4|computational-5|comp-5))\\\\((\\\\d*)\\\\)\"},{\"match\":\"(?i:cblt-x1-compx-const|cblt-x2-compx-const|cblt-x4-compx-const|cblt-alphanum-const|cblt-x9-compx|cblt-x8-compx|cblt-x8-comp5|cblt-x4-compx|cblt-x4-comp5|cblt-x2-compx|cblt-x2-comp5|cblt-x1-compx|cblt-x1-comp5|cblt-x1|cblt-vfile-status|cblt-vfile-handle|cblt-sx8-comp5|cblt-sx4-comp5|cblt-sx2-comp5|cblt-sx1-comp5|cblt-subsys-params|cblt-splitjoin-buf|cblt-screen-position|cblt-rtncode|cblt-request-context|cblt-reqhand-service-info|cblt-reqhand-service-funcs|cblt-reqhand-response|cblt-reqhand-funcs|cblt-prog-info-params|cblt-prog-info-arg-info|cblt-printer-properties|cblt-printer-name|cblt-printer-info|cblt-printer-default|cblt-ppointer|cblt-pointer|cblt-os-ssize|cblt-os-size|cblt-os-offset|cblt-os-info-params|cblt-os-flags|cblt-node-name|cblt-nls-msg-params|cblt-nls-msg-number-pair|cblt-nls-msg-ins-struct|cblt-nls-msg-buffer|cblt-mouse-shape|cblt-mouse-rect|cblt-mouse-pos|cblt-mouse-event|cblt-mem-validate-param|cblt-idp-exit-service-funcs|cblt-idp-exit-info|cblt-HWND|cblt-HINSTANCE|cblt-get-scr-line-draw-buffer|cblt-get-scr-graphics-buffer|cblt-generic-attr-value|cblt-generic-attr-rgb-values|cblt-generic-attr-information|cblt-file-status|cblt-fileexist-buf|cblt-exit-params|cblt-exit-info-params|cblt-cancel-proc-params|cblt-bytestream-handle|cblt-alphanum)\",\"name\":\"support.function.cbltypes.cobol\"},{\"match\":\"(?<![-_])(?i:computational-1|comp-1|computational-2|comp-2|computational-3|comp-3|computational-4|comp-4|computational-x|comp-x|computational-5|comp-5|computational-6|comp-6|computational-n|comp-n|packed-decimal|index|float|double|signed-short|unsigned-short|signed-int|unsigned-int|signed-long|unsigned-long|comp|computational|group-usage|usage\\\\sis\\\\sdisplay|usage\\\\sis\\\\sfont|usage\\\\s+display|binary|mutex-pointer|data-pointer|thread-pointer|sempahore-pointer|event-pointer|program-pointer|procedure-pointer|pointer|window|subwindow|control-type|thread|menu|variant|layout-manager|occurs|typedef|any|times|display\\\\s+blank\\\\s+when|blank\\\\s+when|blank\\\\s+screen|blank|usage\\\\sis|is\\\\spartial|usage|justified|just|right|signed|trailing\\\\s+separate|sign|seperate|sql)(?=\\\\s|\\\\.|\\\\))\",\"name\":\"storage.type.picture.cobol\"},{\"match\":\"(?i:byte-length)\\\\s+\\\\d+\",\"name\":\"storage.type.length.cobol\"},{\"match\":\"(?<![-_])(?i:accept|add|address|allocate|cancel|close|commit|compute|continue|delete|disable|display|bell|divide|eject|enable|enter|evaluate|exhibit|named|exit|free|generate|go\\\\s+to|initialize\\\\sonly|initialize|initiate|inspect|merge|end-set|set|end-invoke|invoke\\\\s+run|invoke|move|corresponding|corr|multiply|otherwise|open|sharing|sort-merge|purge|ready|read|kept|receive|release|return|rewrite|rounded|rollback|search|send|sort|collating\\\\s+sequence|collating|start|service|subtract|suppress|terminate|then|unlock|string|unstring|validate|write|next|statement|sentence)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:thread-local)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(\\\\s+|^)(?i:foreground-color|background-color|prompt|underline|reverse-video|no-echo|highlight|blink)(?![0-9A-Za-z_-])\",\"name\":\"keyword.screens.cobol\"},{\"match\":\"(\\\\s+|^)(?i:bold|high|lowlight|low|background-high|background-low|background-standard)(?![0-9A-Za-z_-])\",\"name\":\"invalid.illegal.screens.acu.cobol\"},{\"match\":\"(?<![-_])(?i:internal|public|protected|final|private|static|new|abstract|override|readonly|property|async-void|async-value|async)(?=\\\\s|\\\\.)\",\"name\":\"storage.modifier.cobol\"},{\"match\":\"=|<|>|<=|>=|<>|\\\\+|-|\\\\*|\\\\/|(?<![-_])(?i:b-and|b-or|b-xor|b-exor|b-not|b-left|b-right|and|or|equals|equal|greater\\\\s+than|less\\\\s+than|greater)(?![0-9A-Za-z_-])\",\"name\":\"keyword.operator.cobol\"},{\"match\":\"(?i:not\\\\s+at\\\\s+end)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:not)(?![0-9A-Za-z_-])\",\"name\":\"keyword.operator.cobol\"},{\"match\":\"(?<![-_])(?i:sysout-flush|sysin|stderr|stdout|csp|stdin|sysipt|sysout|sysprint|syslist|syslst|printer|syserr|console|c01|c02|c03|c04|c05|c06|c07|c08|c09|c10|c11|c12|formfeed|switch-0|switch-10|switch-11|switch-12|switch-13|switch-13|switch-14|switch-15|switch-1|switch-2|switch-3|switch-4|switch-5|switch-6|switch-7|switch-8|switch-9|sw0|sw11|sw12|sw13|sw14|sw15|sw1|sw2|sw3|sw4|sw5|sw6|sw7|sw8|sw9|sw10|lc_all|lc_collate|lc_ctype|lc_messages|lc_monetary|lc_numeric|lc_time|ucs-4|utf-8|utf-16)(?![0-9A-Za-z_-])\",\"name\":\"support.type.cobol\"},{\"match\":\"(?<![-_])(?i:end-xml|processing.*procedure|xml\\\\sparse|xml|xml-information|xml-text|xml-schemal|xml-declaration)(?![0-9A-Za-z_-])\",\"name\":\"keyword.xml.cobol\"},{\"match\":\"(?<![-_])(?i:json\\\\s+generate|json|end-json|name\\\\sof)(?![0-9A-Za-z_-])\",\"name\":\"keyword.json.cobol\"},{\"match\":\"(?<![-_])(?i:modify|inquire|tab|title|event|center|label-offset|cell|help-id|cells|push-button|radio-button|page-layout-screen|entry-field|list-box|label|default-font|id|no-tab|unsorted|color|height|width|bind|thread|erase|modeless|scroll|system|menu|title-bar|wrap|destroy|resizeable|user-gray|large-font|newline|3-d|data-columns|display-columns|alignment|separation|cursor-frame-width|divider-color|drag-color|heading-color|heading-divider-color|num-rows|record-data|tiled-headings|vpadding|centered-headings|column-headings|self-act|cancel-button|vscroll|report-composer|clsid|primary-interface|active-x-control|default-interface|default-source|auto-minimize|auto-resize|resource|engraved|initial-state|frame|acuactivexcontrol|activex-res|grid|box|message|namespace|class-name|module|constructor|version|strong|culture|method|handle|exception-value|read-only|dividers|graphical|indexed|termination-value|permanent|boxed|visible|centered|record-position|convert)(?=\\\\s|\\\\.|,|;|$)\",\"name\":\"invalid.illegal.acu.cobol\"},{\"match\":\"(?<![-_])(?i:actual|auto|automatic|based-storage|complex|connect|contained|core-index|db-access-control-key|db-data-name|db-exception|db-record-name|db-set-name|db-status|dead-lock|endcobol|end-disable|end-enable|end-send|end-transceive|eos|file-limits|file-limit|formatted|sort-status|usage-mode)(?=\\\\s|\\\\.|,|;|$)\",\"name\":\"invalid.illegal.netcobol.cobol\"},{\"match\":\"(?<![-_])(?i:System-Info|Terminal-Info)(?![0-9A-Za-z_-])\",\"name\":\"support.type.cobol.acu strong\"},{\"match\":\"(?<![-_])(?i:alter)(?=\\\\s|\\\\.)\",\"name\":\"invalid.illegal.cobol\"},{\"match\":\"(?<![-_])(?i:apply|areas|area|clock-units|code|com-reg|controls|dbcs|destination|detail|display-1|ending|every|insert|kanjikey|last|left|less|limits|limit|memory|metaclass|modules|more-labels|multiple|native_binary|native|negative|number|numeric-edited|other|padding|password|pf|ph|postive|processing|queue|recording|reload|removal|rerun|reserve|reserved|rewind|segment-limit|segment|separate|sequence|skip1|skip2|skip3|standard-1|standard-2|sub-queue-1|sub-queue-2|sub-queue-3|sum|symbolic|synchronized|sync|table|test|text|than|top|trace|trailing|unit|words|write-only|at|basis|beginning|bottom|cbl|cf|ch|de|positive|egcs|egi|emi|end|reversed|rf|rh|run|same|order|heading|esi)(?![0-9A-Za-z_-])\",\"name\":\"keyword.ibmreserved.cobol\"},{\"match\":\"(?<![-_])(?i:active-class|aligned|anycase|boolean|cols|col|condition|ec|eo|system-default|function-pointer)(?![0-9A-Za-z_-])\",\"name\":\"strong keyword.potential.reserved.cobol\"},{\"match\":\"(?i:filler)\",\"name\":\"keyword.filler.cobol\"},{\"match\":\"(?<![-_])(?i:address-of|date|day-of-week|day|debug-content|debug-item|debug-line|debug-item|debug-sub-1|debug-sub-2|debug-sub-3|shift-in|shift-out|sort-control|sort-core-size|sort-file-size|sort-message|sort-return|sort-mode-size|sort-return|tally|time|when-compiled|line-counter|page-counter|return-code|linage-counter|debug-line|debug-name|debug-contents|json-code|json-status|xml-code|xml-event|xml-information|xml-namespace-prefix|xml-namespace|xml-nnamespace-repfix|xml-nnamespace|xml-ntext|jnienvptr|igy-javaiop-call-exception)(?![0-9A-Za-z_-])\",\"name\":\"variable.language\"},{\"match\":\"(?<![-_])(?i:shortint1|shortint2|shortint3|shortint4|shortint5|shortint6|shortint7|longint1|longint2|longint3|longint4|longint5|longint6|bigint1|bigint2|blob-locator|clob-locator|dbclob-locator|dbclob-file|blob-file|clob-file|clob|dbclob|blob|varbinary|long-varbinary|time-record|timestamp-record|timestamp-offset-record|timestamp-offset|timestamp|rowid|xml|long-varchar)(?=\\\\s|\\\\.|\\\\)|\\\\()\",\"name\":\"storage.type.sql.picture.cobol\"},{\"match\":\"(?<![-_])(?i:self)\",\"name\":\"keyword.other.self.cobol\"},{\"match\":\"(?<![-_])(?i:super)\",\"name\":\"keyword.other.super.cobol\"},{\"match\":\"(^\\\\d\\\\d\\\\d\\\\d\\\\d\\\\d)\",\"name\":\"constant.numeric.cobol\"},{\"captures\":{\"1\":{\"name\":\"meta.symbol.cobol\"},\"2\":{\"name\":\"constant.numeric.integer\"},\"3\":{\"name\":\"meta.symbol.cobol\"},\"4\":{\"name\":\"constant.numeric.integer\"},\"5\":{\"name\":\"meta.symbol.cobol\"}},\"match\":\"(\\\\()(\\\\d*)(:)(\\\\d*)(\\\\))\"},{\"match\":\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\",\"name\":\"meta.symbol.cobol\"}],\"repository\":{\"cics-keywords\":{\"match\":\"(?<![\\\\-\\\\w])(?i:abcode|abdump|abend|abort|abprogram|abstime|accum|acee|acqactivity|acqprocess|acquactivity|action|activity|activityid|actpartn|add|address|after|aid|alarm|all|allocate|alter|alternate|altscrnht|altscrnwd|and|anykey|aplkybd|apltext|applid|as|asa|asis|asktime|asraintrpt|asrakey|asrapsw|asraregs|asraspc|asrastg|assign|asynchronous|at|attach|attachid|attributes|authenticate|autopage|auxiliary|base64|basicauth|below|bif|binary|bit|bodycharset|bookmark|brdata|brdatalength|brexit|bridge|browsetoken|btrans|buffer|build|burgeability|caddrlength|cancel|card|cbuff|ccsid|certificate|change|changetime|channel|char|characterset|check|chunkend|chunking|chunkno|chunkyes|cicsdatakey|ciphers|class|clear|cliconvert|client|clientaddr|clientaddrnu|clientconv|clientname|clntaddr6nu|clntipfamily|close|closestatus|clrpartn|cmdsec|cnamelength|cnotcompl|codepage|color|commarea|commonname|commonnamlen|comparemax|comparemin|complete|composite|compstatus|condition|confirm|confirmation|connect|consistent|console|container|contexttype|control|convdata|converse|convertst|converttime|convid|copy|counter|country|countrylen|create|critical|ctlchar|current|cursor|cwa|cwaleng|data|data1|data2|datalength|datalenth|dataonly|datapointer|dataset|datastr|datatoxml|datatype|datcontainer|date|dateform|datesep|datestring|day|daycount|dayofmonth|dayofweek|dayofyear|days|daysleft|day-of-week|dcounter|ddmmyy|ddmmyyyy|debkey|debrec|debug-contents|debug-item|debug-line|debug-name|debug-sub-1|debug-sub-2|debug-sub-3|deedit|default|define|defresp|defscrnht|defscrnwd|delay|delete|deleteq|delimiter|deq|destcount|destid|destidleng|detail|detaillength|dfhresp|dfhvalue|digest|digesttype|disconnect|docdelete|docsize|docstatus|doctoken|document|ds3270|dsscs|dump|dumpcode|dumpid|duprec|ecaddr|ecblist|eib|elemname|elemnamelen|elemns|elemnslen|end|endactivity|endbr|endbrowse|endfile|endoutput|enq|enter|entry|entryname|eoc|eods|eprfield|eprfrom|eprinto|eprlength|eprset|eprtype|equal|erase|eraseaup|error|errterm|esmreason|esmresp|event|eventtype|eventual|ewasupp|exception|expect|expirytime|extds|external|extract|facility|facilitytokn|false|faultactlen|faultactor|faultcode|faultcodelen|faultcodestr|faultstring|faultstrlen|fci|fct|field|file|firestatus|flength|fmh|fmhparm|for|force|formattime|formfeed|formfield|free|freekb|freemain|from|fromactivity|fromccsid|fromchannel|fromcodepage|fromdoc|fromflength|fromlength|fromprocess|frset|fulldate|function|gchars|gcodes|gds|generic|get|getmain|getnext|gmmi|groupid|gtec|gteq|handle|head|header|hex|high-value|high-values|hilight|hold|honeom|host|hostcodepage|hostlength|hosttype|hours|httpheader|httpmethod|httprnum|httpversion|httpvnum|ignore|immediate|in|increment|initimg|initparm|initparmlen|inpartn|input|inputevent|inputmsg|inputmsglen|inquire|insert|integer|interval|into|intoccsid|intocodepage|invalidcount|invite|invmpsz|invoke|invokingprog|invpartn|invreq|issue|issuer|item|iutype|journalname|jtypeid|jusfirst|juslast|justify|katakana|keep|keylength|keynumber|l40|l64|l80|label|langinuse|languagecode|last|lastusetime|ldc|ldcmnem|ldcnum|leavekb|length|lengthlist|level|lightpen|linage-counter|line|lineaddr|line-counter|link|list|listlength|llid|load|locality|localitylen|logmessage|logmode|logonlogmode|logonmsg|low-value|low-values|luname|main|map|mapcolumn|mapfail|mapheight|mapline|maponly|mapped|mappingdev|mapset|mapwidth|massinsert|maxdatalen|maxflength|maximum|maxlength|maxlifetime|maxproclen|mcc|mediatype|message|messageid|metadata|metadatalen|method|methodlength|milliseconds|minimum|minutes|mmddyy|mmddyyyy|mode|modename|monitor|month|monthofyear|move|msr|msrcontrol|name|namelength|natlang|natlanginuse|netname|newpassword|newphrase|newphraselen|next|nexttransid|nleom|noautopage|nocc|nocheck|nocliconvert|noclose|nodata|node|nodocdelete|nodump|noedit|noflush|nohandle|noinconvert|none|nooutconert|noqueue|noquiesce|nosrvconvert|nosuspend|note|notpurgeable|notruncate|nowait|nscontainer|null|nulls|numciphers|numevents|numitems|numrec|numroutes|numsegments|numtab|of|oidcard|on|opclass|open|operation|operator|operid|operkeys|operpurge|opid|opsecurity|options|or|orgabcode|organization|organizatlen|orgunit|orgunitlen|outdescr|outline|outpartn|output|owner|pa1|pa2|pa3|page|pagenum|page-counter|paging|parse|partn|partner|partnfail|partnpage|partns|partnset|pass|passbk|password|passwordlen|path|pathlength|pct|pf1|pf10|pf11|pf12|pf13|pf14|pf15|pf16|pf17|pf18|pf19|pf2|pf20|pf21|pf22|pf23|pf24|pf3|pf4|pf5|pf6|pf7|pf8|pf9|pfxleng|phrase|phraselen|piplength|piplist|point|pool|pop|portnumber|portnumnu|post|ppt|predicate|prefix|prepare|princonvid|prinsysid|print|priority|privacy|process|processtype|proclength|procname|profile|program|protect|ps|punch|purge|purgeable|push|put|qname|query|queryparm|querystring|querystrlen|queue|quote|quotes|random|rba|rbn|rdatt|read|readnext|readprev|readq|reattach|receive|receiver|recfm|record|recordlen|recordlength|reduce|refparms|refparmslen|relatesindex|relatestype|relatesuri|release|remove|repeatable|repetable|replace|reply|replylength|reqid|requesttype|resclass|reset|resetbr|resid|residlength|resource|resp|resp2|ressec|restart|restype|result|resume|retain|retcode|retcord|retriece|retrieve|return|returnprog|return-code|rewind|rewrite|ridfld|role|rolelength|rollback|route|routecodes|rprocess|rresource|rrn|rtermid|rtransid|run|saddrlength|scheme|schemename|scope|scopelen|scrnht|scrnwd|seconds|security|segmentlist|send|sender|serialnum|serialnumlen|server|serveraddr|serveraddrnu|serverconv|servername|service|session|sesstoken|set|shared|shift-in|shift-out|sigdata|signal|signoff|signon|sit|snamelength|soapfault|sort-control|sort-core-size|sort-file-size|sort-message|sort-mode-size|sort-return|sosi|space|spaces|spoolclose|spoolopen|spoolread|spoolwrite|srvconvert|srvraddr6nu|srvripfamily|ssltype|start|startbr|startbrowse|startcode|state|statelen|stationid|status|statuscode|statuslen|statustext|storage|strfield|stringformat|subaddr|subcodelen|subcodestr|subevent|subevent1|subevent2|subevent3|subevent4|subevent5|subevent6|subevent7|subevent8|sum|suspend|suspstatus|symbol|symbollist|synchronous|synclevel|synconreturn|syncpoint|sysid|tables|tally|task|taskpriority|tcpip|tcpipservice|tct|tctua|tctualeng|td|tellerid|template|termcode|termid|terminal|termpriority|test|text|textkybd|textlength|textprint|time|timeout|timer|timesep|title|to|toactivity|tochannel|tocontainer|toflength|token|tolength|toprocess|trace|tracenum|trailer|tranpriority|transaction|transform|transid|trigger|trt|true|ts|twa|twaleng|type|typename|typenamelen|typens|typenslen|unattend|uncommitted|unescaped|unexpin|unlock|until|uow|update|uri|urimap|url|urllength|userdatakey|userid|username|usernamelen|userpriority|using|validation|value|valuelength|verify|versionlen|volume|volumeleng|wait|waitcics|web|when-compiled|wpmedia1|wpmedia2|wpmedia3|wpmedia4|wrap|write|writeq|wsacontext|wsaepr|xctl|xmlcontainer|xmltodata|xmltransform|xrba|year|yyddd|yyddmm|yymmdd|yyyyddd|yyyyddmm|yyyymmdd|zero|zeroes|zeros)(?![\\\\-\\\\w])\",\"name\":\"keyword.verb.cics\"},\"dli-keywords\":{\"match\":\"(?<![\\\\-\\\\w])(?i:accept|chkp|deq|dlet|gnp|gn|gu|isrt|load|log|pos|query|refresh|repl|retrieve|rolb|roll|rols|schd|sets|setu|symchkp|term|xrst)(?![\\\\-\\\\w])\",\"name\":\"keyword.verb.dli\"},\"dli-options\":{\"match\":\"(?<![\\\\-\\\\w])(?i:statusgroup|checkpoint|chkp|id|lockclass|segment|info|where|from|using|keyfeedback|feedbacklen|variable|first|last|current|seglength|offset|locked|movenext|getfirst|set|setcond|setzero|setparent|fieldlength|keys|maxlength|length\\\\d*|area\\\\d*|psc|pcs|pcb|sysserve|into)(?![\\\\-\\\\w])\",\"name\":\"keyword.other.dli\"},\"number-complex-constant\":{\"match\":\"(-|\\\\+)?(((\\\\d+(\\\\.\\\\d+))|(\\\\.\\\\d+))((e|E)(\\\\+|-)?\\\\d+)?)([LlFfUuDd]|UL|ul)?(?=\\\\s|\\\\.$|,|\\\\))\",\"name\":\"constant.numeric.cobol\"},\"number-simple-constant\":{\"match\":\"(-|\\\\+)?(\\\\d+)(?=\\\\s|\\\\.$|,|\\\\))\",\"name\":\"constant.numeric.cobol\"},\"string-double-quoted-constant\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}}},\"string-quoted-constant\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"('|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"}},\"scopeName\":\"source.cobol\",\"embeddedLangs\":[\"html\",\"java\"]}"))
4
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"COBOL\",\"fileTypes\":[\"ccp\",\"scbl\",\"cobol\",\"cbl\",\"cblle\",\"cblsrce\",\"cblcpy\",\"lks\",\"pdv\",\"cpy\",\"copybook\",\"cobcopy\",\"fd\",\"sel\",\"scb\",\"scbl\",\"sqlcblle\",\"cob\",\"dds\",\"def\",\"src\",\"ss\",\"wks\",\"bib\",\"pco\"],\"name\":\"cobol\",\"patterns\":[{\"match\":\"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])([dD]\\\\s.*$)\",\"name\":\"token.info-token.cobol\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.newpage\"}},\"match\":\"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])(\\\\/.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.fixed\"}},\"match\":\"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])(\\\\*.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.newpage\"}},\"match\":\"(^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s])(\\\\/.*$)\"},{\"match\":\"^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s]$\",\"name\":\"constant.numeric.cobol\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"comment.line.cobol.fixed\"}},\"match\":\"(^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s])(\\\\*.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.cobol\"},\"2\":{\"name\":\"comment.line.cobol.fixed\"}},\"match\":\"(^[0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ])(\\\\*.*$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"variable.other.constant\"}},\"match\":\"^\\\\s+(78)\\\\s+([0-9a-zA-Z][a-zA-Z\\\\-0-9_]+)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.cobol\"},\"2\":{\"name\":\"variable.other.constant\"},\"3\":{\"name\":\"keyword.identifers.cobol\"}},\"match\":\"^\\\\s+([0-9]+)\\\\s+([0-9a-zA-Z][a-zA-Z\\\\-0-9_]+)\\\\s+((?i:constant))\"},{\"captures\":{\"1\":{\"name\":\"constant.cobol\"},\"2\":{\"name\":\"comment.line.cobol.newpage\"}},\"match\":\"(^[0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@])(\\\\/.*$)\"},{\"match\":\"^\\\\*.*$\",\"name\":\"comment.line.cobol.fixed\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"entity.name.function.cobol\"},\"4\":{\"name\":\"keyword.control.directive.conditional.cobol\"}},\"match\":\"((?:^|\\\\s+)(?i:\\\\$set)\\\\s+)((?i:constant)\\\\s+)([0-9a-zA-Z][a-zA-Z\\\\-0-9]+\\\\s*)([a-zA-Z\\\\-0-9]*)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"2\":{\"name\":\"storage.modifier.import.cobol\"},\"3\":{\"name\":\"punctuation.begin.bracket.round.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.end.bracket.round.cobol\"}},\"match\":\"((?i:\\\\$\\\\s*set\\\\s+)(ilusing)(\\\\()(.*)(\\\\)))\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"2\":{\"name\":\"storage.modifier.import.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"match\":\"((?i:\\\\$\\\\s*set\\\\s+)(ilusing)(\\\")(.*)(\\\"))\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"match\":\"((?i:\\\\$set))\\\\s+(\\\\w+)\\\\s*(\\\")(\\\\w*)(\\\")\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"punctuation.begin.bracket.round.cobol\"},\"4\":{\"name\":\"string.quoted.other.cobol\"},\"5\":{\"name\":\"punctuation.end.bracket.round.cobol\"}},\"match\":\"((?i:\\\\$set))\\\\s+(\\\\w+)\\\\s*(\\\\()(.*)(\\\\))\"},{\"captures\":{\"0\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"1\":{\"name\":\"invalid.illegal.directive\"},\"2\":{\"name\":\"comment.line.set.cobol\"}},\"match\":\"(?:^|\\\\s+)(?i:\\\\$\\\\s*set\\\\s)((?i:01SHUFFLE|64KPARA|64KSECT|AUXOPT|CHIP|DATALIT|EANIM|EXPANDDATA|FIXING|FLAG-CHIP|MASM|MODEL|OPTSIZE|OPTSPEED|PARAS|PROTMODE|REGPARM|SEGCROSS|SEGSIZE|SIGNCOMPARE|SMALLDD|TABLESEGCROSS|TRICKLECHECK|\\\\s)+).*$\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.cobol\"},\"2\":{\"name\":\"entity.other.attribute-name.preprocessor.cobol\"}},\"match\":\"(\\\\$region|\\\\$end-region)(.*$)\"},{\"begin\":\"\\\\$(?i:doc)(.*$)\",\"end\":\"\\\\$(?i:end-doc)(.*$)\",\"name\":\"invalid.illegal.iscobol\"},{\"match\":\">>\\\\s*(?i:turn|page|listing|leap-seconds|d)\\\\s+.*$\",\"name\":\"invalid.illegal.meta.preprocessor.cobolit\"},{\"match\":\"(?i:substitute-case|substitute)\\\\s+\",\"name\":\"invalid.illegal.functions.cobolit\"},{\"captures\":{\"1\":{\"name\":\"invalid.illegal.keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"invalid.illegal.entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"invalid.illegal.entity.name.function.preprocessor.cobol\"}},\"match\":\"((((>>|\\\\$)[\\\\s]*)(?i:elif))(.*$))\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.directive.conditional.cobol\"},\"2\":{\"name\":\"entity.name.function.preprocessor.cobol\"},\"3\":{\"name\":\"entity.name.function.preprocessor.cobol\"}},\"match\":\"((((>>|\\\\$)[\\\\s]*)(?i:if|else|elif|end-if|end-evaluate|end|define|evaluate|when|display|call-convention|set))(.*$))\"},{\"captures\":{\"1\":{\"name\":\"comment.line.scantoken.cobol\"},\"2\":{\"name\":\"keyword.cobol\"},\"3\":{\"name\":\"string.cobol\"}},\"match\":\"(\\\\*>)\\\\s+(@[0-9a-zA-Z][a-zA-Z\\\\-0-9]+)\\\\s+(.*$)\"},{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(>>.*)$\",\"name\":\"strong comment.line.set.acucobol\"},{\"match\":\"([nNuU][xX]|[hHxX])'\\\\h*'\",\"name\":\"constant.numeric.integer.hexadecimal.cobol\"},{\"match\":\"([nNuU][xX]|[hHxX])'.*'\",\"name\":\"invalid.illegal.hexadecimal.cobol\"},{\"match\":\"([nNuU][xX]|[hHxX])\\\"\\\\h*\\\"\",\"name\":\"constant.numeric.integer.hexadecimal.cobol\"},{\"match\":\"([nNuU][xX]|[hHxX])\\\".*\\\"\",\"name\":\"invalid.illegal.hexadecimal.cobol\"},{\"match\":\"[bB]\\\"[0-1]\\\"\",\"name\":\"constant.numeric.integer.boolean.cobol\"},{\"match\":\"[bB]'[0-1]'\",\"name\":\"constant.numeric.integer.boolean.cobol\"},{\"match\":\"[oO]\\\"[0-7]*\\\"\",\"name\":\"constant.numeric.integer.octal.cobol\"},{\"match\":\"[oO]\\\".*\\\"\",\"name\":\"invalid.illegal.octal.cobol\"},{\"match\":\"(#)([0-9a-zA-Z][a-zA-Z\\\\-0-9]+)\",\"name\":\"meta.symbol.cobol.forced\"},{\"begin\":\"((?<![-_a-zA-Z0-9()-])(?i:installation|author|source-computer|object-computer|date-written|security|date-compiled)(\\\\.|$))\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.identifiers.cobol\"}},\"end\":\"(?=((?<![-_])(?i:remarks|author|date-written|source-computer|object-computer|installation|date-compiled|special-names|security|environment\\\\s+division|data\\\\s+division|working-storage\\\\s+section|input-output\\\\s+section|linkage\\\\s+section|procedure\\\\s+division|local-storage\\\\s+section)|^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*]\\\\*.*$|^\\\\+$))\",\"name\":\"comment.block.cobol.remark\",\"patterns\":[{\"match\":\"(^[0-9 ][0-9 ][0-9 ][0-9 ][0-9 ][0-9 ])\",\"name\":\"constant.numeric.cobol\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.start.bracket.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"keyword.end.bracket.cobol\"}},\"comment\":\"simple numerics in () and []\",\"match\":\"(?<=(\\\\(|\\\\[))((\\\\-\\\\+)*\\\\s*[0-9 ,\\\\.\\\\+\\\\-\\\\*\\\\/]+)(?=(\\\\)|\\\\]))\",\"name\":\"constant.numeric.cobol\"},{\"include\":\"#number-complex-constant\"},{\"include\":\"#number-simple-constant\"},{\"match\":\"(?<![-_])(?i:true|false|null|nulls)(?![0-9A-Za-z_-])\",\"name\":\"constant.language.cobol\"},{\"match\":\"(?<![-_])(?i:zeroes|alphabetic-lower|alphabetic-upper|alphanumeric-edited|alphabetic|alphabet|alphanumeric|zeros|zeros|zero|spaces|space|quotes|quote|low-values|low-value|high-values|high-value)(?=\\\\s+|\\\\.|,|\\\\))\",\"name\":\"constant.language.figurative.cobol\"},{\"begin\":\"(?i:exec\\\\s+sqlims|exec\\\\s+sql)\",\"contentName\":\"meta.embedded.block.openesql\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(^\\\\s*\\\\*.*)$\",\"name\":\"comment.line.sql\"},{\"match\":\"(--.*$)\",\"name\":\"comment.line.sql\"},{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(\\\\:([0-9a-zA-Z\\\\-_])*)\",\"name\":\"variable.cobol\"},{\"include\":\"source.openesql\"}]},{\"begin\":\"(?i:exec\\\\s+cics)\",\"contentName\":\"meta.embedded.block.cics\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(\\\\()\",\"name\":\"meta.symbol.cobol\"},{\"include\":\"#cics-keywords\"},{\"include\":\"#string-double-quoted-constant\"},{\"include\":\"#string-quoted-constant\"},{\"include\":\"#number-complex-constant\"},{\"include\":\"#number-simple-constant\"},{\"match\":\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\",\"name\":\"variable.cobol\"}]},{\"begin\":\"(?i:exec\\\\s+dli)\",\"contentName\":\"meta.embedded.block.dli\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(\\\\()\",\"name\":\"meta.symbol.cobol\"},{\"include\":\"#dli-keywords\"},{\"include\":\"#dli-options\"},{\"include\":\"#string-double-quoted-constant\"},{\"include\":\"#string-quoted-constant\"},{\"include\":\"#number-complex-constant\"},{\"include\":\"#number-simple-constant\"},{\"match\":\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\",\"name\":\"variable.cobol\"}]},{\"begin\":\"(?i:exec\\\\s+sqlims)\",\"contentName\":\"meta.embedded.block.openesql\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(\\\\:([a-zA-Z\\\\-])*)\",\"name\":\"variable.cobol\"},{\"include\":\"source.openesql\"}]},{\"begin\":\"(?i:exec\\\\s+ado)\",\"contentName\":\"meta.embedded.block.openesql\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"match\":\"(--.*$)\",\"name\":\"comment.line.sql\"},{\"match\":\"(\\\\*>.*$)\",\"name\":\"comment.line.modern\"},{\"match\":\"(\\\\:([a-zA-Z\\\\-])*)\",\"name\":\"variable.cobol\"},{\"include\":\"source.openesql\"}]},{\"begin\":\"(?i:exec\\\\s+html)\",\"contentName\":\"meta.embedded.block.html\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"include\":\"text.html.basic\"}]},{\"begin\":\"(?i:exec\\\\s+java)\",\"contentName\":\"meta.embedded.block.java\",\"end\":\"(?i:end\\\\-exec)\",\"name\":\"keyword.verb.cobol\",\"patterns\":[{\"include\":\"source.java\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\")(CBL_.*)(\\\")\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\")(PC_.*)(\\\")\"},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.double.cobol\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\\')(CBL_.*)(\\\\')\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.cobol\"},\"2\":{\"name\":\"support.function.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(\\\\')(PC_.*)(\\\\')\"},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"('|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGzZ]\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.double.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGzZ]'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGnN]\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.double.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[gGnN]'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[uU]\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.utf8.double.cobol\"},{\"begin\":\"(?<![\\\\-\\\\w])[uU]'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.utf8.single.cobol\"},{\"match\":\"(?<![-_])(?i:id\\\\s+division|identification\\\\s+division|identification|id|property-id|getter|setter|entry|function-id|end\\\\s+attribute|attribute|interface-id|indexer-id|factory|ctl|class-control|options|environment\\\\s+division|environment-name|environment-value|environment|configuration\\\\s+section|configuration|decimal-point\\\\s+is|decimal-point|console\\\\s+is|call-convention|special-names|cursor\\\\s+is|update|picture\\\\s+symbol|currency\\\\s+sign|currency|repository|input-output\\\\s+section|input-output|file\\\\s+section|file-control|select|optional|i-o-control|data\\\\s+division|working-storage\\\\s+section|working-storage|section|local-storage|linkage\\\\s+section|linkage|communication|report|screen\\\\s+section|object-storage|object\\\\s+section|class-object|fd|rd|cd|sd|printing|procedure\\\\s+division|procedure|division|references|debugging|end\\\\s+declaratives|declaratives|end\\\\s+static|end\\\\s+factory|end\\\\s+class-object|based-storage|size|font|national-edited|national)(?![0-9A-Za-z_-])\",\"name\":\"keyword.identifiers.cobol\"},{\"captures\":{\"1\":{\"name\":\"keyword.verb.cobol\"},\"2\":{\"name\":\"entity.name.function.cobol\"}},\"match\":\"(?<![-_])((?i:valuetype-id|operator-id|method-id|method|property-id|attribute-id|enum-id|iterator-id|class-id|program-id|operator-id|end\\\\s+program|end\\\\s+valuetype|extension))[\\\\.]*[\\\\s]+([a-zA-Z0-9_-]*)\"},{\"match\":\"(?<![-_])(?i:implements|inherits|constraints|constrain)(?=\\\\s|\\\\.)\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:end\\\\s+enum|end\\\\s+interface|end\\\\s+class|end\\\\s+property|end\\\\s+method|end\\\\s+object|end\\\\s+iterator|end\\\\s+function|end\\\\s+operator|end\\\\s+program|end\\\\s+indexer|create|reset|instance|delegate|end-delegate|delegate-id|declare|exception-object|as|stop\\\\s+iterator|stop\\\\s+run|stop)(?=\\\\s|\\\\.|,|\\\\))\",\"name\":\"keyword.identifiers.cobol\"},{\"match\":\"\\\\s+(?i:attach\\\\s+method|attach\\\\s+del|attach|detach\\\\s+del|detach\\\\s+method|detach|method|del)(?=\\\\s|\\\\.|$)\",\"name\":\"keyword.identifiers.cobol\"},{\"match\":\"\\\\s+(?i:sync\\\\s+(?i:on))(?=\\\\s|\\\\.)\",\"name\":\"keyword.other.sync.cobol\"},{\"match\":\"\\\\s+(?i:try|finally|catch|end-try|throw)(?=\\\\s|\\\\.|$)\",\"name\":\"keyword.control.catch-exception.cobol\"},{\"match\":\"(?<![-_])(?i:select|use|thru|varying|giving|remainder|tallying|through|until|execute|returning|using|chaining|yielding|\\\\+\\\\+include|copy|replace)(?=\\\\s)\",\"name\":\"keyword.otherverb.cobol\"},{\"match\":\"(?i:dynamic)\\\\s+(?i:length)(?=\\\\s|\\\\.)\",\"name\":\"storage.type.dynamiclength.cobol\"},{\"match\":\"(?<![-_])(?i:assign|external|prototype|organization|organisation|indexed|column|plus|line\\\\*s*sequential|sequential|access|dynamic|relative|label|block|contains|standard|records|record\\\\s+key|record|is|alternate|duplicates|reel|tape|terminal|disk\\\\sfilename|disk|disc|recording\\\\smode|mode|random)(?=\\\\s|\\\\.)\",\"name\":\"keyword.identifers.cobol\"},{\"match\":\"(?<![-_])(?i:max|min|integer-of-date|integer-of-day|integer-part|integer|date-to-yyyymmdd|year-to-yyyy|day-to-yyyyddd|exp|exception-file|exception-location|exception-statement|exception-status|e|variance|integer-of-date|rem|pi|factorial|sqrt|log10|fraction-part|mean|exp|log|char|day-of-integer|date-of-integer|exp10|atan|integer-part|tan|sin|cos|midrange|addr|acos|asin|annuity|present-value|integer-of-day|ord-max|ord-min|ord|random|integer-of-date|sum|standard-deviation|median|reverse|abs|upper-case|lower-case|char-national|numval|mod|range|length|locale-date|locale-time-from-seconds|locale-time|seconds-past-midnight|stored-char-length|seconds-from-formatted-time|seconds-past-midnight|trim|length-an|numval-c|current-date|national-of|display-of|when-compiled|integer-of-boolean|combined-datetime|concatenate)(?=\\\\s|\\\\.|\\\\(|\\\\))\",\"name\":\"support.function.cobol\"},{\"captures\":{\"0\":{\"name\":\"support.function.cics.cobol\"},\"1\":{\"name\":\"punctuation.definition.string.end.cobol\"},\"2\":{\"name\":\"keyword.identifers.cobol\"},\"3\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"match\":\"(?<![-_])(?i:DFHRESP|DFHVALUE)(\\\\s*\\\\(\\\\s*)([a-zA-Z]*)(\\\\s*\\\\))\"},{\"match\":\"(?<![-_])(?i:function)(?=\\\\s|\\\\.)\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:end-accept|end-add|end-sync|end-compute|end-delete|end-display|end-divide|end-set|end-multiply|end-of-page|end-read|end-receive|end-return|end-rewrite|end-search|end-start|end-string|end-subtract|end-unstring|end-write|program|class|interface|enum|interface)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?:by value|by reference|by content|property-value)(?![0-9A-Za-z_-])\",\"name\":\"keyword.other.cobol\"},{\"match\":\"(?<![-_])(?i:attr-string|automatic|auto-skip|footing|next|group|indicate|source|control|full|required|of|input|output|i-o|extend|file|error|exception|overflow|goto|off|on|proceed|procedures|procedure|through|invalid|data|normal|eop|returning|to|for|giving|into|by|params|remainder|also|numeric|free|depending|converting|replacing|after|before|all|leading|first|recursive|initialized|global|common|initial|resident|reference|content|are\\\\sstandard|are|renames|like|format\\\\stime|values|omitted|value|constant|ascending|descending|key|retry|until|varying|with|no|advancing|up|down|uccurs|ignore\\\\s+lock|lock|length|delimited|count|delimiter|redefines|from\\\\s+console|from\\\\s+command-line|from\\\\s+user\\\\s+name|from\\\\s+day\\\\s+yyyyddd|from\\\\s+day|from\\\\s+time|from\\\\s+day-of-week|from\\\\s+escape|from\\\\s+day\\\\s+yyyyddd|from\\\\s+date\\\\s+yyyymmdd|from\\\\s+date|from|raising|crt\\\\s+status|status|class|upon\\\\s+crt|upon|lines|columns|step|linage|auto|line|position|col|reports|code-set|reporting|arithmetic|localize|program|class|interface|in|at\\\\s+end|page|name)(?![0-9A-Za-z_-])\",\"name\":\"keyword.identifers.cobol\"},{\"captures\":{\"0\":{\"name\":\"keyword.verb.cobol\"},\"1\":{\"name\":\"storage.type.cobol\"}},\"comment\":\"type ssss \",\"match\":\"(?<![-_])(?i:type|new)\\\\s+([a-zA-Z][a-zA-Z0-9\\\\$\\\\-\\\\._]*|[a-zA-Z])(?=\\\\.$)\"},{\"match\":\"(?<![-_])(?i:string)(?=\\\\s+value|\\\\.)\",\"name\":\"storage.type.cobol\"},{\"match\":\"(?<![-_])(?i:bit|byte|binary-char|binary-char-unsigned|binary-short|binary-short-unsigned|binary.long|binary-c-long|binary-long-unsigned|binary-long|binary-double|binary-double-unsigned|float-short|float-extended|float-long|bit|condition-value|characters|character\\\\s+type|character|comma|crt|decimal|object\\\\+sreference|object-reference|object|list|dictionary|unsigned)(?=\\\\s|\\\\.|,|\\\\]|\\\\[)\",\"name\":\"storage.type.cobol\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.verb.cobol\"},\"2\":{\"name\":\"meta.symbol.cobol\"}},\"comment\":\"operator-id ssss \",\"match\":\"(operator-id\\\\s+[+\\\\-\\\\*\\\\/])\",\"name\":\"keyword.operator-id.cobol\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cobol.b3\"},\"2\":{\"name\":\"entity.name.function.b3\"}},\"comment\":\" ::.. \",\"match\":\"(?i:self)(\\\\:\\\\:)([0-9a-zA-Z_\\\\-\\\\.]*)(?=\\\\.$)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cobol\"},\"2\":{\"name\":\"entity.name.function.cobol\"}},\"comment\":\" ::.. \",\"match\":\"(\\\\:\\\\:)([0-9a-zA-Z_\\\\-\\\\.]*)\"},{\"captures\":{\"0\":{\"name\":\"keyword.verb.cobol.aa\"},\"1\":{\"name\":\"storage.type.cobol.bb\"}},\"match\":\"(?<![-_])(?i:type)\\\\s+([0-9a-zA-Z\\\\.]*)\"},{\"match\":\"(?<![-_])(?i:if|else|end-if|exit\\\\s+iterator|exit\\\\s+program|exit\\\\s+method|evaluate|end-evaluate|exit\\\\s+perform|perform|end-perform|when\\\\s+other|when|continue|call|end-call|chain|end-chain|invoke|end\\\\s+invoke|go\\\\s+to|go|sort|merge|use|xml|parse|stop\\\\s+run|goback\\\\s+returning|goback|raise|exit\\\\s+function|exit\\\\sparagraph|await)(?![0-9A-Za-z_-])\",\"name\":\"keyword.control.cobol\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture10.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"storage.type.picture10.cobol\"},\"4\":{\"name\":\"constant.numeric.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\(([0-9]*)\\\\)([vV][-+sS\\\\*$09aAbBxXuUpPnNzZ/,\\\\.]*)\\\\(([0-9]*)\\\\)[-|+]\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture9.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"storage.type.picture9.cobol\"},\"4\":{\"name\":\"constant.numeric.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\(([0-9]*)\\\\)([vV][-+sS\\\\*$09aAbBxXuUpPnNzZ/,\\\\.]*)\\\\(([0-9]*)\\\\)\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture8.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"},\"3\":{\"name\":\"storage.type.picture8.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\(([0-9]*)\\\\)([vV\\\\.][-+s\\\\*$09aAbBsSnNxXuUzZ/,]*[0-9\\\\.()])*\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpPNxXuUzZ/,.]*\\\\([0-9]*\\\\)[Vv\\\\.][-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\",\"name\":\"storage.type.picture7.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpPNxXuUzZ/,.]*\\\\([0-9]*\\\\)[-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*[Vv\\\\.][-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\",\"name\":\"storage.type.picture6.cobol\"},{\"captures\":{\"1\":{\"name\":\"storage.type.picture5.cobol\"},\"2\":{\"name\":\"constant.numeric.cobol\"}},\"match\":\"(?<![-_])((?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpPNxuUXzZ/,.]*)\\\\(([0-9]*)\\\\)[-+s\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+sS\\\\*$09aAbBsSnpNNxXuUzZ/,.]*\\\\([0-9]*\\\\)\",\"name\":\"storage.type.picture4.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[sS]?[9aAbBsSnNxXuUzZ]*[Vv][9aAxbXuUzZ]*\\\\([0-9]*\\\\)\",\"name\":\"storage.type.picture3.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[sS]?[9aAbBsSnNxXuUzZ]*[Vv][9aAxbXuUzZ]*\",\"name\":\"storage.type.picture2.cobol\"},{\"match\":\"(?<![-_])(?i:picture\\\\s+is|picture|pic\\\\s+is|pic)\\\\s+[-+\\\\*$9aAbBsSnpPNxXuUzZ/,.vV]*\",\"name\":\"storage.type.picture1.cobol\"},{\"captures\":{\"1\":{\"name\":\"invalid.illegal.keyword.verb.acu.cobol\"},\"2\":{\"name\":\"invalid.illegal.constant.numeric.integer\"}},\"match\":\"((?<![-_])(?i:binary|computational-4|comp-4|computational-5|comp-5))\\\\(([0-9]*)\\\\)\"},{\"match\":\"(?i:cblt-x1-compx-const|cblt-x2-compx-const|cblt-x4-compx-const|cblt-alphanum-const|cblt-x9-compx|cblt-x8-compx|cblt-x8-comp5|cblt-x4-compx|cblt-x4-comp5|cblt-x2-compx|cblt-x2-comp5|cblt-x1-compx|cblt-x1-comp5|cblt-x1|cblt-vfile-status|cblt-vfile-handle|cblt-sx8-comp5|cblt-sx4-comp5|cblt-sx2-comp5|cblt-sx1-comp5|cblt-subsys-params|cblt-splitjoin-buf|cblt-screen-position|cblt-rtncode|cblt-request-context|cblt-reqhand-service-info|cblt-reqhand-service-funcs|cblt-reqhand-response|cblt-reqhand-funcs|cblt-prog-info-params|cblt-prog-info-arg-info|cblt-printer-properties|cblt-printer-name|cblt-printer-info|cblt-printer-default|cblt-ppointer|cblt-pointer|cblt-os-ssize|cblt-os-size|cblt-os-offset|cblt-os-info-params|cblt-os-flags|cblt-node-name|cblt-nls-msg-params|cblt-nls-msg-number-pair|cblt-nls-msg-ins-struct|cblt-nls-msg-buffer|cblt-mouse-shape|cblt-mouse-rect|cblt-mouse-pos|cblt-mouse-event|cblt-mem-validate-param|cblt-idp-exit-service-funcs|cblt-idp-exit-info|cblt-HWND|cblt-HINSTANCE|cblt-get-scr-line-draw-buffer|cblt-get-scr-graphics-buffer|cblt-generic-attr-value|cblt-generic-attr-rgb-values|cblt-generic-attr-information|cblt-file-status|cblt-fileexist-buf|cblt-exit-params|cblt-exit-info-params|cblt-cancel-proc-params|cblt-bytestream-handle|cblt-alphanum)\",\"name\":\"support.function.cbltypes.cobol\"},{\"match\":\"(?<![-_])(?i:computational-1|comp-1|computational-2|comp-2|computational-3|comp-3|computational-4|comp-4|computational-x|comp-x|computational-5|comp-5|computational-6|comp-6|computational-n|comp-n|packed-decimal|index|float|double|signed-short|unsigned-short|signed-int|unsigned-int|signed-long|unsigned-long|comp|computational|group-usage|usage\\\\sis\\\\sdisplay|usage\\\\sis\\\\sfont|usage\\\\s+display|binary|mutex-pointer|data-pointer|thread-pointer|sempahore-pointer|event-pointer|program-pointer|procedure-pointer|pointer|window|subwindow|control-type|thread|menu|variant|layout-manager|occurs|typedef|any|times|display\\\\s+blank\\\\s+when|blank\\\\s+when|blank\\\\s+screen|blank|usage\\\\sis|is\\\\spartial|usage|justified|just|right|signed|trailing\\\\s+separate|sign|seperate|sql)(?=\\\\s|\\\\.|\\\\))\",\"name\":\"storage.type.picture.cobol\"},{\"match\":\"(?i:byte-length)\\\\s+[0-9]+\",\"name\":\"storage.type.length.cobol\"},{\"match\":\"(?<![-_])(?i:accept|add|address|allocate|cancel|close|commit|compute|continue|delete|disable|display|bell|divide|eject|enable|enter|evaluate|exhibit|named|exit|free|generate|go\\\\s+to|initialize\\\\sonly|initialize|initiate|inspect|merge|end-set|set|end-invoke|invoke\\\\s+run|invoke|move|corresponding|corr|multiply|otherwise|open|sharing|sort-merge|purge|ready|read|kept|receive|release|return|rewrite|rounded|rollback|search|send|sort|collating\\\\s+sequence|collating|start|service|subtract|suppress|terminate|then|unlock|string|unstring|validate|write|next|statement|sentence)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:thread-local)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(\\\\s+|^)(?i:foreground-color|background-color|prompt|underline|reverse-video|no-echo|highlight|blink)(?![0-9A-Za-z_-])\",\"name\":\"keyword.screens.cobol\"},{\"match\":\"(\\\\s+|^)(?i:bold|high|lowlight|low|background-high|background-low|background-standard)(?![0-9A-Za-z_-])\",\"name\":\"invalid.illegal.screens.acu.cobol\"},{\"match\":\"(?<![-_])(?i:internal|public|protected|final|private|static|new|abstract|override|readonly|property|async-void|async-value|async)(?=\\\\s|\\\\.)\",\"name\":\"storage.modifier.cobol\"},{\"match\":\"=|<|>|<=|>=|<>|\\\\+|\\\\-|\\\\*|\\\\/|(?<![-_])(?i:b-and|b-or|b-xor|b-exor|b-not|b-left|b-right|and|or|equals|equal|greater\\\\s+than|less\\\\s+than|greater)(?![0-9A-Za-z_-])\",\"name\":\"keyword.operator.cobol\"},{\"match\":\"(?i:not\\\\s+at\\\\s+end)(?![0-9A-Za-z_-])\",\"name\":\"keyword.verb.cobol\"},{\"match\":\"(?<![-_])(?i:not)(?![0-9A-Za-z_-])\",\"name\":\"keyword.operator.cobol\"},{\"match\":\"(?<![-_])(?i:sysout-flush|sysin|stderr|stdout|csp|stdin|sysipt|sysout|sysprint|syslist|syslst|printer|syserr|console|c01|c02|c03|c04|c05|c06|c07|c08|c09|c10|c11|c12|formfeed|switch-0|switch-10|switch-11|switch-12|switch-13|switch-13|switch-14|switch-15|switch-1|switch-2|switch-3|switch-4|switch-5|switch-6|switch-7|switch-8|switch-9|sw0|sw11|sw12|sw13|sw14|sw15|sw1|sw2|sw3|sw4|sw5|sw6|sw7|sw8|sw9|sw10|lc_all|lc_collate|lc_ctype|lc_messages|lc_monetary|lc_numeric|lc_time|ucs-4|utf-8|utf-16)(?![0-9A-Za-z_-])\",\"name\":\"support.type.cobol\"},{\"match\":\"(?<![-_])(?i:end-xml|processing.*procedure|xml\\\\sparse|xml|xml-information|xml-text|xml-schemal|xml-declaration)(?![0-9A-Za-z_-])\",\"name\":\"keyword.xml.cobol\"},{\"match\":\"(?<![-_])(?i:json\\\\s+generate|json|end-json|name\\\\sof)(?![0-9A-Za-z_-])\",\"name\":\"keyword.json.cobol\"},{\"match\":\"(?<![-_])(?i:modify|inquire|tab|title|event|center|label-offset|cell|help-id|cells|push-button|radio-button|page-layout-screen|entry-field|list-box|label|default-font|id|no-tab|unsorted|color|height|width|bind|thread|erase|modeless|scroll|system|menu|title-bar|wrap|destroy|resizeable|user-gray|large-font|newline|3-d|data-columns|display-columns|alignment|separation|cursor-frame-width|divider-color|drag-color|heading-color|heading-divider-color|num-rows|record-data|tiled-headings|vpadding|centered-headings|column-headings|self-act|cancel-button|vscroll|report-composer|clsid|primary-interface|active-x-control|default-interface|default-source|auto-minimize|auto-resize|resource|engraved|initial-state|frame|acuactivexcontrol|activex-res|grid|box|message|namespace|class-name|module|constructor|version|strong|culture|method|handle|exception-value|read-only|dividers|graphical|indexed|termination-value|permanent|boxed|visible|centered|record-position|convert)(?=\\\\s|\\\\.|,|;|$)\",\"name\":\"invalid.illegal.acu.cobol\"},{\"match\":\"(?<![-_])(?i:actual|auto|automatic|based-storage|complex|connect|contained|core-index|db-access-control-key|db-data-name|db-exception|db-record-name|db-set-name|db-status|dead-lock|endcobol|end-disable|end-enable|end-send|end-transceive|eos|file-limits|file-limit|formatted|sort-status|usage-mode)(?=\\\\s|\\\\.|,|;|$)\",\"name\":\"invalid.illegal.netcobol.cobol\"},{\"match\":\"(?<![-_])(?i:System-Info|Terminal-Info)(?![0-9A-Za-z_-])\",\"name\":\"support.type.cobol.acu strong\"},{\"match\":\"(?<![-_])(?i:alter)(?=\\\\s|\\\\.)\",\"name\":\"invalid.illegal.cobol\"},{\"match\":\"(?<![-_])(?i:apply|areas|area|clock-units|code|com-reg|controls|dbcs|destination|detail|display-1|ending|every|insert|kanjikey|last|left|less|limits|limit|memory|metaclass|modules|more-labels|multiple|native_binary|native|negative|number|numeric-edited|other|padding|password|pf|ph|postive|processing|queue|recording|reload|removal|rerun|reserve|reserved|rewind|segment-limit|segment|separate|sequence|skip1|skip2|skip3|standard-1|standard-2|sub-queue-1|sub-queue-2|sub-queue-3|sum|symbolic|synchronized|sync|table|test|text|than|top|trace|trailing|unit|words|write-only|at|basis|beginning|bottom|cbl|cf|ch|de|positive|egcs|egi|emi|end|reversed|rf|rh|run|same|order|heading|esi)(?![0-9A-Za-z_-])\",\"name\":\"keyword.ibmreserved.cobol\"},{\"match\":\"(?<![-_])(?i:active-class|aligned|anycase|boolean|cols|col|condition|ec|eo|system-default|function-pointer)(?![0-9A-Za-z_-])\",\"name\":\"strong keyword.potential.reserved.cobol\"},{\"match\":\"(?i:filler)\",\"name\":\"keyword.filler.cobol\"},{\"match\":\"(?<![-_])(?i:address-of|date|day-of-week|day|debug-content|debug-item|debug-line|debug-item|debug-sub-1|debug-sub-2|debug-sub-3|shift-in|shift-out|sort-control|sort-core-size|sort-file-size|sort-message|sort-return|sort-mode-size|sort-return|tally|time|when-compiled|line-counter|page-counter|return-code|linage-counter|debug-line|debug-name|debug-contents|json-code|json-status|xml-code|xml-event|xml-information|xml-namespace-prefix|xml-namespace|xml-nnamespace-repfix|xml-nnamespace|xml-ntext|jnienvptr|igy-javaiop-call-exception)(?![0-9A-Za-z_-])\",\"name\":\"variable.language\"},{\"match\":\"(?<![-_])(?i:shortint1|shortint2|shortint3|shortint4|shortint5|shortint6|shortint7|longint1|longint2|longint3|longint4|longint5|longint6|bigint1|bigint2|blob-locator|clob-locator|dbclob-locator|dbclob-file|blob-file|clob-file|clob|dbclob|blob|varbinary|long-varbinary|time-record|timestamp-record|timestamp-offset-record|timestamp-offset|timestamp|rowid|xml|long-varchar)(?=\\\\s|\\\\.|\\\\)|\\\\()\",\"name\":\"storage.type.sql.picture.cobol\"},{\"match\":\"(?<![-_])(?i:self)\",\"name\":\"keyword.other.self.cobol\"},{\"match\":\"(?<![-_])(?i:super)\",\"name\":\"keyword.other.super.cobol\"},{\"match\":\"(^[0-9][0-9][0-9][0-9][0-9][0-9])\",\"name\":\"constant.numeric.cobol\"},{\"captures\":{\"1\":{\"name\":\"meta.symbol.cobol\"},\"2\":{\"name\":\"constant.numeric.integer\"},\"3\":{\"name\":\"meta.symbol.cobol\"},\"4\":{\"name\":\"constant.numeric.integer\"},\"5\":{\"name\":\"meta.symbol.cobol\"}},\"match\":\"(\\\\()([0-9]*)(:)([0-9]*)(\\\\))\"},{\"match\":\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\",\"name\":\"meta.symbol.cobol\"}],\"repository\":{\"cics-keywords\":{\"match\":\"(?<![\\\\-\\\\w])(?i:abcode|abdump|abend|abort|abprogram|abstime|accum|acee|acqactivity|acqprocess|acquactivity|action|activity|activityid|actpartn|add|address|after|aid|alarm|all|allocate|alter|alternate|altscrnht|altscrnwd|and|anykey|aplkybd|apltext|applid|as|asa|asis|asktime|asraintrpt|asrakey|asrapsw|asraregs|asraspc|asrastg|assign|asynchronous|at|attach|attachid|attributes|authenticate|autopage|auxiliary|base64|basicauth|below|bif|binary|bit|bodycharset|bookmark|brdata|brdatalength|brexit|bridge|browsetoken|btrans|buffer|build|burgeability|caddrlength|cancel|card|cbuff|ccsid|certificate|change|changetime|channel|char|characterset|check|chunkend|chunking|chunkno|chunkyes|cicsdatakey|ciphers|class|clear|cliconvert|client|clientaddr|clientaddrnu|clientconv|clientname|clntaddr6nu|clntipfamily|close|closestatus|clrpartn|cmdsec|cnamelength|cnotcompl|codepage|color|commarea|commonname|commonnamlen|comparemax|comparemin|complete|composite|compstatus|condition|confirm|confirmation|connect|consistent|console|container|contexttype|control|convdata|converse|convertst|converttime|convid|copy|counter|country|countrylen|create|critical|ctlchar|current|cursor|cwa|cwaleng|data|data1|data2|datalength|datalenth|dataonly|datapointer|dataset|datastr|datatoxml|datatype|datcontainer|date|dateform|datesep|datestring|day|daycount|dayofmonth|dayofweek|dayofyear|days|daysleft|day-of-week|dcounter|ddmmyy|ddmmyyyy|debkey|debrec|debug-contents|debug-item|debug-line|debug-name|debug-sub-1|debug-sub-2|debug-sub-3|deedit|default|define|defresp|defscrnht|defscrnwd|delay|delete|deleteq|delimiter|deq|destcount|destid|destidleng|detail|detaillength|dfhresp|dfhvalue|digest|digesttype|disconnect|docdelete|docsize|docstatus|doctoken|document|ds3270|dsscs|dump|dumpcode|dumpid|duprec|ecaddr|ecblist|eib|elemname|elemnamelen|elemns|elemnslen|end|endactivity|endbr|endbrowse|endfile|endoutput|enq|enter|entry|entryname|eoc|eods|eprfield|eprfrom|eprinto|eprlength|eprset|eprtype|equal|erase|eraseaup|error|errterm|esmreason|esmresp|event|eventtype|eventual|ewasupp|exception|expect|expirytime|extds|external|extract|facility|facilitytokn|false|faultactlen|faultactor|faultcode|faultcodelen|faultcodestr|faultstring|faultstrlen|fci|fct|field|file|firestatus|flength|fmh|fmhparm|for|force|formattime|formfeed|formfield|free|freekb|freemain|from|fromactivity|fromccsid|fromchannel|fromcodepage|fromdoc|fromflength|fromlength|fromprocess|frset|fulldate|function|gchars|gcodes|gds|generic|get|getmain|getnext|gmmi|groupid|gtec|gteq|handle|head|header|hex|high-value|high-values|hilight|hold|honeom|host|hostcodepage|hostlength|hosttype|hours|httpheader|httpmethod|httprnum|httpversion|httpvnum|ignore|immediate|in|increment|initimg|initparm|initparmlen|inpartn|input|inputevent|inputmsg|inputmsglen|inquire|insert|integer|interval|into|intoccsid|intocodepage|invalidcount|invite|invmpsz|invoke|invokingprog|invpartn|invreq|issue|issuer|item|iutype|journalname|jtypeid|jusfirst|juslast|justify|katakana|keep|keylength|keynumber|l40|l64|l80|label|langinuse|languagecode|last|lastusetime|ldc|ldcmnem|ldcnum|leavekb|length|lengthlist|level|lightpen|linage-counter|line|lineaddr|line-counter|link|list|listlength|llid|load|locality|localitylen|logmessage|logmode|logonlogmode|logonmsg|low-value|low-values|luname|main|map|mapcolumn|mapfail|mapheight|mapline|maponly|mapped|mappingdev|mapset|mapwidth|massinsert|maxdatalen|maxflength|maximum|maxlength|maxlifetime|maxproclen|mcc|mediatype|message|messageid|metadata|metadatalen|method|methodlength|milliseconds|minimum|minutes|mmddyy|mmddyyyy|mode|modename|monitor|month|monthofyear|move|msr|msrcontrol|name|namelength|natlang|natlanginuse|netname|newpassword|newphrase|newphraselen|next|nexttransid|nleom|noautopage|nocc|nocheck|nocliconvert|noclose|nodata|node|nodocdelete|nodump|noedit|noflush|nohandle|noinconvert|none|nooutconert|noqueue|noquiesce|nosrvconvert|nosuspend|note|notpurgeable|notruncate|nowait|nscontainer|null|nulls|numciphers|numevents|numitems|numrec|numroutes|numsegments|numtab|of|oidcard|on|opclass|open|operation|operator|operid|operkeys|operpurge|opid|opsecurity|options|or|orgabcode|organization|organizatlen|orgunit|orgunitlen|outdescr|outline|outpartn|output|owner|pa1|pa2|pa3|page|pagenum|page-counter|paging|parse|partn|partner|partnfail|partnpage|partns|partnset|pass|passbk|password|passwordlen|path|pathlength|pct|pf1|pf10|pf11|pf12|pf13|pf14|pf15|pf16|pf17|pf18|pf19|pf2|pf20|pf21|pf22|pf23|pf24|pf3|pf4|pf5|pf6|pf7|pf8|pf9|pfxleng|phrase|phraselen|piplength|piplist|point|pool|pop|portnumber|portnumnu|post|ppt|predicate|prefix|prepare|princonvid|prinsysid|print|priority|privacy|process|processtype|proclength|procname|profile|program|protect|ps|punch|purge|purgeable|push|put|qname|query|queryparm|querystring|querystrlen|queue|quote|quotes|random|rba|rbn|rdatt|read|readnext|readprev|readq|reattach|receive|receiver|recfm|record|recordlen|recordlength|reduce|refparms|refparmslen|relatesindex|relatestype|relatesuri|release|remove|repeatable|repetable|replace|reply|replylength|reqid|requesttype|resclass|reset|resetbr|resid|residlength|resource|resp|resp2|ressec|restart|restype|result|resume|retain|retcode|retcord|retriece|retrieve|return|returnprog|return-code|rewind|rewrite|ridfld|role|rolelength|rollback|route|routecodes|rprocess|rresource|rrn|rtermid|rtransid|run|saddrlength|scheme|schemename|scope|scopelen|scrnht|scrnwd|seconds|security|segmentlist|send|sender|serialnum|serialnumlen|server|serveraddr|serveraddrnu|serverconv|servername|service|session|sesstoken|set|shared|shift-in|shift-out|sigdata|signal|signoff|signon|sit|snamelength|soapfault|sort-control|sort-core-size|sort-file-size|sort-message|sort-mode-size|sort-return|sosi|space|spaces|spoolclose|spoolopen|spoolread|spoolwrite|srvconvert|srvraddr6nu|srvripfamily|ssltype|start|startbr|startbrowse|startcode|state|statelen|stationid|status|statuscode|statuslen|statustext|storage|strfield|stringformat|subaddr|subcodelen|subcodestr|subevent|subevent1|subevent2|subevent3|subevent4|subevent5|subevent6|subevent7|subevent8|sum|suspend|suspstatus|symbol|symbollist|synchronous|synclevel|synconreturn|syncpoint|sysid|tables|tally|task|taskpriority|tcpip|tcpipservice|tct|tctua|tctualeng|td|tellerid|template|termcode|termid|terminal|termpriority|test|text|textkybd|textlength|textprint|time|timeout|timer|timesep|title|to|toactivity|tochannel|tocontainer|toflength|token|tolength|toprocess|trace|tracenum|trailer|tranpriority|transaction|transform|transid|trigger|trt|true|ts|twa|twaleng|type|typename|typenamelen|typens|typenslen|unattend|uncommitted|unescaped|unexpin|unlock|until|uow|update|uri|urimap|url|urllength|userdatakey|userid|username|usernamelen|userpriority|using|validation|value|valuelength|verify|versionlen|volume|volumeleng|wait|waitcics|web|when-compiled|wpmedia1|wpmedia2|wpmedia3|wpmedia4|wrap|write|writeq|wsacontext|wsaepr|xctl|xmlcontainer|xmltodata|xmltransform|xrba|year|yyddd|yyddmm|yymmdd|yyyyddd|yyyyddmm|yyyymmdd|zero|zeroes|zeros)(?![\\\\-\\\\w])\",\"name\":\"keyword.verb.cics\"},\"dli-keywords\":{\"match\":\"(?<![\\\\-\\\\w])(?i:accept|chkp|deq|dlet|gnp|gn|gu|isrt|load|log|pos|query|refresh|repl|retrieve|rolb|roll|rols|schd|sets|setu|symchkp|term|xrst)(?![\\\\-\\\\w])\",\"name\":\"keyword.verb.dli\"},\"dli-options\":{\"match\":\"(?<![\\\\-\\\\w])(?i:statusgroup|checkpoint|chkp|id|lockclass|segment|info|where|from|using|keyfeedback|feedbacklen|variable|first|last|current|seglength|offset|locked|movenext|getfirst|set|setcond|setzero|setparent|fieldlength|keys|maxlength|length[0-9]*|area[0-9]*|psc|pcs|pcb|sysserve|into)(?![\\\\-\\\\w])\",\"name\":\"keyword.other.dli\"},\"number-complex-constant\":{\"match\":\"(\\\\-|\\\\+)?((([0-9]+(\\\\.[0-9]+))|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?(?=\\\\s|\\\\.$|,|\\\\))\",\"name\":\"constant.numeric.cobol\"},\"number-simple-constant\":{\"match\":\"(\\\\-|\\\\+)?([0-9]+)(?=\\\\s|\\\\.$|,|\\\\))\",\"name\":\"constant.numeric.cobol\"},\"string-double-quoted-constant\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"(\\\"|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}}},\"string-quoted-constant\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cobol\"}},\"end\":\"('|$)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cobol\"}},\"name\":\"string.quoted.single.cobol\"}},\"scopeName\":\"source.cobol\",\"embeddedLangs\":[\"html\",\"java\"]}"))
5
5
 
6
6
  export default [
7
7
  ...html,