github-linguist 7.16.0 → 7.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/bin/github-linguist +1 -0
  3. data/grammars/annotation.liquidhaskell.haskell.json +1 -1
  4. data/grammars/etc.json +1 -1
  5. data/grammars/go.mod.json +1 -0
  6. data/grammars/go.sum.json +1 -0
  7. data/grammars/hint.haskell.json +1 -1
  8. data/grammars/hint.message.haskell.json +1 -1
  9. data/grammars/hint.type.haskell.json +1 -1
  10. data/grammars/liquid.injection.json +1 -0
  11. data/grammars/markdown.curry.codeblock.json +1 -0
  12. data/grammars/markdown.textproto.codeblock.json +1 -0
  13. data/grammars/source.2da.json +1 -0
  14. data/grammars/source.abap.json +1 -1
  15. data/grammars/source.aidl.json +1 -1
  16. data/grammars/source.ballerina.json +1 -1
  17. data/grammars/source.bc.json +1 -0
  18. data/grammars/source.bicep.json +1 -1
  19. data/grammars/source.bnd.json +1 -0
  20. data/grammars/source.cirru.json +1 -1
  21. data/grammars/source.cl.json +1 -0
  22. data/grammars/source.clar.json +1 -0
  23. data/grammars/source.clarion.json +1 -1
  24. data/grammars/source.clojure.json +1 -1
  25. data/grammars/source.cmd.json +1 -0
  26. data/grammars/source.cs.json +1 -1
  27. data/grammars/source.csound.json +1 -1
  28. data/grammars/source.css.json +1 -1
  29. data/grammars/source.curry.json +1 -0
  30. data/grammars/source.dart.json +1 -1
  31. data/grammars/source.data-weave.json +1 -1
  32. data/grammars/source.dc.json +1 -0
  33. data/grammars/source.dds.dspf.json +1 -0
  34. data/grammars/source.dds.icff.json +1 -0
  35. data/grammars/source.dds.lf.json +1 -0
  36. data/grammars/source.dds.pf.json +1 -0
  37. data/grammars/source.dds.prtf.json +1 -0
  38. data/grammars/source.deb-control.json +1 -0
  39. data/grammars/source.debian.makefile.json +1 -0
  40. data/grammars/source.denizenscript.json +1 -0
  41. data/grammars/source.ditroff.json +1 -1
  42. data/grammars/source.earthfile.json +1 -0
  43. data/grammars/source.elixir.json +1 -1
  44. data/grammars/source.euphoria.json +1 -0
  45. data/grammars/source.fsharp.json +1 -1
  46. data/grammars/source.fstar.json +1 -1
  47. data/grammars/source.futhark.json +1 -1
  48. data/grammars/source.gcode.json +1 -1
  49. data/grammars/source.gitignore.json +1 -1
  50. data/grammars/source.gleam.json +1 -0
  51. data/grammars/source.goldgrm.json +1 -0
  52. data/grammars/source.gsc.json +1 -0
  53. data/grammars/source.haskell.json +1 -1
  54. data/grammars/source.hoon.json +1 -0
  55. data/grammars/source.hsig.json +1 -1
  56. data/grammars/source.icurry.json +1 -0
  57. data/grammars/source.janet.json +1 -0
  58. data/grammars/source.jest.snap.json +1 -0
  59. data/grammars/source.jq.json +1 -1
  60. data/grammars/source.js.json +1 -1
  61. data/grammars/source.json.json +1 -1
  62. data/grammars/source.julia.json +1 -1
  63. data/grammars/source.kotlin.json +1 -1
  64. data/grammars/source.m2.json +1 -1
  65. data/grammars/source.matlab.json +1 -1
  66. data/grammars/source.mi.json +1 -0
  67. data/grammars/source.miniyaml.json +1 -0
  68. data/grammars/source.mint.json +1 -0
  69. data/grammars/source.mlir.json +1 -1
  70. data/grammars/source.mo.json +1 -0
  71. data/grammars/source.odin.json +1 -1
  72. data/grammars/source.opts.json +1 -1
  73. data/grammars/source.pcb.schematic.json +1 -1
  74. data/grammars/source.pcb.sexp.json +1 -1
  75. data/grammars/source.pic.json +1 -1
  76. data/grammars/source.pnlgrp.json +1 -0
  77. data/grammars/source.postscript.json +1 -1
  78. data/grammars/source.powershell.json +1 -1
  79. data/grammars/source.procfile.json +1 -0
  80. data/grammars/source.promela.json +1 -0
  81. data/grammars/source.proto.json +1 -1
  82. data/grammars/source.python.kivy.json +1 -0
  83. data/grammars/source.q_output.json +1 -1
  84. data/grammars/source.qsharp.json +1 -1
  85. data/grammars/source.rascal.json +1 -1
  86. data/grammars/source.rego.json +1 -1
  87. data/grammars/source.rescript.json +1 -1
  88. data/grammars/source.rpg.json +1 -0
  89. data/grammars/source.rpgle.json +1 -0
  90. data/grammars/source.scala.json +1 -1
  91. data/grammars/source.shellcheckrc.json +1 -1
  92. data/grammars/source.smali.json +1 -1
  93. data/grammars/source.solidity.json +1 -1
  94. data/grammars/source.sqf.json +1 -1
  95. data/grammars/source.ssh-config.json +1 -1
  96. data/grammars/source.textproto.json +1 -0
  97. data/grammars/source.ts.json +1 -1
  98. data/grammars/source.tsx.json +1 -1
  99. data/grammars/source.v.json +1 -1
  100. data/grammars/source.vyper.json +1 -1
  101. data/grammars/source.witcherscript.json +1 -0
  102. data/grammars/source.ws.json +1 -0
  103. data/grammars/source.wsd.json +1 -1
  104. data/grammars/source.yara.json +1 -1
  105. data/grammars/source.yasnippet.json +1 -1
  106. data/grammars/text.html.liquid.json +1 -1
  107. data/grammars/text.html.php.json +1 -1
  108. data/grammars/text.roff.json +1 -1
  109. data/grammars/text.rtf.json +1 -1
  110. data/grammars/text.tex.latex.haskell.json +1 -1
  111. data/grammars/version +1 -1
  112. data/lib/linguist/VERSION +1 -1
  113. data/lib/linguist/documentation.yml +1 -0
  114. data/lib/linguist/generated.rb +32 -1
  115. data/lib/linguist/heuristics.yml +52 -2
  116. data/lib/linguist/languages.json +1 -1
  117. data/lib/linguist/languages.yml +297 -22
  118. data/lib/linguist/samples.json +1 -1
  119. data/lib/linguist/vendor.yml +4 -1
  120. metadata +82 -40
  121. data/lib/linguist/linguist.bundle +0 -0
