github-linguist 9.6.0 → 9.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/gno.mod.json +1 -0
  3. data/grammars/source.abl.json +1 -1
  4. data/grammars/source.aleo.json +1 -0
  5. data/grammars/source.astro.json +1 -1
  6. data/grammars/source.baml.json +1 -1
  7. data/grammars/source.bird2.json +1 -0
  8. data/grammars/source.blueprint.json +1 -0
  9. data/grammars/source.bnd.json +1 -1
  10. data/grammars/source.bsl.json +1 -1
  11. data/grammars/source.carbon.json +1 -0
  12. data/grammars/source.cl.json +1 -1
  13. data/grammars/source.clar.json +1 -1
  14. data/grammars/source.clarion.json +1 -1
  15. data/grammars/source.cmd.json +1 -1
  16. data/grammars/source.comment-string.wesl.json +1 -1
  17. data/grammars/source.comment-string.wgsl.json +1 -1
  18. data/grammars/source.cs.json +1 -1
  19. data/grammars/source.csswg.json +1 -1
  20. data/grammars/source.curlrc.json +1 -1
  21. data/grammars/source.dart.json +1 -1
  22. data/grammars/source.dds.dspf.json +1 -1
  23. data/grammars/source.dds.icff.json +1 -1
  24. data/grammars/source.dds.lf.json +1 -1
  25. data/grammars/source.dds.pf.json +1 -1
  26. data/grammars/source.dds.prtf.json +1 -1
  27. data/grammars/source.deq.json +1 -0
  28. data/grammars/source.fift.json +1 -0
  29. data/grammars/source.flix.json +1 -1
  30. data/grammars/source.fpp.json +1 -0
  31. data/grammars/source.func.json +1 -0
  32. data/grammars/source.gdscript.json +1 -1
  33. data/grammars/source.gedcom.json +1 -1
  34. data/grammars/source.gitconfig.json +1 -1
  35. data/grammars/source.gno.json +1 -0
  36. data/grammars/source.graphql.json +1 -1
  37. data/grammars/source.hack.json +1 -1
  38. data/grammars/source.hx.json +1 -1
  39. data/grammars/source.hxml.json +1 -1
  40. data/grammars/source.ink.json +1 -1
  41. data/grammars/source.jac.json +1 -1
  42. data/grammars/source.jass.json +1 -0
  43. data/grammars/source.julia.json +1 -1
  44. data/grammars/source.kcl.json +1 -1
  45. data/grammars/source.koka.json +1 -1
  46. data/grammars/source.leo.json +1 -1
  47. data/grammars/source.lobster.json +1 -0
  48. data/grammars/source.logos.json +1 -1
  49. data/grammars/source.luau.json +1 -1
  50. data/grammars/source.m2.json +1 -1
  51. data/grammars/source.mi.json +1 -1
  52. data/grammars/source.mojo.json +1 -1
  53. data/grammars/source.ms.json +1 -0
  54. data/grammars/source.nim.json +1 -1
  55. data/grammars/source.openqasm.json +1 -1
  56. data/grammars/source.opy.json +1 -1
  57. data/grammars/source.paperspecs.json +1 -0
  58. data/grammars/source.pl.json +1 -0
  59. data/grammars/source.pnlgrp.json +1 -1
  60. data/grammars/source.qsharp.json +1 -1
  61. data/grammars/source.rarlist.json +1 -0
  62. data/grammars/source.rascal.json +1 -1
  63. data/grammars/source.rego.json +1 -1
  64. data/grammars/source.rhai.json +1 -0
  65. data/grammars/source.rpg.json +1 -1
  66. data/grammars/source.rpgle.json +1 -1
  67. data/grammars/source.rust.json +1 -1
  68. data/grammars/source.scala.json +1 -1
  69. data/grammars/source.smithy.json +1 -1
  70. data/grammars/source.spicedb.json +1 -1
  71. data/grammars/source.stim.json +1 -0
  72. data/grammars/source.surrealql.json +1 -1
  73. data/grammars/source.swift.json +1 -1
  74. data/grammars/source.tasm.json +1 -0
  75. data/grammars/source.tlb.json +1 -0
  76. data/grammars/source.tolk.json +1 -0
  77. data/grammars/source.ucode-template.json +1 -0
  78. data/grammars/source.ucode.json +1 -0
  79. data/grammars/source.vento.json +1 -1
  80. data/grammars/source.verse.json +1 -0
  81. data/grammars/source.vespaSchema.json +1 -0
  82. data/grammars/source.vhs.json +1 -0
  83. data/grammars/source.wgsl.json +1 -1
  84. data/grammars/source.yaml.salt.json +1 -1
  85. data/grammars/text.bbcode.json +1 -0
  86. data/grammars/text.html.handlebars.json +1 -1
  87. data/grammars/text.recfile.json +1 -0
  88. data/grammars/text.roff.json +1 -1
  89. data/grammars/version +1 -1
  90. data/lib/linguist/VERSION +1 -1
  91. data/lib/linguist/blob_helper.rb +19 -0
  92. data/lib/linguist/generated.rb +24 -0
  93. data/lib/linguist/generic.yml +1 -0
  94. data/lib/linguist/heuristics.yml +80 -5
  95. data/lib/linguist/language.rb +5 -9
  96. data/lib/linguist/languages.yml +231 -27
  97. data/lib/linguist/languages_data.rb +7663 -0
  98. data/lib/linguist/lazy_blob.rb +6 -1
  99. data/lib/linguist/samples.rb +4 -10
  100. data/lib/linguist/samples_data.rb +196100 -0
  101. metadata +31 -19
  102. data/grammars/markdown.bicep.codeblock.json +0 -1
  103. data/grammars/source.baml-jinja.json +0 -1
  104. data/lib/linguist/languages.json +0 -1
  105. data/lib/linguist/samples.json +0 -1