@@ -1 +1 @@
1
- {"name":"DataWeave","scopeName":"source.data-weave","patterns":[{"include":"#comments"},{"include":"#directives"},{"name":"keyword.operator.body-marker.dw","match":"(---)"},{"include":"#expressions"},{"name":"invalid","match":"([^\\s]+)"}],"repository":{"array-literal":{"name":"meta.array.literal.dw","begin":"(?\u003c!\\w|}|])(\\[)","end":"\\]","patterns":[{"include":"#expressions"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.square.dw"}},"endCaptures":{"0":{"name":"meta.brace.square.dw"}}},"attr-literal":{"name":"meta.attributes.dw","begin":"\\@\\(","end":"\\)","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"keyword.operator.attributes.dw"}},"endCaptures":{"0":{"name":"keyword.operator.attributes.dw"}}},"case-clause":{"name":"case-clause.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(case|else(?=\\s*-\u003e))\\b(?!\\$|\\.)","end":"\\-\\\u003e","patterns":[{"begin":"(?\u003c!\\.|\\$)\\b(is)\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.control.is.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b(matches)\\b","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.matches.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b([A-Za-z][a-zA-Z0-9_]*)\\s*:\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"entity.name.variable.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b([A-Za-z][a-zA-Z0-9_]*)\\s*(if|matches)\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"entity.name.variable.dw"},"2":{"name":"keyword.control.if.dw"}}},{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.switch.dw"}},"endCaptures":{"0":{"name":"keyword.control.switch.dw"}}},"cast":{"begin":"(?\u003c!\\.|\\$)\\b(as|is)\\s+","end":"(?=$|^|[;,:})\\]\\s])","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.control.as.dw"}}},"comments":{"patterns":[{"name":"comment.block.dw","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.dw"}}},{"match":"\\s*((//).*$\\n?)","captures":{"1":{"name":"comment.line.double-slash.dw"},"2":{"name":"punctuation.definition.comment.dw"}}}]},"constants":{"patterns":[{"name":"constant.language.dw","match":"\\b(true|false|null)\\b"},{"name":"constant.numeric.dw","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b"},{"begin":"\\|","end":"\\|","patterns":[{"name":"constant.numeric.dw","match":"([0-9]+)"},{"name":"constant.character.escape.dw","match":"([+:\\-WYMDTHSPZ\\.])"},{"name":"invalid","match":"([^\\|])"}],"beginCaptures":{"0":{"name":"constant.numeric.dw"}},"endCaptures":{"0":{"name":"constant.numeric.dw"}}}]},"directives":{"patterns":[{"include":"#dw-directive"},{"include":"#import-directive"},{"include":"#type-directive"},{"include":"#fun-directive"},{"include":"#var-directive"},{"include":"#ns-directive"},{"include":"#input-directive"},{"include":"#output-directive"}]},"do-statement":{"name":"do-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(do)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comments"},{"include":"#directives"},{"name":"keyword.operator.body-marker.dw","match":"(---)"},{"include":"#expressions"},{"name":"invalid","match":"([^\\s]+)"}],"beginCaptures":{"1":{"name":"keyword.control.do.dw"},"2":{"name":"punctuation.definitions.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definitions.end.dw"}}},"dw-directive":{"name":"meta.directive.version.dw","begin":"(?\u003c!\\.|\\$)(%dw)\\s+([0-9]\\.[0-9])(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"comment.dw"},"2":{"name":"comment.dw"}}},"expressions":{"name":"expression","patterns":[{"name":"keyword.other.dw","match":"\\b(not)\\s+"},{"include":"#paren-expression"},{"include":"#strings"},{"include":"#constants"},{"include":"#comments"},{"include":"#match-statement"},{"include":"#using-statement"},{"include":"#do-statement"},{"include":"#if-statement"},{"include":"#regex"},{"include":"#keywords"},{"include":"#object-literal"},{"include":"#array-literal"},{"include":"#cast"},{"include":"#object-member"},{"include":"#variable-reference"},{"include":"#selectors"},{"include":"#directives"},{"include":"#infix"}]},"fun-directive":{"name":"meta.directive.fun.dw","begin":"(\\s*(fun)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(=)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]},{"begin":"(:)","end":"(?==)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"function_call":{"name":"function_call","begin":"\\s*\\(","end":"\\s*\\)","patterns":[{"include":"#punctuation-comma"},{"include":"#expressions"}]},"generics":{"patterns":[{"begin":"(:)","end":"(?=,|\u003e)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"keyword.operator.extends.dw","match":"\u003c:"},{"include":"#keywords"},{"name":"entity.name.type.parameter.dw","match":"\\w+"}]},"if-statement":{"name":"meta.if.dw","begin":"(?\u003c!\\.|\\$)\\b(if\\s*)\\(","end":"\\)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.if.dw"}}},"import-directive":{"name":"meta.directive.import.dw","begin":"(\\s*(import)\\s+)","end":"(?=(fun|input|output|type|var|ns|import|%dw|private|---)\\s|$)","patterns":[{"include":"#comments"},{"match":"(,)"},{"match":"(\\*)"},{"match":"\\b(from)\\s+","captures":{"1":{"name":"storage.type.dw"}}},{"name":"entity.name.other.dw","match":"(?:[a-zA-Z][a-zA-Z0-9]*(?:::[a-zA-Z][a-zA-Z0-9]*)*)\n"},{"match":"\\s+(as)\\s+([a-zA-Z][a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.other.dw"},"2":{"name":"entity.name.other.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"}}},"infix":{"name":"support.function.dw","match":"(?\u003c!^|,|\\[|\\(|=|\\+|\u003e|\u003c|\\-|\\*|:|\\{|case|is|else|not|as|and|or)(?\u003c=[a-zA-Z0-9_$\\}\\])\"'`|/])\\s*(?!(var|match|case|else|fun|input|output|is|as|default|ns|import|null|false|true|using|do|not|and|or)\\s)(\\+\\+|\\-\\-|[a-zA-Z][a-zA-Z_0-9]*)(\\s+|\\s*(?=[\"'/|{]))"},"input-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(input)\\s+([[:alpha:]][[:alnum:]]*)\\s*","end":"(?=\\n)","patterns":[{"begin":"(\\:\\s*)","end":"(\\s|\\n)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.other.dw"}}},{"name":"string.mime.dw","match":"([^{\\n\\s])"}],"beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.variable.dw"}}},"keywords":{"patterns":[{"name":"keyword.reserved.dw","match":"\\b(throw|for|yield|enum|private|async)\\b"},{"name":"invalid","match":"\\b(not)\\b"},{"name":"keyword.control.dw","match":"\\b(if|else|while|for|do|using|unless|default)\\b"},{"name":"keyword.operator.comparison.dw","match":"(~=|==|!=|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.dw","match":"(=)"},{"name":"keyword.operator.declaration.dw","match":"(:)"},{"name":"keyword.operator.arithmetic.dw","match":"(\\-|\\+|\\*|\\/)"},{"name":"keyword.other.dw","match":"\\b(and|or)\\b"}]},"match-block":{"name":"match-block.expr.dw","begin":"\\{","end":"(?=\\})","patterns":[{"include":"#case-clause"},{"include":"#expressions"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.dw"}}},"match-statement":{"name":"match-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(match)\\s*(?=\\{)","end":"\\}","patterns":[{"include":"#match-block"}],"beginCaptures":{"1":{"name":"keyword.control.switch.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.block.dw"}}},"ns-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(ns)\\s+([A-Za-z][a-zA-Z0-9_]*)\\s+([^\\n]*)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.namespace.dw"},"3":{"name":"meta.definition.ns.dw string.url.dw"}}},"object-key":{"patterns":[{"name":"meta.object.member.dw meta.object-literal.namespace.dw","match":"\\b([[:alpha:]][_[:alnum:]]+#)","captures":{"0":{"name":"variable.language.dw"}}},{"name":"meta.object.member.dw meta.object-literal.key.dw","begin":"(?=[\\'\\\"\\`])","end":"(?=@\\(|:)","patterns":[{"include":"#strings"}]},{"name":"meta.object.member.dw","match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:|@\\()","end":"(?=,|\\}|\\))","captures":{"1":{"name":"meta.object-literal.key.dw"}}}]},"object-literal":{"name":"meta.objectliteral.dw","begin":"\\{","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.dw"}},"endCaptures":{"0":{"name":"punctuation.definition.block.dw"}}},"object-member":{"patterns":[{"include":"#comments"},{"include":"#paren-expression"},{"begin":"\\s+if\\b","end":"(?=,|})","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"keyword.control.dw"}}},{"include":"#object-key"},{"include":"#attr-literal"},{"include":"#object-member-body"},{"include":"#punctuation-comma"}]},"object-member-body":{"name":"meta.object.member.dw","begin":":","end":"(?=,|\\}|\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"meta.object-literal.key.dw punctuation.separator.key-value.dw"}}},"object-member-type":{"patterns":[{"include":"#comments"},{"name":"variable.language.dw","match":"_"},{"name":"variable.language.dw","match":"([a-zA-Z0-9]+#)"},{"name":"entity.name.type.dw","match":"\\(\\s*([a-zA-Z][a-zA-Z0-9]*)\\s*\\)"},{"name":"meta.object.member.dw","match":"([a-zA-Z][a-zA-Z0-9]*)"},{"include":"#strings"},{"name":"keyword.operator.optional.dw","match":"\\?"},{"name":"keyword.operator.optional.dw","match":"\\*"},{"begin":"(\\@\\()","end":"(\\))","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}],"beginCaptures":{"1":{"name":"keyword.operator.attributes.dw"}},"endCaptures":{"1":{"name":"keyword.operator.attributes.dw"}}},{"begin":"(:)","end":"(?=,|}|\\)|\\|}|\\-}|\\|\\-})","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"invalid","match":"([^\\s])"}]},"output-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(output)\\s+([^\\n{\\s]*)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"string.other.dw"}}},"parameters":{"patterns":[{"begin":"(:)","end":"(?=,|\\)|=)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"begin":"(=)","end":"(?=,|\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"variable.parameter.dw","match":"\\w+"}]},"paren-expression":{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"punctuation.expression.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.expression.end.dw"}}},"punctuation-comma":{"name":"punctuation.separator.comma.dw","match":","},"qstring-backtick":{"begin":"`","end":"`","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.template.dw","match":"([^`])"}],"beginCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.end.dw"}}},"qstring-double":{"begin":"\"","end":"\"","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.quoted.double.dw","match":"([^\"])"}],"beginCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.end.dw"}}},"qstring-single":{"begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.quoted.single.dw","match":"([^'])"}],"beginCaptures":{"0":{"name":"string.quoted.single.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"string.quoted.single.dw punctuation.definition.string.end.dw"},"2":{"name":"invalid.illegal.newline.dw"}}},"regex":{"patterns":[{"name":"string.regexp.dw","begin":"(?\u003c=[=(:,\\[?+!]|replace|match|scan|matches|contains|---|case|-\u003e|and|or|\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\])+\\/(?![\\/*])(?!\\s*[a-zA-Z0-9_$]))","end":"(/)","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.dw"}}},{"name":"string.regexp.dw","begin":"(?\u003c![_$[:alnum:])])\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\])+\\/(?![\\/*])(?!\\s*[a-zA-Z0-9_$]))","end":"(/)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.dw"}}}]},"regex-character-class":{"patterns":[{"name":"constant.other.character-class.regexp","match":"\\\\[wWsSdDtrnvf]|\\."},{"name":"constant.character.numeric.regexp","match":"\\\\([0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]])"},{"name":"constant.character.control.regexp","match":"\\\\c[A-Z]"},{"name":"constant.character.escape.backslash.regexp","match":"\\\\."}]},"regexp":{"patterns":[{"name":"keyword.control.anchor.regexp","match":"\\\\[bB]|\\^|\\$"},{"name":"keyword.other.back-reference.regexp","match":"\\\\[1-9]\\d*"},{"name":"keyword.operator.quantifier.regexp","match":"[?+*]|\\{(\\d+,\\d+|\\d+,|,\\d+|\\d+)\\}\\??"},{"name":"keyword.operator.or.regexp","match":"\\|"},{"name":"meta.group.assertion.regexp","begin":"(\\()((\\?=)|(\\?!))","end":"(\\))","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}}},{"name":"meta.group.regexp","begin":"\\((\\?:)?","end":"\\)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.capture.regexp"}},"endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}}},{"name":"constant.other.character-class.set.regexp","begin":"(\\[)(\\^)?","end":"(\\])","patterns":[{"name":"constant.other.character-class.range.regexp","match":"(?:.|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))\\-(?:[^\\]\\\\]|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))","captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}}},{"include":"#regex-character-class"}],"beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}}},{"include":"#regex-character-class"}]},"selectors":{"name":"meta.selector.data-weave","begin":"(?\u003c![\\[\\(:+*/\\-])(\\s*\\.\\.\\*|\\s*\\.\\.|\\s*\\.\\*|\\s*\\.\\@|\\s*\\.#|\\s*\\.\u0026|\\s*\\.|(?=\\[)|\\:\\:)","end":"(?=\\s|,|\\}|\\)|\\n|\\]|\\(|-|$)","patterns":[{"name":"meta.object.member.dw","match":"\\b([[:alpha:]][_[:alnum:]]+#)","captures":{"0":{"name":"variable.language.dw"}}},{"name":"meta.object.member.dw","match":"((?:[A-Za-z])([a-zA-Z0-9_]*)[?!]?|(\\$)+)"},{"include":"#strings"},{"begin":"(\\[(@|\\^)?)","end":"(\\])","patterns":[{"include":"#expressions"},{"name":"invalid","match":"([\\)])"}]},{"include":"#selectors"}]},"string-character-escape":{"name":"constant.character.escape.dw","match":"\\\\(u[[:xdigit:]]{4}|$|.)"},"strings":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#qstring-backtick"},{"include":"#template"}]},"template":{"begin":"([$[:alpha:]][_$[:alnum:]]*)\\s*(`)","end":"`","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.template.dw","match":"([^`])"}],"beginCaptures":{"1":{"name":"support.function.dw"},"2":{"name":"string.template.dw punctuation.definition.string.template.begin.dw"}},"endCaptures":{"0":{"name":"string.template.dw punctuation.definition.string.template.end.dw"}}},"template-dollar":{"patterns":[{"name":"variable.parameter.dw","match":"(\\$(\\$)+)"},{"name":"variable.parameter.dw","match":"(\\$)(?![a-zA-Z(])"},{"name":"variable.parameter.dw","match":"(\\$)([a-zA-Z][a-zA-Z0-9_]*)","captures":{"1":{"name":"keyword.other.dw"},"2":{"name":"variable.other.dw"}}}]},"template-substitution-element":{"name":"meta.template.expression.dw","begin":"\\$\\(","end":"\\)","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"keyword.other.dw"}},"endCaptures":{"0":{"name":"keyword.other.dw"}}},"type-directive":{"name":"meta.directive.type.dw","begin":"(\\s*(type)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(?=(fun|input|output|type|var|ns|import|%dw|private|---)\\s)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"name":"keyword.other.dw","match":"\\="},{"include":"#types"}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.type.dw"}}},"types":{"patterns":[{"include":"#comments"},{"name":"support.class.dw","match":"\\b(String|Boolean|Number|Range|Namespace|Uri|DateTime|LocalDateTime|Date|LocalTime|Time|TimeZone|Period|Binary|Null|Regex|Nothing|Any|Object|Key)\\b"},{"begin":"\\b(Array|Type)\\s*\u003c\\b","end":"\u003e","patterns":[{"name":"invalid","match":","},{"include":"#types"}],"beginCaptures":{"1":{"name":"support.type.dw"}}},{"name":"keyword.operator.declaration.dw","match":"(\u0026|\\|)"},{"name":"keyword.operator.declaration.dw","match":"\u003c:"},{"name":"support.class.dw","match":"\\b([A-Z][a-zA-Z0-9_]*)"},{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#types"},{"include":"#punctuation-comma"},{"include":"#comments"}]},{"begin":"\\(","end":"(\\)\\s*\\-\\\u003e)","patterns":[{"include":"#types"},{"include":"#parameters"}],"beginCaptures":{"1":{"name":"keyword.operator.tuple.dw"}}},{"begin":"\\{\\-\\|","end":"\\|\\-\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{\\|","end":"\\|\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{\\-","end":"\\-\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{","end":"\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\(","end":"\\)","patterns":[{"include":"#types"}]},{"match":"\\b(var|fun|ns)\\b"},{"name":"invalid","match":"\\b(input|output|var|ns|import|try|catch|throw|do|for|yield|enum|private|async)\\b"},{"name":"invalid","match":"\\b(if|else|while|for|do|using|unless|default|match)\\b"},{"name":"invalid","match":"(~=|==|!=|===|!==|\u003c=|\u003e=|\u003c|\u003e|\\$+)"}]},"using-statement":{"name":"using-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(using)\\s*(\\()","end":"(\\))","patterns":[{"match":"((?:\\+\\+|\\-\\-|[A-Za-z])(?:[a-zA-Z0-9_]*))(\\s*=)","captures":{"1":{"name":"entity.name.variable.dw"},"2":{"name":"keyword.operator.dw"}}},{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.using.dw"},"2":{"name":"punctuation.definitions.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definitions.end.dw"}}},"var-directive":{"name":"meta.directive.var.dw","begin":"(\\s*(var)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(=)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"begin":"(:)","end":"(?==|$)","patterns":[{"include":"#comments"},{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.variable.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"variable-reference":{"patterns":[{"name":"variable.other.dw","match":"\\b(?!(fun|input|output|type|var|ns|import|%dw|private|---)\\b)((\\+\\+|\\-\\-|[A-Za-z])[a-zA-Z0-9_]*)"},{"name":"invalid","match":"\\b(fun|input|output|type|var|ns|import|private)\\b"},{"name":"variable.parameter.dw","match":"(\\$+)"}]}}}
1
+ {"name":"DataWeave","scopeName":"source.data-weave","patterns":[{"include":"#comments"},{"include":"#directives"},{"name":"keyword.operator.body-marker.dw","match":"(---)"},{"include":"#expressions"},{"name":"invalid","match":"([^\\s]+)"}],"repository":{"annotation-directive":{"name":"meta.directive.annot.dw","begin":"(\\s*(annotation)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(?=\\n)","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]}],"beginCaptures":{"2":{"name":"storage.type.annotation.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"annotation-usage":{"name":"meta.annot.usage.dw","begin":"(\\s*(\\@)([a-zA-Z][a-zA-Z0-9]*))","end":"(?=\\n)","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]}],"beginCaptures":{"2":{"name":"storage.type.annotation.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"array-literal":{"name":"meta.array.literal.dw","begin":"(?\u003c!\\w|}|])(\\[)","end":"\\]","patterns":[{"include":"#expressions"},{"include":"#punctuation-comma"}],"beginCaptures":{"0":{"name":"meta.brace.square.dw"}},"endCaptures":{"0":{"name":"meta.brace.square.dw"}}},"attr-literal":{"name":"meta.attributes.dw","begin":"\\@\\(","end":"\\)","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"keyword.operator.attributes.dw"}},"endCaptures":{"0":{"name":"keyword.operator.attributes.dw"}}},"case-clause":{"name":"case-clause.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(case|else(?=\\s*-\u003e))\\b(?!\\$|\\.)","end":"\\-\\\u003e","patterns":[{"begin":"(?\u003c!\\.|\\$)\\b(is)\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.control.is.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b(matches)\\b","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.matches.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b([A-Za-z][a-zA-Z0-9_]*)\\s*:\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"entity.name.variable.dw"}}},{"begin":"(?\u003c!\\.|\\$)\\b([A-Za-z][a-zA-Z0-9_]*)\\s*(if|matches)\\s+","end":"(?=\\-\\\u003e)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"entity.name.variable.dw"},"2":{"name":"keyword.control.if.dw"}}},{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.switch.dw"}},"endCaptures":{"0":{"name":"keyword.control.switch.dw"}}},"cast":{"begin":"(?\u003c!\\.|\\$)\\b(as|is)\\s+","end":"(?=$|^|[;,:})\\]\\s])","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.control.as.dw"}}},"comments":{"patterns":[{"name":"comment.block.dw","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.dw"}}},{"match":"\\s*((//).*$\\n?)","captures":{"1":{"name":"comment.line.double-slash.dw"},"2":{"name":"punctuation.definition.comment.dw"}}}]},"constants":{"patterns":[{"name":"constant.language.dw","match":"\\b(true|false|null)\\b"},{"name":"constant.numeric.dw","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b"},{"begin":"\\|","end":"\\|","patterns":[{"name":"constant.numeric.dw","match":"([0-9]+)"},{"name":"constant.character.escape.dw","match":"([+:\\-WYMDTHSPZ\\.])"},{"name":"invalid","match":"([^\\|])"}],"beginCaptures":{"0":{"name":"constant.numeric.dw"}},"endCaptures":{"0":{"name":"constant.numeric.dw"}}}]},"directives":{"patterns":[{"include":"#dw-directive"},{"include":"#import-directive"},{"include":"#type-directive"},{"include":"#fun-directive"},{"include":"#var-directive"},{"include":"#ns-directive"},{"include":"#input-directive"},{"include":"#output-directive"},{"include":"#annotation-usage"},{"include":"#annotation-directive"}]},"do-statement":{"name":"do-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(do)\\s*(\\{)","end":"(\\})","patterns":[{"include":"#comments"},{"include":"#directives"},{"name":"keyword.operator.body-marker.dw","match":"(---)"},{"include":"#expressions"},{"name":"invalid","match":"([^\\s]+)"}],"beginCaptures":{"1":{"name":"keyword.control.do.dw"},"2":{"name":"punctuation.definitions.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definitions.end.dw"}}},"dw-directive":{"name":"meta.directive.version.dw","begin":"(?\u003c!\\.|\\$)(%dw)\\s+([0-9]\\.[0-9])(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"comment.dw"},"2":{"name":"comment.dw"}}},"expressions":{"name":"expression","patterns":[{"name":"keyword.other.dw","match":"\\b(not)\\s+"},{"include":"#undefined-fun-character"},{"include":"#paren-expression"},{"include":"#strings"},{"include":"#constants"},{"include":"#comments"},{"include":"#match-statement"},{"include":"#using-statement"},{"include":"#do-statement"},{"include":"#if-statement"},{"include":"#regex"},{"include":"#keywords"},{"include":"#object-literal"},{"include":"#array-literal"},{"include":"#cast"},{"include":"#object-member"},{"include":"#variable-reference"},{"include":"#selectors"},{"include":"#directives"},{"include":"#infix"}]},"fun-directive":{"name":"meta.directive.fun.dw","begin":"(\\s*(fun)\\s+([a-zA-Z][a-zA-Z0-9_]*|--|\\+\\+))","end":"(=)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"begin":"\\(","end":"\\)","patterns":[{"include":"#parameters"}]},{"begin":"(:)","end":"(?==)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.function.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"function_call":{"name":"function_call","begin":"\\s*\\(","end":"\\s*\\)","patterns":[{"include":"#punctuation-comma"},{"include":"#expressions"}]},"generics":{"patterns":[{"begin":"(:)","end":"(?=,|\u003e)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"keyword.operator.extends.dw","match":"\u003c:"},{"include":"#keywords"},{"name":"entity.name.type.parameter.dw","match":"\\w+"}]},"if-statement":{"name":"meta.if.dw","begin":"(?\u003c!\\.|\\$)\\b(if\\s*)\\(","end":"\\)","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.if.dw"}}},"import-directive":{"name":"meta.directive.import.dw","begin":"(\\s*(import)\\s+)","end":"(?=(fun|input|output|type|var|ns|import|%dw|private|annotation|\\@|---)\\s|$)","patterns":[{"include":"#comments"},{"match":"(,)"},{"name":"entity.name.type.dw","match":"(\\*)"},{"match":"\\s+(from)\\s+","captures":{"1":{"name":"keyword.control.from"}}},{"name":"entity.name.type.dw","match":"(?:[a-zA-Z][a-zA-Z0-9]*(?:::[a-zA-Z][a-zA-Z0-9]*)+)\n"},{"name":"entity.name.function.dw","match":"(?:[a-zA-Z][a-zA-Z0-9]*)\n"},{"match":"\\s+(as)\\s+([a-zA-Z][a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.control.as"},"2":{"name":"entity.name.function.dw"}}}],"beginCaptures":{"2":{"name":"keyword.control.import"}}},"infix":{"name":"support.function.dw","match":"(?\u003c!^|,|\\[|\\(|=|\\+|\u003e|\u003c|\\-|\\*|:|\\{|case|is|else|not|as|and|or)(?\u003c=[a-zA-Z0-9_$\\}\\])\"'`|/])\\s*(?!(var|match|case|else|fun|input|output|is|as|default|ns|import|null|false|true|using|do|not|and|or)\\s)(\\+\\+|\\-\\-|[a-zA-Z][a-zA-Z_0-9]*)(\\s+|\\s*(?=[\"'/|{]))"},"input-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(input)\\s+([[:alpha:]][[:alnum:]]*)\\s*","end":"(?=\\n)","patterns":[{"begin":"(\\:\\s*)","end":"(\\s|\\n)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.other.dw"}}},{"name":"string.mime.dw","match":"([^{\\n\\s])"}],"beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.variable.dw"}}},"keywords":{"patterns":[{"name":"keyword.reserved.dw","match":"\\b(throw|for|yield|enum|private|async)\\b"},{"name":"invalid","match":"\\b(not)\\b"},{"name":"keyword.control.dw","match":"\\b(if|else|while|for|do|using|unless|default)\\b"},{"name":"keyword.operator.comparison.dw","match":"(~=|==|!=|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"name":"keyword.operator.assignment.dw","match":"(=)"},{"name":"keyword.operator.declaration.dw","match":"(:)"},{"name":"keyword.operator.arithmetic.dw","match":"(\\-|\\+|\\*|\\/)"},{"name":"keyword.other.dw","match":"\\b(and|or)\\b"}]},"match-block":{"name":"match-block.expr.dw","begin":"\\{","end":"(?=\\})","patterns":[{"include":"#case-clause"},{"include":"#expressions"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.dw"}}},"match-statement":{"name":"match-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(match)\\s*(?=\\{)","end":"\\}","patterns":[{"include":"#match-block"}],"beginCaptures":{"1":{"name":"keyword.control.switch.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.block.dw"}}},"ns-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(ns)\\s+([A-Za-z][a-zA-Z0-9_]*)\\s+([^\\n]*)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"entity.name.namespace.dw"},"3":{"name":"meta.definition.ns.dw string.url.dw"}}},"object-key":{"patterns":[{"name":"variable.object.member.dw meta.object-literal.namespace.dw","match":"\\b([[:alpha:]][_[:alnum:]]+#)","captures":{"0":{"name":"variable.language.dw"}}},{"name":"variable.object.member.dw meta.object-literal.key.dw","begin":"(?=[\\'\\\"\\`])","end":"(?=@\\(|:)","patterns":[{"include":"#strings"}]},{"name":"variable.object.member.dw","match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:|@\\()","end":"(?=,|\\}|\\))","captures":{"1":{"name":"meta.object-literal.key.dw"}}}]},"object-literal":{"name":"meta.objectliteral.dw","begin":"\\{","end":"\\}","patterns":[{"include":"#object-member"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.dw"}},"endCaptures":{"0":{"name":"punctuation.definition.block.dw"}}},"object-member":{"name":"meta.object.member.first.dw","patterns":[{"include":"#comments"},{"include":"#paren-expression"},{"include":"#object-key"},{"include":"#attr-literal"},{"include":"#object-member-body"},{"include":"#punctuation-comma"}]},"object-member-body":{"name":"variable.object.member.dw","begin":":","end":"(?=,|\\}|\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"meta.object-literal.key.dw punctuation.separator.key-value.dw"}}},"object-member-type":{"patterns":[{"include":"#comments"},{"name":"variable.language.dw","match":"_"},{"name":"variable.language.dw","match":"([a-zA-Z0-9]+#)"},{"name":"entity.name.type.dw","match":"\\(\\s*([a-zA-Z][a-zA-Z0-9]*)\\s*\\)"},{"name":"variable.object.member.dw","match":"([a-zA-Z][a-zA-Z0-9]*)"},{"include":"#strings"},{"name":"keyword.operator.optional.dw","match":"\\?"},{"name":"keyword.operator.optional.dw","match":"\\*"},{"begin":"(\\@\\()","end":"(\\))","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}],"beginCaptures":{"1":{"name":"keyword.operator.attributes.dw"}},"endCaptures":{"1":{"name":"keyword.operator.attributes.dw"}}},{"begin":"(:)","end":"(?=,|}|\\)|\\|}|\\-}|\\|\\-})","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"invalid","match":"([^\\s])"}]},"output-directive":{"name":"meta.directive.ns.dw","begin":"(?\u003c!\\.|\\$)\\b(output)\\s+([^\\n{\\s]*)(?!\\$|\\.)","end":"(?=\\n)","beginCaptures":{"1":{"name":"storage.type.dw"},"2":{"name":"string.other.dw"}}},"parameters":{"patterns":[{"begin":"(:)","end":"(?=,|\\)|=)","patterns":[{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"begin":"(=)","end":"(?=,|\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}},{"name":"variable.parameter.dw","match":"\\w+"}]},"paren-expression":{"begin":"(\\()","end":"(\\))","patterns":[{"include":"#expressions"}],"beginCaptures":{"1":{"name":"punctuation.expression.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.expression.end.dw"}}},"punctuation-comma":{"name":"punctuation.separator.comma.dw","match":","},"qstring-backtick":{"begin":"`","end":"`","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.template.dw","match":"([^`])"}],"beginCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.end.dw"}}},"qstring-double":{"begin":"\"","end":"\"","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.quoted.double.dw","match":"([^\"])"}],"beginCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"0":{"name":"string.quoted.double.dw punctuation.definition.string.end.dw"}}},"qstring-single":{"begin":"'","end":"(\\')|((?:[^\\\\\\n])$)","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.quoted.single.dw","match":"([^'])"}],"beginCaptures":{"0":{"name":"string.quoted.single.dw punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"string.quoted.single.dw punctuation.definition.string.end.dw"},"2":{"name":"invalid.illegal.newline.dw"}}},"regex":{"patterns":[{"name":"string.regexp.dw","begin":"(?\u003c=[=(:,\\[?+!]|replace|match|scan|matches|contains|---|case|-\u003e|and|or|\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\])+\\/(?![\\/*])(?!\\s*[a-zA-Z0-9_$]))","end":"(/)","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.dw"}}},{"name":"string.regexp.dw","begin":"(?\u003c![_$[:alnum:])])\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\])+\\/(?![\\/*])(?!\\s*[a-zA-Z0-9_$]))","end":"(/)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.dw"}}}]},"regex-character-class":{"patterns":[{"name":"constant.other.character-class.regexp","match":"\\\\[wWsSdDtrnvf]|\\."},{"name":"constant.character.numeric.regexp","match":"\\\\([0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]])"},{"name":"constant.character.control.regexp","match":"\\\\c[A-Z]"},{"name":"constant.character.escape.backslash.regexp","match":"\\\\."}]},"regexp":{"patterns":[{"name":"keyword.control.anchor.regexp","match":"\\\\[bB]|\\^|\\$"},{"name":"keyword.other.back-reference.regexp","match":"\\\\[1-9]\\d*"},{"name":"keyword.operator.quantifier.regexp","match":"[?+*]|\\{(\\d+,\\d+|\\d+,|,\\d+|\\d+)\\}\\??"},{"name":"keyword.operator.or.regexp","match":"\\|"},{"name":"meta.group.assertion.regexp","begin":"(\\()((\\?=)|(\\?!))","end":"(\\))","patterns":[{"include":"#regexp"}],"beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}}},{"name":"meta.group.regexp","begin":"\\((\\?:)?","end":"\\)","patterns":[{"include":"#regexp"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.capture.regexp"}},"endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}}},{"name":"constant.other.character-class.set.regexp","begin":"(\\[)(\\^)?","end":"(\\])","patterns":[{"name":"constant.other.character-class.range.regexp","match":"(?:.|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))\\-(?:[^\\]\\\\]|(\\\\(?:[0-7]{3}|x[[:xdigit:]][[:xdigit:]]|u[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]]))|(\\\\c[A-Z])|(\\\\.))","captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}}},{"include":"#regex-character-class"}],"beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}}},{"include":"#regex-character-class"}]},"selectors":{"name":"meta.selector.data-weave","begin":"(?\u003c![\\[\\(:+*/\\-])(\\s*\\.\\.\\*|\\s*\\.\\.|\\s*\\.\\*|\\s*\\.\\@|\\s*\\.#|\\s*\\.\u0026|\\s*\\.|(?=\\[)|\\:\\:)","end":"(?=\\s|,|\\}|\\)|\\n|\\]|\\(|-|$)","patterns":[{"name":"variable.object.member.dw","match":"\\b([[:alpha:]][_[:alnum:]]+#)","captures":{"0":{"name":"variable.language.dw"}}},{"name":"variable.object.member.dw","match":"((?:[A-Za-z])([a-zA-Z0-9_]*)[?!]?|(\\$)+)"},{"include":"#strings"},{"begin":"(\\[(@|\\^)?)","end":"(\\])","patterns":[{"include":"#expressions"},{"name":"invalid","match":"([\\)])"}]},{"include":"#selectors"}]},"string-character-escape":{"name":"constant.character.escape.dw","match":"\\\\(u[[:xdigit:]]{4}|$|.)"},"strings":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#qstring-backtick"},{"include":"#template"}]},"template":{"begin":"([$[:alpha:]][_$[:alnum:]]*)\\s*(`)","end":"`","patterns":[{"include":"#template-substitution-element"},{"include":"#template-dollar"},{"include":"#string-character-escape"},{"name":"string.template.dw","match":"([^`])"}],"beginCaptures":{"1":{"name":"support.function.dw"},"2":{"name":"string.template.dw punctuation.definition.string.template.begin.dw"}},"endCaptures":{"0":{"name":"string.template.dw punctuation.definition.string.template.end.dw"}}},"template-dollar":{"patterns":[{"name":"variable.parameter.dw","match":"(\\$(\\$)+)"},{"name":"variable.parameter.dw","match":"(\\$)(?![a-zA-Z(])"},{"name":"variable.parameter.dw","match":"(\\$)([a-zA-Z][a-zA-Z0-9_]*)","captures":{"1":{"name":"keyword.other.dw"},"2":{"name":"variable.other.dw"}}}]},"template-substitution-element":{"name":"meta.template.expression.dw","begin":"\\$\\(","end":"\\)","patterns":[{"include":"#expressions"}],"beginCaptures":{"0":{"name":"keyword.other.dw"}},"endCaptures":{"0":{"name":"keyword.other.dw"}}},"type-directive":{"name":"meta.directive.type.dw","begin":"(\\s*(type)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(?=(fun|input|output|type|var|ns|import|%dw|private|---)\\s|(\\@[a-zA-Z][a-zA-Z0-9]*))","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"name":"keyword.other.dw","match":"\\="},{"include":"#types"}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.type.dw"}}},"types":{"patterns":[{"include":"#comments"},{"name":"constant.language.dw","match":"\\b(true|false|null)\\b"},{"name":"constant.numeric.dw","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b"},{"include":"#strings"},{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#types"},{"include":"#punctuation-comma"},{"include":"#comments"}]},{"begin":"\\{\\-\\|","end":"\\|\\-\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{\\|","end":"\\|\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{\\-","end":"\\-\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"\\{","end":"\\}","patterns":[{"include":"#punctuation-comma"},{"include":"#object-member-type"}]},{"begin":"(\\()","end":"(\\)\\s*-\u003e|\\))","patterns":[{"include":"#types"},{"include":"#parameters"}],"beginCaptures":{"0":{"name":"keyword.operator.grouping.dw"}},"endCaptures":{"0":{"name":"keyword.operator.grouping.dw"}}},{"name":"support.class.dw","match":"(String|Boolean|Number|Range|Namespace|Uri|DateTime|LocalDateTime|Date|LocalTime|TimeZone|Time|Period|Binary|Null|Regex|Nothing|Any|Object|Key)"},{"begin":"(Array|Type)\\s*\u003c","end":"\u003e","patterns":[{"name":"invalid","match":","},{"include":"#types"}],"beginCaptures":{"1":{"name":"support.type.dw"}}},{"name":"keyword.operator.declaration.dw","match":"(\u0026|\\|)"},{"name":"keyword.operator.declaration.dw","match":"\u003c:"},{"name":"support.class.dw","match":"\\b([A-Z][a-zA-Z0-9_]*)"},{"include":"#undefined-fun-character"},{"match":"\\b(var|fun|ns)\\b"},{"name":"invalid","match":"\\b(input|output|var|ns|import|try|catch|throw|do|for|yield|enum|private|async)\\b"},{"name":"invalid","match":"\\b(if|else|while|for|do|using|unless|default|match)\\b"},{"name":"invalid","match":"(~=|==|!=|===|!==|\u003c=|\u003e=|\u003c|\u003e|\\$+)"}]},"undefined-fun-character":{"name":"constant.language.undefined.dw","match":"\\?\\?\\?"},"using-statement":{"name":"using-statement.expr.dw","begin":"(?\u003c!\\.|\\$)\\b(using)\\s*(\\()","end":"(\\))","patterns":[{"match":"((?:\\+\\+|\\-\\-|[A-Za-z])(?:[a-zA-Z0-9_]*))(\\s*=)","captures":{"1":{"name":"entity.name.variable.dw"},"2":{"name":"keyword.operator.dw"}}},{"include":"#expressions"}],"beginCaptures":{"1":{"name":"keyword.control.using.dw"},"2":{"name":"punctuation.definitions.begin.dw"}},"endCaptures":{"1":{"name":"punctuation.definitions.end.dw"}}},"var-directive":{"name":"meta.directive.var.dw","begin":"(\\s*(var)\\s+([a-zA-Z][a-zA-Z0-9]*))","end":"(=)","patterns":[{"begin":"\u003c","end":"\u003e","patterns":[{"include":"#generics"}]},{"begin":"(:)","end":"(?==|$)","patterns":[{"include":"#comments"},{"include":"#types"}],"beginCaptures":{"1":{"name":"keyword.operator.declaration.dw"}}}],"beginCaptures":{"2":{"name":"storage.type.dw"},"3":{"name":"entity.name.variable.dw"}},"endCaptures":{"0":{"name":"keyword.operator.assignment.dw"}}},"variable-reference":{"patterns":[{"name":"variable.other.dw","match":"\\b(?!(fun|input|output|type|var|ns|import|%dw|private|---)\\b)((\\+\\+|\\-\\-|[A-Za-z])[a-zA-Z0-9_]*)"},{"name":"invalid","match":"\\b(fun|input|output|type|var|ns|import|private)\\b"},{"name":"variable.parameter.dw","match":"(\\$+)"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DC","scopeName":"source.dc","patterns":[{"include":"#main"}],"repository":{"arithmetic":{"patterns":[{"match":"[-+*/%^]","captures":{"0":{"patterns":[{"include":"etc#opMath"}]}}},{"name":"keyword.operator.arithmetic.divide-with-remainder.non-standard.dc","match":"~"},{"name":"keyword.operator.arithmetic.modular-exponentiation.dc","match":"\\|"},{"name":"keyword.operator.arithmetic.square-root.dc","match":"v"}]},"commands":{"patterns":[{"name":"keyword.operator.prompt.readline.dc","match":"\\?"},{"name":"keyword.operator.quit.dc","match":"q"},{"name":"keyword.operator.exit-macro.dc","match":"Q"},{"name":"keyword.operator.execute.dc","match":"x"},{"name":"keyword.operator.conditional.greater-than.dc","match":"\u003e"},{"name":"keyword.operator.conditional.less-than.dc","match":"\u003c"},{"name":"keyword.operator.conditional.equal.dc","match":"="},{"name":"keyword.operator.conditional.not.greater-than.dc","match":"!\u003e"},{"name":"keyword.operator.conditional.not.less-than.dc","match":"!\u003c"},{"name":"keyword.operator.conditional.not.equal.dc","match":"!="},{"name":"keyword.operator.ascii-character.non-standard.dc","match":"a"},{"name":"keyword.operator.clear.dc","match":"c"},{"name":"keyword.operator.comparison.equal.non-standard.dc","match":"G"},{"name":"keyword.operator.comparison.less-than.non-standard.dc","match":"\\("},{"name":"keyword.operator.comparison.less-than-or-equal.non-standard.dc","match":"\\{"},{"name":"keyword.operator.return.non-standard.dc","match":"J"},{"name":"keyword.operator.mark.non-standard.dc","match":"M"},{"name":"keyword.operator.convert-to-binary.non-standard.dc","match":"N"},{"name":"keyword.operator.duplicate.dc","match":"d"},{"name":"keyword.operator.remove.non-standard.dc","match":"R"},{"name":"keyword.operator.reverse.non-standard.dc","match":"r"},{"name":"keyword.operator.register.save.dc","match":"s|S"},{"name":"keyword.operator.register.load.dc","match":"l|L"},{"name":"keyword.operator.item-access.get.dc","match":";"},{"name":"keyword.operator.item-access.set.dc","match":":"},{"name":"keyword.operator.parameter.set.input-radix.dc","match":"i"},{"name":"keyword.operator.parameter.get.input-radix.dc","match":"I"},{"name":"keyword.operator.parameter.set.output-radix.dc","match":"o"},{"name":"keyword.operator.parameter.get.output-radix.dc","match":"O"},{"name":"keyword.operator.parameter.set.precision.dc","match":"k"},{"name":"keyword.operator.parameter.get.precision.dc","match":"K"},{"name":"keyword.operator.print.dc","match":"p"},{"name":"keyword.operator.print-error.non-standard.dc","match":"e"},{"name":"keyword.operator.print-without-newline.non-standard.dc","match":"n"},{"name":"keyword.operator.print-and-pop.dc","match":"P"},{"name":"keyword.operator.print-stack.dc","match":"f"},{"name":"keyword.operator.sizeof.value.dc","match":"Z"},{"name":"keyword.operator.sizeof.fraction.dc","match":"X"},{"name":"keyword.operator.sizeof.stack.dc","match":"z"}]},"main":{"patterns":[{"include":"etc#comment"},{"include":"#register"},{"include":"#number"},{"include":"#arithmetic"},{"include":"#commands"},{"include":"#string"},{"include":"#shell"}]},"number":{"name":"constant.numeric.dc","match":"_?(?:[0-9A-F]+(?:\\.[0-9A-F]*)?|\\.[0-9A-F]*)"},"register":{"match":"(?:(?\u003c=[slSL:;\u003c=\u003e])|(?\u003c=[\u003c=\u003e].)((e)))(.)","captures":{"1":{"name":"keyword.operator.ternary.non-standard.dc"},"2":{"name":"punctuation.separator.ternary.non-standard.dc"},"3":{"name":"entity.name.register.dc"}}},"shell":{"name":"meta.system-command.dc","match":"(!)(?![\u003c=\u003e])(.*)","captures":{"1":{"name":"keyword.control.run-command.dc"},"2":{"name":"source.embedded.shell","patterns":[{"include":"source.shell"}]}}},"string":{"patterns":[{"name":"string.quoted.brackets.empty.dc","match":"(\\[)(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.dc"},"2":{"name":"punctuation.definition.string.end.dc"}}},{"name":"string.quoted.brackets.dc","match":"(?x)\n(\\[)\n\t(?:[^\\[\\]\\\\]|\\\\(?:\\\\|\\]))*?\n\t[^-+*/%^~|v;:!?\u003c=\u003eacdefGiIJkKlLMNnoOpPqQRrsSxXZz\\s\\d_.A-F\\[\\]\\({]\n\t(?:[^\\[\\]\\\\]|\\\\(?:\\\\|\\]))*?\n(\\])","captures":{"1":{"name":"punctuation.definition.string.begin.dc"},"2":{"name":"punctuation.definition.string.begin.dc"}}},{"match":"(?x)\n(?:\n\t(\\g\u003cstring\u003e) (?!\\s*(?:[pfd]\\s*)*+[xsS:]) |\n\t(\\g\u003cstring\u003e) (?=\\s*(?:[pfd]\\s*)*+[xsS:])\n)\n\n# Match a non-bracket or an escape sequence\n(?\u003cnonbracket\u003e\n\t[^\\[\\]\\\\]\n\t|\n\t\\\\ (?:\\\\|\\])\n){0}\n\n# Match balanced brackets recursively\n(?\u003cstring\u003e\n\t\\[\n\t\t(?\u003cbrackets\u003e\n\t\t\t\\g\u003cnonbracket\u003e++\n\t\t\t|\n\t\t\t\\g\u003cnonbracket\u003e*+\n\t\t\t\\[ \\g\u003cbrackets\u003e? \\]\n\t\t\t\\g\u003cnonbracket\u003e*+\n\t\t)\n\t\\]\n){0}","captures":{"1":{"name":"string.quoted.brackets.dc","patterns":[{"match":"(?:^|\\G)(\\[)(.*)(\\])$","captures":{"1":{"name":"punctuation.definition.string.begin.dc"},"2":{"patterns":[{"include":"#stringEscape"}]},"3":{"name":"punctuation.definition.string.end.dc"}}}]},"2":{"name":"meta.function.dc","patterns":[{"match":"(?:\\G|^)([^\\[]*)(\\[)(.*)(\\])([^\\]]*)$","captures":{"1":{"patterns":[{"include":"#stringMacro"}]},"2":{"name":"punctuation.definition.function.begin.dc"},"3":{"patterns":[{"include":"#stringMacro"}]},"4":{"name":"punctuation.definition.function.end.dc"},"5":{"patterns":[{"include":"#stringMacro"}]}}}]}}},{"name":"meta.function.multiline.dc","begin":"\\[","end":"\\]","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.function.begin.dc"}},"endCaptures":{"0":{"name":"punctuation.definition.function.end.dc"}}}]},"stringEscape":{"patterns":[{"name":"constant.character.escape.bracket.dc","match":"(\\\\)\\]","captures":{"1":{"name":"punctuation.definition.escape.backslash.dc"}}},{"name":"constant.character.escape.backslash.dc","match":"(\\\\)\\\\","captures":{"1":{"name":"punctuation.definition.escape.backslash.dc"}}}]},"stringMacro":{"patterns":[{"include":"#stringEscape"},{"include":"#main"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DDS.DSPF","scopeName":"source.dds.dspf","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#gutter"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"name":"comment.line.dds.dspf","match":"^.{5}(.)(\\*).*"}]},"constants":{"patterns":[{"name":"constant.language.dds.dspf","match":"[*][a-zA-Z][a-zA-Z0-9]*"},{"name":"constant.language.dds.dspf.andor","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{0}))(A|O)"},{"name":"constant.language.dds.dspf.n01","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{1}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.dspf.n02","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{4}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.dspf.n03","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{7}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.dspf.nameType","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{10}))(R|H)"},{"name":"constant.language.dds.dspf.ref","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{22}))(R)"},{"name":"constant.language.dds.dspf.len","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{23}))[0-9|\\s]{5}"},{"name":"constant.language.dds.dspf.dataType","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{28}))(A|D|E|F|G|I|J|L|M|N|O|S|T|W|X|Y|Z)"},{"name":"constant.language.dds.dspf.decpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{29}))[0-9|\\s]{2}"},{"name":"constant.language.dds.dspf.usage","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{31}))(O|I|B|H|M|P)"},{"name":"constant.language.dds.dspf.locline","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{32}))([0-9]|\\s){3}"},{"name":"constant.language.dds.dspf.locpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{35}))([0-9]|\\s){3}"},{"name":"constant.numeric.dds.dspf","match":"\\b([0-9]+)\\b"},{"name":"dds.dspf.check","begin":"(?i)(?\u003c=(CHECK\\())","end":"(?=(\\)))","patterns":[{"name":"constant.other.dds.dspf.check.values","match":"(?i)(\\b(AB|ME|MF|M10F|M10|M11F|M11|VNE|VN|ER|FE|LC|RB|RZ|RLTB|RL)\\b)"}]},{"name":"dds.dspf.dspatr","begin":"(?i)(?\u003c=(DSPATR\\())","end":"(?=(\\)))","patterns":[{"name":"constant.other.dds.dspf.dspatr.values","match":"(?i)(\\b(SP|PR|OID|MDT|UL|RI|PC|ND|HI|CS|BL)\\b)"}]},{"name":"dds.dspf.color","begin":"(?i)(?\u003c=(COLOR\\())","end":"(?=(\\)))","patterns":[{"name":"constant.other.dds.dspf.color.values","match":"(?i)(\\b(BLU|PNK|YLW|TRQ|RED|WHT|GRN)\\b)"}]},{"name":"dds.dspf.comp","begin":"(?i)((?\u003c=((COMP)\\())|(?\u003c=((CMP)\\()))","end":"(?=(\\)))","patterns":[{"name":"keyword.other.dds.dspf.comp.values","match":"(?i)(\\b(GE|LE|NG|GT|NL|LT|NE|EQ)\\b)"},{"name":"constant.numeric.dds.dspf","match":"\\b([0-9]+)\\b"}]}]},"gutter":{"patterns":[{"name":"comment.gutter","match":"^.{5}"}]},"identifiers":{"patterns":[{"name":"identifier.other.dds.dspf.identifiers","match":"[a-zA-Z_#$][a-zA-Z0-9_.#$]*"}]},"keywords":{"patterns":[{"name":"keyword.other.dds.dspf.spec","match":"(?i)(?\u003c=^.{5})[A]"},{"name":"keyword.other.dds.dspf","match":"\\+"},{"name":"keyword.other.dds.dspf.func","match":"((?i)(C(A|F)))[0-9]{2}"},{"name":"keyword.other.dds.dspf.funcs","match":"(?i)(?\u003c=(.{44}))(WRDWRAP|WINDOW|WDWTITLE|WDWBORDER|VLDCMDKEY|VALUES|VALNUM|USRRSTDSP|USRDSPMGT|USRDFN|USER|UNLOCK|TIMSEP|TIMFMT|TIME|TEXT|SYSNAME|SNGCHCFLD|SLNO|SFLSNGCHC|SFLSIZ|SFLSCROLL|SFLRTNSEL|SFLROLVAL|SFLRNA|SFLRCDNBR|SFLPGMQ|SFLPAG|SFLNXTCHG|SFLMSGRCD|SFLMSGKEY|SFLMSG|SFLMODE|SFLMLTCHC|SFLLIN|SFLINZ|SFLFOLD|SFLENTER|SFLEND|SFLDSPCTL|SFLDSP|SFLDROP|SFLDLT|SFLCTL|SFLCRRRN|SFLCSRPRG|SFLCLR|SFLCHCCTL|SETOFF|SETOF|RTNDTA|RTNCSRLOC|ROLLUP|ROLLDOWN|RMVWDW|RETLCKSTS|RETKEY|REFFLD|REF|RANGE|PUTRETAIN|PUTOVR|PULLDOWN|PSHBTNFLD|PSHBTNCHC|PROTECT|PRINT|PASSRCD|PAGEDOWN|PAGEUP|OVRDTA|OVRATR|OVERLAY|OPENPRT|NOCCSID|MSGLOC|MSGID|MSGCON|MSGALARM|MOUBTN|MNUCNL|MNUBARSW|MNUBARSEP|MNUBARDSP|MNUBARCHC|MNUBAR|MLTCHFLD|MDTOFF|MAPVAL|LOWER|LOGOUT|LOGINP|LOCK|KEEP|INZRCD|INZINP|INVITE|INDTXT|INDARA|HTML|HOME|HLPTITLE|HLPSEQ|HLPSCHIDX|HLPRTN|HLPRCD|HLPPNLGRP|HLPID|HLPFULL|HLPEXCLD|HLPDOC|HLPCMDKEY|HLPCLR|HLPBDY|HLPARA|HELP|GETRETAIN|FRCDTA|FLTPCN|FLTFIXDEC|FLDCSRPRG|ERRSFL|ERRMSG|ERRMSGID|ERASEINP|ERASE|ENTFLDATR|EDTWRD|EDTMSK|EDTCDE|DUP|DSPSIZ|DSPRL|DSPMOD|DSPATR|DLTEDT|DLTCHK|DFTVAL|DFT|DATSEP|DATFMT|DATE|CSRLOC|CSRINPONLY|COMP|COLOR|CNTFLD|CLEAR|CHRID|CHOICE|CHKMSGID|CHGINPDFT|CHECK|CHCUNAVAIL|CHCSLT|CHCCTL|CHCAVAIL|CHCACCEL|CHANGE|BLKFOLD|BLINK|BLANKS|AUTO|ASSUME|ALWROL|ALWGPH|ALTPAGEDWN|ALTPAGEUP|ALTNAME|ALTHELP|ALIAS|ALARM)\\b"},{"name":"keyword.other.dds.dspf.funcs","match":"\\b(?i)(CMP|CLRL|SFL)\\b"}]},"strings":{"name":"string.quoted.single.dds.dspf","begin":"'","end":"'","patterns":[{"name":"keyword.other.dds.dspf.spec","match":"(?i)(?\u003c=^.{5})[A]"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DDS.ICFF","scopeName":"source.dds.icff","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#gutter"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"name":"comment.line.dds.icff","match":"^.{5}(.)(\\*).*"}]},"constants":{"patterns":[{"name":"constant.language.dds.icff","match":"[*][a-zA-Z][a-zA-Z0-9]*"},{"name":"constant.language.dds.icff.andor","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{0}))(A|O)"},{"name":"constant.language.dds.icff.n01","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{1}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.icff.n02","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{4}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.icff.n03","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{7}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.icff.nameType","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{10}))(R|H)"},{"name":"constant.language.dds.icff.ref","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{22}))R"},{"name":"constant.language.dds.icff.len","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{23}))[0-9|\\s]{5}"},{"name":"constant.language.dds.icff.dataType","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{28}))(P|S|B|F|A|O)"},{"name":"constant.language.dds.icff.decpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{29}))[0-9|\\s]{2}"},{"name":"constant.language.dds.icff.usage","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{31}))(B|P)"},{"name":"constant.language.dds.icff.locline","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{32}))([0-9]|\\s){3}"},{"name":"constant.numeric.dds.icff","match":"\\b([0-9]+)\\b"}]},"gutter":{"patterns":[{"name":"comment.gutter","match":"^.{5}"}]},"identifiers":{"patterns":[{"name":"identifier.other.dds.icff.identifiers","match":"[a-zA-Z_#$][a-zA-Z0-9_.#$]*"}]},"keywords":{"patterns":[{"name":"keyword.other.dds.icff.spec","match":"(?i)(?\u003c=^.{5})[A]"},{"name":"keyword.other.dds.icff","match":"\\+"},{"name":"keyword.other.dds.icff.func","match":"((?i)(C(A|F)))[0-9]{2}"},{"name":"keyword.other.dds.icff.funcs","match":"(?i)(?\u003c=(.{44}))(VARLEN|VARBUFMGT|TNSSYNLVL|TIMER|TEXT|SYNLVL|SUBDEV|SECURITY|RSPCONFIRM|RQSWRT|REFFLD|REF|RECID|RCVTRNDRND|RCVTKCMT|RCVROLLB|RCVNEGRSP|RCVFMH|RCVFAIL|RCVENDGRP|RCVDETACH|RCVCTLDTA|RCVCONFIRM|RCVCANCEL|PRPCMT|NEGRSP|INVITE|INDTXT|INDARA|FRCDTA|FMTNAME|FMH|FLTPCN|FAIL|EVOKE|EOS|ENDGRP|DFREVOKE|DETACH|CTLDTA|CONFIRM|CNLINVITE|CANCEL|ALWWRT|ALIAS)\\b"},{"name":"keyword.other.dds.icff.funcs","match":"\\b(?i)(CMP|CLRL|SFL)\\b"}]},"strings":{"name":"string.quoted.single.dds.icff","begin":"'","end":"'","patterns":[{"name":"keyword.other.dds.icff.spec","match":"(?i)(?\u003c=^.{5})[A]"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DDS.LF","scopeName":"source.dds.lf","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#gutter"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"name":"comment.line.dds.lf","match":"^.{5}(.)(\\*).*"}]},"constants":{"patterns":[{"name":"constant.language.dds.lf","match":"[*][a-zA-Z][a-zA-Z0-9]*"},{"name":"constant.language.dds.lf.nametype","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{10}))(R|K|J|S|O)"},{"name":"constant.language.dds.lf.ref","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{22}))R"},{"name":"constant.language.dds.lf.len","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{23}))[0-9|\\s]{5}"},{"name":"constant.language.dds.lf.datatype","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{28}))(P|S|B|F|A|L|T|Z|H|J|E|O|G|5)"},{"name":"constant.language.dds.lf.decpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{29}))[0-9|\\s]{2}"},{"name":"constant.language.dds.lf.use","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{31}))(B|I|N)"},{"name":"constant.numeric.dds.lf","match":"(\\b[0-9]+)|([0-9]*[.][0-9]*)"}]},"gutter":{"patterns":[{"name":"comment.gutter","match":"^.{5}"}]},"identifiers":{"patterns":[{"name":"identifier.other.dds.lf.identifiers","match":"[a-zA-Z_#$][a-zA-Z0-9_.#$]*"}]},"keywords":{"patterns":[{"name":"keyword.other.dds.lf.spec","match":"(?i)(?\u003c=^.{5})[A]"},{"name":"keyword.other.dds.lf","match":"\\+"},{"name":"keyword.other.dds.lf.funcs","match":"(?i)(?\u003c=(.{44}))(?\u003c=((?\u003c=^[\\s]{5}[A|\\s]).{38}))((ZONE|VARLEN|VALUES|UNSIGNED|UNIQUE|TIMSEP|TIMFMT|TEXT|SST|RENAME|REFSHIFT|REFACCPTH|RANGE|PFILE|NOALTSEQ|LIFO|JREF|JOIN|JFLD|JFILE|JDUPSEQ|JDFTVAL|FORMAT|FLTPCN|FIFO|FCFO|EDTCDE|EDTWRD|DYNSLT|DIGIT|DESCEND|DATSEP|DATFMT|CONCAT|COMP|COLHDG|CMP|CHKMSGID|CHECK|CCSID|ALTSEQ|ALL|ALIAS|ABSVAL)+)\\b"},{"name":"dds.lf.comp","begin":"(?i)(?\u003c=(.{44}))((?\u003c=((COMP)\\())|(?\u003c=((CMP)\\()))","end":"(?=(\\)))","patterns":[{"name":"keyword.other.dds.lf.comp.values","match":"(?i)(\\b(GE|LE|NG|GT|NL|LT|NE|EQ)\\b)"},{"name":"constant.numeric.dds.lf","match":"\\b([0-9]+)\\b"}]}]},"strings":{"name":"string.quoted.single.dds.lf","begin":"'","end":"'","patterns":[{"name":"keyword.other.dds.lf.spec","match":"(?i)(?\u003c=^.{5})[A]"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DDS.PF","scopeName":"source.dds.pf","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#gutter"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"name":"comment.line.dds.pf","match":"^.{5}(.)(\\*).*"}]},"constants":{"patterns":[{"name":"constant.language.dds.pf","match":"[*][a-zA-Z][a-zA-Z0-9]*"},{"name":"constant.language.dds.pf.nametype","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{10}))(R|K)"},{"name":"constant.language.dds.pf.ref","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{22}))(R)"},{"name":"constant.language.dds.pf.len","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{23}))[0-9|\\s]{5}"},{"name":"constant.language.dds.pf.datatype","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{28}))(P|S|B|F|A|L|T|Z|H|J|E|O|G|5)"},{"name":"constant.language.dds.pf.decpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{29}))[0-9|\\s]{2}"},{"name":"constant.language.dds.pf.use","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{31}))B"},{"name":"constant.numeric.dds.pf","match":"(\\b[0-9]+)|([0-9]*[.][0-9]*)"}]},"gutter":{"patterns":[{"name":"comment.gutter","match":"^.{5}"}]},"identifiers":{"patterns":[{"name":"identifier.other.dds.lf.identifiers","match":"[a-zA-Z_#$][a-zA-Z0-9_.#$]*"}]},"keywords":{"patterns":[{"name":"keyword.other.dds.pf.spec","match":"(?i)(?\u003c=^.{5})[A]"},{"name":"keyword.other.dds.pf","match":"\\+"},{"name":"keyword.other.dds.pf.funcs","match":"(?i)(?\u003c=(.{44}))(?\u003c=((?\u003c=^.{5}[A|\\s]).{38}))(ZONE|VARLEN|VALUES|UNSIGNED|UNIQUE|TIMSEP|TIMFMT|TEXT|REFSHIFT|REFFLD|REF|RANGE|NOALTSEQ|LIFO|FORMAT|FLTPCN|FIFO|FCFO|EDTCDE|EDTWRD|DIGIT|DFT|DESCEND|DATSEP|DATFMT|COMP|COLHDG|CMP|CHKMSGID|CHECK|CCSID|ALWNULL|ALTSEQ|ALIAS|ABSVAL)\\b"}]},"strings":{"name":"string.quoted.single.dds.pf","begin":"'","end":"'","patterns":[{"name":"keyword.other.dds.pf.spec","match":"(?i)(?\u003c=^.{5})[A]"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DDS.PRTF","scopeName":"source.dds.prtf","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#gutter"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"name":"comment.line.dds.prtf","match":"^.{5}(.)(\\*).*"}]},"constants":{"patterns":[{"name":"constant.language.dds.prtf","match":"[*][a-zA-Z][a-zA-Z0-9]*"},{"name":"constant.language.dds.prtf.andor","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{0}))(A|O)"},{"name":"constant.language.dds.prtf.n01","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{1}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.prtf.n02","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{4}))(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.prtf.n03","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{7}))(?i)(N|\\s)[0-9]{2}"},{"name":"constant.language.dds.prtf.nameType","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{10}))R"},{"name":"constant.language.dds.prtf.ref","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{22}))R"},{"name":"constant.language.dds.prtf.len","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{23}))[0-9|\\s]{5}"},{"name":"constant.language.dds.prtf.dataType","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{28}))(A|F|G|L|O|S|T|Z)"},{"name":"constant.language.dds.prtf.decpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A|\\s]).{29}))[0-9|\\s]{2}"},{"name":"constant.language.dds.prtf.usage","match":"(?i)(?\u003c=((?\u003c=^.{5}[A\\s]).{31}))O"},{"name":"constant.language.dds.prtf.locline","match":"(?i)(?\u003c=((?\u003c=^.{5}[A\\s]).{32}))([0-9]|\\s|\\+){3}"},{"name":"constant.language.dds.prtf.locpos","match":"(?i)(?\u003c=((?\u003c=^.{5}[A\\s]).{35}))([0-9]|\\s|\\+){3}"},{"name":"constant.numeric.dds.prtf","match":"\\b([0-9]+)\\b"}]},"gutter":{"patterns":[{"name":"comment.gutter","match":"^.{5}"}]},"identifiers":{"patterns":[{"name":"identifier.other.dds.lf.identifiers","match":"[a-zA-Z_#$][a-zA-Z0-9_.#$]*"}]},"keywords":{"patterns":[{"name":"keyword.other.dds.prtf.spec","match":"(?i)(?\u003c=^.{5})[A]"},{"name":"keyword.other.dds.prtf","match":"\\+"},{"name":"keyword.other.dds.prtf.func","match":"((?i)(C(A|F)))[0-9]{2}"},{"name":"keyword.other.dds.prtf.funcs","match":"(?i)(?\u003c=(.{44}))(ZFOLD|UNISCRIPT|UNDERLINE|TXTRTT|TRNSPY|TIMSEP|TIMFMT|TIME|TEXT|STRPAGGRP|STAPLE|SPACEB|SPACEA|SKIPB|SKIPA|RELPOS|REFFLD|REF|PRTQLTY|POSITION|PAGSEG|PAGRTT|PAGNBR|OVERLAY|OUTBIN|MSGCON|LPI|LINE|INVMMAP|INVDTAMAP|INDTXT|INDARA|HIGHLIGHT|GDF|FORCE|FONTNAME|FONT|FNTCHRSET|FLTPCN|FLTFIXDEC|ENDPAGGRP|ENDPAGE|EDTWRD|EDTCDE|DUPLEX|DTASTMCMD|DRAWER|DOCIDXTAG|DLTEDT|DFT|DFNCHR|DATSEP|DATFMT|DATE|CVTDTA|CPI|COLOR|CHRSIZ|CHRID|CDEFNT|BOX|BLKFOLD|BARCODE|ALIAS|AFPRSC)\\b"}]},"strings":{"name":"string.quoted.single.dds.prtf","begin":"'","end":"'","patterns":[{"name":"keyword.other.dds.prtf.spec","match":"(?i)(?\u003c=^.{5})[A]"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Debian package control file","scopeName":"source.deb-control","patterns":[{"include":"#paragraphs"}],"repository":{"comments":{"name":"comment.line.deb-control","match":"^#.*$"},"fields":{"patterns":[{"name":"meta.section.field.simple.deb-control","begin":"^(Package|Version|Architecture|Maintainer|Source|Section|Priority|Essential|Installed-Size|Homepage|Built-Using|Standards-Version)(:)","end":"\\n","patterns":[{"include":"#variables"}],"beginCaptures":{"1":{"name":"entity.name.section.field.simple.deb-control"},"2":{"name":"keyword.operator.deb-control"}}},{"name":"meta.section.field.folded.deb-control","begin":"^(Depends|Build-Depends)(:)","end":"^(?!\\s)","patterns":[{"include":"#comments"},{"include":"#variables"}],"beginCaptures":{"1":{"name":"entity.name.section.field.folded.deb-control"},"2":{"name":"keyword.operator.deb-control"}}},{"name":"meta.section.field.multiline.deb-control","begin":"^(Description)(:)","end":"^(?!\\s)","patterns":[{"include":"#comments"},{"include":"#variables"}],"beginCaptures":{"1":{"name":"entity.name.section.field.multiline.deb-control"},"2":{"name":"keyword.operator.deb-control"}}},{"name":"meta.section.field.multiline.deb-control","begin":"^([^:\\s]*)(:)","end":"^(?!\\s)","patterns":[{"include":"#comments"},{"include":"#variables"}],"beginCaptures":{"1":{"patterns":[{"match":"^([a-zA-Z0-9][a-zA-Z0-9\\-]*)","captures":{"1":{"name":"entity.name.section.field.unknown.deb-control"},"2":{"name":"keyword.operator.deb-control"}}},{"match":"^([^a-zA-Z0-9].*)","captures":{"1":{"name":"invalid.illegal.name.section.field.deb-control"},"2":{"name":"keyword.operator.deb-control"}}},{"match":"^([a-zA-Z0-9].*[^a-zA-Z0-9\\-]*.*)","captures":{"1":{"name":"invalid.illegal.name.section.field.deb-control"},"2":{"name":"keyword.operator.deb-control"}}}]},"2":{"name":"keyword.operator.deb-control"}}}]},"paragraphs":{"patterns":[{"name":"meta.section.paragraph.deb-control","begin":"^(?!\\s)","end":"^$","patterns":[{"include":"#comments"},{"include":"#fields"}]}]},"variables":{"patterns":[{"name":"variable.other.substitution.deb-control","begin":"\\${","end":"}"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Debian package rules","scopeName":"source.debian.makefile","patterns":[{"include":"#comment"},{"include":"#variable-assignment"},{"include":"#recipe"},{"include":"#directives"}],"repository":{"comment":{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.makefile","begin":"#","end":"\\n","patterns":[{"name":"constant.character.escape.continuation.makefile","match":"\\\\\\n"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.makefile"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.makefile"}}},"directives":{"patterns":[{"begin":"^[ ]*([s\\-]?include)\\b","end":"^","patterns":[{"include":"#comment"},{"include":"#variables"},{"name":"constant.other.placeholder.makefile","match":"%"}],"beginCaptures":{"1":{"name":"keyword.control.include.makefile"}}},{"begin":"^[ ]*(vpath)\\b","end":"^","patterns":[{"include":"#comment"},{"include":"#variables"},{"name":"constant.other.placeholder.makefile","match":"%"}],"beginCaptures":{"1":{"name":"keyword.control.vpath.makefile"}}},{"name":"meta.scope.conditional.makefile","begin":"^(?:(override)\\s*)?(define)\\s*([^\\s]+)\\s*(=|\\?=|:=|\\+=)?(?=\\s)","end":"^(endef)\\b","patterns":[{"begin":"\\G(?!\\n)","end":"^","patterns":[{"include":"#comment"}]},{"include":"#variables"},{"include":"#comment"}],"captures":{"1":{"name":"keyword.control.override.makefile"},"2":{"name":"keyword.control.define.makefile"},"3":{"name":"variable.other.makefile"},"4":{"name":"punctuation.separator.key-value.makefile"}}},{"begin":"^[ ]*(export)\\b","end":"^","patterns":[{"include":"#comment"},{"include":"#variable-assignment"},{"name":"variable.other.makefile","match":"[^\\s]+"}],"beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}}},{"begin":"^[ ]*(override|private)\\b","end":"^","patterns":[{"include":"#comment"},{"include":"#variable-assignment"}],"beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}}},{"begin":"^[ ]*(unexport|undefine)\\b","end":"^","patterns":[{"include":"#comment"},{"name":"variable.other.makefile","match":"[^\\s]+"}],"beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}}},{"name":"meta.scope.conditional.makefile","begin":"^(ifdef|ifndef)\\s*([^\\s]+)(?=\\s)","end":"^(endif)\\b","patterns":[{"begin":"\\G(?!\\n)","end":"^","patterns":[{"include":"#comment"}]},{"include":"$self"}],"captures":{"1":{"name":"keyword.control.$1.makefile"},"2":{"name":"variable.other.makefile"},"3":{"name":"punctuation.separator.key-value.makefile"}}},{"name":"meta.scope.conditional.makefile","begin":"^(ifeq|ifneq)(?=\\s)","end":"^(endif)\\b","patterns":[{"name":"meta.scope.condition.makefile","begin":"\\G","end":"^","patterns":[{"include":"#variables"},{"include":"#comment"}]},{"begin":"^else(?=\\s)","end":"^","beginCaptures":{"0":{"name":"keyword.control.else.makefile"}}},{"include":"$self"}],"captures":{"1":{"name":"keyword.control.$1.makefile"}}}]},"interpolation":{"name":"meta.embedded.line.shell","begin":"(?=`)","end":"(?!\\G)","patterns":[{"name":"string.interpolated.backtick.makefile","contentName":"source.shell","begin":"`","end":"(`)","patterns":[{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.makefile"}},"endCaptures":{"0":{"name":"punctuation.definition.string.makefile"},"1":{"name":"source.shell"}}}]},"recipe":{"name":"meta.scope.target.makefile","begin":"^(?!\\t)([^:]*)(:)(?!\\=)","end":"^(?!\\t)","patterns":[{"name":"meta.scope.prerequisites.makefile","begin":"\\G","end":"^","patterns":[{"name":"constant.character.escape.continuation.makefile","match":"\\\\\\n"},{"name":"constant.other.placeholder.makefile","match":"%|\\*"},{"include":"#comment"},{"include":"#variables"}]},{"name":"meta.scope.recipe.makefile","begin":"^\\t","end":"$","patterns":[{"name":"constant.character.escape.continuation.makefile","match":"\\\\\\n"},{"include":"#variables"},{"include":"source.shell"}]}],"beginCaptures":{"1":{"patterns":[{"match":"^\\s*(\\.(PHONY|SUFFIXES|DEFAULT|PRECIOUS|INTERMEDIATE|SECONDARY|SECONDEXPANSION|DELETE_ON_ERROR|IGNORE|LOW_RESOLUTION_TIME|SILENT|EXPORT_ALL_VARIABLES|NOTPARALLEL|ONESHELL|POSIX))\\s*$","captures":{"1":{"name":"support.function.target.$1.makefile"}}},{"name":"entity.name.function.target.makefile","begin":"(?=\\S)","end":"(?=\\s|$)","patterns":[{"include":"#variables"},{"name":"constant.other.placeholder.makefile","match":"%"}]}]},"2":{"name":"punctuation.separator.key-value.makefile"}}},"variable-assignment":{"begin":"(^[ ]*|\\G\\s*)([^\\s]+)\\s*(=|\\?=|:=|\\+=)","end":"\\n","patterns":[{"name":"constant.character.escape.continuation.makefile","match":"\\\\\\n"},{"include":"#comment"},{"include":"#variables"},{"include":"#interpolation"}],"beginCaptures":{"2":{"name":"variable.other.makefile"},"3":{"name":"punctuation.separator.key-value.makefile"}}},"variables":{"patterns":[{"name":"variable.language.makefile","match":"(\\$?\\$)[@%\u003c?^+*]","captures":{"1":{"name":"punctuation.definition.variable.makefile"}}},{"name":"string.interpolated.makefile","match":"\\b@\\w+@\\b"},{"name":"string.interpolated.makefile","begin":"\\$?\\$\\(","end":"\\)","patterns":[{"include":"#variables"},{"name":"variable.language.makefile","match":"\\G(MAKEFILES|VPATH|SHELL|MAKESHELL|MAKE|MAKELEVEL|MAKEFLAGS|MAKECMDGOALS|CURDIR|SUFFIXES|\\.LIBPATTERNS)(?=\\s*\\))"},{"name":"meta.scope.function-call.makefile","begin":"\\G(subst|patsubst|strip|findstring|filter(-out)?|sort|word(list)?|firstword|lastword|dir|notdir|suffix|basename|addprefix|join|wildcard|realpath|abspath|info|error|warning|shell|foreach|if|or|and|call|eval|value)\\s","end":"(?=\\))","patterns":[{"include":"#variables"},{"name":"constant.other.placeholder.makefile","match":"%|\\*"}],"beginCaptures":{"1":{"name":"support.function.$1.makefile"}}},{"name":"meta.scope.function-call.makefile","contentName":"variable.other.makefile","begin":"\\G(origin|flavor)\\s(?=[^\\s)]+\\s*\\))","end":"\\)","patterns":[{"include":"#variables"}]},{"name":"variable.other.makefile","begin":"\\G(?!\\))","end":"(?=\\))","patterns":[{"include":"#variables"}]}],"captures":{"0":{"name":"punctuation.definition.variable.makefile"}}}]}}}
@@ -0,0 +1 @@
1
+ {"name":"DenizenScript","scopeName":"source.denizenscript","patterns":[{"include":"#comments"},{"include":"#keys"},{"include":"#commands"},{"include":"#double_quotes"},{"include":"#single_quotes"},{"include":"#tags"},{"include":"#tag_brackets"}],"repository":{"commands":{"patterns":[{"begin":"(-)\\s([^\\s]+)","end":"\\s","captures":{"1":{"name":"operator.dash.denizenscript"},"2":{"name":"keyword.command.denizenscript"}}}]},"comments":{"patterns":[{"name":"comment.normal.denizenscript","begin":"^\\s*#.*$","end":"\\n"}]},"double_quotes":{"name":"string.quoted.double.denizenscript","begin":"\"","end":"\\n|\"","patterns":[{"include":"#tags"},{"include":"#tag_brackets"}]},"keys":{"patterns":[{"begin":"(^[^-#\\n]*)(:)","end":"\\s","beginCaptures":{"1":{"name":"entity.name.tag.denizenscript"},"2":{"name":"operator.colon.denizenscript"}}}]},"single_quotes":{"name":"string.quoted.single.denizenscript","begin":"'","end":"\\n|'","patterns":[{"include":"#tags"},{"include":"#tag_brackets"}]},"tag_brackets":{"name":"keyword.tag-brackets.denizenscript","begin":"\\[","end":"\\]","patterns":[{"include":"#tags"}]},"tags":{"name":"constant.language.tag.denizenscript","begin":"\u003c(?!-|\\s)","end":"\u003e","patterns":[{"include":"#tag_brackets"}]}}}
@@ -1 +1 @@
1
- {"name":"Roff (Intermediate Output)","scopeName":"source.ditroff","patterns":[{"include":"#main"}],"repository":{"colourMode":{"patterns":[{"name":"meta.colour-mode.default.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(d)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"}}},{"name":"meta.colour-mode.rgb.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(r)((?:\\s*\\d+){3})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.colour-mode.cmyk.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(k)((?:\\s*\\d+){4})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.colour-mode.cmy.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(c)((?:\\s*\\d+){3})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.colour-mode.grey.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(g)\\s*(\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}}]},"comment":{"name":"comment.line.number-sign.ditroff","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.ditroff"}}},"continueLine":{"name":"keyword.operator.line-continuation.gnu.ditroff","match":"^\\+"},"deviceControl":{"patterns":[{"name":"meta.device-control.x-command.ditroff","begin":"(x)\\s*(X\\S*)[ \\t]*","end":"(?=^(?!\\+))(?!\\G)","patterns":[{"include":"#xCommands"}],"beginCaptures":{"0":{"name":"meta.device-control.lhs.ditroff"},"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.device.control.ditroff"}}},{"name":"meta.device-control.ditroff","begin":"(x)\\s*","end":"(?=$|#)","patterns":[{"name":"keyword.device.control.ditroff","match":"\\G([ipst]\\S*)\\s*?(?=$|#)"},{"name":"meta.space-underlining.gnu.ditroff","match":"\\G(u\\S*)\\s+(?:(1|0)|(\\d+))\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"},"3":{"name":"invalid.illegal.argument.ditroff"}}},{"name":"meta.source-filename.gnu.ditroff","match":"\\G(F\\S*)\\s+(\\S+)\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"string.other.link.filename.ditroff"}}},{"name":"meta.typesetter-device.ditroff","match":"\\G(T\\S*)\\s+(\\S+)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"support.constant.device-name.ditroff"}}},{"name":"meta.device-resolution.ditroff","match":"\\G(r\\S*)((?:\\s+(\\d+)){1,3})\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.mount-font.ditroff","match":"\\G(f\\S*)(?:\\s+(\\d+))?(?:\\s+([-\\w]+))?(?:\\s+(\\S.*?)\\s+(\\d+)[ \\t]*$)?[ \\t]*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"constant.numeric.integer.position.ditroff"},"3":{"name":"entity.name.font.ditroff"},"4":{"name":"string.other.link.filename.ditroff"},"5":{"name":"constant.numeric.integer.flags.ditroff"}}},{"name":"meta.mount-font.ditroff","match":"\\G(f\\S*)(?:\\s+(\\d+))?(?:\\s+([-\\w]+))?\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"},"3":{"name":"variable.parameter.ditroff"}}},{"name":"meta.set-character-property.ditroff","match":"\\G([HS]\\S*)\\s+(?:(-23)\\s+(-?[\\d.]+)|(-?\\d+))?\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"comment.dummy.argument.ditroff"},"3":{"name":"constant.numeric.float.ditroff"},"4":{"name":"constant.numeric.integer.ditroff"}}},{"name":"meta.unknown-command.ditroff","begin":"\\G(\\S+)","end":"(?=$|#)","beginCaptures":{"1":{"name":"keyword.device.control.ditroff"}}}],"beginCaptures":{"0":{"name":"meta.device-control.lhs.ditroff"},"1":{"name":"keyword.operator.function.ditroff"}}}]},"eol":{"name":"meta.end-of-line.ditroff","match":"(n)((?:\\s*\\d+){2})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"patterns":[{"include":"text.roff#number"}]}}},"font":{"name":"meta.change-font.ditroff","match":"(f)\\s*(\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},"graphics":{"patterns":[{"name":"meta.graphics.gnu.ditroff","match":"(D)\\s*(C)\\s*(\\d+)(?:\\s+(\\d+))?","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditrof"},"3":{"name":"constant.numeric.integer.ditroff"},"4":{"name":"comment.dummy.argument.ditroff"}}},{"name":"meta.graphics.gnu.ditroff","match":"(D)\\s*(E)((?:\\s*(\\d+)){1,2})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditroff"},"3":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.graphics.ditroff","begin":"(D)\\s*([lceafptPR~])","end":"(?=$|#)","patterns":[{"include":"text.roff#number"}],"beginCaptures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditroff"}}},{"name":"meta.graphics.unknown-command.ditroff","contentName":"variable.parameter.ditroff","begin":"(D)\\s*([^\\s\\\\])","end":"(?=$|#)","beginCaptures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditroff"}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#deviceControl"},{"include":"#colourMode"},{"include":"#print"},{"include":"#font"},{"include":"#eol"},{"include":"#move"},{"include":"#size"},{"include":"#page"},{"include":"#graphics"},{"include":"#movePrint"},{"include":"#wordSpace"}]},"move":{"name":"meta.move.ditroff","match":"([HhVv])\\s*(-?\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},"movePrint":{"name":"meta.move-and-print.ditroff","match":"(\\d{2})(.)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.character.ditroff"}}},"page":{"name":"meta.start-page.ditroff","match":"(p)\\s*(\\d+)","captures":{"1":{"name":"keyword.control.page.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},"print":{"patterns":[{"name":"meta.print-character.indexed.ditroff","match":"(N)\\s*(-?\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},{"name":"meta.print-character.ditroff","match":"(c)(?:\\s*(\\S)|(\\s))|(CPS|C)\\s*(\\S+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.character.ditroff"},"3":{"name":"constant.character.whitespace.ditroff"},"4":{"name":"keyword.operator.function.ditroff"},"5":{"name":"string.unquoted.ditroff"}}},{"name":"meta.print-text.gnu.ditroff","contentName":"string.quoted.double.ditroff","begin":"(t)\\s*","end":"(?=$)|\\s+(\\d*)","beginCaptures":{"0":{"name":"keyword.operator.function.ditroff"},"1":{"name":"punctuation.definition.entity.ditroff"}},"endCaptures":{"1":{"name":"comment.dummy.argument.ditroff"}}},{"name":"meta.print-text.track-kerned.gnu.ditroff","contentName":"string.quoted.double.ditroff","begin":"(u)\\s*(-?\\d+)\\s*","end":"(?=\\s|$)","beginCaptures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}}]},"size":{"match":"(s)\\s*(?:(-23)\\s+(-?[\\d.]+)|(-?\\d+))","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"comment.dummy.argument.ditroff"},"3":{"name":"constant.numeric.float.ditroff"},"4":{"name":"constant.numeric.integer.ditroff"}}},"wordSpace":{"name":"keyword.operator.function.word-space.ditroff","match":"(?\u003c=^|[\\s\\d])w"},"xCommands":{"patterns":[{"begin":"(?:\\G|^)(?:(ps)\\s*(:)(?=\\s*(?:exec|m?def)\\b)|(PSSetup|PS)\\s*(:)?)","end":"(?=^(?!\\+))","patterns":[{"begin":"\\G(?:(?\u003c=:)\\s*(?:(exec|def)|(mdef)(?:\\s+(\\d+))?)\\b)?\\s*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"source.embedded.postscript","match":".+","captures":{"0":{"patterns":[{"include":"source.postscript"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"},"2":{"name":"keyword.control.directive.gnu.ditroff"},"3":{"name":"constant.numeric.integer.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"},"3":{"name":"keyword.device.control.subcommand.heirloom.ditroff"},"4":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(ps)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"match":"\\G\\s*(?:(invis)|(endinvis))\\b","captures":{"1":{"name":"keyword.control.suppress-output.begin.gnu.ditroff"},"2":{"name":"keyword.control.suppress-output.end.gnu.ditroff"}}},{"contentName":"string.other.link.filename.ditroff","begin":"\\G\\s*(file)\\s+","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"begin":"\\G\\s*(import)\\s+","end":"(?=^(?!\\+))","patterns":[{"include":"#xImportParams"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(pdf)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"name":"keyword.control.directive.gnu.ditroff","match":"\\G\\s*(xrev)\\b"},{"begin":"\\G\\s*(pdfpic)\\s+","end":"(?=^(?!\\+))","patterns":[{"include":"#xImportParams"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"name":"meta.pdfmark.$2.ditroff","begin":"\\G\\s*(mark(start|end|suspend|restart))\\b(\\s+(\\S.*))?","end":"(?=^(?!\\+))","beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"},"2":{"name":"source.embedded.postscript"},"3":{"patterns":[{"include":"source.postscript"}]}}},{"name":"meta.transition-settings.ditroff","begin":"\\G\\s*(transition)\\s+","end":"(?=^(?!\\+))","patterns":[{"name":"support.constant.other.mode.ditroff","match":"\\b(Blinds|Box|Cover|Dissolve|Fade|Fly|Glitter|Push|R|Split|Uncover|Wipe)\\b"},{"name":"constant.language.boolean.$1.ditroff","match":"\\b(true|false)\\b"},{"name":"constant.language.null.ditroff","match":"\\b(?:None)\\b"},{"name":"support.constant.feature.ditroff","match":"\\b(?:SLIDE|BLOCK)\\b"},{"name":"support.constant.dimension.ditroff","match":"\\b(?:H|V)\\b"},{"name":"support.constant.motion.ditroff","match":"\\b(?:I|O)\\b"},{"name":"constant.numeric.ditroff","match":"[-+]?[\\d.]+"},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.pdfmark.ditroff","begin":"(?:\\G|^)(PDFMark)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"name":"meta.bookmark.ditroff","contentName":"string.unquoted.ditroff","begin":"\\G\\s*(Bookmark(?:Closed)?)(?:\\s+(\\d+))?\\s+","end":"(?=^(?!\\+))","beginCaptures":{"1":{"name":"storage.type.bookmark.ditroff"},"2":{"name":"constant.numeric.integer.level.ditroff"}}},{"name":"meta.pdfmark.ditroff","contentName":"string.unquoted.ditroff","begin":"\\G\\s*(\\S+)\\s+","end":"(?=^(?!\\+))","beginCaptures":{"1":{"name":"entity.name.field.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(tty)s*(:)","end":"(?=^(?!\\+))","patterns":[{"match":"\\G\\s*(sgr)\\b(?:\\s+([-+]?[\\d.0]+))?","captures":{"1":{"name":"keyword.control.directive.gnu.ditroff"},"2":{"name":"constant.numeric.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.set-paper-size.ditroff","begin":"(?:\\G|^)(papersize)\\s*(=)","end":"(?=^(?!\\+))","patterns":[{"include":"source.ditroff.desc#paperSizes"}],"beginCaptures":{"1":{"name":"storage.type.paper-size.ditroff"},"2":{"name":"punctuation.separator.key-value.equals-sign.ditroff"}}},{"name":"meta.devtag.ditroff","begin":"(?:\\G|^)(devtag)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"constant.numeric.ditroff","match":"[-+]?\\d+(?:\\.\\d+)?"},{"name":"entity.name.tag.ditroff","match":"\\.?[^\\s.]+(?:\\.[^\\s.]+)*+","captures":{"0":{"name":"punctuation.definition.tag.ditroff"}}}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.infer.ditroff","begin":"(?:\\G|^)(infer)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"meta.$1-$2.ditroff","begin":"\\G\\s*(start|end)\\s+(\\S+)(?=\\s|$)","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"support.constant.other.ditroff","match":".+"}],"beginCaptures":{"1":{"name":"keyword.control.$1-scope.ditroff"},"2":{"name":"entity.name.type.ditroff"}}}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.manpage-reference.ditroff","match":"(?:\\G|^)(html)\\s+(?:(manref\\s+end)|(manref(?:\\s+start)?))(?:\\s+((?!#)\\S+))(?:\\s+(?:(\\()([0-9])(\\))|((?!#)\\S+)))","captures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"keyword.control.end-reference.ditroff"},"3":{"name":"keyword.control.start-reference.ditroff"},"4":{"name":"entity.name.subject.ditroff"},"5":{"name":"punctuation.definition.bracket.round.begin.ditroff"},"6":{"name":"constant.numeric.section.ditroff"},"7":{"name":"punctuation.definition.bracket.round.end.ditroff"},"8":{"name":"constant.numeric.section.ditroff"}}},{"begin":"(?:\\G|^)(index)\\s*(:)(?:\\s*(\\d+)(?=\\s))?.*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"},"3":{"name":"constant.numeric.integer.ditroff"}}},{"name":"meta.assertion.ditroff","begin":"(?:\\G|^)(assertion)\\s*(:)(?=\\s*\\[)","end":"(?=^(?!\\+))","patterns":[{"contentName":"string.raw.unquoted.heredoc.ditroff","begin":"\\G\\s*(\\[)(x|y)?","end":"\\*(\\])|(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"punctuation.section.bracket.square.begin.ditroff"},"2":{"name":"variable.parameter.assertion-type.$2.ditroff"}},"endCaptures":{"1":{"name":"punctuation.section.bracket.square.end.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)((?:html|math)\\b(?:\u003c[/?]p\u003e)?)(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"begin":"\\G[ \\t]*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"text.embedded.html.basic","match":".+","captures":{"0":{"patterns":[{"include":"text.html.basic"}]}}}]},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(Anchor|U?Link)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"contentName":"string.other.link.ditroff","begin":"\\G(?:\\s+([+-]?\\d+(?:,[+-]?\\d+)*+)(?=\\s))?\\s*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"patterns":[{"name":"constant.numeric.integer.ditroff","match":"\\d+"},{"name":"punctuation.separator.comma.ditroff","match":","}]}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(BleedAt|CropAt|HorScale|PaperSize|Track|TrimAt)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"name":"constant.numeric.ditroff","match":"[-+]?\\d+(?:\\.\\d+)?"},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"match":"(?:\\G|^)(LC_CTYPE)\\b(?:\\s*(:))?\\s+((?!#)\\S+)(.*)","captures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"},"3":{"name":"entity.name.locale.ditroff"},"4":{"patterns":[{"include":"#comment"}]}}},{"begin":"(?:\\G|^)(SupplyFont)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"contentName":"string.other.link.filename.ditroff","begin":"\\G\\s*(\\S+)[ \\t]*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"entity.name.font.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(SetColor)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"match":"(?:\\G|^)\\s*(?:([\\s\\d.]+)(?\u003c=\\s)(rgb|hsb|cmyk|setgray|setcolor)|(\\S+))","captures":{"1":{"patterns":[{"name":"constant.numeric.ditroff","match":"[\\d.]+"}]},"2":{"name":"constant.language.colour-scheme.ditroff"},"3":{"name":"variable.other.named-colour.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"contentName":"string.raw.unquoted.heredoc.ditroff","begin":"(?:\\G|^)([^\\s:#]+)(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"include":"#continueLine"}]},"xImportParams":{"patterns":[{"match":"(?:\\G|^)(\\S+)(?:\\s+((-)[LCR]))?","captures":{"1":{"name":"string.other.link.filename.ditroff"},"2":{"name":"constant.language.alignment-type.ditroff"},"3":{"name":"punctuation.definition.dash.ditroff"}}},{"name":"constant.numeric.ditroff","match":"[-+]?(?:\\d*\\.\\d+|\\d+)"},{"include":"#continueLine"}]}}}
1
+ {"name":"Ditroff (Troff Intermediate Output)","scopeName":"source.ditroff","patterns":[{"include":"#main"}],"repository":{"colourMode":{"patterns":[{"name":"meta.colour-mode.default.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(d)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"}}},{"name":"meta.colour-mode.rgb.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(r)((?:\\s*\\d+){3})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.colour-mode.cmyk.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(k)((?:\\s*\\d+){4})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.colour-mode.cmy.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(c)((?:\\s*\\d+){3})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.colour-mode.grey.gnu.ditroff","match":"(?:(m)|(D)\\s*(F))\\s*(g)\\s*(\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.function.ditroff"},"3":{"name":"keyword.operator.subcommand.ditroff"},"4":{"name":"constant.language.colour-scheme.ditroff"},"5":{"patterns":[{"include":"text.roff#number"}]}}}]},"comment":{"name":"comment.line.number-sign.ditroff","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.ditroff"}}},"continueLine":{"name":"keyword.operator.line-continuation.gnu.ditroff","match":"^\\+"},"deviceControl":{"patterns":[{"name":"meta.device-control.x-command.ditroff","begin":"(x)\\s*(X\\S*)[ \\t]*","end":"(?=^(?!\\+))(?!\\G)","patterns":[{"include":"#xCommands"}],"beginCaptures":{"0":{"name":"meta.device-control.lhs.ditroff"},"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.device.control.ditroff"}}},{"name":"meta.device-control.ditroff","begin":"(x)\\s*","end":"(?=$|#)","patterns":[{"name":"keyword.device.control.ditroff","match":"\\G([ipst]\\S*)\\s*?(?=$|#)"},{"name":"meta.space-underlining.gnu.ditroff","match":"\\G(u\\S*)\\s+(?:(1|0)|(\\d+))\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"},"3":{"name":"invalid.illegal.argument.ditroff"}}},{"name":"meta.source-filename.gnu.ditroff","match":"\\G(F\\S*)\\s+(\\S+)\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"string.other.link.filename.ditroff"}}},{"name":"meta.typesetter-device.ditroff","match":"\\G(T\\S*)\\s+(\\S+)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"support.constant.device-name.ditroff"}}},{"name":"meta.device-resolution.ditroff","match":"\\G(r\\S*)((?:\\s+(\\d+)){1,3})\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.mount-font.ditroff","match":"\\G(f\\S*)(?:\\s+(\\d+))?(?:\\s+([-\\w]+))?(?:\\s+(\\S.*?)\\s+(\\d+)[ \\t]*$)?[ \\t]*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"constant.numeric.integer.position.ditroff"},"3":{"name":"entity.name.font.ditroff"},"4":{"name":"string.other.link.filename.ditroff"},"5":{"name":"constant.numeric.integer.flags.ditroff"}}},{"name":"meta.mount-font.ditroff","match":"\\G(f\\S*)(?:\\s+(\\d+))?(?:\\s+([-\\w]+))?\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"},"3":{"name":"variable.parameter.ditroff"}}},{"name":"meta.set-character-property.ditroff","match":"\\G([HS]\\S*)\\s+(?:(-23)\\s+(-?[\\d.]+)|(-?\\d+))?\\s*?(?=$|#)","captures":{"1":{"name":"keyword.device.control.ditroff"},"2":{"name":"comment.dummy.argument.ditroff"},"3":{"name":"constant.numeric.float.ditroff"},"4":{"name":"constant.numeric.integer.ditroff"}}},{"name":"meta.unknown-command.ditroff","begin":"\\G(\\S+)","end":"(?=$|#)","beginCaptures":{"1":{"name":"keyword.device.control.ditroff"}}}],"beginCaptures":{"0":{"name":"meta.device-control.lhs.ditroff"},"1":{"name":"keyword.operator.function.ditroff"}}}]},"eol":{"name":"meta.end-of-line.ditroff","match":"(n)((?:\\s*\\d+){2})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"patterns":[{"include":"text.roff#number"}]}}},"font":{"name":"meta.change-font.ditroff","match":"(f)\\s*(\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},"graphics":{"patterns":[{"name":"meta.graphics.gnu.ditroff","match":"(D)\\s*(C)\\s*(\\d+)(?:\\s+(\\d+))?","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditrof"},"3":{"name":"constant.numeric.integer.ditroff"},"4":{"name":"comment.dummy.argument.ditroff"}}},{"name":"meta.graphics.gnu.ditroff","match":"(D)\\s*(E)((?:\\s*(\\d+)){1,2})","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditroff"},"3":{"patterns":[{"include":"text.roff#number"}]}}},{"name":"meta.graphics.ditroff","begin":"(D)\\s*([lceafptPR~])","end":"(?=$|#)","patterns":[{"include":"text.roff#number"}],"beginCaptures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditroff"}}},{"name":"meta.graphics.unknown-command.ditroff","contentName":"variable.parameter.ditroff","begin":"(D)\\s*([^\\s\\\\])","end":"(?=$|#)","beginCaptures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"keyword.operator.subcommand.ditroff"}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#deviceControl"},{"include":"#colourMode"},{"include":"#print"},{"include":"#font"},{"include":"#eol"},{"include":"#move"},{"include":"#size"},{"include":"#page"},{"include":"#graphics"},{"include":"#movePrint"},{"include":"#wordSpace"}]},"move":{"name":"meta.move.ditroff","match":"([HhVv])\\s*(-?\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},"movePrint":{"name":"meta.move-and-print.ditroff","match":"(\\d{2})(.)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.character.ditroff"}}},"page":{"name":"meta.start-page.ditroff","match":"(p)\\s*(\\d+)","captures":{"1":{"name":"keyword.control.page.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},"print":{"patterns":[{"name":"meta.print-character.indexed.ditroff","match":"(N)\\s*(-?\\d+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}},{"name":"meta.print-character.ditroff","match":"(c)(?:\\s*(\\S)|(\\s))|(CPS|C)\\s*(\\S+)","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.character.ditroff"},"3":{"name":"constant.character.whitespace.ditroff"},"4":{"name":"keyword.operator.function.ditroff"},"5":{"name":"string.unquoted.ditroff"}}},{"name":"meta.print-text.gnu.ditroff","contentName":"string.quoted.double.ditroff","begin":"(t)\\s*","end":"(?=$)|\\s+(\\d*)","beginCaptures":{"0":{"name":"keyword.operator.function.ditroff"},"1":{"name":"punctuation.definition.entity.ditroff"}},"endCaptures":{"1":{"name":"comment.dummy.argument.ditroff"}}},{"name":"meta.print-text.track-kerned.gnu.ditroff","contentName":"string.quoted.double.ditroff","begin":"(u)\\s*(-?\\d+)\\s*","end":"(?=\\s|$)","beginCaptures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"constant.numeric.integer.ditroff"}}}]},"size":{"match":"(s)\\s*(?:(-23)\\s+(-?[\\d.]+)|(-?\\d+))","captures":{"1":{"name":"keyword.operator.function.ditroff"},"2":{"name":"comment.dummy.argument.ditroff"},"3":{"name":"constant.numeric.float.ditroff"},"4":{"name":"constant.numeric.integer.ditroff"}}},"wordSpace":{"name":"keyword.operator.function.word-space.ditroff","match":"(?\u003c=^|[\\s\\d])w"},"xCommands":{"patterns":[{"begin":"(?:\\G|^)(?:(ps)\\s*(:)(?=\\s*(?:exec|m?def)\\b)|(PSSetup|PS)\\s*(:)?)","end":"(?=^(?!\\+))","patterns":[{"begin":"\\G(?:(?\u003c=:)\\s*(?:(exec|def)|(mdef)(?:\\s+(\\d+))?)\\b)?\\s*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"source.embedded.postscript","match":".+","captures":{"0":{"patterns":[{"include":"source.postscript"}]}}}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"},"2":{"name":"keyword.control.directive.gnu.ditroff"},"3":{"name":"constant.numeric.integer.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"},"3":{"name":"keyword.device.control.subcommand.heirloom.ditroff"},"4":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(ps)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"match":"\\G\\s*(?:(invis)|(endinvis))\\b","captures":{"1":{"name":"keyword.control.suppress-output.begin.gnu.ditroff"},"2":{"name":"keyword.control.suppress-output.end.gnu.ditroff"}}},{"contentName":"string.other.link.filename.ditroff","begin":"\\G\\s*(file)\\s+","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"begin":"\\G\\s*(import)\\s+","end":"(?=^(?!\\+))","patterns":[{"include":"#xImportParams"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(pdf)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"name":"keyword.control.directive.gnu.ditroff","match":"\\G\\s*(xrev)\\b"},{"begin":"\\G\\s*(pdfpic)\\s+","end":"(?=^(?!\\+))","patterns":[{"include":"#xImportParams"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"name":"meta.pdfmark.$2.ditroff","begin":"\\G\\s*(mark(start|end|suspend|restart))\\b(\\s+(\\S.*))?","end":"(?=^(?!\\+))","beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"},"2":{"name":"source.embedded.postscript"},"3":{"patterns":[{"include":"source.postscript"}]}}},{"name":"meta.transition-settings.ditroff","begin":"\\G\\s*(transition)\\s+","end":"(?=^(?!\\+))","patterns":[{"name":"support.constant.other.mode.ditroff","match":"\\b(Blinds|Box|Cover|Dissolve|Fade|Fly|Glitter|Push|R|Split|Uncover|Wipe)\\b"},{"name":"constant.language.boolean.$1.ditroff","match":"\\b(true|false)\\b"},{"name":"constant.language.null.ditroff","match":"\\b(?:None)\\b"},{"name":"support.constant.feature.ditroff","match":"\\b(?:SLIDE|BLOCK)\\b"},{"name":"support.constant.dimension.ditroff","match":"\\b(?:H|V)\\b"},{"name":"support.constant.motion.ditroff","match":"\\b(?:I|O)\\b"},{"name":"constant.numeric.ditroff","match":"[-+]?[\\d.]+"},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.control.directive.gnu.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.pdfmark.ditroff","begin":"(?:\\G|^)(PDFMark)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"name":"meta.bookmark.ditroff","contentName":"string.unquoted.ditroff","begin":"\\G\\s*(Bookmark(?:Closed)?)(?:\\s+(\\d+))?\\s+","end":"(?=^(?!\\+))","beginCaptures":{"1":{"name":"storage.type.bookmark.ditroff"},"2":{"name":"constant.numeric.integer.level.ditroff"}}},{"name":"meta.pdfmark.ditroff","contentName":"string.unquoted.ditroff","begin":"\\G\\s*(\\S+)\\s+","end":"(?=^(?!\\+))","beginCaptures":{"1":{"name":"entity.name.field.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(tty)s*(:)","end":"(?=^(?!\\+))","patterns":[{"name":"meta.osc8-link.ditroff","begin":"\\G\\s*(link)(?=\\s|$)","end":"(?=^(?!\\+))","patterns":[{"name":"meta.link-destination.ditroff","match":"\\G\\s*(\\S+)","captures":{"1":{"name":"string.other.link.ditroff"}}},{"name":"meta.link-parameter.ditroff","contentName":"string.unquoted.ditroff","begin":"(?!\\G)([^\\s=]+)(=)","end":"(?=\\s|$)","beginCaptures":{"1":{"name":"entity.other.attribute-name.ditroff"},"2":{"name":"punctuation.separator.key-value.ditroff"}}}],"beginCaptures":{"1":{"name":"storage.type.link.ditroff"}}},{"match":"\\G\\s*(sgr)\\b(?:\\s+([-+]?[\\d.0]+))?","captures":{"1":{"name":"keyword.control.directive.gnu.ditroff"},"2":{"name":"constant.numeric.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.gnu.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.set-paper-size.ditroff","begin":"(?:\\G|^)(papersize)\\s*(=)","end":"(?=^(?!\\+))","patterns":[{"include":"source.ditroff.desc#paperSizes"}],"beginCaptures":{"1":{"name":"storage.type.paper-size.ditroff"},"2":{"name":"punctuation.separator.key-value.equals-sign.ditroff"}}},{"name":"meta.devtag.ditroff","begin":"(?:\\G|^)(devtag)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"constant.numeric.ditroff","match":"[-+]?\\d+(?:\\.\\d+)?"},{"name":"entity.name.tag.ditroff","match":"\\.?[^\\s.]+(?:\\.[^\\s.]+)*+","captures":{"0":{"name":"punctuation.definition.tag.ditroff"}}}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.infer.ditroff","begin":"(?:\\G|^)(infer)\\s*(:)","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"meta.$1-$2.ditroff","begin":"\\G\\s*(start|end)\\s+(\\S+)(?=\\s|$)","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"support.constant.other.ditroff","match":".+"}],"beginCaptures":{"1":{"name":"keyword.control.$1-scope.ditroff"},"2":{"name":"entity.name.type.ditroff"}}}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"name":"meta.manpage-reference.ditroff","match":"(?:\\G|^)(html)\\s+(?:(manref\\s+end)|(manref(?:\\s+start)?))(?:\\s+((?!#)\\S+))(?:\\s+(?:(\\()([0-9])(\\))|((?!#)\\S+)))","captures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"keyword.control.end-reference.ditroff"},"3":{"name":"keyword.control.start-reference.ditroff"},"4":{"name":"entity.name.subject.ditroff"},"5":{"name":"punctuation.definition.bracket.round.begin.ditroff"},"6":{"name":"constant.numeric.section.ditroff"},"7":{"name":"punctuation.definition.bracket.round.end.ditroff"},"8":{"name":"constant.numeric.section.ditroff"}}},{"begin":"(?:\\G|^)(index)\\s*(:)(?:\\s*(\\d+)(?=\\s))?.*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"},"3":{"name":"constant.numeric.integer.ditroff"}}},{"name":"meta.assertion.ditroff","begin":"(?:\\G|^)(assertion)\\s*(:)(?=\\s*\\[)","end":"(?=^(?!\\+))","patterns":[{"contentName":"string.raw.unquoted.heredoc.ditroff","begin":"\\G\\s*(\\[)(x|y)?","end":"\\*(\\])|(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"punctuation.section.bracket.square.begin.ditroff"},"2":{"name":"variable.parameter.assertion-type.$2.ditroff"}},"endCaptures":{"1":{"name":"punctuation.section.bracket.square.end.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)((?:html|math)\\b(?:\u003c[/?]p\u003e)?)(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"begin":"\\G[ \\t]*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"},{"name":"text.embedded.html.basic","match":".+","captures":{"0":{"patterns":[{"include":"text.html.basic"}]}}}]},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(Anchor|U?Link)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"contentName":"string.other.link.ditroff","begin":"\\G(?:\\s+([+-]?\\d+(?:,[+-]?\\d+)*+)(?=\\s))?\\s*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"patterns":[{"name":"constant.numeric.integer.ditroff","match":"\\d+"},{"name":"punctuation.separator.comma.ditroff","match":","}]}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(BleedAt|CropAt|HorScale|PaperSize|Track|TrimAt)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"name":"constant.numeric.ditroff","match":"[-+]?\\d+(?:\\.\\d+)?"},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"match":"(?:\\G|^)(LC_CTYPE)\\b(?:\\s*(:))?\\s+((?!#)\\S+)(.*)","captures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"},"3":{"name":"entity.name.locale.ditroff"},"4":{"patterns":[{"include":"#comment"}]}}},{"begin":"(?:\\G|^)(SupplyFont)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"contentName":"string.other.link.filename.ditroff","begin":"\\G\\s*(\\S+)[ \\t]*","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"entity.name.font.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"begin":"(?:\\G|^)(SetColor)\\b(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"match":"(?:\\G|^)\\s*(?:([\\s\\d.]+)(?\u003c=\\s)(rgb|hsb|cmyk|setgray|setcolor)|(\\S+))","captures":{"1":{"patterns":[{"name":"constant.numeric.ditroff","match":"[\\d.]+"}]},"2":{"name":"constant.language.colour-scheme.ditroff"},"3":{"name":"variable.other.named-colour.ditroff"}}},{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"contentName":"string.raw.unquoted.heredoc.ditroff","begin":"(?:\\G|^)([^\\s:#]+)(?:\\s*(:))?","end":"(?=^(?!\\+))","patterns":[{"include":"#continueLine"}],"beginCaptures":{"1":{"name":"keyword.device.control.subcommand.ditroff"},"2":{"name":"punctuation.separator.key-value.colon.ditroff"}}},{"include":"#continueLine"}]},"xImportParams":{"patterns":[{"match":"(?:\\G|^)(\\S+)(?:\\s+((-)[LCR]))?","captures":{"1":{"name":"string.other.link.filename.ditroff"},"2":{"name":"constant.language.alignment-type.ditroff"},"3":{"name":"punctuation.definition.dash.ditroff"}}},{"name":"constant.numeric.ditroff","match":"[-+]?(?:\\d*\\.\\d+|\\d+)"},{"include":"#continueLine"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Earthfile","scopeName":"source.earthfile","patterns":[{"include":"#comment"},{"include":"#constant"},{"include":"#entity"},{"include":"#keyword"},{"include":"#string"},{"include":"#variable"},{"include":"#target"},{"include":"#user-command"}],"repository":{"comment":{"patterns":[{"match":"^(\\s*)((#).*$\\n?)","captures":{"1":{"name":"punctuation.whitespace.comment.leading.earthfile"},"2":{"name":"comment.line.number-sign.earthfile"},"3":{"name":"punctuation.definition.comment.earthfile"}}},{"name":"comment.line.earthfile","match":"(\\s+)((#).*$\\n?)"},{"match":"([\\\\\\s]+)((#).*$\\n?)","captures":{"2":{"name":"comment.line.number-sign.earthfile"}}}]},"constant":{"patterns":[{"name":"constant.character.escape.earthfile","match":"\\\\."},{"name":"constant.character.escape.earthfile","match":"\\\\$"},{"name":"constant.numeric.earthfile","match":"(?\u003c=EXPOSE\\s)(\\d+)"}]},"entity":{"patterns":[{"name":"entity.name.variable.artifact.earthfile","match":"([a-zA-Z0-9._\\-/:]*\\+[a-z][a-zA-Z0-9.\\-]*(/\\S*)+)"},{"name":"entity.name.type.target.earthfile","match":"([a-zA-Z0-9._\\-/:]*\\+[a-z][a-zA-Z0-9.\\-]*)"},{"name":"entity.name.function.user-command.earthfile","match":"([a-zA-Z0-9._\\-/:]*\\+[A-Z][a-zA-Z0-9._]*)"}]},"keyword":{"patterns":[{"name":"keyword.operator.shell.earthfile","match":"((\u0026\u0026)|(\u003e\u003e)|(\u003c\u003c)|[|;\u003e])"},{"name":"keyword.operator.assignment.earthfile","match":"([=])"},{"name":"keyword.operator.flag.earthfile","match":"(\\B(-)+[a-zA-Z0-9\\-]+)"},{"include":"#special-method"},{"include":"#target"},{"include":"#user-command"}]},"special-method":{"patterns":[{"match":"^\\s*\\b(SAVE ARTIFACT)(\\b.*?\\b)(AS LOCAL)\\b","captures":{"1":{"name":"keyword.other.special-method.earthfile"},"2":{"name":"entity.name.variable.target.earthfile"},"3":{"name":"keyword.other.special-method.earthfile"}}},{"match":"^\\s*\\b(FOR)\\b.*?\\b(IN)\\b","captures":{"1":{"name":"keyword.other.special-method.earthfile"},"2":{"name":"keyword.other.special-method.earthfile"}}},{"match":"(?\u003c=(^FROM\\s))(\\S+)","captures":{"1":{"name":"keyword.other.special-method.earthfile"},"2":{"name":"entity.name.type.base-image.earthfile"}}},{"name":"keyword.other.special-method.earthfile","match":"^\\s*HEALTHCHECK\\s+(NONE|CMD)\\s"},{"name":"keyword.other.special-method.earthfile","match":"^\\s*FROM DOCKERFILE\\s"},{"name":"keyword.other.special-method.earthfile","match":"^\\s*(FROM|COPY|SAVE ARTIFACT|SAVE IMAGE|RUN|LABEL|EXPOSE|VOLUME|USER|ENV|ARG|BUILD|WORKDIR|ENTRYPOINT|CMD|GIT CLONE|DOCKER LOAD|DOCKER PULL|HEALTHCHECK|WITH DOCKER|END|IF|ELSE|ELSE IF|DO|COMMAND|IMPORT|LOCALLY|FOR|VERSION)\\s"}]},"string":{"patterns":[{"name":"string.quoted.double.earthfile","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escaped.earthfile","match":"\\\\."}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.earthfile"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.earthfile"}}},{"name":"string.quoted.single.earthfile","begin":"'","end":"'","patterns":[{"name":"constant.character.escaped.earthfile","match":"\\\\."}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.earthfile"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.earthfile"}}}]},"target":{"patterns":[{"match":"^\\s*([a-z]([a-zA-Z0-9.]|-)*):","captures":{"1":{"name":"entity.name.class.target.earthfile"}}}]},"user-command":{"patterns":[{"match":"^\\s*([A-Z][a-zA-Z0-9._]*):","captures":{"1":{"name":"entity.name.function.user-command.earthfile"}}}]},"variable":{"patterns":[{"name":"variable.other.earthfile","match":"\\$[a-zA-Z0-9_\\-]+"},{"name":"variable.other.earthfile","match":"(?\u003c=\\${)([a-zA-Z0-9.\\-_]+)(?=})"},{"name":"variable.other.earthfile","begin":"\\$\\{","end":"\\}","beginCaptures":{"1":{"name":"punctuation.definition.variable.begin.earthfile"}},"endCaptures":{"1":{"name":"punctuation.definition.variable.end.earthfile"}}}]}}}
@@ -1 +1 @@
1
- {"name":"Elixir","scopeName":"source.elixir","patterns":[{"begin":"\\b(fn)\\b(?!.*-\u003e)","end":"$","patterns":[{"include":"#core_syntax"}],"beginCaptures":{"1":{"name":"keyword.control.elixir"}}},{"match":"([A-Z]\\w+)\\s*(\\.)\\s*([a-z_]\\w*[!?]?)","captures":{"1":{"name":"entity.name.type.class.elixir"},"2":{"name":"punctuation.separator.method.elixir"},"3":{"name":"entity.name.function.elixir"}}},{"match":"(\\:\\w+)\\s*(\\.)\\s*([_]?\\w*[!?]?)","captures":{"1":{"name":"constant.other.symbol.elixir"},"2":{"name":"punctuation.separator.method.elixir"},"3":{"name":"entity.name.function.elixir"}}},{"match":"(\\|\\\u003e)\\s*([a-z_]\\w*[!?]?)","captures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"entity.name.function.elixir"}}},{"name":"entity.name.function.elixir","match":"\\b[a-z_]\\w*[!?]?(?=\\s*\\.?\\s*\\()"},{"begin":"\\b(fn)\\b(?=.*-\u003e)","end":"(?\u003e(-\u003e)|(when)|(\\)))","patterns":[{"include":"#core_syntax"}],"beginCaptures":{"1":{"name":"keyword.control.elixir"}},"endCaptures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"keyword.control.elixir"},"3":{"name":"punctuation.section.function.elixir"}}},{"include":"#core_syntax"},{"begin":"^(?=.*-\u003e)((?![^\"']*(\"|')[^\"']*-\u003e)|(?=.*-\u003e[^\"']*(\"|')[^\"']*-\u003e))((?!.*\\([^\\)]*-\u003e)|(?=[^\\(\\)]*-\u003e)|(?=\\s*\\(.*\\).*-\u003e))((?!.*\\b(fn)\\b)|(?=.*-\u003e.*\\bfn\\b))","end":"(?\u003e(-\u003e)|(when)|(\\)))","patterns":[{"include":"#core_syntax"}],"beginCaptures":{"1":{"name":"keyword.control.elixir"}},"endCaptures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"keyword.control.elixir"},"3":{"name":"punctuation.section.function.elixir"}}}],"repository":{"core_syntax":{"patterns":[{"name":"meta.module.elixir","begin":"^\\s*(defmodule)\\b","end":"\\b(do)\\b","patterns":[{"name":"entity.other.inherited-class.elixir","match":"\\b[A-Z]\\w*(?=\\.)"},{"name":"entity.name.type.class.elixir","match":"\\b[A-Z]\\w*\\b"}],"beginCaptures":{"1":{"name":"keyword.control.module.elixir"}},"endCaptures":{"1":{"name":"keyword.control.module.elixir"}}},{"name":"meta.protocol_declaration.elixir","begin":"^\\s*(defprotocol)\\b","end":"\\b(do)\\b","patterns":[{"name":"entity.name.type.protocol.elixir","match":"\\b[A-Z]\\w*\\b"}],"beginCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"endCaptures":{"1":{"name":"keyword.control.protocol.elixir"}}},{"name":"meta.protocol_implementation.elixir","begin":"^\\s*(defimpl)\\b","end":"\\b(do)\\b","patterns":[{"name":"entity.name.type.protocol.elixir","match":"\\b[A-Z]\\w*\\b"}],"beginCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"endCaptures":{"1":{"name":"keyword.control.protocol.elixir"}}},{"name":"meta.function.public.elixir","begin":"^\\s*(def|defmacro|defdelegate|defguard)\\s+((?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))?(?\u003e[a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?|===?|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[\\]=?))((\\()|\\s*)","end":"(\\bdo:)|(\\bdo\\b)|(?=\\s+(def|defn|defmacro|defdelegate|defguard)\\b)","patterns":[{"include":"$self"},{"begin":"\\s(\\\\\\\\)","end":",|\\)|$","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.operator.other.elixir"}}},{"name":"keyword.control.elixir","match":"\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.module.elixir"},"2":{"name":"entity.name.function.public.elixir"},"4":{"name":"punctuation.section.function.elixir"}},"endCaptures":{"1":{"name":"constant.other.keywords.elixir"},"2":{"name":"keyword.control.module.elixir"}}},{"name":"meta.function.private.elixir","begin":"^\\s*(defp|defnp|defmacrop|defguardp)\\s+((?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))?(?\u003e[a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?|===?|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[\\]=?))((\\()|\\s*)","end":"(\\bdo:)|(\\bdo\\b)|(?=\\s+(defp|defmacrop|defguardp)\\b)","patterns":[{"include":"$self"},{"begin":"\\s(\\\\\\\\)","end":",|\\)|$","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.operator.other.elixir"}}},{"name":"keyword.control.elixir","match":"\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.module.elixir"},"2":{"name":"entity.name.function.private.elixir"},"4":{"name":"punctuation.section.function.elixir"}},"endCaptures":{"1":{"name":"constant.other.keywords.elixir"},"2":{"name":"keyword.control.module.elixir"}}},{"name":"sigil.leex","begin":"\\s*~L\"\"\"","end":"\\s*\"\"\"","patterns":[{"include":"text.elixir"},{"include":"text.html.basic"}]},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc (~[a-z])?\"\"\"","end":"\\s*\"\"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc ~[A-Z]\"\"\"","end":"\\s*\"\"\""},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc (~[a-z])?'''","end":"\\s*'''","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc ~[A-Z]'''","end":"\\s*'''"},{"name":"comment.block.documentation.false","match":"@(module|type)?doc false"},{"name":"comment.block.documentation.string","begin":"@(module|type)?doc \"","end":"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"name":"keyword.control.elixir","match":"(?\u003c!\\.)\\b(do|end|case|bc|lc|for|if|cond|unless|try|receive|fn|defmodule|defp?|defprotocol|defimpl|defrecord|defstruct|defnp?|defmacrop?|defguardp?|defdelegate|defexception|defoverridable|exit|after|rescue|catch|else|raise|reraise|throw|import|require|alias|use|quote|unquote|super|with)\\b(?![?!:])"},{"name":"keyword.operator.elixir","match":"(?\u003c!\\.)\\b(and|not|or|when|xor|in)\\b"},{"name":"entity.name.type.class.elixir","match":"\\b[A-Z]\\w*\\b"},{"name":"constant.language.elixir","match":"\\b(nil|true|false)\\b(?![?!])"},{"name":"variable.language.elixir","match":"\\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\\b(?![?!])"},{"name":"variable.other.readwrite.module.elixir","match":"(@)[a-zA-Z_]\\w*","captures":{"1":{"name":"punctuation.definition.variable.elixir"}}},{"name":"variable.other.anonymous.elixir","match":"(\u0026)\\d+","captures":{"1":{"name":"punctuation.definition.variable.elixir"}}},{"name":"variable.other.anonymous.elixir","match":"\u0026(?![\u0026])"},{"name":"variable.other.capture.elixir","match":"\\^[a-z_]\\w*","captures":{"1":{"name":"punctuation.definition.variable.elixir"}}},{"name":"constant.numeric.hex.elixir","match":"\\b0x[0-9A-Fa-f](?\u003e_?[0-9A-Fa-f])*\\b"},{"name":"constant.numeric.float.elixir","match":"\\b\\d(?\u003e_?\\d)*(\\.(?![^[:space:][:digit:]])(?\u003e_?\\d)+)([eE][-+]?\\d(?\u003e_?\\d)*)?\\b"},{"name":"constant.numeric.integer.elixir","match":"\\b\\d(?\u003e_?\\d)*\\b"},{"name":"constant.numeric.binary.elixir","match":"\\b0b[01](?\u003e_?[01])*\\b"},{"name":"constant.numeric.octal.elixir","match":"\\b0o[0-7](?\u003e_?[0-7])*\\b"},{"name":"constant.other.symbol.single-quoted.elixir","begin":":'","end":"'","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"captures":{"0":{"name":"punctuation.definition.constant.elixir"}}},{"name":"constant.other.symbol.double-quoted.elixir","begin":":\"","end":"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"captures":{"0":{"name":"punctuation.definition.constant.elixir"}}},{"name":"string.quoted.single.heredoc.elixir","begin":"(?\u003e''')","end":"^\\s*'''","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.single.elixir","begin":"'","end":"'","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.double.heredoc.elixir","begin":"(?\u003e\"\"\")","end":"^\\s*\"\"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.double.elixir","begin":"\"","end":"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.heredoc.elixir","begin":"~[a-z](?\u003e\"\"\")","end":"^\\s*\"\"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\{","end":"\\}[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\[","end":"\\][a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\\u003c","end":"\\\u003e[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\(","end":"\\)[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]([^\\w])","end":"\\1[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.heredoc.literal.elixir","begin":"~[A-Z](?\u003e\"\"\")","end":"^\\s*\"\"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\{","end":"\\}[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\[","end":"\\][a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\\u003c","end":"\\\u003e[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\(","end":"\\)[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]([^\\w])","end":"\\1[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"constant.other.symbol.elixir","match":"(?\u003c!:)(:)(?\u003e[a-zA-Z_][\\w@]*(?\u003e[?!]|=(?![\u003e=]))?|\\\u003c\\\u003e|===?|!==?|\u003c\u003c\u003e\u003e|\u003c\u003c\u003c|\u003e\u003e\u003e|~~~|::|\u003c\\-|\\|\u003e|=\u003e|=~|=|/|\\\\\\\\|\\*\\*?|\\.\\.?\\.?|\\.\\.//|\u003e=?|\u003c=?|\u0026\u0026?\u0026?|\\+\\+?|\\-\\-?|\\|\\|?\\|?|\\!|@|\\%?\\{\\}|%|\\[\\]|\\^(\\^\\^)?)","captures":{"1":{"name":"punctuation.definition.constant.elixir"}}},{"name":"constant.other.keywords.elixir","match":"(?\u003e[a-zA-Z_][\\w@]*(?\u003e[?!])?)(:)(?!:)","captures":{"1":{"name":"punctuation.definition.constant.elixir"}}},{"begin":"(^[ \\t]+)?(?=##)","end":"(?!#)","patterns":[{"name":"comment.line.section.elixir","begin":"##","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.elixir"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.elixir"}}},{"begin":"(^[ \\t]+)?(?=#)","end":"(?!#)","patterns":[{"name":"comment.line.number-sign.elixir","begin":"#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.elixir"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.elixir"}}},{"name":"comment.unused.elixir","match":"\\b_([^_][\\w]+[?!]?)"},{"name":"comment.wildcard.elixir","match":"\\b_\\b"},{"name":"constant.numeric.elixir","match":"(?\u003c!\\w)\\?(\\\\(x[0-9A-Fa-f]{1,2}(?![0-9A-Fa-f])\\b|[^xMC])|[^\\s\\\\])"},{"name":"keyword.operator.concatenation.elixir","match":"\\+\\+|\\-\\-|\u003c\\|\u003e"},{"name":"keyword.operator.sigils_1.elixir","match":"\\|\\\u003e|\u003c~\u003e|\u003c\u003e|\u003c\u003c\u003c|\u003e\u003e\u003e|~\u003e\u003e|\u003c\u003c~|~\u003e|\u003c~|\u003c\\|\u003e"},{"name":"keyword.operator.sigils_2.elixir","match":"\u0026\u0026\u0026|\u0026\u0026"},{"name":"keyword.operator.sigils_3.elixir","match":"\u003c\\-|\\\\\\\\"},{"name":"keyword.operator.comparison.elixir","match":"===?|!==?|\u003c=?|\u003e=?"},{"name":"keyword.operator.bitwise.elixir","match":"(\\|\\|\\||\u0026\u0026\u0026|\\^\\^\\^|\u003c\u003c\u003c|\u003e\u003e\u003e|~~~)"},{"name":"keyword.operator.logical.elixir","match":"(?\u003c=[ \\t])!+|\\bnot\\b|\u0026\u0026|\\band\\b|\\|\\||\\bor\\b|\\bxor\\b"},{"name":"keyword.operator.arithmetic.elixir","match":"(\\*|\\+|\\-|/)"},{"name":"keyword.operator.other.elixir","match":"\\||\\+\\+|\\-\\-|\\*\\*|\\\\\\\\|\\\u003c\\-|\\\u003c\\\u003e|\\\u003c\\\u003c|\\\u003e\\\u003e|\\:\\:|\\.\\.|//|\\|\u003e|~|=\u003e|\u0026"},{"name":"keyword.operator.assignment.elixir","match":"="},{"name":"punctuation.separator.other.elixir","match":":"},{"name":"punctuation.separator.statement.elixir","match":"\\;"},{"name":"punctuation.separator.object.elixir","match":","},{"name":"punctuation.separator.method.elixir","match":"\\."},{"name":"punctuation.section.scope.elixir","match":"\\{|\\}"},{"name":"punctuation.section.array.elixir","match":"\\[|\\]"},{"name":"punctuation.section.function.elixir","match":"\\(|\\)"}]},"escaped_char":{"name":"constant.character.escaped.elixir","match":"\\\\(x[\\da-fA-F]{1,2}|.)"},"interpolated_elixir":{"name":"meta.embedded.line.elixir","contentName":"source.elixir","begin":"#\\{","end":"\\}","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.elixir"}}},"nest_curly_and_self":{"patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"#nest_curly_and_self"}],"captures":{"0":{"name":"punctuation.section.scope.elixir"}}},{"include":"$self"}]}}}
1
+ {"name":"Elixir","scopeName":"source.elixir","patterns":[{"begin":"\\b(fn)\\b(?!.*-\u003e)","end":"$","patterns":[{"include":"#core_syntax"}],"beginCaptures":{"1":{"name":"keyword.control.elixir"}}},{"match":"([A-Z]\\w+)\\s*(\\.)\\s*([a-z_]\\w*[!?]?)","captures":{"1":{"name":"entity.name.type.class.elixir"},"2":{"name":"punctuation.separator.method.elixir"},"3":{"name":"entity.name.function.elixir"}}},{"match":"(\\:\\w+)\\s*(\\.)\\s*([_]?\\w*[!?]?)","captures":{"1":{"name":"constant.other.symbol.elixir"},"2":{"name":"punctuation.separator.method.elixir"},"3":{"name":"entity.name.function.elixir"}}},{"match":"(\\|\\\u003e)\\s*([a-z_]\\w*[!?]?)","captures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"entity.name.function.elixir"}}},{"name":"entity.name.function.elixir","match":"\\b[a-z_]\\w*[!?]?(?=\\s*\\.?\\s*\\()"},{"begin":"\\b(fn)\\b(?=.*-\u003e)","end":"(?\u003e(-\u003e)|(when)|(\\)))","patterns":[{"include":"#core_syntax"}],"beginCaptures":{"1":{"name":"keyword.control.elixir"}},"endCaptures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"keyword.control.elixir"},"3":{"name":"punctuation.section.function.elixir"}}},{"include":"#core_syntax"},{"begin":"^(?=.*-\u003e)((?![^\"']*(\"|')[^\"']*-\u003e)|(?=.*-\u003e[^\"']*(\"|')[^\"']*-\u003e))((?!.*\\([^\\)]*-\u003e)|(?=[^\\(\\)]*-\u003e)|(?=\\s*\\(.*\\).*-\u003e))((?!.*\\b(fn)\\b)|(?=.*-\u003e.*\\bfn\\b))","end":"(?\u003e(-\u003e)|(when)|(\\)))","patterns":[{"include":"#core_syntax"}],"beginCaptures":{"1":{"name":"keyword.control.elixir"}},"endCaptures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"keyword.control.elixir"},"3":{"name":"punctuation.section.function.elixir"}}}],"repository":{"core_syntax":{"patterns":[{"name":"meta.module.elixir","begin":"^\\s*(defmodule)\\b","end":"\\b(do)\\b","patterns":[{"name":"entity.other.inherited-class.elixir","match":"\\b[A-Z]\\w*(?=\\.)"},{"name":"entity.name.type.class.elixir","match":"\\b[A-Z]\\w*\\b"}],"beginCaptures":{"1":{"name":"keyword.control.module.elixir"}},"endCaptures":{"1":{"name":"keyword.control.module.elixir"}}},{"name":"meta.protocol_declaration.elixir","begin":"^\\s*(defprotocol)\\b","end":"\\b(do)\\b","patterns":[{"name":"entity.name.type.protocol.elixir","match":"\\b[A-Z]\\w*\\b"}],"beginCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"endCaptures":{"1":{"name":"keyword.control.protocol.elixir"}}},{"name":"meta.protocol_implementation.elixir","begin":"^\\s*(defimpl)\\b","end":"\\b(do)\\b","patterns":[{"name":"entity.name.type.protocol.elixir","match":"\\b[A-Z]\\w*\\b"}],"beginCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"endCaptures":{"1":{"name":"keyword.control.protocol.elixir"}}},{"name":"meta.function.public.elixir","begin":"^\\s*(def|defmacro|defdelegate|defguard)\\s+((?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))?(?\u003e[a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?|===?|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[\\]=?))((\\()|\\s*)","end":"(\\bdo:)|(\\bdo\\b)|(?=\\s+(def|defn|defmacro|defdelegate|defguard)\\b)","patterns":[{"include":"$self"},{"begin":"\\s(\\\\\\\\)","end":",|\\)|$","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.operator.other.elixir"}}},{"name":"keyword.control.elixir","match":"\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.module.elixir"},"2":{"name":"entity.name.function.public.elixir"},"4":{"name":"punctuation.section.function.elixir"}},"endCaptures":{"1":{"name":"constant.other.keywords.elixir"},"2":{"name":"keyword.control.module.elixir"}}},{"name":"meta.function.private.elixir","begin":"^\\s*(defp|defnp|defmacrop|defguardp)\\s+((?\u003e[a-zA-Z_]\\w*(?\u003e\\.|::))?(?\u003e[a-zA-Z_]\\w*(?\u003e[?!]|=(?!\u003e))?|===?|\u003e[\u003e=]?|\u003c=\u003e|\u003c[\u003c=]?|[%\u0026`/\\|]|\\*\\*?|=?~|[-+]@?|\\[\\]=?))((\\()|\\s*)","end":"(\\bdo:)|(\\bdo\\b)|(?=\\s+(defp|defmacrop|defguardp)\\b)","patterns":[{"include":"$self"},{"begin":"\\s(\\\\\\\\)","end":",|\\)|$","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.operator.other.elixir"}}},{"name":"keyword.control.elixir","match":"\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\b"}],"beginCaptures":{"1":{"name":"keyword.control.module.elixir"},"2":{"name":"entity.name.function.private.elixir"},"4":{"name":"punctuation.section.function.elixir"}},"endCaptures":{"1":{"name":"constant.other.keywords.elixir"},"2":{"name":"keyword.control.module.elixir"}}},{"name":"sigil.leex","begin":"\\s*~L\"\"\"","end":"\\s*\"\"\"","patterns":[{"include":"text.elixir"},{"include":"text.html.basic"}]},{"name":"sigil.heex","begin":"\\s*~H\"\"\"","end":"\\s*\"\"\"","patterns":[{"include":"text.elixir"},{"include":"text.html.basic"}]},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc (~[a-z])?\"\"\"","end":"\\s*\"\"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc ~[A-Z]\"\"\"","end":"\\s*\"\"\""},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc (~[a-z])?'''","end":"\\s*'''","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"name":"comment.block.documentation.heredoc","begin":"@(module|type)?doc ~[A-Z]'''","end":"\\s*'''"},{"name":"comment.block.documentation.false","match":"@(module|type)?doc false"},{"name":"comment.block.documentation.string","begin":"@(module|type)?doc \"","end":"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"name":"keyword.control.elixir","match":"(?\u003c!\\.)\\b(do|end|case|bc|lc|for|if|cond|unless|try|receive|fn|defmodule|defp?|defprotocol|defimpl|defrecord|defstruct|defnp?|defmacrop?|defguardp?|defdelegate|defexception|defoverridable|exit|after|rescue|catch|else|raise|reraise|throw|import|require|alias|use|quote|unquote|super|with)\\b(?![?!:])"},{"name":"keyword.operator.elixir","match":"(?\u003c!\\.)\\b(and|not|or|when|xor|in)\\b"},{"name":"entity.name.type.class.elixir","match":"\\b[A-Z]\\w*\\b"},{"name":"constant.language.elixir","match":"\\b(nil|true|false)\\b(?![?!])"},{"name":"variable.language.elixir","match":"\\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\\b(?![?!])"},{"name":"variable.other.readwrite.module.elixir","match":"(@)[a-zA-Z_]\\w*","captures":{"1":{"name":"punctuation.definition.variable.elixir"}}},{"name":"variable.other.anonymous.elixir","match":"(\u0026)\\d+","captures":{"1":{"name":"punctuation.definition.variable.elixir"}}},{"name":"variable.other.anonymous.elixir","match":"\u0026(?![\u0026])"},{"name":"variable.other.capture.elixir","match":"\\^[a-z_]\\w*","captures":{"1":{"name":"punctuation.definition.variable.elixir"}}},{"name":"constant.numeric.hex.elixir","match":"\\b0x[0-9A-Fa-f](?\u003e_?[0-9A-Fa-f])*\\b"},{"name":"constant.numeric.float.elixir","match":"\\b\\d(?\u003e_?\\d)*(\\.(?![^[:space:][:digit:]])(?\u003e_?\\d)+)([eE][-+]?\\d(?\u003e_?\\d)*)?\\b"},{"name":"constant.numeric.integer.elixir","match":"\\b\\d(?\u003e_?\\d)*\\b"},{"name":"constant.numeric.binary.elixir","match":"\\b0b[01](?\u003e_?[01])*\\b"},{"name":"constant.numeric.octal.elixir","match":"\\b0o[0-7](?\u003e_?[0-7])*\\b"},{"name":"constant.other.symbol.single-quoted.elixir","begin":":'","end":"'","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"captures":{"0":{"name":"punctuation.definition.constant.elixir"}}},{"name":"constant.other.symbol.double-quoted.elixir","begin":":\"","end":"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"captures":{"0":{"name":"punctuation.definition.constant.elixir"}}},{"name":"string.quoted.single.heredoc.elixir","begin":"(?\u003e''')","end":"^\\s*'''","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.single.elixir","begin":"'","end":"'","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.double.heredoc.elixir","begin":"(?\u003e\"\"\")","end":"^\\s*\"\"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.double.elixir","begin":"\"","end":"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.heredoc.elixir","begin":"~[a-z](?\u003e\"\"\")","end":"^\\s*\"\"\"","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\{","end":"\\}[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\[","end":"\\][a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\\u003c","end":"\\\u003e[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]\\(","end":"\\)[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.elixir","begin":"~[a-z]([^\\w])","end":"\\1[a-z]*","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.heredoc.literal.elixir","begin":"~[A-Z](?\u003e\"\"\")","end":"^\\s*\"\"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\{","end":"\\}[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\[","end":"\\][a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\\u003c","end":"\\\u003e[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]\\(","end":"\\)[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"string.quoted.other.sigil.literal.elixir","begin":"~[A-Z]([^\\w])","end":"\\1[a-z]*","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}}},{"name":"constant.other.symbol.elixir","match":"(?\u003c!:)(:)(?\u003e[a-zA-Z_][\\w@]*(?\u003e[?!]|=(?![\u003e=]))?|\\\u003c\\\u003e|===?|!==?|\u003c\u003c\u003e\u003e|\u003c\u003c\u003c|\u003e\u003e\u003e|~~~|::|\u003c\\-|\\|\u003e|=\u003e|=~|=|/|\\\\\\\\|\\*\\*?|\\.\\.?\\.?|\\.\\.//|\u003e=?|\u003c=?|\u0026\u0026?\u0026?|\\+\\+?|\\-\\-?|\\|\\|?\\|?|\\!|@|\\%?\\{\\}|%|\\[\\]|\\^(\\^\\^)?)","captures":{"1":{"name":"punctuation.definition.constant.elixir"}}},{"name":"constant.other.keywords.elixir","match":"(?\u003e[a-zA-Z_][\\w@]*(?\u003e[?!])?)(:)(?!:)","captures":{"1":{"name":"punctuation.definition.constant.elixir"}}},{"begin":"(^[ \\t]+)?(?=##)","end":"(?!#)","patterns":[{"name":"comment.line.section.elixir","begin":"##","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.elixir"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.elixir"}}},{"begin":"(^[ \\t]+)?(?=#)","end":"(?!#)","patterns":[{"name":"comment.line.number-sign.elixir","begin":"#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.elixir"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.elixir"}}},{"name":"comment.unused.elixir","match":"\\b_([^_][\\w]+[?!]?)"},{"name":"comment.wildcard.elixir","match":"\\b_\\b"},{"name":"constant.numeric.elixir","match":"(?\u003c!\\w)\\?(\\\\(x[0-9A-Fa-f]{1,2}(?![0-9A-Fa-f])\\b|[^xMC])|[^\\s\\\\])"},{"name":"keyword.operator.concatenation.elixir","match":"\\+\\+|\\-\\-|\u003c\\|\u003e"},{"name":"keyword.operator.sigils_1.elixir","match":"\\|\\\u003e|\u003c~\u003e|\u003c\u003e|\u003c\u003c\u003c|\u003e\u003e\u003e|~\u003e\u003e|\u003c\u003c~|~\u003e|\u003c~|\u003c\\|\u003e"},{"name":"keyword.operator.sigils_2.elixir","match":"\u0026\u0026\u0026|\u0026\u0026"},{"name":"keyword.operator.sigils_3.elixir","match":"\u003c\\-|\\\\\\\\"},{"name":"keyword.operator.comparison.elixir","match":"===?|!==?|\u003c=?|\u003e=?"},{"name":"keyword.operator.bitwise.elixir","match":"(\\|\\|\\||\u0026\u0026\u0026|\\^\\^\\^|\u003c\u003c\u003c|\u003e\u003e\u003e|~~~)"},{"name":"keyword.operator.logical.elixir","match":"(?\u003c=[ \\t])!+|\\bnot\\b|\u0026\u0026|\\band\\b|\\|\\||\\bor\\b|\\bxor\\b"},{"name":"keyword.operator.arithmetic.elixir","match":"(\\*|\\+|\\-|/)"},{"name":"keyword.operator.other.elixir","match":"\\||\\+\\+|\\-\\-|\\*\\*|\\\\\\\\|\\\u003c\\-|\\\u003c\\\u003e|\\\u003c\\\u003c|\\\u003e\\\u003e|\\:\\:|\\.\\.|//|\\|\u003e|~|=\u003e|\u0026"},{"name":"keyword.operator.assignment.elixir","match":"="},{"name":"punctuation.separator.other.elixir","match":":"},{"name":"punctuation.separator.statement.elixir","match":"\\;"},{"name":"punctuation.separator.object.elixir","match":","},{"name":"punctuation.separator.method.elixir","match":"\\."},{"name":"punctuation.section.scope.elixir","match":"\\{|\\}"},{"name":"punctuation.section.array.elixir","match":"\\[|\\]"},{"name":"punctuation.section.function.elixir","match":"\\(|\\)"}]},"escaped_char":{"name":"constant.character.escaped.elixir","match":"\\\\(x[\\da-fA-F]{1,2}|.)"},"interpolated_elixir":{"name":"meta.embedded.line.elixir","contentName":"source.elixir","begin":"#\\{","end":"\\}","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.elixir"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.elixir"}}},"nest_curly_and_self":{"patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"#nest_curly_and_self"}],"captures":{"0":{"name":"punctuation.section.scope.elixir"}}},{"include":"$self"}]}}}
@@ -0,0 +1 @@
1
+ {"name":"Euphoria","scopeName":"source.euphoria","patterns":[{"include":"#comments"},{"include":"#entities"},{"include":"#keywords"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"name":"comment.line.double-dash.euphoria","match":"((?:--).*)$"},{"name":"comment.block.euphoria","begin":"/\\*","end":"\\*/"}]},"entities":{"patterns":[{"match":"^\\s*(namespace)\\s+(\\w+)$","captures":{"1":{"name":"keyword.other.euphoria"},"2":{"name":"entity.name.section"}}},{"match":"^\\s*(?:(deprecate)\\s+)?(?:(public|export|global|override)\\s+)?(function|procedure)\\s+(\\w+)","captures":{"1":{"name":"invalid.deprecated"},"2":{"name":"storage.modifier.euphoria"},"3":{"name":"storage.type.function"},"4":{"name":"entity.name.function"}}},{"match":"^\\s*(?:(deprecate)\\s+)?(?:(public|export|global|override)\\s+)?(type)\\s+(\\w+)","captures":{"1":{"name":"invalid.deprecated"},"2":{"name":"storage.modifier.euphoria"},"3":{"name":"storage.type.function"},"4":{"name":"entity.name.type"}}}]},"keywords":{"patterns":[{"name":"keyword.control.euphoria","match":"\\b(break|case|continue|do|else|elsif|entry|exit|for|goto|if|label|loop|retry|return|switch|then|until|while)\\b"},{"name":"keyword.operator.euphoria","match":"\\b(!|\\?|and|not|or|xor)\\b"},{"name":"keyword.other.euphoria","match":"\\b(as|by|constant|elsedef|elsifdef|end|enum|fallthru|ifdef|include|namespace|routine|to|with|without)\\b"},{"name":"storage.modifier.euphoria","match":"\\b(deprecate|export|global|override|public)\\b"},{"name":"storage.type.euphoria","match":"\\b(enum|constant|function|procedure|type)\\b"},{"name":"support.function.euphoria","match":"\\b(abort|and_bits|append|arctan|c_func|c_proc|call|call_func|call_proc|clear_screen|close|command_line|compare|cos|date|delete|delete_routine|equal|find|find_from|floor|get_key|getc|getenv|gets|hash|head|include_paths|insert|length|log|machine_func|machine_proc|match|match_from|mem_copy|mem_set|not_bits|open|option_switches|or_bits|peek|peek2s|peek2u|peek4s|peek4u|peek_string|peeks|platform|poke|poke2|poke4|position|power|prepend|print|printf|puts|rand|remainder|remove|repeat|replace|routine_id|sin|splice|sprintf|sqrt|system|system_exec|tail|tan|task_clock_start|task_clock_stop|task_create|task_list|task_schedule|task_self|task_status|task_suspend|task_yield|time|trace|xor_bits)\\b"},{"name":"support.type.euphoria","match":"\\b(atom|integer|object|sequence)\\b"}]},"strings":{"patterns":[{"name":"string.quoted.single.euphoria","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.euphoria","match":"\\\\."}]},{"name":"string.quoted.double.euphoria","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.euphoria","match":"\\\\."}]},{"name":"string.quoted.triple.euphoria","begin":"\"\"\"","end":"\"\"\""},{"name":"string.quoted.other.euphoria","begin":"`","end":"`"}]}}}