@@ -1 +1 @@
1
- {"name":"Nim","scopeName":"source.nim","patterns":[{"include":"#pragmas"},{"include":"#brackets"},{"include":"#punctuations"},{"include":"#block-doc-comments"},{"include":"#comments"},{"include":"#for-stmts"},{"include":"#asm-stmts"},{"include":"#routines"},{"include":"#fmt-strs"},{"include":"#operators"},{"include":"#literals"},{"include":"#keywords"},{"include":"#do-stmts"},{"include":"#calls"},{"include":"#types"},{"include":"#builtins"},{"include":"#generic-symbols"}],"repository":{"asm-stmt-1":{"patterns":[{"contentName":"string.quoted.triple.nim","begin":"([Rr])?(\"\"\")","end":"\"\"\"(?!\")","patterns":[{"include":"#interpolation"}],"captures":{"1":{"name":"storage.type.string.nim"},"2":{"name":"string.quoted.triple.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"0":{"name":"string.quoted.triple.nim punctuation.definition.string.end.nim"}}},{"contentName":"string.quoted.double.nim","begin":"([Rr])(\")","end":"(\")|(\\n)","patterns":[{"include":"#interpolation"}],"beginCaptures":{"1":{"name":"storage.type.string.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"},"2":{"name":"invalid.illegal.nim"}}},{"name":"string.quoted.double.nim","begin":"\"","end":"(\")|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"},{"include":"#interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"},"2":{"name":"invalid.illegal.nim"}}}]},"asm-stmts":{"patterns":[{"begin":"asm\\b","end":"(?=[^\"Rr{\\s])|(?\u003c=\")","patterns":[{"include":"#pragmas"},{"include":"#asm-stmt-1"}],"beginCaptures":{"0":{"name":"keyword.control.flow.nim"}}}]},"block-comments":{"patterns":[{"name":"comment.block.number-sign.nim","begin":"#\\[","end":"]#","patterns":[{"include":"#block-comments"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.nim"}}}]},"block-doc-comments":{"patterns":[{"name":"comment.block.documentation.nim","begin":"##\\[","end":"]##","patterns":[{"include":"#block-doc-comments"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.nim"}}}]},"brackets":{"patterns":[{"include":"#square-brackets"},{"name":"meta.braces.nim","begin":"\\{","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.nim"}}},{"name":"meta.parens.nim","begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.nim"}}}]},"builtins":{"patterns":[{"name":"variable.language.nim","match":"\\bresult\\b"},{"name":"storage.type.primitive.nim","match":"\\b(?x:any|array|auto|bool|byte |c(?:double|float|u?(?:long(?:long)?|char|int|short)|longdouble|schar |size(?:_t)?|string(?:[Aa]rray)?) |char|float(?:32|64)?|iterable|lent|open[Aa]rray|owned|pointer|ptr|range|ref|se[qt] |sink|static|string|typed?|type[Dd]esc|u?int(?:8|16|32|64)?|untyped|varargs|void)\\b"},{"name":"support.constant.builtin.nim","match":"\\b(?x:appType|Compile(?:Date|Time)|cpuEndian |host(?:CPU|OS) |isMainModule|NaN|(?:Neg)?Inf|Nim(?:Major|Minor|Patch|Version)|nimvm|off|on |Quit(?:Failure|Success))\\b"}]},"calls":{"patterns":[{"begin":"(?x: (?= (?: (?!(?:out|ptr|ref|tuple)\\b) (?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}]))*|_|`[^;,\\n`]+` ) (?:\\[.*])? (?: \\( |\" |[ ]+ (?: [_\\d\"'`\\[\\(] |(?!\\.|(?:\\*?[ ]*)[:=]|=[^=])[-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔]+[^\\-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔\\s] |(?!(as|asm|and|bind|break|concept|const|continue|converter |defer|discard|distinct|div|elif|else|end|except|export|finally|from|import |include|interface|is(?:not)?|let|macro|method|mixin|mod|(?:not)?in|of |raise|sh[lr]|template|using|while|yield|x?or)\\b)(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}] |\\{(?!\\.) ) ) ) )","end":"(?=[^\\[\\(`\\w\\x{80}-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])|(?\u003c=[\"\\)])","patterns":[{"name":"entity.name.function.nim","begin":"(?=(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[`_A-Za-z\\x80-\\x{10FFFF}])","end":"(?=[^`_A-Za-z\\x80-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])","patterns":[{"include":"#builtins"},{"name":"support.type.nim","match":"[A-Z](?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])+\\b"},{"match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"}]},{"name":"meta.function-call.nim meta.generic.nim","begin":"\\[:?","end":"]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.generic.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.generic.end.nim"}}},{"name":"meta.function-call.arguments.nim","begin":"\\(","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.arguments.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.section.arguments.end.nim"}}},{"include":"#triplestr_lit"},{"name":"string.quoted.double.nim","begin":"\"","end":"(\"(?!\"))|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\"\""}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.unclosed-string.nim"}}}]}]},"characters":{"patterns":[{"match":"'(?:[^\\\\']|(\\\\(?:[ABCEFLNRTVabceflnrtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2})))'","captures":{"0":{"name":"constant.character.nim"},"1":{"name":"constant.character.escape.nim"}}},{"name":"invalid.illegal.nim","match":"'[^']+'"}]},"comments":{"patterns":[{"include":"#block-comments"},{"include":"#line-comments"}]},"do-stmts":{"patterns":[{"begin":"\\bdo\\b","end":"(-\u003e)|(?=[^\\-\\( ])","patterns":[{"include":"#param-list"}],"beginCaptures":{"0":{"name":"storage.type.function.nim"}},"endCaptures":{"1":{"name":"punctuation.separator.annotation.return.nim"}}}]},"doc-comments":{"patterns":[{"include":"#block-doc-comments"},{"include":"#line-doc-comments"}]},"fmt-strs":{"patterns":[{"contentName":"string.quoted.triple.nim","begin":"(?:(fmt)|(\u0026))(\"\"\")","end":"\"\"\"(?!\")","patterns":[{"name":"constant.character.escape.nim","match":"\\{\\{|\\}\\}"},{"name":"source.nim","begin":"{","end":"(=?(?: *:[^}]*)?) *(})|(?=\"\"\"[^\"])","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nim"}},"endCaptures":{"1":{"name":"constant.other.format-spec.nim"},"2":{"name":"punctuation.section.embedded.end.nim"}}}],"beginCaptures":{"1":{"name":"meta.function-call.nim variable.function.nim"},"2":{"name":"keyword.operator.nim"},"3":{"name":"string.quoted.triple.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"0":{"name":"string.quoted.triple.nim punctuation.definition.string.end.nim"}}},{"contentName":"string.quoted.triple.nim","begin":"(fmt)(\")","end":"(\"(?!\"))|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\{\\{|\\}\\}|\"\""},{"name":"source.nim","begin":"{","end":"(=?(?: *:[^}]*)?) *(})|(\\n)|(?=\")","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nim"}},"endCaptures":{"1":{"name":"constant.other.format-spec.nim"},"2":{"name":"punctuation.section.embedded.end.nim"},"3":{"name":"invalid.illegal.nim"}}}],"beginCaptures":{"1":{"name":"meta.function-call.nim variable.function.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.nim"}}},{"contentName":"string.quoted.double.nim","begin":"(\u0026)(\")","end":"(\")|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\{\\{|\\}\\}"},{"name":"source.nim","begin":"{","end":"(=?(?: *:[^}]*)?) *(})|(\\n)|(?=\")","patterns":[{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nim"}},"endCaptures":{"1":{"name":"constant.other.format-spec.nim"},"2":{"name":"punctuation.section.embedded.end.nim"},"3":{"name":"invalid.illegal.nim"}}},{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"}],"beginCaptures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.nim"}}}]},"for-stmt-1":{"patterns":[{"name":"punctuation.separator.nim","match":","},{"match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"},{"include":"#pragmas"},{"include":"#comments"}]},"for-stmts":{"patterns":[{"begin":"for\\b","end":"(in\\b)|(?=[^#,{_`A-Za-z\\s\\x80-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])","patterns":[{"begin":"\\(","end":"(in\\b)|(\\))|(?=[^#,{_`A-Za-z\\s\\x80-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])","patterns":[{"include":"#for-stmt-1"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.nim"}},"endCaptures":{"1":{"name":"keyword.control.loop.for.in.nim"},"2":{"name":"punctuation.section.parens.end.nim"}}},{"include":"#for-stmt-1"}],"beginCaptures":{"0":{"name":"keyword.control.loop.for.nim"}},"endCaptures":{"1":{"name":"keyword.control.loop.for.in.nim"}}}]},"generic-param-list":{"patterns":[{"name":"meta.generic.nim","begin":"(?\u003c=(?\u003c=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[`*\\w\\x{80}-\\x{10FFFF}]) *(\\[)","end":"(])|(?=[^#_`:=,;A-Za-z\\x80-\\x{10FFFF}\\s]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])","patterns":[{"include":"#generic-param-list-0"}],"beginCaptures":{"1":{"name":"punctuation.section.generic.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.section.generic.end.nim"}}}]},"generic-param-list-0":{"patterns":[{"name":"punctuation.separator.nim","match":"[,;]"},{"begin":"(:)|(=)","end":"([,;])|(?=\\])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.separator.annotation.nim"},"2":{"name":"keyword.operator.assignment.nim"}},"endCaptures":{"1":{"name":"punctuation.separator.nim"}}},{"include":"#comments"}]},"generic-symbols":{"patterns":[{"name":"support.constant.nim","match":"\\p{Lu}(?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Z\\d\\x80-\\x{10FFFF}])+\\b"},{"name":"support.type.nim","match":"\\p{Lu}(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])+\\b"},{"match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"}]},"interpolation":{"patterns":[{"match":"(`) *(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_) *(`)","captures":{"0":{"name":"source.nim.embedded"},"1":{"name":"punctuation.section.embedded.begin.nim"},"2":{"name":"punctuation.section.embedded.end.nim"}}}]},"keywords":{"patterns":[{"name":"keyword.operator.word.nim","match":"\\b(?:addr|cast)\\b"},{"name":"comment.block.nim","begin":"\\bdiscard +\"\"\"","end":"\"\"\"(?!\")","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.nim"}}},{"name":"keyword.other.nim","match":"\\b(?:distinct|discard)\\b"},{"name":"keyword.control.flow.nim","match":"\\b(?:asm|end|break|continue|raise|return|yield)\\b"},{"name":"storage.type.nim","match":"\\b(?:concept|enum|interface)\\b"},{"match":"\\b(object)\\b(?: *(of)\\b)?","captures":{"1":{"name":"storage.type.nim"},"2":{"name":"keyword.other.nim"}}},{"name":"keyword.control.loop.while.nim","match":"\\bwhile\\b"},{"name":"keyword.control.conditional.switch.nim","match":"\\bcase\\b"},{"name":"keyword.control.conditional.case.nim","match":"^ *(of)\\b"},{"name":"keyword.control.conditional.if.nim","match":"\\bif\\b"},{"name":"keyword.control.conditional.when.nim","match":"\\bwhen\\b"},{"name":"keyword.control.conditional.elseif.nim","match":"\\belif\\b"},{"match":"\\b(else)\\b(?: *(:))?","captures":{"0":{"name":"meta.statement.conditional.else.nim"},"1":{"name":"keyword.control.conditional.else.nim"},"2":{"name":"punctuation.section.block.conditional.else.nim"}}},{"match":"\\b(try)\\b(?: *(:))?","captures":{"0":{"name":"meta.statement.exception.try.nim"},"1":{"name":"keyword.control.exception.try.nim"},"2":{"name":"punctuation.section.block.exception.nim"}}},{"match":"\\b(finally)\\b(?: *(:))?","captures":{"0":{"name":"meta.statement.exception.finally.nim"},"1":{"name":"keyword.control.exception.finally.nim"},"2":{"name":"punctuation.section.block.exception.finally.nim"}}},{"match":"\\b(defer)\\b(?: *(:))?","captures":{"1":{"name":"keyword.control.flow.defer.nim"},"2":{"name":"punctuation.section.block.begin.nim"}}},{"match":"\\b(block)\\b(?:(?: *(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`))? *(:))?","captures":{"1":{"name":"keyword.declaration.block.nim"},"2":{"name":"punctuation.section.block.begin.nim"}}},{"name":"keyword.control.nim","match":"\\b(?:as|(?:ex|im)port|include|bind|mixin|from|except)\\b"},{"name":"storage.modifier.nim","match":"\\b(?:const|let|var|using)\\b"}]},"language-constants":{"patterns":[{"name":"constant.language.nim","match":"\\b(?:true|false|nil)\\b"}]},"line-comments":{"patterns":[{"name":"comment.line.number-sign.nim","begin":"(#)(?: *(TODO|todo)\\b)?","end":"$\\n?","beginCaptures":{"1":{"name":"punctuation.definition.comment.nim"},"2":{"name":"invalid.deprecated.nim"}}}]},"line-doc-comments":{"patterns":[{"name":"comment.line.documentation.nim","begin":"##","end":"$\\n?","beginCaptures":{"0":{"name":"punctuation.definition.comment.nim"}}}]},"literals":{"patterns":[{"include":"#str_lits"},{"include":"#numbers"},{"include":"#characters"},{"include":"#language-constants"}]},"numbers":{"patterns":[{"match":"(?x: \\b(\\d(?:_?\\d)*) (?: (?: ((\\.)\\d(?:_?\\d)*) ([Ee][-+]?\\d(?:_?\\d)*)? |([Ee][-+]?\\d(?:_?\\d)*) ) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd]))? |('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd])) ) )","captures":{"0":{"name":"meta.number.float.decimal.nim"},"1":{"name":"constant.numeric.value.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"punctuation.separator.decimal.nim"},"4":{"name":"constant.numeric.value.exponent.nim"},"5":{"name":"constant.numeric.value.exponent.nim"},"6":{"name":"constant.numeric.suffix.nim"},"7":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Xx]) ([[:xdigit:]](?:_?[[:xdigit:]])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|[Ff](?:32|64)) )","captures":{"0":{"name":"meta.number.float.hexadecimal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0o) ([0-7](?:_?[0-7])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd])) )","captures":{"0":{"name":"meta.number.float.octal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Bb]) ([01](?:_?[01])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd])) )","captures":{"0":{"name":"meta.number.float.binary.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Xx]) ([[:xdigit:]](?:_?[[:xdigit:]])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.hexadecimal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0o) ([0-7](?:_?[0-7])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.octal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Bb]) ([01](?:_?[01])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.binary.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(\\d(?:_?\\d)*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.decimal.nim"},"1":{"name":"constant.numeric.value.nim"},"2":{"name":"constant.numeric.suffix.nim"}}}]},"operators":{"patterns":[{"name":"keyword.operator.logical.nim","match":"\\b(?:and|not|x?or)\\b"},{"name":"keyword.control.conditional.case.nim","match":"^of\\b"},{"name":"keyword.operator.word.nim","match":"\\b(?:of|(?:not)?in|is(?:not)?)\\b"},{"name":"keyword.operator.bitwise.nim","match":"\\bsh[lr]\\b"},{"name":"keyword.operator.arithmetic.nim","match":"\\b(?:div|mod)\\b"},{"name":"keyword.operator.comparison.nim","match":"==|\u003c=?|\u003e=?|!="},{"name":"keyword.operator.assignment.nim","match":"(?:[-+*/@$\u0026%|^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔][-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔]*)?=(?![-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])"},{"name":"keyword.operator.nim","match":"[-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔]+"}]},"param-list":{"patterns":[{"name":"meta.function.parameters","begin":"\\(","end":"\\)","patterns":[{"name":"punctuation.separator.nim","match":"[,;]"},{"begin":"(:)|(=)","end":"(?=[,;\\)])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.separator.annotation.nim"},"2":{"name":"keyword.operator.assignment.nim"}}},{"include":"#comments"}],"beginCaptures":{"0":{"name":"punctuation.section.parameters.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.parameters.end.nim"}}}]},"patterns":{"patterns":[{"name":"meta.pattern.nim","begin":"\\{(?!\\.)","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.pattern.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.pattern.end.nim"}}}]},"pragmas":{"patterns":[{"name":"meta.annotation.nim","begin":"\\{\\.(?!\\.})","end":"\\.?}","patterns":[{"include":"#calls"},{"name":"entity.other.attribute-name.pragma.nim","match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"},{"include":"#square-brackets"},{"begin":"(?=\\S)","end":"(,)|(?=\\.?})","patterns":[{"begin":":","end":"(?=,|\\.?})","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.separator.key-value.nim"}}}],"endCaptures":{"1":{"name":"punctuation.separator.sequence.nim"}}}],"beginCaptures":{"0":{"name":"punctuation.section.annotation.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.annotation.end.nim"}}}]},"punctuations":{"patterns":[{"name":"punctuation.terminator.statement.nim","match":";"},{"name":"punctuation.separator.nim","match":","},{"name":"punctuation.section.block.begin.nim","match":":"},{"name":"punctuation.accessor.dot.nim","match":"\\.(?![-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])"},{"match":"(\\*) *(:|(?=,|#|\\{\\.))","captures":{"1":{"name":"storage.modifier.nim"},"2":{"name":"punctuation.separator.annotation.nim"}}},{"name":"invalid.illegal.nim","match":"\\)|]|}"}]},"routines":{"patterns":[{"name":"meta.function.nim","begin":"(?x: (proc|template|iterator|func|method|macro|converter)\\b (?:[ ]*((?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`)(?:[ ]*(\\*))?)? )","end":"(:)|(?=[^#\\(\\[:\\s]|##)","patterns":[{"include":"#comments"},{"include":"#patterns"},{"include":"#generic-param-list"},{"include":"#param-list"}],"beginCaptures":{"1":{"name":"storage.type.function.nim"},"2":{"name":"entity.name.function.nim"},"3":{"name":"storage.modifier.nim"}},"endCaptures":{"1":{"name":"punctuation.separator.annotation.nim"}}}]},"rstr_lit":{"patterns":[{"contentName":"string.quoted.double.nim","begin":"([Rr])(\")","end":"(\"(?!\"))|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\"\""}],"beginCaptures":{"1":{"name":"storage.type.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.end.nim"},"2":{"name":"string.quoted.double.nim invalid.illegal.unclosed-string.nim"}}}]},"square-brackets":{"patterns":[{"name":"meta.brackets.nim","begin":"\\[","end":"]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.nim"}}}]},"str_lit":{"patterns":[{"name":"string.quoted.double.nim","begin":"\"","end":"(\")|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.nim"}}}]},"str_lits":{"patterns":[{"include":"#triplestr_lit"},{"include":"#rstr_lit"},{"include":"#str_lit"}]},"triplestr_lit":{"patterns":[{"contentName":"string.quoted.triple.nim","begin":"([Rr])?(\"\"\")","end":"\"\"\"(?!\")","beginCaptures":{"1":{"name":"storage.type.nim"},"2":{"name":"string.quoted.triple.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"0":{"name":"string.quoted.triple.nim punctuation.definition.string.end.nim"}}}]},"types":{"patterns":[{"contentName":"meta.generic.nim","begin":"(?=(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])*\\[)(?x:(out|ptr|ref|array |cstring[Aa]rray|iterable|lent|open[Aa]rray|owned|ptr|range|ref|se[qt] |sink|static|type(?:[Dd]esc)?|varargs)|(\\p{Lu}(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔])[\\dA-Za-z\\x80-\\x{10FFFF}])+))(\\[)","end":"]","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.type.primitive.nim"},"2":{"name":"support.type.nim"},"3":{"name":"meta.generic.nim punctuation.section.generic.begin.nim"}},"endCaptures":{"0":{"name":"meta.generic.nim punctuation.section.generic.nim"}}},{"name":"storage.type.primitive.nim","match":"\\b(?:out|tuple|ref|ptr)\\b"}]}}}
1
+ {"name":"Nim","scopeName":"source.nim","patterns":[{"include":"#pragmas"},{"include":"#brackets"},{"include":"#punctuations"},{"include":"#block-doc-comments"},{"include":"#comments"},{"include":"#for-stmts"},{"include":"#asm-stmts"},{"include":"#routines"},{"include":"#fmt-strs"},{"include":"#operators"},{"include":"#literals"},{"include":"#keywords"},{"include":"#do-stmts"},{"include":"#calls"},{"include":"#types"},{"include":"#builtins"},{"include":"#generic-symbols"}],"repository":{"asm-stmt-1":{"patterns":[{"contentName":"string.quoted.triple.nim","begin":"([Rr])?(\"\"\")","end":"\"\"\"(?!\")","patterns":[{"include":"#interpolation"}],"captures":{"1":{"name":"storage.type.string.nim"},"2":{"name":"string.quoted.triple.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"0":{"name":"string.quoted.triple.nim punctuation.definition.string.end.nim"}}},{"contentName":"string.quoted.double.nim","begin":"([Rr])(\")","end":"(\")|(\\n)","patterns":[{"include":"#interpolation"}],"beginCaptures":{"1":{"name":"storage.type.string.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"},"2":{"name":"invalid.illegal.nim"}}},{"name":"string.quoted.double.nim","begin":"\"","end":"(\")|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"},{"include":"#interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"},"2":{"name":"invalid.illegal.nim"}}}]},"asm-stmts":{"patterns":[{"begin":"asm\\b","end":"(?=[^\"Rr{\\s])|(?\u003c=\")","patterns":[{"include":"#pragmas"},{"include":"#asm-stmt-1"}],"beginCaptures":{"0":{"name":"keyword.control.flow.nim"}}}]},"block-comments":{"patterns":[{"name":"comment.block.number-sign.nim","begin":"#\\[","end":"]#","patterns":[{"include":"#block-comments"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.nim"}}}]},"block-doc-comments":{"patterns":[{"name":"comment.block.documentation.nim","begin":"##\\[","end":"]##","patterns":[{"include":"#block-doc-comments"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.nim"}}}]},"brackets":{"patterns":[{"include":"#square-brackets"},{"name":"meta.braces.nim","begin":"\\{","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.nim"}}},{"name":"meta.parens.nim","begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.nim"}}}]},"builtins":{"patterns":[{"name":"variable.language.nim","match":"\\bresult\\b"},{"name":"storage.type.primitive.nim","match":"\\b(?x:any|array|auto|bool|byte |c(?:double|float|u?(?:long(?:long)?|char|int|short)|longdouble|schar |size(?:_t)?|string(?:[Aa]rray)?) |char|float(?:32|64)?|iterable|lent|open[Aa]rray|owned|pointer|ptr|range|ref|se[qt] |sink|static|string|typed?|type[Dd]esc|u?int(?:8|16|32|64)?|untyped|varargs|void)\\b"},{"name":"support.constant.builtin.nim","match":"\\b(?x:appType|Compile(?:Date|Time)|cpuEndian |host(?:CPU|OS) |isMainModule|NaN|(?:Neg)?Inf|Nim(?:Major|Minor|Patch|Version)|nimvm|off|on |Quit(?:Failure|Success))\\b"}]},"calls":{"patterns":[{"begin":"(?x: (?= (?: (?!(?:out|ptr|ref|tuple)\\b) (?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}]))*|_|`[^;,\\n`]+` ) (?:\\[.*])? (?: \\( |\" |[ ]+ (?: [_\\d\"'`\\[\\(] |(?!\\.|(?:\\*?[ ]*)[:=]|=[^=])[-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆]+[^\\-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆\\s] |(?!(as|asm|and|bind|break|concept|const|continue|converter |defer|discard|distinct|div|elif|else|end|except|export|finally|from|import |include|interface|is(?:not)?|let|macro|method|mixin|mod|(?:not)?in|of |raise|sh[lr]|template|using|while|yield|x?or)\\b)(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}] |\\{(?!\\.) ) ) ) )","end":"(?=[^\\[\\(`\\w\\x{80}-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])|(?\u003c=[\"\\)])","patterns":[{"name":"entity.name.function.nim","begin":"(?=(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[`_A-Za-z\\x80-\\x{10FFFF}])","end":"(?=[^`_A-Za-z\\x80-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])","patterns":[{"include":"#builtins"},{"name":"support.type.nim","match":"[A-Z](?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])+\\b"},{"match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"}]},{"name":"meta.function-call.nim meta.generic.nim","begin":"\\[:?","end":"]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.generic.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.generic.end.nim"}}},{"name":"meta.function-call.arguments.nim","begin":"\\(","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.arguments.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.section.arguments.end.nim"}}},{"include":"#triplestr_lit"},{"name":"string.quoted.double.nim","begin":"\"","end":"(\"(?!\"))|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\"\""}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.unclosed-string.nim"}}}]}]},"characters":{"patterns":[{"match":"'(?:[^\\\\']|(\\\\(?:[ABCEFLNRTVabceflnrtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2})))'","captures":{"0":{"name":"constant.character.nim"},"1":{"name":"constant.character.escape.nim"}}},{"name":"invalid.illegal.nim","match":"'[^']+'"}]},"comments":{"patterns":[{"include":"#block-comments"},{"include":"#line-comments"}]},"do-stmts":{"patterns":[{"begin":"\\bdo\\b","end":"(-\u003e)|(?=[^\\-\\( ])","patterns":[{"include":"#param-list"}],"beginCaptures":{"0":{"name":"storage.type.function.nim"}},"endCaptures":{"1":{"name":"punctuation.separator.annotation.return.nim"}}}]},"doc-comments":{"patterns":[{"include":"#block-doc-comments"},{"include":"#line-doc-comments"}]},"fmt-strs":{"patterns":[{"contentName":"string.quoted.triple.nim","begin":"(?:(fmt)|(\u0026))(\"\"\")","end":"\"\"\"(?!\")","patterns":[{"name":"constant.character.escape.nim","match":"\\{\\{|\\}\\}"},{"name":"source.nim","begin":"{","end":"(=?(?: *:[^}]*)?) *(})|(?=\"\"\"[^\"])","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nim"}},"endCaptures":{"1":{"name":"constant.other.format-spec.nim"},"2":{"name":"punctuation.section.embedded.end.nim"}}}],"beginCaptures":{"1":{"name":"meta.function-call.nim variable.function.nim"},"2":{"name":"keyword.operator.nim"},"3":{"name":"string.quoted.triple.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"0":{"name":"string.quoted.triple.nim punctuation.definition.string.end.nim"}}},{"contentName":"string.quoted.triple.nim","begin":"(fmt)(\")","end":"(\"(?!\"))|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\{\\{|\\}\\}|\"\""},{"name":"source.nim","begin":"{","end":"(=?(?: *:[^}]*)?) *(})|(\\n)|(?=\")","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nim"}},"endCaptures":{"1":{"name":"constant.other.format-spec.nim"},"2":{"name":"punctuation.section.embedded.end.nim"},"3":{"name":"invalid.illegal.nim"}}}],"beginCaptures":{"1":{"name":"meta.function-call.nim variable.function.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.nim"}}},{"contentName":"string.quoted.double.nim","begin":"(\u0026)(\")","end":"(\")|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\{\\{|\\}\\}"},{"name":"source.nim","begin":"{","end":"(=?(?: *:[^}]*)?) *(})|(\\n)|(?=\")","patterns":[{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nim"}},"endCaptures":{"1":{"name":"constant.other.format-spec.nim"},"2":{"name":"punctuation.section.embedded.end.nim"},"3":{"name":"invalid.illegal.nim"}}},{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"}],"beginCaptures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.nim"}}}]},"for-stmt-1":{"patterns":[{"name":"punctuation.separator.nim","match":","},{"match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"},{"include":"#pragmas"},{"include":"#comments"}]},"for-stmts":{"patterns":[{"begin":"for\\b","end":"(in\\b)|(?=[^#,{_`A-Za-z\\s\\x80-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])","patterns":[{"begin":"\\(","end":"(in\\b)|(\\))|(?=[^#,{_`A-Za-z\\s\\x80-\\x{10FFFF}]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])","patterns":[{"include":"#for-stmt-1"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.nim"}},"endCaptures":{"1":{"name":"keyword.control.loop.for.in.nim"},"2":{"name":"punctuation.section.parens.end.nim"}}},{"include":"#for-stmt-1"}],"beginCaptures":{"0":{"name":"keyword.control.loop.for.nim"}},"endCaptures":{"1":{"name":"keyword.control.loop.for.in.nim"}}}]},"generic-param-list":{"patterns":[{"name":"meta.generic.nim","begin":"(?\u003c=(?\u003c=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[`*\\w\\x{80}-\\x{10FFFF}]) *(\\[)","end":"(])|(?=[^#_`:=,;A-Za-z\\x80-\\x{10FFFF}\\s]|[∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])","patterns":[{"include":"#generic-param-list-0"}],"beginCaptures":{"1":{"name":"punctuation.section.generic.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.section.generic.end.nim"}}}]},"generic-param-list-0":{"patterns":[{"name":"punctuation.separator.nim","match":"[,;]"},{"begin":"(:)|(=)","end":"([,;])|(?=\\])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.separator.annotation.nim"},"2":{"name":"keyword.operator.assignment.nim"}},"endCaptures":{"1":{"name":"punctuation.separator.nim"}}},{"include":"#comments"}]},"generic-symbols":{"patterns":[{"name":"support.constant.nim","match":"\\p{Lu}(?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Z\\d\\x80-\\x{10FFFF}])+\\b"},{"name":"support.type.nim","match":"\\p{Lu}(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])+\\b"},{"match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"}]},"interpolation":{"patterns":[{"match":"(`) *(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_) *(`)","captures":{"0":{"name":"source.nim.embedded"},"1":{"name":"punctuation.section.embedded.begin.nim"},"2":{"name":"punctuation.section.embedded.end.nim"}}}]},"keywords":{"patterns":[{"name":"keyword.operator.word.nim","match":"\\b(?:addr|cast)\\b"},{"name":"comment.block.nim","begin":"\\bdiscard +\"\"\"","end":"\"\"\"(?!\")","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.nim"}}},{"name":"keyword.other.nim","match":"\\b(?:distinct|discard)\\b"},{"name":"keyword.control.flow.nim","match":"\\b(?:asm|end|break|continue|raise|return|yield)\\b"},{"name":"storage.type.nim","match":"\\b(?:concept|enum|interface)\\b"},{"match":"\\b(object)\\b(?: *(of)\\b)?","captures":{"1":{"name":"storage.type.nim"},"2":{"name":"keyword.other.nim"}}},{"name":"keyword.control.loop.while.nim","match":"\\bwhile\\b"},{"name":"keyword.control.conditional.switch.nim","match":"\\bcase\\b"},{"name":"keyword.control.conditional.case.nim","match":"^ *(of)\\b"},{"name":"keyword.control.conditional.if.nim","match":"\\bif\\b"},{"name":"keyword.control.conditional.when.nim","match":"\\bwhen\\b"},{"name":"keyword.control.conditional.elseif.nim","match":"\\belif\\b"},{"match":"\\b(else)\\b(?: *(:))?","captures":{"0":{"name":"meta.statement.conditional.else.nim"},"1":{"name":"keyword.control.conditional.else.nim"},"2":{"name":"punctuation.section.block.conditional.else.nim"}}},{"match":"\\b(try)\\b(?: *(:))?","captures":{"0":{"name":"meta.statement.exception.try.nim"},"1":{"name":"keyword.control.exception.try.nim"},"2":{"name":"punctuation.section.block.exception.nim"}}},{"match":"\\b(finally)\\b(?: *(:))?","captures":{"0":{"name":"meta.statement.exception.finally.nim"},"1":{"name":"keyword.control.exception.finally.nim"},"2":{"name":"punctuation.section.block.exception.finally.nim"}}},{"match":"\\b(defer)\\b(?: *(:))?","captures":{"1":{"name":"keyword.control.flow.defer.nim"},"2":{"name":"punctuation.section.block.begin.nim"}}},{"match":"\\b(block)\\b(?:(?: *(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`))? *(:))?","captures":{"1":{"name":"keyword.declaration.block.nim"},"2":{"name":"punctuation.section.block.begin.nim"}}},{"name":"keyword.control.nim","match":"\\b(?:as|(?:ex|im)port|include|bind|mixin|from|except)\\b"},{"name":"storage.modifier.nim","match":"\\b(?:const|let|var|using)\\b"}]},"language-constants":{"patterns":[{"name":"constant.language.nim","match":"\\b(?:true|false|nil)\\b"}]},"line-comments":{"patterns":[{"name":"comment.line.number-sign.nim","begin":"(#)(?: *(TODO|todo)\\b)?","end":"$\\n?","beginCaptures":{"1":{"name":"punctuation.definition.comment.nim"},"2":{"name":"invalid.deprecated.nim"}}}]},"line-doc-comments":{"patterns":[{"name":"comment.line.documentation.nim","begin":"##","end":"$\\n?","beginCaptures":{"0":{"name":"punctuation.definition.comment.nim"}}}]},"literals":{"patterns":[{"include":"#str_lits"},{"include":"#numbers"},{"include":"#characters"},{"include":"#language-constants"}]},"numbers":{"patterns":[{"match":"(?x: \\b(\\d(?:_?\\d)*) (?: (?: ((\\.)\\d(?:_?\\d)*) ([Ee][-+]?\\d(?:_?\\d)*)? |([Ee][-+]?\\d(?:_?\\d)*) ) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd]))? |('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd])) ) )","captures":{"0":{"name":"meta.number.float.decimal.nim"},"1":{"name":"constant.numeric.value.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"punctuation.separator.decimal.nim"},"4":{"name":"constant.numeric.value.exponent.nim"},"5":{"name":"constant.numeric.value.exponent.nim"},"6":{"name":"constant.numeric.suffix.nim"},"7":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Xx]) ([[:xdigit:]](?:_?[[:xdigit:]])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|[Ff](?:32|64)) )","captures":{"0":{"name":"meta.number.float.hexadecimal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0o) ([0-7](?:_?[0-7])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd])) )","captures":{"0":{"name":"meta.number.float.octal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Bb]) ([01](?:_?[01])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[Ff](?:32|64)|[Dd])) )","captures":{"0":{"name":"meta.number.float.binary.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Xx]) ([[:xdigit:]](?:_?[[:xdigit:]])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.hexadecimal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0o) ([0-7](?:_?[0-7])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.octal.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(0[Bb]) ([01](?:_?[01])*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.binary.nim"},"1":{"name":"constant.numeric.base.nim"},"2":{"name":"constant.numeric.value.nim"},"3":{"name":"constant.numeric.suffix.nim"}}},{"match":"(?x: \\b(\\d(?:_?\\d)*) ('(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_)|(?:[IUiu](?:8|16|32|64)|[Uu]))? )","captures":{"0":{"name":"meta.number.integer.decimal.nim"},"1":{"name":"constant.numeric.value.nim"},"2":{"name":"constant.numeric.suffix.nim"}}}]},"operators":{"patterns":[{"name":"keyword.operator.logical.nim","match":"\\b(?:and|not|x?or)\\b"},{"name":"keyword.control.conditional.case.nim","match":"^of\\b"},{"name":"keyword.operator.word.nim","match":"\\b(?:of|(?:not)?in|is(?:not)?)\\b"},{"name":"keyword.operator.bitwise.nim","match":"\\bsh[lr]\\b"},{"name":"keyword.operator.arithmetic.nim","match":"\\b(?:div|mod)\\b"},{"name":"keyword.operator.comparison.nim","match":"==|\u003c=?|\u003e=?|!="},{"name":"keyword.operator.assignment.nim","match":"(?:[-+*/@$\u0026%|^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆][-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆]*)?=(?![-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])"},{"name":"keyword.operator.nim","match":"[-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆]+"}]},"param-list":{"patterns":[{"name":"meta.function.parameters","begin":"\\(","end":"\\)","patterns":[{"name":"punctuation.separator.nim","match":"[,;]"},{"begin":"(:)|(=)","end":"(?=[,;\\)])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.separator.annotation.nim"},"2":{"name":"keyword.operator.assignment.nim"}}},{"include":"#comments"}],"beginCaptures":{"0":{"name":"punctuation.section.parameters.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.parameters.end.nim"}}}]},"patterns":{"patterns":[{"name":"meta.pattern.nim","begin":"\\{(?!\\.)","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.pattern.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.pattern.end.nim"}}}]},"pragmas":{"patterns":[{"name":"meta.annotation.nim","begin":"\\{\\.(?!\\.})","end":"\\.?}","patterns":[{"include":"#calls"},{"name":"entity.other.attribute-name.pragma.nim","match":"(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`"},{"include":"#square-brackets"},{"begin":"(?=\\S)","end":"(,)|(?=\\.?})","patterns":[{"begin":":","end":"(?=,|\\.?})","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.separator.key-value.nim"}}}],"endCaptures":{"1":{"name":"punctuation.separator.sequence.nim"}}}],"beginCaptures":{"0":{"name":"punctuation.section.annotation.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.annotation.end.nim"}}}]},"punctuations":{"patterns":[{"name":"punctuation.terminator.statement.nim","match":";"},{"name":"punctuation.separator.nim","match":","},{"name":"punctuation.section.block.begin.nim","match":":"},{"name":"punctuation.accessor.dot.nim","match":"\\.(?![-=+*/\u003c\u003e@$~\u0026%|!?^.:\\\\∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])"},{"match":"(\\*) *(:|(?=,|#|\\{\\.))","captures":{"1":{"name":"storage.modifier.nim"},"2":{"name":"punctuation.separator.annotation.nim"}}},{"name":"invalid.illegal.nim","match":"\\)|]|}"}]},"routines":{"patterns":[{"name":"meta.function.nim","begin":"(?x: (proc|template|iterator|func|method|macro|converter)\\b (?:[ ]*((?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*|_|`[^;,\\n`]+`)(?:[ ]*(\\*))?)? )","end":"(:)|(?=[^#\\(\\[:\\s]|##)","patterns":[{"include":"#comments"},{"include":"#patterns"},{"include":"#generic-param-list"},{"include":"#param-list"}],"beginCaptures":{"1":{"name":"storage.type.function.nim"},"2":{"name":"entity.name.function.nim"},"3":{"name":"storage.modifier.nim"}},"endCaptures":{"1":{"name":"punctuation.separator.annotation.nim"}}}]},"rstr_lit":{"patterns":[{"contentName":"string.quoted.double.nim","begin":"([Rr])(\")","end":"(\"(?!\"))|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\"\""}],"beginCaptures":{"1":{"name":"storage.type.nim"},"2":{"name":"string.quoted.double.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"string.quoted.double.nim punctuation.definition.string.end.nim"},"2":{"name":"string.quoted.double.nim invalid.illegal.unclosed-string.nim"}}}]},"square-brackets":{"patterns":[{"name":"meta.brackets.nim","begin":"\\[","end":"]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.nim"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.nim"}}}]},"str_lit":{"patterns":[{"name":"string.quoted.double.nim","begin":"\"","end":"(\")|(\\n)","patterns":[{"name":"constant.character.escape.nim","match":"\\\\(?:[ABCEFLNPRTVabceflnprtv\"'\\\\]|\\d+|[Xx][[:xdigit:]]{2}|[Uu](?:[[:xdigit:]]{4}|\\{[[:xdigit:]]+}))"},{"name":"invalid.illegal.lone-escape.nim","match":"\\\\"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.nim"},"2":{"name":"invalid.illegal.nim"}}}]},"str_lits":{"patterns":[{"include":"#triplestr_lit"},{"include":"#rstr_lit"},{"include":"#str_lit"}]},"triplestr_lit":{"patterns":[{"contentName":"string.quoted.triple.nim","begin":"([Rr])?(\"\"\")","end":"\"\"\"(?!\")","beginCaptures":{"1":{"name":"storage.type.nim"},"2":{"name":"string.quoted.triple.nim punctuation.definition.string.begin.nim"}},"endCaptures":{"0":{"name":"string.quoted.triple.nim punctuation.definition.string.end.nim"}}}]},"types":{"patterns":[{"contentName":"meta.generic.nim","begin":"(?=(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[A-Za-z\\x80-\\x{10FFFF}](?:_?(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])*\\[)(?x:(out|ptr|ref|array |cstring[Aa]rray|iterable|lent|open[Aa]rray|owned|ptr|range|ref|se[qt] |sink|static|type(?:[Dd]esc)?|varargs)|(\\p{Lu}(?:(?=[^∙∘×★⊗⊘⊙⊛⊠⊡∩∧⊓±⊕⊖⊞⊟∪∨⊔⟑⟇⩓⩔■□☆])[\\dA-Za-z\\x80-\\x{10FFFF}])+))(\\[)","end":"]","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.type.primitive.nim"},"2":{"name":"support.type.nim"},"3":{"name":"meta.generic.nim punctuation.section.generic.begin.nim"}},"endCaptures":{"0":{"name":"meta.generic.nim punctuation.section.generic.nim"}}},{"name":"storage.type.primitive.nim","match":"\\b(?:out|tuple|ref|ptr)\\b"}]}}}
@@ -1 +1 @@
1
- {"name":"openqasm","scopeName":"source.openqasm","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#operators"},{"include":"#types"},{"include":"#constants"},{"include":"#strings"},{"include":"#brackets"},{"include":"#variables"}],"repository":{"brackets":{"patterns":[{"name":"punctuation.bracket.openqasm","match":"[\\[\\]\\(\\)\\{\\}]"}]},"comments":{"patterns":[{"name":"comment.line.double-slash","match":"//.*$"},{"name":"comment.block","begin":"/\\*","end":"\\*/"}]},"constants":{"patterns":[{"name":"constant.language.openqasm","match":"\\b(true|false|theta|pi|θ|π|ℇ|τ|euler|tau|λ|lambda|φ|phi|@)\\b"},{"name":"constant.numeric.openqasm","match":"\\b[\\d_]*\\.?[\\d_](im|dt|ns|us|ms|s|)?\\b"}]},"keywords":{"patterns":[{"name":"keyword.control.openqasm"},{"name":"keyword.other.openqasm"}]},"operators":{"patterns":[{"name":"keyword.other.operator.openqasm","match":"\\b(=)|(!)|(\u003c)|(\u003e)|(\\+)|(-)|(\\*)|(\\*\\*)|(\\/)|(\\^)|(%)|(\\|)|(\\\u0026)|(\\\u0026\\\u0026)|(\\~)|(\\|\\|)|(\u003c\u003c)|(\u003e\u003e)"}]},"strings":{"name":"string.quoted.double.openqasm","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.openqasm","match":"\\\\."}]},"types":{"patterns":[{"name":"storage.type.openqasm","match":"\\b(angle|bit|bool|complex|duration|float|int|stretch|uint|qreg|creg)(\\[[a-zA-Z_][a-zA-Z0-9_]*\\])?\\b"}]},"variables":{"patterns":[{"name":"variable.other.openqasm","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]}}}
1
+ {"name":"openqasm","scopeName":"source.openqasm","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#operators"},{"include":"#types"},{"include":"#constants"},{"include":"#strings"},{"include":"#brackets"},{"include":"#variables"}],"repository":{"brackets":{"patterns":[{"name":"punctuation.bracket.openqasm","match":"[\\[\\]\\(\\)\\{\\}]"}]},"comments":{"patterns":[{"name":"comment.line.double-slash","match":"//.*$"},{"name":"comment.block","begin":"/\\*","end":"\\*/"}]},"constants":{"patterns":[{"name":"constant.language.openqasm","match":"\\b(true|false|theta|pi|θ|π|ℇ|τ|euler|tau|λ|lambda|φ|phi|@)\\b"},{"name":"constant.numeric.openqasm","match":"\\b[\\d_]*\\.?[\\d_](im|dt|ns|us|ms|s|)?\\b"}]},"keywords":{"patterns":[{"name":"keyword.control.openqasm","match":"(?\u003c!\\.)\\b(in|for|return|if|else|switch|while|break|continue)\\b(?!\\s*\\.)"},{"name":"keyword.other.openqasm","match":"(?\u003c!\\.)\\b(OPENQASM|include|qubit|reset|mutable|readonly|#dim|stretch|delay|barrier|box|input|output|int|float|bit|bool|uint|angle|complex|const|defcal|def|gate|array|duration|let|measure|pragma|defcalgrammar|cal|qreg|creg|extern|port|frame|waveform)\\b(?!\\s*\\.)"}]},"operators":{"patterns":[{"name":"keyword.other.operator.openqasm","match":"\\b(=)|(!)|(\u003c)|(\u003e)|(\\+)|(-)|(\\*)|(\\*\\*)|(\\/)|(\\^)|(%)|(\\|)|(\\\u0026)|(\\\u0026\\\u0026)|(\\~)|(\\|\\|)|(\u003c\u003c)|(\u003e\u003e)"}]},"strings":{"name":"string.quoted.double.openqasm","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.openqasm","match":"\\\\."}]},"types":{"patterns":[{"name":"storage.type.openqasm","match":"\\b(angle|bit|bool|complex|duration|float|int|stretch|uint|qreg|creg)(\\[[a-zA-Z_][a-zA-Z0-9_]*\\])?\\b"}]},"variables":{"patterns":[{"name":"variable.other.openqasm","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"}]}}}
@@ -1 +1 @@
1
- {"name":"OverPy","scopeName":"source.opy","patterns":[{"include":"#comments"},{"include":"#multiline-comments"},{"include":"#macros"},{"include":"#fstrings"},{"include":"#strings"},{"include":"#apos-fstrings"},{"include":"#apos-strings"},{"include":"#string-modifiers"},{"include":"#labels"},{"include":"#keywords"},{"include":"#invalid"},{"include":"#numbers"},{"include":"#enums"},{"include":"#classes"},{"include":"#functions"}],"repository":{"apos-fstrings":{"name":"string.quoted.double.overpy","begin":"((?\u003c=f)|(?\u003c=f\\w)|(?\u003c=f\\w\\w))'","end":"'","patterns":[{"name":"constant.character.escape.overpy","match":"\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;)"},{"name":"constant.character.escape.overpy","contentName":"meta.embedded.overpy","begin":"\\{","end":"[\\}']","patterns":[{"include":"$self"}]}]},"apos-strings":{"name":"string.quoted.double.overpy","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.overpy","match":"(\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;))|(\\{\\d*\\})"}]},"classes":{"patterns":[{"name":"variable","match":"\\b[A-Z][a-z_]\\w*\\b"}]},"comments":{"patterns":[{"name":"comment.line.number-sign","match":"#[^!].*$"}]},"enums":{"patterns":[{"name":"constant","match":"\\b[A-Z_\\d]+\\b"}]},"fstrings":{"name":"string.quoted.double.overpy","begin":"((?\u003c=f)|(?\u003c=f\\w)|(?\u003c=f\\w\\w))\"","end":"\"","patterns":[{"name":"constant.character.escape.overpy","match":"\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;)"},{"name":"constant.character.escape.overpy","contentName":"meta.embedded.overpy","begin":"\\{","end":"[\\}\"]","patterns":[{"include":"$self"}]}]},"functions":{"patterns":[{"name":"entity","match":"\\b\\w+(?=\\()"}]},"invalid":{"patterns":[{"name":"invalid.illegal","match":"\\b(False|True|None|Null|class|finally|is|try|from|nonlocal|with|as|yield|assert|except|raise|disabled|import)\\b"}]},"keywords":{"patterns":[{"name":"keyword","match":"\\b(if|else|elif|do|while|for|return|continue|false|true|null|goto|lambda|pass|del|break|switch|case|default|def|rule|settings|globalvar|playervar|subroutine|unsigned|signed|int|float|bool|enum|const|macro|self)\\b"},{"name":"constant","match":"\\b(and|or|not|in)\\b|((\\+|\\-|\\*\\*|\\/|\\%|\\*|\u003c|\u003e)=?)|(\\=)|\\.|((min|max|\\!)\\=)"},{"name":"entity.name.tag","match":"\\b(eventPlayer|attacker|victim|eventDamage|eventHealing|eventWasCriticalHit|eventWasEnvironment|eventWasHealthPack|eventAbility|eventDirection|healee|healer|hostPlayer|localPlayer|loc|RULE_CONDITION|ruleCondition|RULE_START|__\\w+__|[A-Z]|[A-D][A-Z])\\b"},{"name":"markup.list","match":"\\@\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Event )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Team )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Slot )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Hero )\\w+\\b"}]},"labels":{"patterns":[{"name":"constant.other.reference.link","match":"^[ \\t]*(?!(do|else|elif|default)\\b)[A-Za-z\\d_]+(?=:)"},{"name":"constant.other.reference.link","match":"(?\u003c=goto )[A-Za-z\\d_]+"}]},"macros":{"name":"markup.heading","begin":"#!","end":"(?\u003c!\\\\)\\n"},"multiline-comments":{"name":"comment.line","begin":"\\/\\*","end":"\\*\\/"},"numbers":{"patterns":[{"name":"constant.numeric","match":"\\b[+-]?((\\d*\\.)?\\d+|0x[0-9a-fA-F]+)\\b"}]},"string-modifiers":{"patterns":[{"name":"entity.name.tag","match":"\\b[a-z]+(?=[\"'])"}]},"strings":{"name":"string.quoted.double.overpy","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.overpy","match":"(\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;))|(\\{\\d*\\})"}]}}}
1
+ {"name":"OverPy","scopeName":"source.opy","patterns":[{"include":"#comments"},{"include":"#multiline-comments"},{"include":"#macros"},{"include":"#fstrings"},{"include":"#strings"},{"include":"#apos-fstrings"},{"include":"#apos-strings"},{"include":"#string-modifiers"},{"include":"#labels"},{"include":"#keywords"},{"include":"#invalid"},{"include":"#numbers"},{"include":"#enums"},{"include":"#classes"},{"include":"#functions"}],"repository":{"apos-fstrings":{"name":"string.quoted.double.overpy","begin":"((?\u003c=f)|(?\u003c=f\\w)|(?\u003c=f\\w\\w))'","end":"'","patterns":[{"name":"constant.character.escape.overpy","match":"\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;)"},{"name":"constant.character.escape.overpy","contentName":"meta.embedded.overpy","begin":"\\{","end":"[\\}']","patterns":[{"include":"$self"}]}]},"apos-strings":{"name":"string.quoted.double.overpy","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.overpy","match":"(\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;))|(\\{\\d*\\})"}]},"classes":{"patterns":[{"name":"variable","match":"\\b[A-Z][a-z_]\\w*\\b"}]},"comments":{"patterns":[{"name":"comment.line.number-sign","match":"#[^!].*$"}]},"enums":{"patterns":[{"name":"constant","match":"\\b[A-Z_\\d]+\\b"}]},"fstrings":{"name":"string.quoted.double.overpy","begin":"((?\u003c=f)|(?\u003c=f\\w)|(?\u003c=f\\w\\w))\"","end":"\"","patterns":[{"name":"constant.character.escape.overpy","match":"\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;)"},{"name":"constant.character.escape.overpy","contentName":"meta.embedded.overpy","begin":"\\{","end":"[\\}\"]","patterns":[{"include":"$self"}]}]},"functions":{"patterns":[{"name":"entity","match":"\\b\\w+(?=\\()"}]},"invalid":{"patterns":[{"name":"invalid.illegal","match":"\\b(False|True|None|Null|class|finally|is|try|from|nonlocal|with|as|yield|assert|except|raise|disabled|import)\\b"}]},"keywords":{"patterns":[{"name":"keyword","match":"\\b(if|else|elif|do|while|for|return|continue|false|true|null|goto|lambda|pass|del|break|switch|case|default|def|rule|settings|globalvar|playervar|subroutine|unsigned|signed|int|float|bool|enum|const|macro|self)\\b"},{"name":"constant","match":"\\b(and|or|not|in)\\b|((\\+|\\-|\\*\\*|\\/|\\%|\\*|\u003c|\u003e)=?)|(\\=)|\\.|((min|max|\\!)\\=)"},{"name":"entity.name.tag","match":"\\b(eventPlayer|attacker|victim|eventDamage|eventHealing|eventWasCriticalHit|eventWasEnvironment|eventWasHealthPack|eventAbility|eventDirection|healee|healer|hostPlayer|localPlayer|loc|RULE_CONDITION|ruleCondition|RULE_START|__\\w+__|[A-Z]|[A-D][A-Z])\\b"},{"name":"markup.list","match":"\\@\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Event )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Team )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Slot )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Hero )\\w+\\b"}]},"labels":{"patterns":[{"name":"markup.italic","match":"^[ \\t]*(?!(do|else|elif|default)\\b)[A-Za-z\\d_]+(?=:)"},{"name":"markup.italic","match":"(?\u003c=goto )[A-Za-z\\d_]+"}]},"macros":{"name":"markup.heading","begin":"#!","end":"(?\u003c!\\\\)\\n"},"multiline-comments":{"name":"comment.line","begin":"\\/\\*","end":"\\*\\/"},"numbers":{"patterns":[{"name":"constant.numeric","match":"\\b[+-]?((\\d*\\.)?\\d+|0x[0-9a-fA-F]+)\\b"}]},"string-modifiers":{"patterns":[{"name":"entity.name.tag","match":"\\b[a-z]+(?=[\"'])"}]},"strings":{"name":"string.quoted.double.overpy","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.overpy","match":"(\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;))|(\\{\\d*\\})"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Paper Sizes","scopeName":"source.paperspecs","patterns":[{"include":"#main"}],"repository":{"comma":{"name":"keyword.operator.separator.comma.paperspecs","match":"(,)","captures":{"0":{"name":"punctuation.separator.delimiter.comma.paperspecs"},"1":{"name":"sublimelinter.gutter-mark"}}},"main":{"patterns":[{"name":"meta.config.size-name.paperspecs","begin":"(?x)\\A(?!\n\t# Ignore leading whitespace\n\t\\s*\n\n\t# Ignore comments\n\t(?!\\#)\n\n\t(?:\n\t\t# Modern CSV-based paperspecs(5) format\n\t\t(?:(?=\\S)[^,]+)?,\n\t\t|\n\n\t\t# Legacy paperspecs(5) format\n\t\t[^\\s,]+\n\t\t(?:\\s+(?:\\d+(?:\\.\\d+)?|\\.\\d+)){2}\n\t\t\\s+ [A-Za-z]+\n\t\t[ \\t]* $\n\t)\n)","end":"^\\s*(?:([^#\\s,][^,]*)|([^\\s#].*?))(?\u003c!\\s)[ \\t]*$","patterns":[{"include":"etc#comment"}],"endCaptures":{"1":{"name":"entity.name.tag.paper-size.paperspecs"},"2":{"name":"invalid.illegal.syntax.paperspecs"}}},{"name":"meta.config.size-list.paperspecs","begin":"\\A","end":"(?=A)B","patterns":[{"include":"#spec"}]}]},"pageHeight":{"patterns":[{"name":"constant.numeric.page-height.paperspecs","match":"(?:^|\\G)(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?=\\s*(?:$|,))"},{"name":"invalid.illegal.syntax.bad-number.page-height.paperspecs","match":"(?:^|\\G)[^\\s,][^,]*(?=\\s*(?:$|,))"}]},"pageWidth":{"patterns":[{"name":"constant.numeric.page-width.paperspecs","match":"(?:^|\\G)(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?=\\s*(?:$|,))"},{"name":"invalid.illegal.syntax.bad-number.page-width.paperspecs","match":"(?:^|\\G)[^\\s,][^,]*(?=\\s*(?:$|,))"}]},"spec":{"patterns":[{"include":"#specCSV"},{"include":"#specLegacy"}]},"specCSV":{"name":"meta.table.record.paperspecs","match":"(?x)^\n\\s* ([^\\s,][^,]*) (?\u003c!\\s) \\s* (,) # Name\n\\s* ([^\\s,]+) (?\u003c!\\s) \\s* (,) # Page width\n\\s* ([^\\s,]+) (?\u003c!\\s) \\s* (,) # Page height\n\\s* ([^\\s,]+) (?\u003c!\\s) [ \\t]* $ # Unit","captures":{"1":{"name":"entity.name.tag.paper-size.paperspecs"},"2":{"patterns":[{"include":"#comma"}]},"3":{"patterns":[{"include":"#pageWidth"}]},"4":{"patterns":[{"include":"#comma"}]},"5":{"patterns":[{"include":"#pageHeight"}]},"6":{"patterns":[{"include":"#comma"}]},"7":{"patterns":[{"include":"#units"}]}}},"specLegacy":{"name":"meta.table.record.legacy.paperspecs","match":"(?ix)^\n\\s* (\\S+) # Name\n\\s+ (\\d+(?:\\.\\d+)?|\\.\\d+) # Page width\n\\s+ (\\d+(?:\\.\\d+)?|\\.\\d+) # Page height\n\\s+ ([a-z]+) # Unit\n(?=\\s*$)","captures":{"1":{"name":"entity.name.tag.paper-size.paperspecs"},"2":{"patterns":[{"include":"#pageWidth"}]},"3":{"patterns":[{"include":"#pageHeight"}]},"4":{"patterns":[{"include":"#units"}]}}},"units":{"patterns":[{"name":"keyword.other.unit.${1:/downcase}.paperspecs","match":"(?i)(?:^|\\G)(pt|mm|in)(?=\\s*(?:$|,))"},{"name":"invalid.deprecated.unit.legacy.${1:/downcase}.paperspecs","match":"(?i)(?:^|\\G)(cm|ft|m)(?=\\s*(?:$|,))"},{"name":"invalid.illegal.syntax.unknown-unit.paperspecs","match":"[^\\s].*?"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"pl","scopeName":"source.pl","patterns":[{"include":"#toplevel-statements"},{"include":"#operators"}],"repository":{"attributes":{"name":"meta.attribute.block.pl","begin":"(\\[\\[)","end":"(\\]\\])","patterns":[{"match":"\\b([a-zA-Z_][a-zA-Z0-9_:]*)\\b","captures":{"1":{"name":"entity.name.attribute.pl"}}},{"name":"meta.attribute.arguments.pl","begin":"\\(","end":"\\)","patterns":[{"include":"#statements"},{"name":"punctuation.separator.argument.pl","match":","}]},{"name":"punctuation.separator.attribute.pl","match":","}],"beginCaptures":{"1":{"name":"punctuation.bracket.square.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.square.close.pl"}}},"binary-integer":{"name":"constant.numeric.integer.binary.pl","match":"\\b(0(b|B)[01]+)\\b"},"character-literal":{"name":"string.quoted.single.pl","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.pl","match":"\\\\."}]},"comment":{"name":"comment.block.pl","begin":"\\/\\*","end":"\\*\\/"},"decimal-integer":{"name":"constant.numeric.integer.decimal.pl","match":"\\b(0|[1-9][0-9]*)\\b"},"else-statement":{"name":"keyword.control.else.pl","match":"\\b(else)\\b","captures":{"1":{"name":"keyword.control.else.pl"}}},"enum-definition":{"contentName":"meta.enum.pl","begin":"(enum)\\s+([a-zA-Z0-9_]+)\\s*((\\:)\\s*([a-zA-Z0-9_]+))\\s*(\\{)","end":"(\\})\\s*","patterns":[{"include":"#enum-member"}],"beginCaptures":{"1":{"name":"keyword.control.enum.pl"},"2":{"name":"entity.name.type.enum.pl"},"5":{"name":"entity.name.type.base.pl"},"6":{"name":"punctuation.bracket.curly.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.curly.close.pl"}}},"enum-member":{"match":"([a-zA-Z_][a-zA-Z0-9_]*)\\s*((=)\\s*([a-zA-Z0-9_]+)(\\s*\\.\\.\\.\\s*([a-zA-Z0-9_]+))?)?(,)?","captures":{"1":{"name":"variable.other.enum-member.pl"},"3":{"name":"keyword.operator.assignment.pl"},"4":{"patterns":[{"include":"#literal"}]},"6":{"patterns":[{"include":"#literal"}]},"7":{"name":"punctuation.separator.comma.pl"}}},"floating-point-number":{"name":"constant.numeric.float.pl","match":"\\b([+-]?([0-9]+\\.[0-9]*|[0-9]*\\.[0-9]+)([eE][+-]?[0-9]+)?)\\b"},"for-statement":{"name":"meta.for.pl","begin":"\\b(for)\\s*(\\()","end":"(\\))","patterns":[{"include":"#type-usage"},{"include":"#literal"},{"include":"#identifier"},{"include":"#operators"}],"beginCaptures":{"1":{"name":"keyword.control.for.pl"},"2":{"name":"punctuation.bracket.round.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.round.close.pl"},"2":{"name":"punctuation.bracket.curly.open.pl"}}},"function-definition":{"name":"meta.function.definition.pl","begin":"\\b(fn)\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\s*(\\()","end":"(\\))","patterns":[{"include":"#variable-definition"},{"include":"#statements"}],"beginCaptures":{"1":{"name":"keyword.control.function.pl"},"2":{"name":"entity.name.function.pl"},"3":{"name":"punctuation.bracket.round.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.round.close.pl"},"2":{"name":"punctuation.bracket.curly.open.pl"}}},"hexadecimal-integer":{"name":"constant.numeric.integer.hexadecimal.pl","match":"\\b(0(x|X)[0-9a-fA-F]+)\\b"},"identifier":{"name":"variable.other.identifier.pl","match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b"},"if-statement":{"name":"meta.if.pl","begin":"\\b(if)\\s*(\\()","end":"(\\))","patterns":[{"include":"#literal"},{"include":"#identifier"},{"include":"#operators"}],"beginCaptures":{"1":{"name":"keyword.control.if.pl"},"2":{"name":"punctuation.bracket.round.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.round.close.pl"},"2":{"name":"punctuation.bracket.curly.open.pl"}}},"import-statement":{"match":"\\s*(import)\\s*([a-zA-Z0-9_\\.]+|\\*)\\s*((from)\\s*([a-zA-Z0-9_\\.]+))?\\s*((as)?\\s*([a-zA-Z0-9_\\.]+))","captures":{"1":{"name":"keyword.control.import.pl"},"2":{"name":"variable.other.import.pl"},"4":{"name":"keyword.control.from.pl"},"5":{"name":"variable.other.import.pl"},"7":{"name":"keyword.control.as.pl"},"8":{"name":"variable.other.import.pl"}}},"keywords":{"patterns":[{"name":"keyword.control.pl","match":"\\b(break|continue|return|catch|try|if|else|match)\\b"}]},"line-comment":{"name":"comment.line.double-slash.pl","match":"\\/\\/.*"},"literal":{"patterns":[{"include":"#decimal-integer"},{"include":"#hexadecimal-integer"},{"include":"#binary-integer"},{"include":"#octal-integer"},{"include":"#floating-point-number"},{"include":"#string-literal"},{"include":"#character-literal"},{"name":"constant.language.boolean.pl","match":"\\b(true|false|null)\\b"},{"name":"constant.language.special.pl","match":"\\b(this|parent|\\$)\\b"}]},"match-statement":{"name":"meta.match.pl","begin":"\\b(match)\\s*(\\()","end":"(\\))","patterns":[{"include":"#type-usage"},{"include":"#literal"},{"include":"#identifier"},{"include":"#operators"}],"beginCaptures":{"1":{"name":"keyword.control.match.pl"},"2":{"name":"punctuation.bracket.round.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.round.close.pl"},"2":{"name":"punctuation.bracket.curly.open.pl"}}},"namespace-definition":{"name":"meta.namespace.pl","begin":"\\b(namespace)\\s+((auto)\\s+)?(([a-zA-Z_][a-zA-Z0-9_:]*))+\\s*(\\{)","end":"(\\})","patterns":[{"include":"#toplevel-statements"}],"beginCaptures":{"1":{"name":"keyword.control.namespace.pl"},"3":{"name":"storage.type.builtin.pl"},"5":{"name":"entity.name.namespace.pl"},"6":{"name":"punctuation.bracket.curly.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.curly.close.pl"}}},"octal-integer":{"name":"constant.numeric.integer.octal.pl","match":"\\b(0(o|O)[0-7]+)\\b"},"operators":{"patterns":[{"name":"keyword.operator.arithmetic.addition.pl","match":"\\+"},{"name":"keyword.operator.arithmetic.subtraction.pl","match":"-"},{"name":"keyword.operator.arithmetic.multiplication.pl","match":"\\*"},{"name":"keyword.operator.arithmetic.division.pl","match":"\\/"},{"name":"keyword.operator.arithmetic.modulus.pl","match":"%"},{"name":"keyword.operator.comparison.pl","match":"\u003c=|\u003e=|\u003c|\u003e|==|!=|\u0026\u0026|\\|\\||!"},{"name":"keyword.operator.bitwise.pl","match":"\u0026|\\||\\^"},{"name":"keyword.operator.special.pl","match":"@"},{"name":"keyword.operator.range.pl","match":"\\.\\.\\."},{"name":"punctuation.bracket.round.pl","match":"\\(|\\)"},{"name":"punctuation.bracket.square.pl","match":"\\[|\\]"},{"name":"punctuation.separator.period.pl","match":"\\."},{"name":"punctuation.separator.comma.pl","match":","},{"name":"punctuation.terminator.semicolon.pl","match":";"},{"name":"keyword.operator.ternary.question.pl","match":"\\?"},{"name":"keyword.operator.ternary.colon.pl","match":":"},{"name":"keyword.operator.function.pl","match":"sizeof|addressof|typenameof"},{"name":"keyword.operator.assignment.pl","match":"\\+=|-=|\\*=|/=|%=|\u0026=|\\^=|\\|="}]},"padding-definition":{"name":"keyword.other.padding.pl","match":"padding"},"preprocessor-directive":{"match":"^\\s*(#[a-zA-Z0-9_]+)\\s*(.*)$","captures":{"1":{"name":"keyword.control.import.preprocessor.pl."},"2":{"name":"string.unquoted.directive.pl"}}},"scope":{"name":"meta.scope.pl","begin":"\\s*(\\{)","end":"(\\})","patterns":[{"include":"#statements"}],"beginCaptures":{"1":{"name":"punctuation.bracket.curly.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.curly.close.pl"}}},"statements":{"patterns":[{"include":"#attributes"},{"include":"#variable-definition"},{"include":"#padding-definition"},{"include":"#comment"},{"include":"#line-comment"},{"include":"#literal"},{"include":"#if-statement"},{"include":"#else-statement"},{"include":"#for-statement"},{"include":"#while-statement"},{"include":"#match-statement"},{"include":"#try-catch-statement"},{"include":"#operators"},{"include":"#identifier"},{"include":"#scope"},{"name":"punctuation.terminator.semicolon.pl","match":"\\;"}]},"string-literal":{"name":"string.quoted.double.pl","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.pl","match":"\\\\."}]},"struct-definition":{"contentName":"meta.struct.pl","begin":"(struct|union|bitfield)\\s+([a-zA-Z0-9_]+)(\\s*\u003c([^\\\u003e]*)\u003e)?\\s*((\\:)\\s*([a-zA-Z0-9_]+))?\\s*(\\{)","end":"(\\})\\s*","patterns":[{"include":"#statements"}],"beginCaptures":{"1":{"name":"keyword.control.struct.pl"},"2":{"name":"entity.name.type.struct.pl"},"4":{"patterns":[{"include":"#type-usage"},{"include":"#variable-definition"}]},"7":{"name":"entity.name.type.base.pl"},"8":{"name":"punctuation.bracket.curly.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.curly.close.pl"}}},"toplevel-statements":{"patterns":[{"include":"#namespace-definition"},{"include":"#import-statement"},{"include":"#preprocessor-directive"},{"include":"#using-declaration"},{"include":"#struct-definition"},{"include":"#enum-definition"},{"include":"#function-definition"},{"include":"#statements"}]},"try-catch-statement":{"name":"keyword.control.try-catch.pl","match":"\\b((try)|(catch))\\b","captures":{"2":{"name":"keyword.control.try.pl"},"3":{"name":"keyword.control.catch.pl"}}},"type-usage":{"match":"\\b(const|ref|be|le\\s+)?((u|s)(8|16|24|32|48|64|96|128)|(float|double|str|auto|bool|char|char16|unsigned|signed)|([A-Za-z_][A-Za-z0-9_]*))\\b","captures":{"1":{"name":"keyword.other.ref.pl"},"2":{"name":"storage.type.builtin.pl"},"5":{"name":"storage.type.builtin.pl"}}},"using-declaration":{"match":"\\b(using)\\s+([a-zA-Z0-9_]+)\\s*((=)\\s*([a-zA-Z0-9_]+))?","captures":{"1":{"name":"keyword.control.using.pl"},"2":{"name":"variable.other.using.pl"},"5":{"patterns":[{"include":"#type-usage"}]}}},"variable-definition":{"match":"\\s*(ref\\s+)?((?!else)\\b[a-zA-Z_][a-zA-Z0-9_]*)\\s+([a-zA-Z_][a-zA-Z0-9_]*)(\\s+(in|out))?","captures":{"1":{"patterns":[{"include":"#type-usage"}]},"2":{"patterns":[{"include":"#type-usage"}]},"3":{"name":"variable.other.definition.pl"},"5":{"name":"keyword.other.inout.pl"}}},"while-statement":{"name":"meta.while.pl","begin":"\\b(while)\\s*(\\()","end":"(\\))","patterns":[{"include":"#type-usage"},{"include":"#literal"},{"include":"#identifier"},{"include":"#operators"}],"beginCaptures":{"1":{"name":"keyword.control.while.pl"},"2":{"name":"punctuation.bracket.round.open.pl"}},"endCaptures":{"1":{"name":"punctuation.bracket.round.close.pl"},"2":{"name":"punctuation.bracket.curly.open.pl"}}}}}
@@ -1 +1 @@
1
- {"name":"PNLGRP","scopeName":"source.pnlgrp","patterns":[{"include":"#comments"},{"include":"#symbols"},{"include":"#directives"},{"include":"#tags"}],"repository":{"comments":{"patterns":[{"name":"comment.line.pnlgrp","begin":"^(\\.\\*).*","end":"\n"}]},"directives":{"patterns":[{"name":"keyword.other.pnlgrp.directives.imbed","begin":"(?i)(?\u003c=\\.)(IM)[ ]","end":"\n","patterns":[{"name":"string.other.pnlgrp.directives.imbed.member","match":"(?i)([A-Z][A-Z0-9#@$]{1,9}[ ]*$)"}]}]},"symbols":{"patterns":[{"name":"support.function.pnlgrp","match":"(?i)(\u0026(AMP|COLON|CONT|MSG\\(.*\\)|PERIOD|SLR)\\.?)"}]},"tags":{"patterns":[{"name":"keyword.other.pnlgrp.appfmt","begin":"(?i)(?\u003c=(:(APPFMT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.appfmt","match":"(?i)\\b(:(APPFMT)[ ])"},{"name":"support.function.pnlgrp.appfmt.attribute.name","match":"(?i)\\b(VAR|WIDTH|DEPTH|USREXIT)[=]"},{"name":"support.variable.pnlgrp.appfmt.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32})[']|[0-9]{1,2])"}]},{"name":"keyword.other.pnlgrp.botinst","begin":"(?i)(?\u003c=(:(BOTINST)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.botinst","match":"(?i)\\b(:(BOTINST)[ ])"},{"name":"support.function.pnlgrp.botinst.attribute.name","match":"(?i)\\b(INST)[=]"},{"name":"support.variable.pnlgrp.botinst.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32})['])"}]},{"name":"keyword.other.pnlgrp.check","begin":"(?i)(?\u003c=(:(CHECK)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.check","match":"(?i)\\b(:(CHECK)[ ])"},{"name":"support.function.pnlgrp.check.attribute.name","match":"(?i)\\b(MSGID|MSGF|RANGE|REL|VALUES)[=]"},{"name":"support.variable.pnlgrp.check.attribute.value","match":"(?i)([A-F]{3}[0-9A-F]{4}|['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}['])"}]},{"name":"keyword.other.pnlgrp.class","begin":"(?i)(?\u003c=(:(CLASS)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.class","match":"(?i)\\b(:(CLASS)[ ])"},{"name":"support.function.pnlgrp.class.attribute.name","match":"(?i)\\b(NAME|BASETYPE|WIDTH|CHRID|SHIFT|CASE|BLANKS|SUBST|BIDI|CONTXTREV|NBRSHAPE|SYMSWAP)[=]"},{"name":"support.variable.pnlgrp.class.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.cmdline","begin":"(?i)(?\u003c=(:(CMDLINE)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.cmdline","match":"(?i)\\b(:(CMDLINE)[ ])"},{"name":"support.function.pnlgrp.cmdline.attribute.name","match":"(?i)\\b(SIZE|NAME)[=]"},{"name":"support.variable.pnlgrp.cmdline.attribute.value","match":"(?i)(SHORT|LONG|[A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.cond","begin":"(?i)(?\u003c=(:(COND)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.cond","match":"(?i)\\b(:(COND)[ ])"},{"name":"support.function.pnlgrp.cond.attribute.name","match":"(?i)\\b(NAME|EXPR|EVAL)[=]"},{"name":"support.variable.pnlgrp.cond.attribute.value","match":"(?i)([A-Z0-9]{1,32}|['](.*)[']|ALWAYS|ONCE)"}]},{"name":"keyword.other.pnlgrp.data","begin":"(?i)(?\u003c=(:(DATA)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.data","match":"(?i)\\b(:(DATA)[ ])"},{"name":"support.function.pnlgrp.data.attribute.name","match":"(?i)\\b((DEPTH|HELP|BOTSEP|SCROLL|LAYOUT|MAXHEAD|BODYSEP|TYPE)[=]|COMPACT)"},{"name":"support.variable.pnlgrp.data.attribute.value","match":"(?i)(([A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9})|SPACE|NONE|NO|YES|HORIZ|SPACE|INDENT|BOTH|NONE|PROLOG|([0-4]{1})|'\\*')"}]},{"name":"keyword.other.pnlgrp.datac","begin":"(?i)(?\u003c=(:(DATAC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datac","match":"(?i)\\b(:(DATAC)[ ])"},{"name":"support.function.pnlgrp.datac.attribute.name","match":"(?i)\\b(CHOICE)[=]"},{"name":"support.variable.pnlgrp.datac.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.datacol","begin":"(?i)(?\u003c=(:(DATACOL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datacol","match":"(?i)\\b(:(DATACOL)[ ])"},{"name":"support.function.pnlgrp.datacol.attribute.name","match":"(?i)\\b(WIDTH)[=]"},{"name":"support.variable.pnlgrp.datacol.attribute.value","match":"(?i)([0-9]{1,3}|'\\*')"}]},{"name":"keyword.other.pnlgrp.datagrp","begin":"(?i)(?\u003c=(:(DATAGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datagrp","match":"(?i)\\b(:(DATAGRP)[ ])"},{"name":"support.function.pnlgrp.datagrp.attribute.name","match":"(?i)\\b((HELP|NAME|GRPSEP|COND)[=]|COMPACT)"},{"name":"support.variable.pnlgrp.datagrp.attribute.value","match":"(?i)(([A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9})|([A-Z0-9]{1,32})|INDENT|QINDENT|NONE)"}]},{"name":"keyword.other.pnlgrp.datai","begin":"(?i)(?\u003c=(:(DATAI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datai","match":"(?i)\\b(:(DATAI)[ ])"},{"name":"support.function.pnlgrp.datai.attribute.name","match":"(?i)\\b(VAR|USAGE|HELP|NAME|PMTLOC|CHCLOC|ALIGN|JUSTIFY|REQUIRED|CSRLOC|DISPLAY|AUTOENTR|COND|PROMPT|DSPVALUE)[=]"},{"name":"support.variable.pnlgrp.datai.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|(['][A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9}['])|OUT|INOUT|BEFORE|ABOVE|AFTER|LEFT|RIGHT|START|END|NO|YES|'\\*')"}]},{"name":"keyword.other.pnlgrp.dataix","begin":"(?i)(?\u003c=(:(DATAIX)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.dataix","match":"(?i)\\b(:(DATAIX)[ ])"},{"name":"support.function.pnlgrp.dataix.attribute.name","match":"(?i)\\b(VAR|USAGE|NEWLINE|ITEMSEP|ALIGN|JUSTIFY|REQUIRED|DISPLAY|PROMPT|DSPVALUE|AUTOENTR)[=]"},{"name":"support.variable.pnlgrp.dataix.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|OUT|INOUT|CALC|NO|YES|[0-9]+|LEFT|RIGHT|START|END|['].*['])"}]},{"name":"keyword.other.pnlgrp.dataslt","begin":"(?i)(?\u003c=(:(DATASLT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.dataslt","match":"(?i)\\b(:(DATASLT)[ ])"},{"name":"support.function.pnlgrp.dataslt.attribute.name","match":"(?i)\\b(TYPE|VAR|HELP|NAME|PMTLOC|REQUIRED|AUTOENTR|COND)[=]"},{"name":"support.variable.pnlgrp.dataslt.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|SINGLE|MULTI|BEFORE|ABOVE|NO|YES)"}]},{"name":"keyword.other.pnlgrp.datasltc","begin":"(?i)(?\u003c=(:(DATASLTC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datasltc","match":"(?i)\\b(:(DATASLTC)[ ])"},{"name":"support.function.pnlgrp.datasltc.attribute.name","match":"(?i)\\b(CHOICE|OPTION|VAR|HELP|COND|AVAIL|AVLMSGID|AVLMSGF)[=]"},{"name":"support.variable.pnlgrp.datasltc.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|([0-9]{1,2})|([A-F]{3}[0-9A-F]{4})|(['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}[']))"}]},{"name":"keyword.other.pnlgrp.fig","begin":"(?i)(?\u003c=(:(FIG)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.fig","match":"(?i)\\b(:(FIG)[ ])"},{"name":"support.function.pnlgrp.fig.attribute.name","match":"(?i)\\b(FRAME)[=]"},{"name":"support.variable.pnlgrp.fig.attribute.value","match":"(?i)(RULE|NONE)"}]},{"name":"keyword.other.pnlgrp.help","begin":"(?i)(?\u003c=(:(HELP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.help","match":"(?i)\\b(:(HELP)[ ])"},{"name":"support.function.pnlgrp.help.attribute.name","match":"(?i)\\b(NAME|WIDTH|DEPTH)[=]"},{"name":"support.variable.pnlgrp.help.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.imhelp","begin":"(?i)(?\u003c=(:(IMHELP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.imhelp","match":"(?i)\\b(:(IMHELP)[ ])"},{"name":"support.function.pnlgrp.imhelp.attribute.name","match":"(?i)\\b(NAME)[=]"},{"name":"support.variable.pnlgrp.imhelp.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.import","begin":"(?i)(?\u003c=(:(IMPORT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.import","match":"(?i)\\b(:(IMPORT)[ ])"},{"name":"support.function.pnlgrp.import.attribute.name","match":"(?i)\\b(NEWNAME|NAME|PNLGRP|PRDLIB)[=]"},{"name":"support.variable.pnlgrp.import.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.info","begin":"(?i)(?\u003c=(:(INFO)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.info","match":"(?i)\\b(:(INFO)[ ])"},{"name":"support.function.pnlgrp.info.attribute.name","match":"(?i)\\b(DEPTH|BOTSEP|SCROLL|TYPE)[=]"},{"name":"support.variable.pnlgrp.info.attribute.value","match":"(?i)([0-9]{2,2}|[']\\*[']|SPACE|NONE|RULE|YES|NO|NORMAL|PROLOG)"}]},{"name":"keyword.other.pnlgrp.isch","begin":"(?i)(?\u003c=(:(ISCH)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.isch","match":"(?i)\\b(:(ISCH)[ ])"},{"name":"support.function.pnlgrp.isch.attribute.name","match":"(?i)\\b(ROOTS)[=]"},{"name":"support.variable.pnlgrp.isch.attribute.value","match":"(?i)(['](([A-Z0-9]{1,20}[ ]*){1,50})['])"}]},{"name":"keyword.other.pnlgrp.ischsubt","begin":"(?i)(?\u003c=(:(ISCHSUBT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ischsubt","match":"(?i)\\b(:(ISCHSUBT)[ ])"},{"name":"support.function.pnlgrp.ischsubt.attribute.name","match":"(?i)\\b(TOPICS)[=]"},{"name":"support.variable.pnlgrp.ischsubt.attribute.value","match":"(?i)(['](([A-Z0-9_\\/]{1,32}[ ]*){1,16})['])"}]},{"name":"keyword.other.pnlgrp.ischsyn","begin":"(?i)(?\u003c=(:(ISCHSYN)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ischsyn","match":"(?i)\\b(:(ISCHSYN)[ ])"},{"name":"support.function.pnlgrp.ischsyn.attribute.name","match":"(?i)\\b(ROOT)[=]"},{"name":"support.variable.pnlgrp.ischsyn.attribute.value","match":"(?i)(['](([A-Z0-9]{1,20}){1})['])"}]},{"name":"keyword.other.pnlgrp.keyi","begin":"(?i)(?\u003c=(:(KEYI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.keyi","match":"(?i)\\b(:(KEYI)[ ])"},{"name":"support.function.pnlgrp.keyi.attribute.name","match":"(?i)\\b(KEY|HELP|ACTION|COND|VARUPD|PRIORITY)[=]"},{"name":"support.variable.pnlgrp.keyi.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32})['])"}]},{"name":"keyword.other.pnlgrp.keyl","begin":"(?i)(?\u003c=(:(KEYL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.keyl","match":"(?i)\\b(:(KEYL)[ ])"},{"name":"support.function.pnlgrp.keyl.attribute.name","match":"(?i)\\b(NAME|HELP)[=]"},{"name":"support.variable.pnlgrp.keyl.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.link","begin":"(?i)(?\u003c=(:(LINK)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.link","match":"(?i)\\b(:(LINK)[ ])"},{"name":"support.function.pnlgrp.link.attribute.name","match":"(?i)\\b(PERFORM|UNLESS[1-4]|THENDO[1-4]|LINKWHEN)[=]"},{"name":"support.variable.pnlgrp.link.attribute.value","match":"(?i)'((DSPHELP ([A-Z0-9_/]{1,32})([ ]+[A-Z][A-Z0-9@#$]{0,9}/[A-Z][A-Z0-9@#$]{0,9}([ ]+[A-Z][A-Z0-9@#$]{0,9})?)?)|(CHKOBJ\\(\"[A-Z][A-Z0-9@#$]{0,9}\",\"\\*[A-Z]{0,9}\"(,\"(\\*(CHANGE|ALL|USE|EXCLUDE|AUTLMGT)|(\\*(OBJEXIST|OBJMGT|OBJOPR|OBJALTER|OBJREF|ADD|DLT|READ|UPD|EXECUTE)[ ]*){1,7})?\")\\))|(CHKPGM\\(\"(\\*LIBL/|[A-Z][A-Z0-9@#$]{0,9}/)?[A-Z][A-Z0-9@#$]{0,9}\"\\))|(CHKUSRCLS\\(\\*(SECOFR|SECADM|PGMR|SYSOPR|USER)\\)))'"}]},{"name":"keyword.other.pnlgrp.list_tags","begin":"(?i)(?\u003c=(:(DL|OL|SL|UL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.list_tags","match":"(?i)\\b(:(DL|OL|SL|UL)[ ])"},{"name":"support.function.pnlgrp.list_tags.attribute.name","match":"(?i)\\b(COMPACT)"}]},{"name":"keyword.other.pnlgrp.list","begin":"(?i)(?\u003c=(:(LIST)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.list","match":"(?i)\\b(:(LIST)[ ])"},{"name":"support.function.pnlgrp.list.attribute.name","match":"(?i)\\b(DEPTH|LISTDEF|BOTSEP|SCROLL|MAXHEAD|BODYSEP|VIEW|ACTOR|EXTACT|SELECT|MAXACTL|PARMS|HEADSIZE)[=]"},{"name":"support.variable.pnlgrp.list.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']\\*[']|SPACE|NONE|RULE|YES|NO|[0-4]{1}|INDENT|BOTH|UIM|CALLER|SINGLE|MULTI)"}]},{"name":"keyword.other.pnlgrp.listact","begin":"(?i)(?\u003c=(:(LISTACT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listact","match":"(?i)\\b(:(LISTACT)[ ])"},{"name":"support.function.pnlgrp.listact.attribute.name","match":"(?i)\\b(HELP|OPTION|ACTFOR|CONFIRM|ENTER|EXTENTER|PROMPT|EXTPROMPT|NOCMD|NOEXT|USREXIT|EXTMSGID|EXTMSGF|COND|AVAIL|AVLMSGID|AVLMSGF)[=]"},{"name":"support.variable.pnlgrp.listact.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)[']|[0-9]{1,3}|BOTH|LISTE|EXACTE|['](.*)[']|ENTER|PROMPT|MSG)"}]},{"name":"keyword.other.pnlgrp.listcol","begin":"(?i)(?\u003c=(:(LISTCOL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listcol","match":"(?i)\\b(:(LISTCOL)[ ])"},{"name":"support.function.pnlgrp.listcol.attribute.name","match":"(?i)\\b(VAR|MAXWIDTH|USAGE|HELP|COL|NAME|JUSTIFY|EXTACT|PROMPT|DSPVALUE|COLHEAD|DISPLAY|AUTOSKIP)[=]"},{"name":"support.variable.pnlgrp.listcol.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)[']|OUT|INOUT|LEFT|RIGHT|START|END|NO|YES|['](.*)['])"}]},{"name":"keyword.other.pnlgrp.listdef","begin":"(?i)(?\u003c=(:(LISTDEF)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listdef","match":"(?i)\\b(:(LISTDEF)[ ])"},{"name":"support.function.pnlgrp.listdef.attribute.name","match":"(?i)\\b(NAME|VARS|CHGVAR|MSGID|MSGIDVAR|MSGF|PRTFLAG|EMPHASIS|PROTECT)[=]"},{"name":"support.variable.pnlgrp.listdef.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.listgrp","begin":"(?i)(?\u003c=(:(LISTGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listgrp","match":"(?i)\\b(:(LISTGRP)[ ])"},{"name":"support.function.pnlgrp.listgrp.attribute.name","match":"(?i)\\b(COL|HELP|NAME|COLSEP)[=]"},{"name":"support.variable.pnlgrp.listgrp.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)[']|\\*)"}]},{"name":"keyword.other.pnlgrp.listview","begin":"(?i)(?\u003c=(:(LISTVIEW)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listview","match":"(?i)\\b(:(LISTVIEW)[ ])"},{"name":"support.function.pnlgrp.listview.attribute.name","match":"(?i)\\b(COLS|LAYOUT)[=]"},{"name":"support.variable.pnlgrp.listview.attribute.value","match":"(?i)([']([A-Z0-9]{1,32}|\\s)+[']|[0-9]{1,2})"}]},{"name":"keyword.other.pnlgrp.mbar","begin":"(?i)(?\u003c=(:(MBAR)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.mbar","match":"(?i)\\b(:(MBAR)[ ])"},{"name":"support.function.pnlgrp.mbar.attribute.name","match":"(?i)\\b(NAME|HELP|MAXBARL)[=]"},{"name":"support.variable.pnlgrp.mbar.attribute.value","match":"(?i)([A-Z]{1}[A-Z0-9]{0,9}|[A-Z/_]{1}[A-Z0-9/_]{1,31}|[123])"}]},{"name":"keyword.other.pnlgrp.mbarc","begin":"(?i)(?\u003c=(:(MBARC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.mbarc","match":"(?i)\\b(:(MBARC)[ ])"},{"name":"support.function.pnlgrp.mbarc.attribute.name","match":"(?i)\\b(HELP)[=]"},{"name":"support.variable.pnlgrp.mbarc.attribute.value","match":"(?i)([A-Z/_]{1}[A-Z0-9/_]{1,31})"}]},{"name":"keyword.other.pnlgrp.menu","begin":"(?i)(?\u003c=(:(MENU)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.menu","match":"(?i)\\b(:(MENU)[ ])"},{"name":"support.function.pnlgrp.menu.attribute.name","match":"(?i)\\b(DEPTH|BOTSEP|SCROLL)[=]"},{"name":"support.variable.pnlgrp.menu.attribute.value","match":"(?i)(([0-9]{1,2}|'\\*')|(SPACE|NONE|RULE)|(NO|YES))"}]},{"name":"keyword.other.pnlgrp.menugrp","begin":"(?i)(?\u003c=(:(MENUGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.menugrp","match":"(?i)\\b(:(MENUGRP)[ ])"},{"name":"support.function.pnlgrp.menugrp.attribute.name","match":"(?i)\\b(COND)[=]"},{"name":"support.variable.pnlgrp.menugrp.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.menui","begin":"(?i)(?\u003c=(:(MENUI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.menui","match":"(?i)\\b(:(MENUI)[ ])"},{"name":"support.function.pnlgrp.menui.attribute.name","match":"(?i)\\b(HELP|OPTION|ACTION|NAME|COND|AVAIL|AVLMSGID|AVLMSGF|MARKER|ITEM)[=]"},{"name":"support.variable.pnlgrp.menui.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[0-9]{1,3}|[']((CALL .*)|CANCEL|(CMD .*)|EXIT|(MENU .* (NO)?RTNPNT)|RETURN)['])"}]},{"name":"keyword.other.pnlgrp.mi","begin":"(?i)(?\u003c=(:(MI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.mi","match":"(?i)\\b(:(MI)[ ])"},{"name":"support.function.pnlgrp.mi.attribute.name","match":"(?i)\\b(HELP|OPTION|ACTION|NAME|COND|AVAIL|AVLMSGID|AVLMSGF|MARKER|ITEM)[=]"},{"name":"support.variable.pnlgrp.mi.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[0-9]{1,3}|[']((CALL .*)|CANCEL|(CMD .*)|EXIT|(MENU .* (NO)?RTNPNT)|RETURN)['])"}]},{"name":"keyword.other.pnlgrp.optline","begin":"(?i)(?\u003c=(:(OPTLINE)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.optline","match":"(?i)\\b(:(OPTLINE)[ ])"},{"name":"support.function.pnlgrp.optline.attribute.name","match":"(?i)\\b(NAME)[=]"},{"name":"support.variable.pnlgrp.optline.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.panel","begin":"(?i)(?\u003c=(:(PANEL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.panel","match":"(?i)\\b(:(PANEL)[ ])"},{"name":"support.function.pnlgrp.panel.attribute.name","match":"(?i)\\b(NAME|HELP|KEYL|PANELID|TITLE|WIDTH|DEPTH|MBAR|MSGL|TOPSEP|DATE|TIME|ENBGUI|ENTER|SELECT|USREXIT|TT|CSRVAR|CSRPOS|CSRLST|CSREID|CSRNAME)[=]"},{"name":"support.variable.pnlgrp.panel.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.pdfld","begin":"(?i)(?\u003c=(:(PDFLD)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pdfld","match":"(?i)\\b(:(PDFLD)[ ])"},{"name":"support.function.pnlgrp.pdfld.attribute.name","match":"(?i)\\b(NAME)[=]"},{"name":"support.variable.pnlgrp.pdfld.attribute.value","match":"(?i)([A-Z]{1}[A-Z0-9]{0,9})"}]},{"name":"keyword.other.pnlgrp.pdfldc","begin":"(?i)(?\u003c=(:(PDFLDC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pdfldc","match":"(?i)\\b(:(PDFLDC)[ ])"},{"name":"support.function.pnlgrp.pdfldc.attribute.name","match":"(?i)\\b(OPTION|HELP|ACTION|ACTFOR|CONFIRM|USREXIT|VARUPD|COND|AVAIL|AVLMSGID|AVLMSGF|CHOICE)[=]"},{"name":"support.variable.pnlgrp.pdfldc.attribute.value","match":"(?i)([0-9]{1,2}|[A-Z]{1}[A-Z0-9]{0,9}|PANEL|LIST|['](CALL .*)[']|[A-Z/_]{1}[A-Z0-9/_]{1,31}|[A-F]{3}[0-9A-F]{4}|['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}['])"}]},{"name":"keyword.other.pnlgrp.pk","begin":"(?i)(?\u003c=(:(PK)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pk.attribute.name","match":"(?i)\\b(DEF)"}]},{"name":"keyword.other.pnlgrp.pnlgrp","begin":"(?i)(?\u003c=(:(PNLGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pnlgrp","match":"(?i)\\b(:(PNLGRP)[ ])"},{"name":"support.function.pnlgrp.pnlgrp.attribute.name","match":"(?i)\\b(SCHIDX|ENBGUI|TXTMODE|TXTCHRID|BIDI|NBRSHAPE|DFTMSGF|SUBMSGF)[=]"},{"name":"support.variable.pnlgrp.pnlgrp.attribute.value","match":"(?i)(([A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9})|NONE|NO|YES|SBCS|DBCS|LTR|RTL|ARABIC|HINDI|('[0-9]{2,5}'))"}]},{"name":"keyword.other.pnlgrp.prthead","begin":"(?i)(?\u003c=(:(PRTHEAD)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.prthead","match":"(?i)\\b(:(PRTHEAD)[ ])"},{"name":"support.function.pnlgrp.prthead.attribute.name","match":"(?i)\\b(NAME|PRODINFO|PRTDATE|PRTTIME|TITLE|TT|WIDTH|OBJ|OBJLIB)[=]"},{"name":"support.variable.pnlgrp.prthead.attribute.value","match":"(?i)([A-Z0-9]{1,32}|80|132)"}]},{"name":"keyword.other.pnlgrp.prtpnl","begin":"(?i)(?\u003c=(:(PRTPNL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.prtpnl","match":"(?i)\\b(:(PRTPNL)[ ])"},{"name":"support.function.pnlgrp.prtpnl.attribute.name","match":"(?i)\\b(NAME|TITLE|TT|WIDTH)[=]"},{"name":"support.variable.pnlgrp.prtpnl.attribute.value","match":"(?i)([A-Z0-9]{1,32}|80|132)"}]},{"name":"keyword.other.pnlgrp.text","begin":"(?i)(?\u003c=(:(TEXT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.text","match":"(?i)\\b(:(TEXT)[ ])"},{"name":"support.function.pnlgrp.text.attribute.name","match":"(?i)\\b(VAR|USREXIT|ROW|COL)[=]"},{"name":"support.variable.pnlgrp.text.attribute.value","match":"(?i)([A-Z]{1}[A-Z0-9]{0,9}|['](CALL .*)['])"}]},{"name":"keyword.other.pnlgrp.ti","begin":"(?i)(?\u003c=(:(TI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ti","match":"(?i)\\b(:(TI)[ ])"},{"name":"support.function.pnlgrp.ti.attribute.name","match":"(?i)\\b(VALUE)[=]"},{"name":"support.variable.pnlgrp.ti.attribute.value","match":"(?i)(['](.+)['])"}]},{"name":"keyword.other.pnlgrp.tl","begin":"(?i)(?\u003c=(:(TL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.tl","match":"(?i)\\b(:(TL)[ ])"},{"name":"support.function.pnlgrp.tl.attribute.name","match":"(?i)\\b(CASE|MSGID|MSGF)[=]"},{"name":"support.variable.pnlgrp.tl.attribute.value","match":"(?i)(UPPER|MIXED|[A-F]{3}[0-9A-F]{4}|['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}['])"}]},{"name":"keyword.other.pnlgrp.topinst","begin":"(?i)(?\u003c=(:(TOPINST)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.topinst","match":"(?i)\\b(:(TOPINST)[ ])"},{"name":"support.function.pnlgrp.topinst.attribute.name","match":"(?i)\\b(INST)[=]"},{"name":"support.variable.pnlgrp.topinst.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.tt","begin":"(?i)(?\u003c=(:(TT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.tt","match":"(?i)\\b(:(TT)[ ])"},{"name":"support.function.pnlgrp.tt.attribute.name","match":"(?i)\\b(NAME|CONDS)[=]"},{"name":"support.variable.pnlgrp.tt.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.ttrow","begin":"(?i)(?\u003c=(:(TTROW)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ttrow","match":"(?i)\\b(:(TTROW)[ ])"},{"name":"support.function.pnlgrp.ttrow.attribute.name","match":"(?i)\\b(VALUES)[=]"},{"name":"support.variable.pnlgrp.ttrow.attribute.value","match":"(?i)(['](.*)['])"}]},{"name":"keyword.other.pnlgrp.var","begin":"(?i)(?\u003c=(:(VAR)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.var","match":"(?i)\\b(:(VAR)[ ])"},{"name":"support.function.pnlgrp.var.attribute.name","match":"(?i)\\b(NAME|CLASS|ERRVAR)[=]"},{"name":"support.variable.pnlgrp.var.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.varrcd","begin":"(?i)(?\u003c=(:(VARRCD)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.varrcd","match":"(?i)\\b(:(VARRCD)[ ])"},{"name":"support.function.pnlgrp.varrcd.attribute.name","match":"(?i)\\b(NAME|VARS|NOPUT|NOGET)[=]"},{"name":"support.variable.pnlgrp.varrcd.attribute.value","match":"(?i)([']?)([A-Z0-9]{1,32}(['])?)"}]},{"name":"keyword.other.pnlgrp","match":"(?i)(:(XMP|XH[1-4]|VARRCD|VAR|UL|TTROW|TT|TOPINST|TL|TI|TEXT|SL|RT|PV|PT|PT|PRTTRAIL|PRTPNL|PRTHEAD|PNLGRP).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(PK|PDFLDC|PDFLD|PDACCEL|PD|PC|PARML|PANEL|P|OPTLINE|OL|NT|NOTE|MI|MENUI|MENUGRP|MENU|MBARC|MBAR|LP).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(LISTVIEW|LISTGRP|LISTDEF|LISTCOL|LISTACT|LIST|LINK|LINES|LI|KEYL|KEYI|ISCHSYN|ISCHSUBT|ISCH|INFO).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(IMPORT|IMHELP|HP[0-9]|HELP|H[1-4]|FIG|EXMP|EUL|ETT|ETL|ESL|ERT|EPV|EPT|EPRTPNL|EPRTHEAD|EPNLGRP|EPK).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(EPDFLD|EPARML|EPANEL|EOL|ENT|ENOTE|EMENUGRP|EMENU|EMBARC|EMBAR|ELISTGRP|ELIST|ELINK|ELINES|EKEYL|EINFO).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(EHP[0-9]|EHELP|EFIG|EDL|EDATAGRP|EDATA|ECLASS|ECIT|DTHD|DT|DL|DDHD|DD|DATASLTC|DATASLT|DATAIX|DATAI).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(DATAGRP|DATACOL|DATAC|DATA|COPYR|COND|CMDLINE|CLASS|CIT|CHECK|BOTINST|APPFMT).?)"}]}}}
1
+ {"name":"PNLGRP","scopeName":"source.pnlgrp","patterns":[{"include":"#comments"},{"include":"#symbols"},{"include":"#directives"},{"include":"#tags"}],"repository":{"comments":{"patterns":[{"name":"comment.line.pnlgrp","begin":"^(\\.\\*).*","end":"\n"}]},"directives":{"patterns":[{"name":"keyword.other.pnlgrp.directives.imbed","begin":"(?i)(?\u003c=\\.)(IM)[ ]","end":"\n","patterns":[{"name":"string.other.pnlgrp.directives.imbed.member","match":"(?i)([A-Z][A-Z0-9#@$]{1,9}[ ]*$)"}]}]},"symbols":{"patterns":[{"name":"support.function.pnlgrp","match":"(?i)(\u0026(AMP|COLON|CONT|MSG\\(.*\\)|PERIOD|SLR)\\.?)"}]},"tags":{"patterns":[{"name":"keyword.other.pnlgrp.appfmt","begin":"(?i)(?\u003c=(:(APPFMT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.appfmt","match":"(?i)\\b(:(APPFMT)[ ])"},{"name":"support.function.pnlgrp.appfmt.attribute.name","match":"(?i)\\b(VAR|WIDTH|DEPTH|USREXIT)[=]"},{"name":"support.variable.pnlgrp.appfmt.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32})[']|[0-9]{1,2])"}]},{"name":"keyword.other.pnlgrp.botinst","begin":"(?i)(?\u003c=(:(BOTINST)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.botinst","match":"(?i)\\b(:(BOTINST)[ ])"},{"name":"support.function.pnlgrp.botinst.attribute.name","match":"(?i)\\b(INST)[=]"},{"name":"support.variable.pnlgrp.botinst.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32})['])"}]},{"name":"keyword.other.pnlgrp.check","begin":"(?i)(?\u003c=(:(CHECK)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.check","match":"(?i)\\b(:(CHECK)[ ])"},{"name":"support.function.pnlgrp.check.attribute.name","match":"(?i)\\b(MSGID|MSGF|RANGE|REL|VALUES)[=]"},{"name":"support.variable.pnlgrp.check.attribute.value","match":"(?i)\\b([A-Z]{3}[0-9A-F]{4})\\b"},{"name":"support.variable.pnlgrp.check.attribute.value","begin":"'","end":"'","patterns":[{"name":"keyword.operator.pnlgrp.check","match":"(?i)(\\*EQ|\\*NE|\\*GT|\\*LT|\\*GE|\\*LE|¬=|\u003e=|\u003c=|=|\u003e|\u003c)"},{"name":"string.quoted.double.pnlgrp","match":"\"[^\"]*\""}]}]},{"name":"keyword.other.pnlgrp.class","begin":"(?i)(?\u003c=(:(CLASS)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.class","match":"(?i)\\b(:(CLASS)[ ])"},{"name":"support.function.pnlgrp.class.attribute.name","match":"(?i)\\b(NAME|BASETYPE|WIDTH|CHRID|SHIFT|CASE|BLANKS|SUBST|BIDI|CONTXTREV|NBRSHAPE|SYMSWAP)[=]"},{"name":"support.variable.pnlgrp.class.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.cmdline","begin":"(?i)(?\u003c=(:(CMDLINE)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.cmdline","match":"(?i)\\b(:(CMDLINE)[ ])"},{"name":"support.function.pnlgrp.cmdline.attribute.name","match":"(?i)\\b(SIZE|NAME)[=]"},{"name":"support.variable.pnlgrp.cmdline.attribute.value","match":"(?i)(SHORT|LONG|[A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.cond","begin":"(?i)(?\u003c=(:(COND)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.cond","match":"(?i)\\b(:(COND)[ ])"},{"name":"support.function.pnlgrp.cond.attribute.name","match":"(?i)\\b(NAME|EXPR|EVAL)[=]"},{"name":"support.variable.pnlgrp.cond.attribute.value","match":"(?i)([A-Z0-9]{1,32}|['](.*)[']|ALWAYS|ONCE)"}]},{"name":"keyword.other.pnlgrp.data","begin":"(?i)(?\u003c=(:(DATA)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.data","match":"(?i)\\b(:(DATA)[ ])"},{"name":"support.function.pnlgrp.data.attribute.name","match":"(?i)\\b((DEPTH|HELP|BOTSEP|SCROLL|LAYOUT|MAXHEAD|BODYSEP|TYPE)[=]|COMPACT)"},{"name":"support.variable.pnlgrp.data.attribute.value","match":"(?i)(([A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9})|SPACE|NONE|NO|YES|HORIZ|SPACE|INDENT|BOTH|NONE|PROLOG|([0-4]{1})|'\\*')"}]},{"name":"keyword.other.pnlgrp.datac","begin":"(?i)(?\u003c=(:(DATAC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datac","match":"(?i)\\b(:(DATAC)[ ])"},{"name":"support.function.pnlgrp.datac.attribute.name","match":"(?i)\\b(CHOICE)[=]"},{"name":"support.variable.pnlgrp.datac.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.datacol","begin":"(?i)(?\u003c=(:(DATACOL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datacol","match":"(?i)\\b(:(DATACOL)[ ])"},{"name":"support.function.pnlgrp.datacol.attribute.name","match":"(?i)\\b(WIDTH)[=]"},{"name":"support.variable.pnlgrp.datacol.attribute.value","match":"(?i)([0-9]{1,3}|'\\*')"}]},{"name":"keyword.other.pnlgrp.datagrp","begin":"(?i)(?\u003c=(:(DATAGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datagrp","match":"(?i)\\b(:(DATAGRP)[ ])"},{"name":"support.function.pnlgrp.datagrp.attribute.name","match":"(?i)\\b((HELP|NAME|GRPSEP|COND)[=]|COMPACT)"},{"name":"support.variable.pnlgrp.datagrp.attribute.value","match":"(?i)(([A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9})|([A-Z0-9]{1,32})|INDENT|QINDENT|NONE)"}]},{"name":"keyword.other.pnlgrp.datai","begin":"(?i)(?\u003c=(:(DATAI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datai","match":"(?i)\\b(:(DATAI)[ ])"},{"name":"support.function.pnlgrp.datai.attribute.name","match":"(?i)\\b(VAR|USAGE|HELP|NAME|PMTLOC|CHCLOC|ALIGN|JUSTIFY|REQUIRED|CSRLOC|DISPLAY|AUTOENTR|COND|PROMPT|DSPVALUE)[=]"},{"name":"support.variable.pnlgrp.datai.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|(['][A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9}['])|OUT|INOUT|BEFORE|ABOVE|AFTER|LEFT|RIGHT|START|END|NO|YES|'\\*')"}]},{"name":"keyword.other.pnlgrp.dataix","begin":"(?i)(?\u003c=(:(DATAIX)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.dataix","match":"(?i)\\b(:(DATAIX)[ ])"},{"name":"support.function.pnlgrp.dataix.attribute.name","match":"(?i)\\b(VAR|USAGE|NEWLINE|ITEMSEP|ALIGN|JUSTIFY|REQUIRED|DISPLAY|PROMPT|DSPVALUE|AUTOENTR)[=]"},{"name":"support.variable.pnlgrp.dataix.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|OUT|INOUT|CALC|NO|YES|[0-9]+|LEFT|RIGHT|START|END|['].*['])"}]},{"name":"keyword.other.pnlgrp.dataslt","begin":"(?i)(?\u003c=(:(DATASLT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.dataslt","match":"(?i)\\b(:(DATASLT)[ ])"},{"name":"support.function.pnlgrp.dataslt.attribute.name","match":"(?i)\\b(TYPE|VAR|HELP|NAME|PMTLOC|REQUIRED|AUTOENTR|COND)[=]"},{"name":"support.variable.pnlgrp.dataslt.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|SINGLE|MULTI|BEFORE|ABOVE|NO|YES)"}]},{"name":"keyword.other.pnlgrp.datasltc","begin":"(?i)(?\u003c=(:(DATASLTC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.datasltc","match":"(?i)\\b(:(DATASLTC)[ ])"},{"name":"support.function.pnlgrp.datasltc.attribute.name","match":"(?i)\\b(CHOICE|OPTION|VAR|HELP|COND|AVAIL|AVLMSGID|AVLMSGF)[=]"},{"name":"support.variable.pnlgrp.datasltc.attribute.value","match":"(?i)(([A-Z0-9]{1,32})|([0-9]{1,2})|([A-F]{3}[0-9A-F]{4})|(['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}[']))"}]},{"name":"keyword.other.pnlgrp.fig","begin":"(?i)(?\u003c=(:(FIG)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.fig","match":"(?i)\\b(:(FIG)[ ])"},{"name":"support.function.pnlgrp.fig.attribute.name","match":"(?i)\\b(FRAME)[=]"},{"name":"support.variable.pnlgrp.fig.attribute.value","match":"(?i)(RULE|NONE)"}]},{"name":"keyword.other.pnlgrp.help","begin":"(?i)(?\u003c=(:(HELP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.help","match":"(?i)\\b(:(HELP)[ ])"},{"name":"support.function.pnlgrp.help.attribute.name","match":"(?i)\\b(NAME|WIDTH|DEPTH)[=]"},{"name":"support.variable.pnlgrp.help.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.imhelp","begin":"(?i)(?\u003c=(:(IMHELP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.imhelp","match":"(?i)\\b(:(IMHELP)[ ])"},{"name":"support.function.pnlgrp.imhelp.attribute.name","match":"(?i)\\b(NAME)[=]"},{"name":"support.variable.pnlgrp.imhelp.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.import","begin":"(?i)(?\u003c=(:(IMPORT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.import","match":"(?i)\\b(:(IMPORT)[ ])"},{"name":"support.function.pnlgrp.import.attribute.name","match":"(?i)\\b(NEWNAME|NAME|PNLGRP|PRDLIB)[=]"},{"name":"support.variable.pnlgrp.import.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.info","begin":"(?i)(?\u003c=(:(INFO)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.info","match":"(?i)\\b(:(INFO)[ ])"},{"name":"support.function.pnlgrp.info.attribute.name","match":"(?i)\\b(DEPTH|BOTSEP|SCROLL|TYPE)[=]"},{"name":"support.variable.pnlgrp.info.attribute.value","match":"(?i)([0-9]{2,2}|[']\\*[']|SPACE|NONE|RULE|YES|NO|NORMAL|PROLOG)"}]},{"name":"keyword.other.pnlgrp.isch","begin":"(?i)(?\u003c=(:(ISCH)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.isch","match":"(?i)\\b(:(ISCH)[ ])"},{"name":"support.function.pnlgrp.isch.attribute.name","match":"(?i)\\b(ROOTS)[=]"},{"name":"support.variable.pnlgrp.isch.attribute.value","match":"(?i)(['](([A-Z0-9]{1,20}[ ]*){1,50})['])"}]},{"name":"keyword.other.pnlgrp.ischsubt","begin":"(?i)(?\u003c=(:(ISCHSUBT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ischsubt","match":"(?i)\\b(:(ISCHSUBT)[ ])"},{"name":"support.function.pnlgrp.ischsubt.attribute.name","match":"(?i)\\b(TOPICS)[=]"},{"name":"support.variable.pnlgrp.ischsubt.attribute.value","match":"(?i)(['](([A-Z0-9_\\/]{1,32}[ ]*){1,16})['])"}]},{"name":"keyword.other.pnlgrp.ischsyn","begin":"(?i)(?\u003c=(:(ISCHSYN)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ischsyn","match":"(?i)\\b(:(ISCHSYN)[ ])"},{"name":"support.function.pnlgrp.ischsyn.attribute.name","match":"(?i)\\b(ROOT)[=]"},{"name":"support.variable.pnlgrp.ischsyn.attribute.value","match":"(?i)(['](([A-Z0-9]{1,20}){1})['])"}]},{"name":"keyword.other.pnlgrp.keyi","begin":"(?i)(?\u003c=(:(KEYI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.keyi","match":"(?i)\\b(:(KEYI)[ ])"},{"name":"support.function.pnlgrp.keyi.attribute.name","match":"(?i)\\b(KEY|HELP|ACTION|COND|VARUPD|PRIORITY)[=]"},{"name":"support.variable.pnlgrp.keyi.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32})['])"}]},{"name":"keyword.other.pnlgrp.keyl","begin":"(?i)(?\u003c=(:(KEYL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.keyl","match":"(?i)\\b(:(KEYL)[ ])"},{"name":"support.function.pnlgrp.keyl.attribute.name","match":"(?i)\\b(NAME|HELP)[=]"},{"name":"support.variable.pnlgrp.keyl.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.link","begin":"(?i)(?\u003c=(:(LINK)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.link","match":"(?i)\\b(:(LINK)[ ])"},{"name":"support.function.pnlgrp.link.attribute.name","match":"(?i)\\b(PERFORM|UNLESS[1-4]|THENDO[1-4]|LINKWHEN)[=]"},{"name":"support.variable.pnlgrp.link.attribute.value","begin":"'","end":"'","patterns":[{"name":"keyword.control.pnlgrp.link.action","match":"(?i)\\b(DSPHELP)\\b"},{"name":"support.function.pnlgrp.link.builtin","match":"(?i)\\b(CHKOBJ|CHKPGM|CHKUSRCLS)\\b"},{"name":"keyword.operator.pnlgrp.link","match":"(?i)(\\*AND|\\*OR|\\*NOT|\u0026|\\||¬)"},{"name":"string.quoted.double.pnlgrp","match":"\"[^\"]*\""}]}]},{"name":"keyword.other.pnlgrp.list_tags","begin":"(?i)(?\u003c=(:(DL|OL|SL|UL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.list_tags","match":"(?i)\\b(:(DL|OL|SL|UL)[ ])"},{"name":"support.function.pnlgrp.list_tags.attribute.name","match":"(?i)\\b(COMPACT)"}]},{"name":"keyword.other.pnlgrp.list","begin":"(?i)(?\u003c=(:(LIST)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.list","match":"(?i)\\b(:(LIST)[ ])"},{"name":"support.function.pnlgrp.list.attribute.name","match":"(?i)\\b(DEPTH|LISTDEF|BOTSEP|SCROLL|MAXHEAD|BODYSEP|VIEW|ACTOR|EXTACT|SELECT|MAXACTL|PARMS|HEADSIZE)[=]"},{"name":"support.variable.pnlgrp.list.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']\\*[']|SPACE|NONE|RULE|YES|NO|[0-4]{1}|INDENT|BOTH|UIM|CALLER|SINGLE|MULTI)"}]},{"name":"keyword.other.pnlgrp.listact","begin":"(?i)(?\u003c=(:(LISTACT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listact","match":"(?i)\\b(:(LISTACT)[ ])"},{"name":"support.function.pnlgrp.listact.attribute.name","match":"(?i)\\b(HELP|OPTION|ACTFOR|CONFIRM|ENTER|EXTENTER|PROMPT|EXTPROMPT|NOCMD|NOEXT|USREXIT|EXTMSGID|EXTMSGF|COND|AVAIL|AVLMSGID|AVLMSGF)[=]"},{"name":"support.variable.pnlgrp.listact.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)[']|[0-9]{1,3}|BOTH|LISTE|EXACTE|['](.*)[']|ENTER|PROMPT|MSG)"}]},{"name":"keyword.other.pnlgrp.listcol","begin":"(?i)(?\u003c=(:(LISTCOL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listcol","match":"(?i)\\b(:(LISTCOL)[ ])"},{"name":"support.function.pnlgrp.listcol.attribute.name","match":"(?i)\\b(VAR|MAXWIDTH|USAGE|HELP|COL|NAME|JUSTIFY|EXTACT|PROMPT|DSPVALUE|COLHEAD|DISPLAY|AUTOSKIP)[=]"},{"name":"support.variable.pnlgrp.listcol.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)[']|OUT|INOUT|LEFT|RIGHT|START|END|NO|YES|['](.*)['])"}]},{"name":"keyword.other.pnlgrp.listdef","begin":"(?i)(?\u003c=(:(LISTDEF)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listdef","match":"(?i)\\b(:(LISTDEF)[ ])"},{"name":"support.function.pnlgrp.listdef.attribute.name","match":"(?i)\\b(NAME|VARS|CHGVAR|MSGID|MSGIDVAR|MSGF|PRTFLAG|EMPHASIS|PROTECT)[=]"},{"name":"support.variable.pnlgrp.listdef.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.listgrp","begin":"(?i)(?\u003c=(:(LISTGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listgrp","match":"(?i)\\b(:(LISTGRP)[ ])"},{"name":"support.function.pnlgrp.listgrp.attribute.name","match":"(?i)\\b(COL|HELP|NAME|COLSEP)[=]"},{"name":"support.variable.pnlgrp.listgrp.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)[']|\\*)"}]},{"name":"keyword.other.pnlgrp.listview","begin":"(?i)(?\u003c=(:(LISTVIEW)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.listview","match":"(?i)\\b(:(LISTVIEW)[ ])"},{"name":"support.function.pnlgrp.listview.attribute.name","match":"(?i)\\b(COLS|LAYOUT)[=]"},{"name":"support.variable.pnlgrp.listview.attribute.value","match":"(?i)([']([A-Z0-9]{1,32}|\\s)+[']|[0-9]{1,2})"}]},{"name":"keyword.other.pnlgrp.mbar","begin":"(?i)(?\u003c=(:(MBAR)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.mbar","match":"(?i)\\b(:(MBAR)[ ])"},{"name":"support.function.pnlgrp.mbar.attribute.name","match":"(?i)\\b(NAME|HELP|MAXBARL)[=]"},{"name":"support.variable.pnlgrp.mbar.attribute.value","match":"(?i)([A-Z]{1}[A-Z0-9]{0,9}|[A-Z/_]{1}[A-Z0-9/_]{1,31}|[123])"}]},{"name":"keyword.other.pnlgrp.mbarc","begin":"(?i)(?\u003c=(:(MBARC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.mbarc","match":"(?i)\\b(:(MBARC)[ ])"},{"name":"support.function.pnlgrp.mbarc.attribute.name","match":"(?i)\\b(HELP)[=]"},{"name":"support.variable.pnlgrp.mbarc.attribute.value","match":"(?i)([A-Z/_]{1}[A-Z0-9/_]{1,31})"}]},{"name":"keyword.other.pnlgrp.menu","begin":"(?i)(?\u003c=(:(MENU)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.menu","match":"(?i)\\b(:(MENU)[ ])"},{"name":"support.function.pnlgrp.menu.attribute.name","match":"(?i)\\b(DEPTH|BOTSEP|SCROLL)[=]"},{"name":"support.variable.pnlgrp.menu.attribute.value","match":"(?i)(([0-9]{1,2}|'\\*')|(SPACE|NONE|RULE)|(NO|YES))"}]},{"name":"keyword.other.pnlgrp.menugrp","begin":"(?i)(?\u003c=(:(MENUGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.menugrp","match":"(?i)\\b(:(MENUGRP)[ ])"},{"name":"support.function.pnlgrp.menugrp.attribute.name","match":"(?i)\\b(COND)[=]"},{"name":"support.variable.pnlgrp.menugrp.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.menui","begin":"(?i)(?\u003c=(:(MENUI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.menui","match":"(?i)\\b(:(MENUI)[ ])"},{"name":"support.function.pnlgrp.menui.attribute.name","match":"(?i)\\b(HELP|OPTION|ACTION|NAME|COND|AVAIL|AVLMSGID|AVLMSGF|MARKER|ITEM)[=]"},{"name":"support.variable.pnlgrp.menui.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[0-9]{1,3}|[']((CALL .*)|CANCEL|(CMD .*)|EXIT|(MENU .* (NO)?RTNPNT)|RETURN)['])"}]},{"name":"keyword.other.pnlgrp.mi","begin":"(?i)(?\u003c=(:(MI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.mi","match":"(?i)\\b(:(MI)[ ])"},{"name":"support.function.pnlgrp.mi.attribute.name","match":"(?i)\\b(HELP|OPTION|ACTION|NAME|COND|AVAIL|AVLMSGID|AVLMSGF|MARKER|ITEM)[=]"},{"name":"support.variable.pnlgrp.mi.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[0-9]{1,3}|[']((CALL .*)|CANCEL|(CMD .*)|EXIT|(MENU .* (NO)?RTNPNT)|RETURN)['])"}]},{"name":"keyword.other.pnlgrp.optline","begin":"(?i)(?\u003c=(:(OPTLINE)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.optline","match":"(?i)\\b(:(OPTLINE)[ ])"},{"name":"support.function.pnlgrp.optline.attribute.name","match":"(?i)\\b(NAME)[=]"},{"name":"support.variable.pnlgrp.optline.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.panel","begin":"(?i)(?\u003c=(:(PANEL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.panel","match":"(?i)\\b(:(PANEL)[ ])"},{"name":"support.function.pnlgrp.panel.attribute.name","match":"(?i)\\b(NAME|HELP|KEYL|PANELID|TITLE|WIDTH|DEPTH|MBAR|MSGL|TOPSEP|DATE|TIME|ENBGUI|ENTER|SELECT|USREXIT|TT|CSRVAR|CSRPOS|CSRLST|CSREID|CSRNAME)[=]"},{"name":"support.variable.pnlgrp.panel.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.pdfld","begin":"(?i)(?\u003c=(:(PDFLD)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pdfld","match":"(?i)\\b(:(PDFLD)[ ])"},{"name":"support.function.pnlgrp.pdfld.attribute.name","match":"(?i)\\b(NAME)[=]"},{"name":"support.variable.pnlgrp.pdfld.attribute.value","match":"(?i)([A-Z]{1}[A-Z0-9]{0,9})"}]},{"name":"keyword.other.pnlgrp.pdfldc","begin":"(?i)(?\u003c=(:(PDFLDC)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pdfldc","match":"(?i)\\b(:(PDFLDC)[ ])"},{"name":"support.function.pnlgrp.pdfldc.attribute.name","match":"(?i)\\b(OPTION|HELP|ACTION|ACTFOR|CONFIRM|USREXIT|VARUPD|COND|AVAIL|AVLMSGID|AVLMSGF|CHOICE)[=]"},{"name":"support.variable.pnlgrp.pdfldc.attribute.value","match":"(?i)([0-9]{1,2}|[A-Z]{1}[A-Z0-9]{0,9}|PANEL|LIST|['](CALL .*)[']|[A-Z/_]{1}[A-Z0-9/_]{1,31}|[A-F]{3}[0-9A-F]{4}|['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}['])"}]},{"name":"keyword.other.pnlgrp.pk","begin":"(?i)(?\u003c=(:(PK)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pk.attribute.name","match":"(?i)\\b(DEF)"}]},{"name":"keyword.other.pnlgrp.pnlgrp","begin":"(?i)(?\u003c=(:(PNLGRP)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.pnlgrp","match":"(?i)\\b(:(PNLGRP)[ ])"},{"name":"support.function.pnlgrp.pnlgrp.attribute.name","match":"(?i)\\b(SCHIDX|ENBGUI|TXTMODE|TXTCHRID|BIDI|NBRSHAPE|DFTMSGF|SUBMSGF)[=]"},{"name":"support.variable.pnlgrp.pnlgrp.attribute.value","match":"(?i)(([A-Z][A-Z0-9#@$]{1,9}/[A-Z][A-Z0-9#@$]{1,9})|NONE|NO|YES|SBCS|DBCS|LTR|RTL|ARABIC|HINDI|('[0-9]{2,5}'))"}]},{"name":"keyword.other.pnlgrp.prthead","begin":"(?i)(?\u003c=(:(PRTHEAD)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.prthead","match":"(?i)\\b(:(PRTHEAD)[ ])"},{"name":"support.function.pnlgrp.prthead.attribute.name","match":"(?i)\\b(NAME|PRODINFO|PRTDATE|PRTTIME|TITLE|TT|WIDTH|OBJ|OBJLIB)[=]"},{"name":"support.variable.pnlgrp.prthead.attribute.value","match":"(?i)([A-Z0-9]{1,32}|80|132)"}]},{"name":"keyword.other.pnlgrp.prtpnl","begin":"(?i)(?\u003c=(:(PRTPNL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.prtpnl","match":"(?i)\\b(:(PRTPNL)[ ])"},{"name":"support.function.pnlgrp.prtpnl.attribute.name","match":"(?i)\\b(NAME|TITLE|TT|WIDTH)[=]"},{"name":"support.variable.pnlgrp.prtpnl.attribute.value","match":"(?i)([A-Z0-9]{1,32}|80|132)"}]},{"name":"keyword.other.pnlgrp.text","begin":"(?i)(?\u003c=(:(TEXT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.text","match":"(?i)\\b(:(TEXT)[ ])"},{"name":"support.function.pnlgrp.text.attribute.name","match":"(?i)\\b(VAR|USREXIT|ROW|COL)[=]"},{"name":"support.variable.pnlgrp.text.attribute.value","match":"(?i)([A-Z]{1}[A-Z0-9]{0,9}|['](CALL .*)['])"}]},{"name":"keyword.other.pnlgrp.ti","begin":"(?i)(?\u003c=(:(TI)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ti","match":"(?i)\\b(:(TI)[ ])"},{"name":"support.function.pnlgrp.ti.attribute.name","match":"(?i)\\b(VALUE)[=]"},{"name":"support.variable.pnlgrp.ti.attribute.value","match":"(?i)(['](.+)['])"}]},{"name":"keyword.other.pnlgrp.tl","begin":"(?i)(?\u003c=(:(TL)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.tl","match":"(?i)\\b(:(TL)[ ])"},{"name":"support.function.pnlgrp.tl.attribute.name","match":"(?i)\\b(CASE|MSGID|MSGF)[=]"},{"name":"support.variable.pnlgrp.tl.attribute.value","match":"(?i)(UPPER|MIXED|[A-F]{3}[0-9A-F]{4}|['][A-Z][A-Z0-9#@$]{0,9}/[A-Z][A-Z0-9#@$]{0,9}['])"}]},{"name":"keyword.other.pnlgrp.topinst","begin":"(?i)(?\u003c=(:(TOPINST)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.topinst","match":"(?i)\\b(:(TOPINST)[ ])"},{"name":"support.function.pnlgrp.topinst.attribute.name","match":"(?i)\\b(INST)[=]"},{"name":"support.variable.pnlgrp.topinst.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.tt","begin":"(?i)(?\u003c=(:(TT)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.tt","match":"(?i)\\b(:(TT)[ ])"},{"name":"support.function.pnlgrp.tt.attribute.name","match":"(?i)\\b(NAME|CONDS)[=]"},{"name":"support.variable.pnlgrp.tt.attribute.value","match":"(?i)([A-Z0-9]{1,32}|[']([A-Z0-9_\\/]{1,32}|\\*)['])"}]},{"name":"keyword.other.pnlgrp.ttrow","begin":"(?i)(?\u003c=(:(TTROW)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.ttrow","match":"(?i)\\b(:(TTROW)[ ])"},{"name":"support.function.pnlgrp.ttrow.attribute.name","match":"(?i)\\b(VALUES)[=]"},{"name":"support.variable.pnlgrp.ttrow.attribute.value","match":"(?i)(['](.*)['])"}]},{"name":"keyword.other.pnlgrp.var","begin":"(?i)(?\u003c=(:(VAR)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.var","match":"(?i)\\b(:(VAR)[ ])"},{"name":"support.function.pnlgrp.var.attribute.name","match":"(?i)\\b(NAME|CLASS|ERRVAR)[=]"},{"name":"support.variable.pnlgrp.var.attribute.value","match":"(?i)([A-Z0-9]{1,32})"}]},{"name":"keyword.other.pnlgrp.varrcd","begin":"(?i)(?\u003c=(:(VARRCD)[ ]))","end":"\\.","patterns":[{"name":"support.function.pnlgrp.varrcd","match":"(?i)\\b(:(VARRCD)[ ])"},{"name":"support.function.pnlgrp.varrcd.attribute.name","match":"(?i)\\b(NAME|VARS|NOPUT|NOGET)[=]"},{"name":"support.variable.pnlgrp.varrcd.attribute.value","match":"(?i)([']?)([A-Z0-9]{1,32}(['])?)"}]},{"name":"keyword.other.pnlgrp","match":"(?i)(:(XMP|XH[1-4]|VARRCD|VAR|UL|TTROW|TT|TOPINST|TL|TI|TEXT|SL|RT|PV|PT|PT|PRTTRAIL|PRTPNL|PRTHEAD|PNLGRP).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(PK|PDFLDC|PDFLD|PDACCEL|PD|PC|PARML|PANEL|P|OPTLINE|OL|NT|NOTE|MI|MENUI|MENUGRP|MENU|MBARC|MBAR|LP).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(LISTVIEW|LISTGRP|LISTDEF|LISTCOL|LISTACT|LIST|LINK|LINES|LI|KEYL|KEYI|ISCHSYN|ISCHSUBT|ISCH|INFO).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(IMPORT|IMHELP|HP[0-9]|HELP|H[1-4]|FIG|EXMP|EUL|ETT|ETL|ESL|ERT|EPV|EPT|EPRTPNL|EPRTHEAD|EPNLGRP|EPK).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(EPDFLD|EPARML|EPANEL|EOL|ENT|ENOTE|EMENUGRP|EMENU|EMBARC|EMBAR|ELISTGRP|ELIST|ELINK|ELINES|EKEYL|EINFO).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(EHP[0-9]|EHELP|EFIG|EDL|EDATAGRP|EDATA|ECLASS|ECIT|DTHD|DT|DL|DDHD|DD|DATASLTC|DATASLT|DATAIX|DATAI).?)"},{"name":"keyword.other.pnlgrp","match":"(?i)(:(DATAGRP|DATACOL|DATAC|DATA|COPYR|COND|CMDLINE|CLASS|CIT|CHECK|BOTINST|APPFMT).?)"}]}}}
@@ -1 +1 @@
1
- {"name":"qsharp","scopeName":"source.qsharp","patterns":[{"include":"#comments"},{"include":"#functions"},{"include":"#keywords"},{"include":"#operators"},{"include":"#types"},{"include":"#constants"},{"include":"#strings"},{"include":"#variables"}],"repository":{"comments":{"patterns":[{"name":"comment.line.double-slash","match":"\\/\\/.*$"},{"name":"comment.documentation","match":"\\/\\/\\/.*$"}]},"constants":{"patterns":[{"name":"constant.language.qsharp","match":"\\b(true|false|Pauli(I|X|Y|Z))\\b"},{"name":"constant.other.result.qsharp","match":"\\b(One|Zero)\\b"},{"name":"constant.numeric.qsharp","match":"\\b[\\d_]*\\.?[\\d_]\\b"}]},"functions":{"patterns":[{"name":"meta.function.definition.qsharp","begin":"\\b(function)\\s+([A-Za-z0-9_]+)(\\()","end":"\\)","patterns":[{"include":"#comments"},{"include":"#functions"},{"include":"#keywords"},{"include":"#operators"},{"include":"#types"},{"include":"#constants"},{"include":"#strings"},{"include":"#variables"}],"beginCaptures":{"1":{"name":"keyword.other.qsharp"},"2":{"name":"entity.name.function.qsharp"},"3":{"name":"punctuation.brackets.round.qsharp"}},"endCaptures":{"0":{"name":"punctuation.brackets.round.qsharp"}}},{"name":"meta.function.call.qsharp","begin":"\\b(?\u003c!@)([A-Za-z0-9_]+)(\\()","end":"\\)","patterns":[{"include":"#comments"},{"include":"#functions"},{"include":"#keywords"},{"include":"#operators"},{"include":"#types"},{"include":"#constants"},{"include":"#strings"},{"include":"#variables"}],"beginCaptures":{"1":{"name":"entity.name.function.qsharp"},"2":{"name":"punctuation.brackets.round.qsharp"}},"endCaptures":{"0":{"name":"punctuation.brackets.round.qsharp"}}}]},"keywords":{"patterns":[{"name":"keyword.control.qsharp","match":"\\b(use|borrow|mutable|let|set|if|elif|else|repeat|until|fixup|for|in|while|return|fail|within|apply)\\b"},{"name":"keyword.other.qsharp","match":"\\b(namespace|open|import|export|as|internal|newtype|struct|operation|function|new|body|(a|A)djoint|(c|C)ontrolled|self|auto|distribute|invert|intrinsic)\\b"}]},"operators":{"patterns":[{"name":"keyword.other.operator.qsharp","match":"\\b(not|and|or)\\b|\\b(w/)|(=)|(!)|(\u003c)|(\u003e)|(\\+)|(-)|(\\*)|(\\/)|(\\^)|(%)|(\\|)|(\\\u0026\\\u0026\\\u0026)|(\\~\\~\\~)|(\\.\\.\\.)|(\\.\\.)|(\\?)"}]},"strings":{"patterns":[{"name":"string.quoted.double.qsharp","begin":"(\\$|)\"","end":"\"","patterns":[{"name":"constant.character.escape.qsharp","match":"\\\\."}]}]},"types":{"patterns":[{"name":"storage.type.qsharp","match":"\\b(Int|BigInt|Double|Bool|Qubit|Pauli|Result|Range|String|Unit|Ctl|Adj|is)\\b"}]},"variables":{"patterns":[{"name":"variable.other.qsharp","match":"\\b(?\u003c!@)[A-Za-z0-9_]+\\b"}]}}}
1
+ {"name":"qsharp","scopeName":"source.qsharp","patterns":[{"include":"#comments"},{"include":"#attributes"},{"include":"#namespace-declaration"},{"include":"#import-export-directive"},{"include":"#new-expression"},{"include":"#struct-declaration"},{"include":"#member-access"},{"include":"#tuple-binding"},{"include":"#keywords"},{"include":"#library-invocation"},{"include":"#library"},{"include":"#operations"},{"include":"#types"},{"include":"#literals"},{"include":"#strings"},{"include":"#callable-invocation"},{"include":"#callable-declaration"},{"include":"#udt-declaration"},{"include":"#array-creation-expression"},{"include":"#local-declaration"},{"include":"#array-assignment"},{"include":"#local-assignment"},{"include":"#quantum-declaration"},{"include":"#if-statement"},{"include":"#parenthesized-expression"},{"include":"#expression-operators"},{"include":"#declaration-keywords"},{"include":"#identifier"}],"repository":{"argument":{"patterns":[{"include":"#expression"}]},"argument-list":{"begin":"\\(","end":"\\)","patterns":[{"include":"#argument"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.qsharp"}}},"array-assignment":{"begin":"(?x)\n\\b(set)\\b\\s*\n([_[:alpha:]][_[:alnum:]]*)\\b\\s*\n(?:(=)\\s*([_[:alpha:]][_[:alnum:]]*)\\b\\s*(w\\/)|(w\\/=))","end":"(?=;|\\)|})","patterns":[{"name":"keyword.operator.assignment.qsharp","match":"\u003c-"},{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.other.set.qsharp"},"2":{"name":"entity.name.variable.local.qsharp"},"3":{"name":"keyword.operator.assignment.qsharp"},"4":{"name":"entity.name.variable.local.qsharp"},"5":{"name":"keyword.operator.assignment.qsharp"},"6":{"name":"keyword.operator.assignment.qsharp"}}},"array-creation-expression":{"begin":"(?\u003c!\\w)\\[","end":"\\]","patterns":[{"begin":"\\b(size)\\s*(?=\\=)","end":"(?=\\])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.other.size.qsharp"}}},{"include":"#argument"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.squarebracket.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.squarebracket.close.qsharp"}}},"attributes":{"patterns":[{"begin":"(@)([_[:alpha:]][_[:alnum:]]*)\\s*(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#argument-list"}],"beginCaptures":{"1":{"name":"punctuation.definition.attribute.qsharp"},"2":{"name":"entity.name.function.attribute.qsharp"}}},{"match":"(@)([_[:alpha:]][_[:alnum:]]*)","captures":{"1":{"name":"punctuation.definition.attribute.qsharp"},"2":{"name":"entity.name.function.attribute.qsharp"}}}]},"boolean-literal":{"patterns":[{"name":"constant.language.boolean.true.qsharp","match":"(?\u003c!\\.)\\btrue\\b"},{"name":"constant.language.boolean.false.qsharp","match":"(?\u003c!\\.)\\bfalse\\b"}]},"callable-declaration":{"begin":"(?x)\n\\b(operation|function)\\b\\s+\n([_[:alpha:]][_[:alnum:]]*)\\s* # callable name\n(?\u003ctype_args\u003e\\s*\u003c([^\u003c\u003e]|\\g\u003ctype_args\u003e)+\u003e\\s*)?\\s* # type arguments\n(?=\\() # open parentheses of argument list","end":"(?\u003c=\\))","patterns":[{"include":"#parameter-list"}],"beginCaptures":{"1":{"name":"keyword.other.callable.qsharp"},"2":{"name":"entity.name.function.qsharp"},"3":{"patterns":[{"include":"#type-parameter-list"}]}}},"callable-invocation":{"begin":"(?x)\n(?:(\\:\\:|\\.)\\s*)? # preceding member access (:: or .)\n(?!(?:let|mutable|set|use|borrow|new|fixup|for|in|while|repeat|until|return|fail|within|apply|if|elif|else|not|and|or|namespace|import|export|open|operation|function|struct|newtype|internal|is)\\b)\n([_[:alpha:]][_[:alnum:]]*)\\s* # callable name (not a keyword)\n(?\u003ctype_args\u003e\\s*\u003c([^\u003c\u003e]|\\g\u003ctype_args\u003e)+\u003e\\s*)?\\s* # type arguments\n(?=\\() # open parentheses of argument list","end":"(?\u003c=\\))","patterns":[{"include":"#argument-list"}],"beginCaptures":{"1":{"name":"punctuation.accessor.qsharp"},"2":{"name":"entity.name.function.qsharp"},"3":{"patterns":[{"include":"#type-parameter-list"}]}}},"comments":{"patterns":[{"begin":"(^\\s+)?(?=//)","end":"(?=$)","patterns":[{"name":"comment.block.documentation.qsharp","begin":"(?\u003c!/)///(?!/)","end":"(?=$)","beginCaptures":{"0":{"name":"punctuation.definition.comment.qsharp"}}},{"name":"comment.line.double-slash.qsharp","begin":"(?\u003c!/)//(?:(?!/))","end":"(?=$)","beginCaptures":{"0":{"name":"punctuation.definition.comment.qsharp"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.qsharp"}}}]},"declaration-keywords":{"patterns":[{"name":"keyword.other.callable.qsharp","match":"\\b(operation|function)\\b"},{"name":"keyword.other.let.qsharp","match":"\\b(let)\\b"},{"name":"keyword.other.mutable.qsharp","match":"\\b(mutable)\\b"},{"name":"keyword.other.set.qsharp","match":"\\b(set)\\b"},{"name":"keyword.other.use.qsharp","match":"\\b(use)\\b"},{"name":"keyword.other.borrow.qsharp","match":"\\b(borrow)\\b"}]},"expression":{"patterns":[{"include":"#comments"},{"include":"#if-statement"},{"include":"#new-expression"},{"include":"#keywords"},{"include":"#strings"},{"include":"#member-access"},{"include":"#library-invocation"},{"include":"#callable-invocation"},{"include":"#library"},{"include":"#types"},{"include":"#literals"},{"include":"#parenthesized-expression"},{"include":"#array-creation-expression"},{"include":"#expression-operators"},{"include":"#identifier"}]},"expression-operators":{"patterns":[{"name":"keyword.operator.logical.qsharp","match":"\\b(not|and|or)\\b"},{"name":"keyword.operator.lambda.qsharp","match":"(-\u003e|=\u003e)"},{"name":"keyword.operator.assignment.compound.qsharp","match":"(\\+=|-=|\\*=|/=|%=|\\^=|\u0026\u0026\u0026=|\\|\\|\\|=|\\^\\^\\^=|\u003c\u003c\u003c=|\u003e\u003e\u003e=|\\bw/=)"},{"name":"keyword.operator.copy-update.qsharp","match":"(\\bw/|\u003c-)"},{"name":"keyword.operator.assignment.qsharp","match":"(?\u003c![=\u003c\u003e!+\\-*/%^\u0026|~])=(?![=\u003e])"},{"name":"keyword.operator.range.qsharp","match":"(\\.\\.\\.|\\.\\.)"},{"name":"keyword.operator.bitwise.qsharp","match":"(\u0026\u0026\u0026|\\|\\|\\||\\^\\^\\^|~~~|\u003c\u003c\u003c|\u003e\u003e\u003e)"},{"name":"keyword.operator.comparison.qsharp","match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.arithmetic.qsharp","match":"(\\+|\\-|\\*|/|%|\\^)"},{"name":"keyword.operator.ternary.qsharp","match":"(\\?|\\|)"}]},"field-initializer":{"begin":"([_[:alpha:]][_[:alnum:]]*)\\s*(=)(?![=\u003e])","end":"(?=(,|\\}))","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"variable.other.property.qsharp"},"2":{"name":"keyword.operator.assignment.qsharp"}}},"identifier":{"patterns":[{"name":"variable.other.readwrite.qsharp","match":"\\b[_[:alpha:]][_[:alnum:]]*\\b"}]},"if-statement":{"begin":"(?\u003c!\\.)\\b(if)\\b\\s*(?=\\S)","end":"(?\u003c=})(?!\\s*\\b(?:elif|else)\\b)|(?=;)","patterns":[{"name":"keyword.control.conditional.qsharp","match":"\\b(elif|else)\\b"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#statements"}],"beginCaptures":{"0":{"name":"punctuation.curlybrace.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.curlybrace.close.qsharp"}}},{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.if.qsharp"}}},"import-export-directive":{"begin":"\\b(import|export)\\b","end":"(?=;)|$","patterns":[{"include":"#comments"},{"begin":"\\b(as)\\b\\s*","end":"(?=(,|;)|$)","patterns":[{"include":"#comments"},{"name":"entity.name.type.alias.qsharp","match":"[_[:alpha:]][_[:alnum:]]*"}],"beginCaptures":{"1":{"name":"keyword.other.qsharp"}}},{"name":"keyword.operator.wildcard.qsharp","match":"\\*"},{"name":"entity.name.namespace.qsharp","match":"[_[:alpha:]][_[:alnum:]]*"},{"include":"#punctuation-accessor"},{"include":"#punctuation-comma"}],"beginCaptures":{"1":{"name":"keyword.other.import.qsharp"}}},"keywords":{"patterns":[{"name":"keyword.control.qsharp","match":"\\b(elif|else|repeat|until|fixup|for|in|while|break|continue|return|fail|within|apply|parallel)\\b"},{"name":"keyword.other.qsharp","match":"\\b(using|borrowing)\\b"},{"name":"keyword.other.qsharp","match":"\\b(new)\\b"}]},"library":{"patterns":[{"name":"support.function.quantum.qsharp","match":"\\b(CCNOT|CNOT|CX|CY|CZ|SWAP|SX|H|S|T|I|X|Y|Z|Rxx|Ryy|Rzz|Rx|Ry|Rz|R1Frac|R1|RFrac|R|ExpFrac|Exp|MResetEachZ|MResetX|MResetY|MResetZ|MeasureEachZ|MeasureAllZ|Measure|M|ResetAll|Reset)\\b"}]},"library-invocation":{"begin":"(?x)\n\\b(CCNOT|CNOT|CX|CY|CZ|SWAP|SX|H|S|T|I|X|Y|Z|Rxx|Ryy|Rzz|Rx|Ry|Rz|R1Frac|R1|RFrac|R|ExpFrac|Exp|MResetEachZ|MResetX|MResetY|MResetZ|MeasureEachZ|MeasureAllZ|Measure|M|ResetAll|Reset)\\b\\s*\n(?=\\()","end":"(?\u003c=\\))","patterns":[{"include":"#argument-list"}],"beginCaptures":{"1":{"name":"support.function.quantum.qsharp"}}},"literals":{"patterns":[{"include":"#boolean-literal"},{"include":"#result-literal"},{"include":"#pauli-literal"},{"include":"#numeric-literal"}]},"local-assignment":{"begin":"(?x)\n(?:\\b(set)\\b\\s*)\n([_[:alpha:]][_[:alnum:]]*)\\b\\s*\n(?=;|\\+=|-=|=|\\))","end":"(?=;|\\)|})","patterns":[{"include":"#variable-initializer"}],"beginCaptures":{"1":{"name":"keyword.other.set.qsharp"},"2":{"name":"entity.name.variable.local.qsharp"}}},"local-declaration":{"begin":"(?x)\n(?:\\b(?:(let)|(mutable))\\b\\s*)\n([_[:alpha:]][_[:alnum:]]*)\\b\\s*\n(?=;|=|\\))","end":"(?=;|\\)|})","patterns":[{"include":"#variable-initializer"}],"beginCaptures":{"1":{"name":"keyword.other.let.qsharp"},"2":{"name":"keyword.other.mutable.qsharp"},"3":{"name":"entity.name.variable.local.qsharp"}}},"member-access":{"match":"(?x)\n(\\.)\\s*\n([_[:alpha:]][_[:alnum:]]*)\\b\n(?!\\s*\\()","captures":{"1":{"name":"punctuation.accessor.qsharp"},"2":{"name":"variable.other.property.qsharp"}}},"namespace-declaration":{"begin":"\\b(namespace)\\s+","end":"(?\u003c=\\})","patterns":[{"name":"entity.name.type.namespace.qsharp","match":"[_[:alpha:]][_[:alnum:]]*"},{"include":"#punctuation-accessor"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#comments"},{"include":"#attributes"},{"include":"#import-export-directive"},{"include":"#new-expression"},{"include":"#struct-declaration"},{"include":"#member-access"},{"include":"#tuple-binding"},{"include":"#keywords"},{"include":"#library-invocation"},{"include":"#library"},{"include":"#operations"},{"include":"#types"},{"include":"#literals"},{"include":"#strings"},{"include":"#callable-invocation"},{"include":"#callable-declaration"},{"include":"#udt-declaration"},{"include":"#open-directive"},{"include":"#array-creation-expression"},{"include":"#local-declaration"},{"include":"#array-assignment"},{"include":"#local-assignment"},{"include":"#quantum-declaration"},{"include":"#if-statement"},{"include":"#parenthesized-expression"},{"include":"#expression-operators"},{"include":"#declaration-keywords"},{"include":"#identifier"}],"beginCaptures":{"0":{"name":"punctuation.curlybrace.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.curlybrace.close.qsharp"}}}],"beginCaptures":{"1":{"name":"keyword.other.namespace.qsharp"}}},"new-expression":{"begin":"(?x)\n\\b(new)\\b\\s+\n([_[:alpha:]][_[:alnum:]]*)\\s*\n(?=\\{)","end":"(?\u003c=\\})","patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"#comments"},{"include":"#spread-operator"},{"include":"#field-initializer"},{"include":"#punctuation-comma"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.curlybrace.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.curlybrace.close.qsharp"}}}],"beginCaptures":{"1":{"name":"keyword.other.new.qsharp"},"2":{"name":"entity.name.type.struct.qsharp"}}},"numeric-literal":{"patterns":[{"name":"constant.numeric.hexadecimal.qsharp","match":"\\b0[xX][0-9a-fA-F][0-9a-fA-F_]*[lL]?\\b"},{"name":"constant.numeric.binary.qsharp","match":"\\b0[bB][01][01_]*[lL]?\\b"},{"name":"constant.numeric.octal.qsharp","match":"\\b0[oO][0-7][0-7_]*[lL]?\\b"},{"name":"constant.numeric.decimal.qsharp","match":"(?x)\n\\b\\d[\\d_]* \\. \\d[\\d_]* (?:[eE][+-]?\\d+)? # 1.0 3.14 1.0e-3\n| \\b\\d[\\d_]* [eE][+-]?\\d+ # 1e10\n| \\b\\d[\\d_]* [lL]? # 42 42L 1_000"}]},"open-directive":{"patterns":[{"begin":"\\b(open)\\s*","end":"(?=;)","patterns":[{"include":"#comments"},{"begin":"\\b(as)\\s+(?\u003calias\u003e[_[:alpha:]][_[:alnum:]]*)","end":"(?=;)","beginCaptures":{"1":{"name":"keyword.other.alias.qsharp"},"2":{"name":"entity.name.type.alias.qsharp"}}},{"name":"entity.name.type.namespace.qsharp","match":"[_[:alpha:]][_[:alnum:]]*"},{"include":"#punctuation-accessor"}],"beginCaptures":{"1":{"name":"keyword.other.open.qsharp"}}}]},"operations":{"patterns":[{"name":"keyword.other.qsharp","match":"\\b(as|internal|body|(a|A)djoint|(c|C)ontrolled|self|auto|distribute|invert|intrinsic|is)\\b"}]},"parameter":{"begin":"([_[:alpha:]][_[:alnum:]]*)\\s*(:)","end":"(?=(,|\\)|\\]))","patterns":[{"include":"#comments"},{"include":"#literals"},{"include":"#types"},{"include":"#library"},{"include":"#expression-operators"}],"beginCaptures":{"1":{"name":"entity.name.variable.parameter.qsharp"},"2":{"name":"punctuation.separator.colon.qsharp"}}},"parameter-list":{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#comments"},{"include":"#parameter"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.qsharp"}}},"parenthesized-expression":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.qsharp"}}},"pauli-literal":{"patterns":[{"name":"constant.language.pauli.qsharp","match":"\\b(Pauli(I|X|Y|Z))\\b"}]},"punctuation-accessor":{"name":"punctuation.accessor.qsharp","match":"\\."},"punctuation-comma":{"name":"punctuation.separator.comma.qsharp","match":","},"quantum-declaration":{"begin":"(?x)\n(?:\\b(?:(use)|(borrow))\\b\\s*)\n([_[:alpha:]][_[:alnum:]]*)\\b\\s*\n(?=;|=|\\))","end":"(?=;|\\)|})","patterns":[{"include":"#quantum-initializer"}],"beginCaptures":{"1":{"name":"keyword.other.use.qsharp"},"2":{"name":"keyword.other.borrow.qsharp"},"3":{"name":"entity.name.variable.local.qsharp"}}},"quantum-initializer":{"begin":"(?\u003c!=|!)(=)(?!=|\u003e)","end":"(?=[,\\)\\];}])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.qsharp"}}},"result-literal":{"patterns":[{"name":"constant.language.result.zero.qsharp","match":"(?\u003c!\\.)\\bZero\\b"},{"name":"constant.language.result.one.qsharp","match":"(?\u003c!\\.)\\bOne\\b"}]},"spread-operator":{"name":"keyword.operator.spread.qsharp","match":"\\.\\.\\."},"statements":{"patterns":[{"include":"#comments"},{"include":"#attributes"},{"include":"#import-export-directive"},{"include":"#open-directive"},{"include":"#new-expression"},{"include":"#struct-declaration"},{"include":"#member-access"},{"include":"#tuple-binding"},{"include":"#keywords"},{"include":"#library-invocation"},{"include":"#library"},{"include":"#operations"},{"include":"#types"},{"include":"#literals"},{"include":"#strings"},{"include":"#callable-invocation"},{"include":"#callable-declaration"},{"include":"#udt-declaration"},{"include":"#array-creation-expression"},{"include":"#local-declaration"},{"include":"#array-assignment"},{"include":"#local-assignment"},{"include":"#quantum-declaration"},{"include":"#if-statement"},{"include":"#parenthesized-expression"},{"include":"#expression-operators"},{"include":"#declaration-keywords"},{"include":"#identifier"}]},"strings":{"patterns":[{"name":"string.quoted.double.interpolated.qsharp","begin":"\\$\"","end":"\"","patterns":[{"name":"constant.character.escape.qsharp","match":"\\\\."},{"name":"meta.interpolation.qsharp","begin":"\\{","end":"\\}","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.interpolation.begin.qsharp"}},"endCaptures":{"0":{"name":"punctuation.section.interpolation.end.qsharp"}}}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.qsharp"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.qsharp"}}},{"name":"string.quoted.double.qsharp","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.qsharp","match":"\\\\."}]}]},"struct-declaration":{"begin":"(?x)\n\\b(struct)\\b\\s+\n([_[:alpha:]][_[:alnum:]]*)","end":"(?\u003c=\\})","patterns":[{"include":"#comments"},{"begin":"\\{","end":"\\}","patterns":[{"include":"#comments"},{"include":"#struct-field"},{"include":"#punctuation-comma"},{"include":"#types"},{"include":"#library"}],"beginCaptures":{"0":{"name":"punctuation.curlybrace.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.curlybrace.close.qsharp"}}}],"beginCaptures":{"1":{"name":"keyword.other.struct.qsharp"},"2":{"name":"entity.name.type.struct.qsharp"}}},"struct-field":{"begin":"([_[:alpha:]][_[:alnum:]]*)\\s*(:)","end":"(?=(,|\\}))","patterns":[{"include":"#comments"},{"include":"#type-parameter"},{"include":"#types"},{"include":"#library"}],"beginCaptures":{"1":{"name":"variable.other.property.qsharp"},"2":{"name":"punctuation.separator.colon.qsharp"}}},"tuple-binding":{"begin":"(?x)\n\\b(?:(let)|(mutable)|(set)|(use)|(borrow))\\b\\s*\n(?=\\()","end":"(?=;|\\bin\\b)","patterns":[{"include":"#tuple-pattern"},{"include":"#variable-initializer"},{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.other.let.qsharp"},"2":{"name":"keyword.other.mutable.qsharp"},"3":{"name":"keyword.other.set.qsharp"},"4":{"name":"keyword.other.use.qsharp"},"5":{"name":"keyword.other.borrow.qsharp"}}},"tuple-pattern":{"begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#tuple-pattern"},{"name":"entity.name.variable.local.qsharp","match":"\\b[_[:alpha:]][_[:alnum:]]*\\b"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.parenthesis.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.qsharp"}}},"type-array-suffix":{"begin":"\\b\\[","end":"\\]","patterns":[{"include":"#punctuation-comma"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.squarebracket.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.squarebracket.close.qsharp"}}},"type-parameter":{"name":"entity.name.type.type-parameter.qsharp","match":"'[_[:alpha:]][_[:alnum:]]*"},"type-parameter-list":{"begin":"\\\u003c","end":"\\\u003e","patterns":[{"include":"#comments"},{"match":"('[_[:alpha:]][_[:alnum:]]*)\\b","captures":{"1":{"name":"entity.name.type.type-parameter.qsharp"}}},{"name":"punctuation.separator.colon.qsharp","match":":"},{"name":"keyword.operator.qsharp","match":"\\+"},{"name":"support.type.constraint.qsharp","match":"\\b(Eq|Add|Sub|Mul|Div|Mod|Signed|Ord|Show|Integral|Iterable|Exp)\\b"},{"name":"punctuation.squarebracket.open.qsharp","match":"\\["},{"name":"punctuation.squarebracket.close.qsharp","match":"\\]"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.qsharp"}},"endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.qsharp"}}},"types":{"patterns":[{"include":"#type-parameter"},{"name":"storage.type.qsharp","match":"\\b(Int|BigInt|Double|Bool|Qubit|Pauli|Result|Range|String|Unit|Ctl|Adj)\\b"},{"include":"#type-array-suffix"}]},"udt-declaration":{"begin":"(?=\\bnewtype\\b)","end":"(?\u003c=\\)|;)","patterns":[{"begin":"(?x)\n(newtype)\\b\\s+\n([_[:alpha:]][_[:alnum:]]*)","end":"(?=\\s*=)","beginCaptures":{"1":{"name":"keyword.other.udt.qsharp"},"2":{"name":"entity.name.type.udt.qsharp"}}},{"begin":"(?:\\s*=\\s*)(\\()","end":"\\)","patterns":[{"include":"#comments"},{"include":"#literals"},{"include":"#punctuation-comma"},{"include":"#types"},{"include":"#library"}],"beginCaptures":{"1":{"name":"punctuation.parenthesis.open.qsharp"}},"endCaptures":{"0":{"name":"punctuation.parenthesis.close.qsharp"}}},{"begin":"(?:\\s*=\\s*)","end":"(?=;)","patterns":[{"include":"#comments"},{"include":"#literals"},{"include":"#punctuation-comma"},{"include":"#types"},{"include":"#library"}]}]},"variable-initializer":{"begin":"(?\u003c!=|!)(?:(\\+=)|(-=)|(=)|(\u003c-))(?!=|\u003e)","end":"(?=[,\\)\\];}])","patterns":[{"include":"#expression"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.increment.qsharp"},"2":{"name":"keyword.operator.assignment.decrement.qsharp"},"3":{"name":"keyword.operator.assignment.qsharp"}}}}}
@@ -0,0 +1 @@
1
+ {"name":"RAR Solid Archives Ordering","scopeName":"source.rarlist","patterns":[{"include":"#main"}],"repository":{"comment":{"name":"comment.line.semicolon.rarlist","begin":"^;","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.rarlist"}}},"main":{"patterns":[{"include":"#comment"},{"include":"#variable"},{"include":"source.gitignore#pattern"}]},"variable":{"name":"keyword.control.default-position.rarlist","match":"^(\\$)default(?=\\s*$)","captures":{"1":{"name":"punctuation.definition.keyword.rarlist"}}}}}
@@ -1 +1 @@
1
- {"name":"Rascal","scopeName":"source.rascal","patterns":[{"include":"#top_level"}],"repository":{"annotation":{"patterns":[{"name":"comment.block.annotation.rascal","begin":"(@[^ {]+)({)","end":"(})","beginCaptures":{"1":{"name":"storage.type.annotation.block.rascal"},"2":{"name":"punctuation.annotation-argument.begin.rascal"}},"endCaptures":{"1":{"name":"punctuation.annotation-argument.end.rascal"}}},{"name":"meta.annotation.inline.rascal","match":"(@[A-Za-z_0-9]+)","captures":{"1":{"name":"storage.type.annotation.inline.rascal"}}}]},"char_set":{"patterns":[{"name":"punctuation.other.lexicalcharset.rascal","begin":"\\[","end":"\\]","patterns":[{"include":"#string_escape"}]}]},"comment":{"patterns":[{"name":"comment.line.double-slash.rascal","match":"//.*$\\n?"},{"name":"comment.block.rascal","begin":"/\\*","end":"\\*/"}]},"regex":{"patterns":[{"name":"string.regexp.rascal","end":"/([dims]*)","patterns":[{"include":"#regex_escape"},{"include":"#string_interpolation"}],"endCaptures":{"1":{"name":"storage.modifier.regex.rascal"}}}]},"regex_escape":{"patterns":[{"name":"constant.character.escape.regex.rascal","match":"\\\\(/|\u003c|\u003e|\\\\)"}]},"string":{"patterns":[{"name":"string.quoted.single.rascal","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.double.rascal","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"},{"include":"#string_interpolation"}]},{"name":"string.interpolated.rascal","begin":"`","end":"`","patterns":[{"include":"#string_interpolation"},{"include":"#syntax_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.ordinary.rascal","match":"\\\\(\\\"|\\'|\u003c|\u003e|\\\\|[bnfrt])"},{"name":"constant.character.escape.unicode.rascal","match":"\\\\(u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |U(0[0-9 A-F a-f]|10)[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |a[0-7][0-9A-Fa-f] )"}]},"string_interpolation":{"patterns":[{"name":"support.interpolated-string.rascal","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#top_level"}],"beginCaptures":{"1":{"name":"punctuation.interpolation.begin.rascal"}},"endCaptures":{"2":{"name":"punctuation.interpolation.end.rascal"}}}]},"syntax_escape":{"patterns":[{"name":"constant.character.escape.syntax.rascal","match":"\\\\(\\\\|\u003c|\u003e|`)"}]},"top_level":{"patterns":[{"name":"punctuation.other.syntactic.rascal","begin":"(lexical|syntax)\\s+([a-zA-Z][A-Za-z_0-9]*)","end":";","patterns":[{"include":"#char_set"},{"include":"#string"},{"include":"#comment"},{"include":"#regex"},{"include":"#annotation"}],"captures":{"1":{"name":"keyword.control.rascal"},"2":{"name":"entity.name.type.rascal"}}},{"name":"constant.numeric.decimal.rascal","match":"(?\u003c![A-Za-z_])(0(?![0-9a-z_A-Z])|[1-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"constant.numeric.hex.rascal","match":"(?\u003c![A-Za-z_])0[Xx][0-9A-Fa-f]+(?![0-9a-z_A-Z])"},{"name":"constant.numeric.octal.rascal","match":"(?\u003c![A-Za-z_])0[0-7]+(?![0-9a-z_A-Z])"},{"name":"string.other.datetime.rascal","begin":"\\\\$","end":"\\\\$"},{"name":"constant.numeric.real.rascal","match":"(?\u003c![A-Za-z_]) ([0-9]+[dDfF] |[0-9]+[eE][+\\-]?[0-9]+[dDfF]? |[0-9]+\\.(?!\\.)[0-9]*[dDfF]? |[0-9]+\\.[0-9]*[eE][+\\-]?[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[eE][+\\-]?[0-9]+[dDfF]? )"},{"name":"constant.language.bool.rascal","match":"\\b(true|false)\\b"},{"name":"constant.numeric.rational.rascal","match":"(?\u003c![A-Za-z_])([0-9][0-9]*r|[1-9][0-9]*r[0-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"keyword.control.rascal","match":"\\b(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start)\\b"},{"name":"support.type.basic.rascal","match":"\\b(value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)\\b"},{"include":"#string"},{"include":"#regex"},{"include":"#annotation"},{"include":"#comment"},{"name":"variable.other.ordinary.rascal","match":"\\b[a-zA-Z][A-Za-z_0-9]*\\b"},{"name":"variable.other.escaped-keyword.rascal","match":"\\\\(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start|value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)"},{"name":"string.other.url.rascal","match":"\\|([0-9a-z_A-Z.\\-_~:/?#\\[\\]@!$\u0026'()*+,;=`])+\\|","captures":{"1":{"name":"markup.underline.link.rascal"}}}]}}}
1
+ {"name":"Rascal","scopeName":"source.rascal","patterns":[{"include":"#top_level"}],"repository":{"annotation":{"patterns":[{"name":"comment.block.annotation.rascal","begin":"(@[^ {]+)({)","end":"(})","beginCaptures":{"1":{"name":"storage.type.annotation.block.rascal"},"2":{"name":"punctuation.annotation-argument.begin.rascal"}},"endCaptures":{"1":{"name":"punctuation.annotation-argument.end.rascal"}}},{"name":"meta.annotation.inline.rascal","match":"(@[A-Za-z_0-9]+)","captures":{"1":{"name":"storage.type.annotation.inline.rascal"}}}]},"char_set":{"patterns":[{"name":"punctuation.other.lexicalcharset.rascal","begin":"\\[","end":"\\]","patterns":[{"include":"#string_escape"}]}]},"comment":{"patterns":[{"name":"comment.line.double-slash.rascal","match":"//.*$\\n?"},{"name":"comment.block.rascal","begin":"/\\*","end":"\\*/"}]},"regex":{"patterns":[{"name":"string.regexp.rascal","begin":"/(?!/|\\*)","end":"/([dims]*)","patterns":[{"include":"#regex_escape"},{"include":"#string_interpolation"}],"endCaptures":{"1":{"name":"storage.modifier.regex.rascal"}}}]},"regex_escape":{"patterns":[{"name":"constant.character.escape.regex.rascal","match":"\\\\(/|\u003c|\u003e|\\\\)"}]},"string":{"patterns":[{"name":"string.quoted.single.rascal","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.double.rascal","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"},{"include":"#string_interpolation"}]},{"name":"string.interpolated.rascal","begin":"`","end":"`","patterns":[{"include":"#string_interpolation"},{"include":"#syntax_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.ordinary.rascal","match":"\\\\(\\\"|\\'|\u003c|\u003e|\\\\|[bnfrt])"},{"name":"constant.character.escape.unicode.rascal","match":"\\\\(u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |U(0[0-9 A-F a-f]|10)[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |a[0-7][0-9A-Fa-f] )"}]},"string_interpolation":{"patterns":[{"name":"support.interpolated-string.rascal","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#top_level"}],"beginCaptures":{"1":{"name":"punctuation.interpolation.begin.rascal"}},"endCaptures":{"2":{"name":"punctuation.interpolation.end.rascal"}}}]},"syntax_escape":{"patterns":[{"name":"constant.character.escape.syntax.rascal","match":"\\\\(\\\\|\u003c|\u003e|`)"}]},"top_level":{"patterns":[{"name":"punctuation.other.syntactic.rascal","begin":"(lexical|syntax)\\s+([a-zA-Z][A-Za-z_0-9]*)","end":";","patterns":[{"include":"#char_set"},{"include":"#string"},{"include":"#comment"},{"include":"#regex"},{"include":"#annotation"}],"captures":{"1":{"name":"keyword.control.rascal"},"2":{"name":"entity.name.type.rascal"}}},{"name":"constant.numeric.decimal.rascal","match":"(?\u003c![A-Za-z_])(0(?![0-9a-z_A-Z])|[1-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"constant.numeric.hex.rascal","match":"(?\u003c![A-Za-z_])0[Xx][0-9A-Fa-f]+(?![0-9a-z_A-Z])"},{"name":"constant.numeric.octal.rascal","match":"(?\u003c![A-Za-z_])0[0-7]+(?![0-9a-z_A-Z])"},{"name":"string.other.datetime.rascal","begin":"\\\\$","end":"\\\\$"},{"name":"constant.numeric.real.rascal","match":"(?\u003c![A-Za-z_]) ([0-9]+[dDfF] |[0-9]+[eE][+\\-]?[0-9]+[dDfF]? |[0-9]+\\.(?!\\.)[0-9]*[dDfF]? |[0-9]+\\.[0-9]*[eE][+\\-]?[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[eE][+\\-]?[0-9]+[dDfF]? )"},{"name":"constant.language.bool.rascal","match":"\\b(true|false)\\b"},{"name":"constant.numeric.rational.rascal","match":"(?\u003c![A-Za-z_])([0-9][0-9]*r|[1-9][0-9]*r[0-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"keyword.control.rascal","match":"\\b(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start)\\b"},{"name":"support.type.basic.rascal","match":"\\b(value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)\\b"},{"include":"#string"},{"include":"#regex"},{"include":"#annotation"},{"include":"#comment"},{"name":"variable.other.ordinary.rascal","match":"\\b[a-zA-Z][A-Za-z_0-9]*\\b"},{"name":"variable.other.escaped-keyword.rascal","match":"\\\\(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start|value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)"},{"name":"string.other.url.rascal","match":"\\|([0-9a-z_A-Z.\\-_~:/?#\\[\\]@!$\u0026'()*+,;=`])+\\|","captures":{"1":{"name":"markup.underline.link.rascal"}}}]}}}