@shikijs/langs-precompiled 2.3.0 → 2.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/actionscript-3.mjs +1 -1
  2. package/dist/angular-html.mjs +1 -1
  3. package/dist/applescript.mjs +1 -1
  4. package/dist/ara.mjs +1 -1
  5. package/dist/asciidoc.mjs +1 -1
  6. package/dist/astro.mjs +1 -1
  7. package/dist/beancount.mjs +1 -1
  8. package/dist/blade.mjs +1 -1
  9. package/dist/bsl.mjs +1 -1
  10. package/dist/cadence.mjs +1 -1
  11. package/dist/clarity.mjs +1 -1
  12. package/dist/cmake.mjs +1 -1
  13. package/dist/cobol.mjs +1 -1
  14. package/dist/coq.mjs +1 -1
  15. package/dist/crystal.mjs +1 -1
  16. package/dist/csharp.mjs +6 -2
  17. package/dist/cypher.mjs +1 -1
  18. package/dist/dax.mjs +1 -1
  19. package/dist/diff.mjs +1 -1
  20. package/dist/docker.mjs +1 -1
  21. package/dist/dotenv.mjs +1 -1
  22. package/dist/dream-maker.mjs +1 -1
  23. package/dist/elixir.mjs +1 -1
  24. package/dist/elm.mjs +1 -1
  25. package/dist/erb.mjs +2 -1
  26. package/dist/erlang.mjs +1 -1
  27. package/dist/es-tag-css.mjs +1 -1
  28. package/dist/es-tag-glsl.mjs +1 -1
  29. package/dist/es-tag-html.mjs +1 -1
  30. package/dist/es-tag-sql.mjs +1 -1
  31. package/dist/es-tag-xml.mjs +1 -1
  32. package/dist/fish.mjs +1 -1
  33. package/dist/fortran-free-form.mjs +1 -1
  34. package/dist/fsharp.mjs +1 -1
  35. package/dist/gdresource.mjs +1 -1
  36. package/dist/gdscript.mjs +1 -1
  37. package/dist/git-commit.mjs +1 -1
  38. package/dist/go.mjs +1 -1
  39. package/dist/graphql.mjs +1 -1
  40. package/dist/groovy.mjs +1 -1
  41. package/dist/hack.mjs +1 -1
  42. package/dist/haml.mjs +1 -1
  43. package/dist/haskell.mjs +1 -1
  44. package/dist/hcl.mjs +1 -1
  45. package/dist/html-derivative.mjs +1 -1
  46. package/dist/html.mjs +1 -1
  47. package/dist/jison.mjs +1 -1
  48. package/dist/json.mjs +1 -1
  49. package/dist/json5.mjs +1 -1
  50. package/dist/jsonc.mjs +1 -1
  51. package/dist/jsonl.mjs +1 -1
  52. package/dist/jssm.mjs +1 -1
  53. package/dist/julia.mjs +1 -1
  54. package/dist/kusto.mjs +1 -1
  55. package/dist/latex.mjs +1 -1
  56. package/dist/less.mjs +1 -1
  57. package/dist/markdown.mjs +1 -1
  58. package/dist/marko.mjs +1 -1
  59. package/dist/matlab.mjs +1 -1
  60. package/dist/mermaid.mjs +1 -1
  61. package/dist/mipsasm.mjs +1 -1
  62. package/dist/mojo.mjs +1 -1
  63. package/dist/move.mjs +1 -1
  64. package/dist/nim.mjs +1 -1
  65. package/dist/nushell.mjs +1 -1
  66. package/dist/objective-c.mjs +1 -1
  67. package/dist/objective-cpp.mjs +1 -1
  68. package/dist/perl.mjs +1 -1
  69. package/dist/po.mjs +1 -1
  70. package/dist/polar.mjs +1 -1
  71. package/dist/powershell.mjs +1 -1
  72. package/dist/pug.mjs +1 -1
  73. package/dist/puppet.mjs +1 -1
  74. package/dist/python.mjs +1 -1
  75. package/dist/regexp.mjs +1 -1
  76. package/dist/riscv.mjs +1 -1
  77. package/dist/ruby.mjs +1 -1
  78. package/dist/rust.mjs +1 -1
  79. package/dist/sas.mjs +1 -1
  80. package/dist/scala.mjs +1 -1
  81. package/dist/scheme.mjs +1 -1
  82. package/dist/sdbl.mjs +1 -1
  83. package/dist/shellscript.mjs +1 -1
  84. package/dist/smalltalk.mjs +1 -1
  85. package/dist/splunk.mjs +1 -1
  86. package/dist/sql.mjs +1 -1
  87. package/dist/stata.mjs +1 -1
  88. package/dist/stylus.mjs +1 -1
  89. package/dist/svelte.mjs +1 -1
  90. package/dist/tcl.mjs +1 -1
  91. package/dist/terraform.mjs +1 -1
  92. package/dist/toml.mjs +1 -1
  93. package/dist/twig.mjs +1 -1
  94. package/dist/typst.mjs +1 -1
  95. package/dist/vue.mjs +1 -1
  96. package/dist/vyper.mjs +1 -1
  97. package/dist/wasm.mjs +1 -1
  98. package/dist/wgsl.mjs +1 -1
  99. package/dist/zenscript.mjs +1 -1
  100. package/dist/zig.mjs +1 -1
  101. package/package.json +3 -3
package/dist/elixir.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { EmulatedRegExp } from 'oniguruma-to-es'
2
2
  import html from './html.mjs'
3
3
 
4
- const lang = Object.freeze({displayName:"Elixir",fileTypes:["ex","exs"],firstLineMatch:/^#!\/[^\n]*\belixir/dgv,foldingStartMarker:/(after|else|catch|rescue|->|\{|\[|do)\p{space}*(?=\n?$)/dgv,foldingStopMarker:/^\p{space}*((\}|\]|after|else|catch|rescue)\p{space}*(?=\n?$)|end\b)/dgv,name:"elixir",patterns:[{begin:/\b(fn)\b(?![^\n]*->)/dgv,beginCaptures:{"1":{name:"keyword.control.elixir"}},end:/(?=\n?$)/dgv,patterns:[{include:"#core_syntax"}]},{captures:{"1":{name:"entity.name.type.class.elixir"},"2":{name:"punctuation.separator.method.elixir"},"3":{name:"entity.name.function.elixir"}},match:/([A-Z][\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(\.)\p{space}*([a-z_][\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?)/dgv},{captures:{"1":{name:"constant.other.symbol.elixir"},"2":{name:"punctuation.separator.method.elixir"},"3":{name:"entity.name.function.elixir"}},match:/(:[\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(\.)\p{space}*([_]?[\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?)/dgv},{captures:{"1":{name:"keyword.operator.other.elixir"},"2":{name:"entity.name.function.elixir"}},match:/(\|>)\p{space}*([a-z_][\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?)/dgv},{match:/\b[a-z_][\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?(?=\p{space}*\.?\p{space}*\()/dgv,name:"entity.name.function.elixir"},{begin:/\b(fn)\b(?=[^\n]*->)/dgv,beginCaptures:{"1":{name:"keyword.control.elixir"}},end:/*@__PURE__*/ new EmulatedRegExp("(?:(?=((->)|(when)|(\\))))\\1)","dgv",{"hiddenCaptures":[1]}),endCaptures:{"1":{name:"keyword.operator.other.elixir"},"2":{name:"keyword.control.elixir"},"3":{name:"punctuation.section.function.elixir"}},patterns:[{include:"#core_syntax"}]},{include:"#core_syntax"},{begin:/^(?=[^\n]*->)((?![^"']*("|')[^"']*->)|(?=[^\n]*->[^"']*("|')[^"']*->))((?![^\n]*\([^\)]*->)|(?=[^\(\)]*->)|(?=\p{space}*\([^\n]*\)[^\n]*->))((?![^\n]*\b(fn)\b)|(?=[^\n]*->[^\n]*\bfn\b))/dgv,beginCaptures:{"1":{name:"keyword.control.elixir"}},end:/*@__PURE__*/ new EmulatedRegExp("(?:(?=((->)|(when)|(\\))))\\1)","dgv",{"hiddenCaptures":[1]}),endCaptures:{"1":{name:"keyword.operator.other.elixir"},"2":{name:"keyword.control.elixir"},"3":{name:"punctuation.section.function.elixir"}},patterns:[{include:"#core_syntax"}]}],repository:{core_syntax:{patterns:[{begin:/^\p{space}*(defmodule)\b/dgv,beginCaptures:{"1":{name:"keyword.control.module.elixir"}},end:/\b(do)\b/dgv,endCaptures:{"1":{name:"keyword.control.module.elixir"}},name:"meta.module.elixir",patterns:[{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*(?=\.)/dgv,name:"entity.other.inherited-class.elixir"},{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.class.elixir"}]},{begin:/^\p{space}*(defprotocol)\b/dgv,beginCaptures:{"1":{name:"keyword.control.protocol.elixir"}},end:/\b(do)\b/dgv,endCaptures:{"1":{name:"keyword.control.protocol.elixir"}},name:"meta.protocol_declaration.elixir",patterns:[{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.protocol.elixir"}]},{begin:/^\p{space}*(defimpl)\b/dgv,beginCaptures:{"1":{name:"keyword.control.protocol.elixir"}},end:/\b(do)\b/dgv,endCaptures:{"1":{name:"keyword.control.protocol.elixir"}},name:"meta.protocol_implementation.elixir",patterns:[{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.protocol.elixir"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("^\\p{space}*(def|defmacro|defdelegate|defguard)\\p{space}+((?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=(\\.|::))\\4)))\\3)?(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=([\\?\\!]|=(?!>)))\\6)?|===?|>[\\>\\=]?|<=>|<[\\<\\=]?|[\\%\\&\\`\\/\\|]|\\*\\*?|=?~|[\\-\\+]@?|\\[\\]=?))\\5))((\\()|\\p{space}*)","dgv",{"hiddenCaptures":[3,4,5,6]}),beginCaptures:{"1":{name:"keyword.control.module.elixir"},"2":{name:"entity.name.function.public.elixir"},"4":{name:"punctuation.section.function.elixir"}},end:/(\bdo:)|(\bdo\b)|(?=\p{space}+(def|defn|defmacro|defdelegate|defguard)\b)/dgv,endCaptures:{"1":{name:"constant.other.keywords.elixir"},"2":{name:"keyword.control.module.elixir"}},name:"meta.function.public.elixir",patterns:[{include:"$self"},{begin:/\p{space}(\\\\)/dgv,beginCaptures:{"1":{name:"keyword.operator.other.elixir"}},end:/,|\)|(?=\n?$)/dgv,patterns:[{include:"$self"}]},{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/dgv,name:"keyword.control.elixir"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("^\\p{space}*(defp|defnp|defmacrop|defguardp)\\p{space}+((?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=(\\.|::))\\4)))\\3)?(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=([\\?\\!]|=(?!>)))\\6)?|===?|>[\\>\\=]?|<=>|<[\\<\\=]?|[\\%\\&\\`\\/\\|]|\\*\\*?|=?~|[\\-\\+]@?|\\[\\]=?))\\5))((\\()|\\p{space}*)","dgv",{"hiddenCaptures":[3,4,5,6]}),beginCaptures:{"1":{name:"keyword.control.module.elixir"},"2":{name:"entity.name.function.private.elixir"},"4":{name:"punctuation.section.function.elixir"}},end:/(\bdo:)|(\bdo\b)|(?=\p{space}+(defp|defmacrop|defguardp)\b)/dgv,endCaptures:{"1":{name:"constant.other.keywords.elixir"},"2":{name:"keyword.control.module.elixir"}},name:"meta.function.private.elixir",patterns:[{include:"$self"},{begin:/\p{space}(\\\\)/dgv,beginCaptures:{"1":{name:"keyword.operator.other.elixir"}},end:/,|\)|(?=\n?$)/dgv,patterns:[{include:"$self"}]},{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/dgv,name:"keyword.control.elixir"}]},{begin:/\p{space}*~L"""/dgv,comment:"Leex Sigil",end:/\p{space}*"""/dgv,name:"sigil.leex",patterns:[{include:"text.elixir"},{include:"text.html.basic"}]},{begin:/\p{space}*~H"""/dgv,comment:"HEEx Sigil",end:/\p{space}*"""/dgv,name:"sigil.heex",patterns:[{include:"text.elixir"},{include:"text.html.basic"}]},{begin:/@(module|type)?doc (~[a-z])?"""/dgv,comment:"@doc with heredocs is treated as documentation",end:/\p{space}*"""/dgv,name:"comment.block.documentation.heredoc",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/@(module|type)?doc ~[A-Z]"""/dgv,comment:"@doc with heredocs is treated as documentation",end:/\p{space}*"""/dgv,name:"comment.block.documentation.heredoc"},{begin:/@(module|type)?doc (~[a-z])?'''/dgv,comment:"@doc with heredocs is treated as documentation",end:/\p{space}*'''/dgv,name:"comment.block.documentation.heredoc",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/@(module|type)?doc ~[A-Z]'''/dgv,comment:"@doc with heredocs is treated as documentation",end:/\p{space}*'''/dgv,name:"comment.block.documentation.heredoc"},{comment:"@doc false is treated as documentation",match:/@(module|type)?doc false/dgv,name:"comment.block.documentation.false"},{begin:/@(module|type)?doc "/dgv,comment:"@doc with string is treated as documentation",end:/"/dgv,name:"comment.block.documentation.string",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{match:/(?<!\.)\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(?![\?\!\:])/dgv,name:"keyword.control.elixir"},{comment:" as above, just doesn't need a 'end' and does a logic operation",match:/(?<!\.)\b(and|not|or|when|xor|in)\b/dgv,name:"keyword.operator.elixir"},{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.class.elixir"},{match:/\b(nil|true|false)\b(?![\?\!])/dgv,name:"constant.language.elixir"},{match:/\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\b(?![\?\!])/dgv,name:"variable.language.elixir"},{captures:{"1":{name:"punctuation.definition.variable.elixir"}},match:/(@)[a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.readwrite.module.elixir"},{captures:{"1":{name:"punctuation.definition.variable.elixir"}},match:/(&)\p{Nd}+/dgv,name:"variable.other.anonymous.elixir"},{match:/&(?![\&])/dgv,name:"variable.other.anonymous.elixir"},{captures:{"1":{name:"punctuation.definition.variable.elixir"}},match:/\^[a-z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.capture.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b0x[0-9A-Fa-f](?:(?=(_?[0-9A-Fa-f]))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.hex.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b\\p{Nd}(?:(?=(_?\\p{Nd}))\\1)*(\\.(?![^\\p{space}\\p{Nd}])(?:(?=(_?\\p{Nd}))\\3)+)([eE][\\-\\+]?\\p{Nd}(?:(?=(_?\\p{Nd}))\\5)*)?\\b","dgv",{"hiddenCaptures":[1,3,5]}),name:"constant.numeric.float.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b\\p{Nd}(?:(?=(_?\\p{Nd}))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.integer.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b0b[01](?:(?=(_?[01]))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.binary.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b0o[0-7](?:(?=(_?[0-7]))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.octal.elixir"},{begin:/:'/dgv,captures:{"0":{name:"punctuation.definition.constant.elixir"}},end:/'/dgv,name:"constant.other.symbol.single-quoted.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/:"/dgv,captures:{"0":{name:"punctuation.definition.constant.elixir"}},end:/"/dgv,name:"constant.other.symbol.double-quoted.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?:(?=('''))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"Single-quoted heredocs",end:/^\p{space}*'''/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.single.heredoc.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"single quoted string (allows for interpolation)",end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.single.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?:(?=(\"\"\"))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"Double-quoted heredocs",end:/^\p{space}*"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.double.heredoc.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"double quoted string (allows for interpolation)",end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.double.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("~[a-z](?:(?=(\"\"\"))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"Double-quoted heredocs sigils",end:/^\p{space}*"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.heredoc.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (allow for interpolation)",end:/\}[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (allow for interpolation)",end:/\][a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (allow for interpolation)",end:/>[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (allow for interpolation)",end:/\)[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]([^\p{L}\p{M}\p{N}\p{Pc}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (allow for interpolation)",end:/\1[a-z]*()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("~[A-Z](?:(?=(\"\"\"))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"Double-quoted heredocs sigils",end:/^\p{space}*"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.heredoc.literal.elixir"},{begin:/~[A-Z]\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (without interpolation)",end:/\}[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (without interpolation)",end:/\][a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (without interpolation)",end:/>[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (without interpolation)",end:/\)[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]([^\p{L}\p{M}\p{N}\p{Pc}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},comment:"sigil (without interpolation)",end:/\1[a-z]*()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{captures:{"1":{name:"punctuation.definition.constant.elixir"}},comment:"symbols",match:/*@__PURE__*/ new EmulatedRegExp("(?<!:)(:)(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}\\@]*(?:(?=([\\?\\!]|=(?![\\>\\=])))\\3)?|<>|===?|!==?|<<>>|<<<|>>>|~~~|::|<-|\\|>|=>|=~|=|/|\\\\\\\\|\\*\\*?|\\.\\.?\\.?|\\.\\.//|>=?|<=?|&&?&?|\\+\\+?|--?|\\|\\|?\\|?|!|@|%?\\{\\}|%|\\[\\]|\\^(\\^\\^)?))\\2)","dgv",{"hiddenCaptures":[2,3]}),name:"constant.other.symbol.elixir"},{captures:{"1":{name:"punctuation.definition.constant.elixir"}},comment:"symbols",match:/*@__PURE__*/ new EmulatedRegExp("(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}\\@]*(?:(?=([\\?\\!]))\\2)?))\\1)(:)(?!:)","dgv",{"hiddenCaptures":[1,2]}),name:"constant.other.keywords.elixir"},{begin:/(^[ \t]+)?(?=##)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.elixir"}},end:/(?!#)/dgv,patterns:[{begin:/##/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.elixir"}},end:/\n/dgv,name:"comment.line.section.elixir"}]},{begin:/(^[ \t]+)?(?=#)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.elixir"}},end:/(?!#)/dgv,patterns:[{begin:/#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.elixir"}},end:/\n/dgv,name:"comment.line.number-sign.elixir"}]},{match:/\b_([^_][\p{L}\p{M}\p{N}\p{Pc}]+[\?\!]?)/dgv,name:"comment.unused.elixir"},{match:/\b_\b/dgv,name:"comment.wildcard.elixir"},{comment:"\n\t\t\tmatches questionmark-letters.\n\n\t\t\texamples (1st alternation = hex):\n\t\t\t?\\x1 ?\\x61\n\n\t\t\texamples (2rd alternation = escaped):\n\t\t\t?\\n ?\\b\n\n\t\t\texamples (3rd alternation = normal):\n\t\t\t?a ?A ?0\n\t\t\t?* ?\" ?(\n\t\t\t?. ?#\n\n\t\t\tthe negative lookbehind prevents against matching\n\t\t\tp(42.tainted?)\n\t\t\t",match:/(?<![\p{L}\p{M}\p{N}\p{Pc}])\?(\\(x[0-9A-Fa-f]{1,2}(?![0-9A-Fa-f])\b|[^xMC])|[^\p{space}\\])/dgv,name:"constant.numeric.elixir"},{match:/\+\+|--|<\|>/dgv,name:"keyword.operator.concatenation.elixir"},{match:/\|>|<~>|<>|<<<|>>>|~>>|<<~|~>|<~|<\|>/dgv,name:"keyword.operator.sigils_1.elixir"},{match:/&&&|&&/dgv,name:"keyword.operator.sigils_2.elixir"},{match:/<-|\\\\/dgv,name:"keyword.operator.sigils_3.elixir"},{match:/===?|!==?|<=?|>=?/dgv,name:"keyword.operator.comparison.elixir"},{match:/(\|\|\||&&&|\^\^\^|<<<|>>>|~~~)/dgv,name:"keyword.operator.bitwise.elixir"},{match:/(?<=[ \t])!+|\bnot\b|&&|\band\b|\|\||\bor\b|\bxor\b/dgv,name:"keyword.operator.logical.elixir"},{match:/(\*|\+|-|\/)/dgv,name:"keyword.operator.arithmetic.elixir"},{match:/\||\+\+|--|\*\*|\\\\|<-|<>|<<|>>|::|\.\.|\/\/|\|>|~|=>|&/dgv,name:"keyword.operator.other.elixir"},{match:/=/dgv,name:"keyword.operator.assignment.elixir"},{match:/:/dgv,name:"punctuation.separator.other.elixir"},{match:/;/dgv,name:"punctuation.separator.statement.elixir"},{match:/,/dgv,name:"punctuation.separator.object.elixir"},{match:/\./dgv,name:"punctuation.separator.method.elixir"},{match:/\{|\}/dgv,name:"punctuation.section.scope.elixir"},{match:/\[|\]/dgv,name:"punctuation.section.array.elixir"},{match:/\(|\)/dgv,name:"punctuation.section.function.elixir"}]},escaped_char:{match:/\\(x[\p{Nd}a-fA-F]{1,2}|[^\n])/dgv,name:"constant.character.escaped.elixir"},interpolated_elixir:{begin:/#\{/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.elixir"}},contentName:"source.elixir",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.elixir"}},name:"meta.embedded.line.elixir",patterns:[{include:"#nest_curly_and_self"},{include:"$self"}]},nest_curly_and_self:{patterns:[{begin:/\{/dgv,captures:{"0":{name:"punctuation.section.scope.elixir"}},end:/\}/dgv,patterns:[{include:"#nest_curly_and_self"}]},{include:"$self"}]}},scopeName:"source.elixir",embeddedLangs:["html"],aliases:undefined})
4
+ const lang = Object.freeze({displayName:"Elixir",fileTypes:["ex","exs"],firstLineMatch:/^#!\/[^\n]*\belixir/dgv,foldingStartMarker:/(after|else|catch|rescue|->|\{|\[|do)\p{space}*(?=\n?$)/dgv,foldingStopMarker:/^\p{space}*((\}|\]|after|else|catch|rescue)\p{space}*(?=\n?$)|end\b)/dgv,name:"elixir",patterns:[{begin:/\b(fn)\b(?![^\n]*->)/dgv,beginCaptures:{"1":{name:"keyword.control.elixir"}},end:/(?=\n?$)/dgv,patterns:[{include:"#core_syntax"}]},{captures:{"1":{name:"entity.name.type.class.elixir"},"2":{name:"punctuation.separator.method.elixir"},"3":{name:"entity.name.function.elixir"}},match:/([A-Z][\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(\.)\p{space}*([a-z_][\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?)/dgv},{captures:{"1":{name:"constant.other.symbol.elixir"},"2":{name:"punctuation.separator.method.elixir"},"3":{name:"entity.name.function.elixir"}},match:/(:[\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(\.)\p{space}*([_]?[\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?)/dgv},{captures:{"1":{name:"keyword.operator.other.elixir"},"2":{name:"entity.name.function.elixir"}},match:/(\|>)\p{space}*([a-z_][\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?)/dgv},{match:/\b[a-z_][\p{L}\p{M}\p{N}\p{Pc}]*[\!\?]?(?=\p{space}*\.?\p{space}*\()/dgv,name:"entity.name.function.elixir"},{begin:/\b(fn)\b(?=[^\n]*->)/dgv,beginCaptures:{"1":{name:"keyword.control.elixir"}},end:/*@__PURE__*/ new EmulatedRegExp("(?:(?=((->)|(when)|(\\))))\\1)","dgv",{"hiddenCaptures":[1]}),endCaptures:{"1":{name:"keyword.operator.other.elixir"},"2":{name:"keyword.control.elixir"},"3":{name:"punctuation.section.function.elixir"}},patterns:[{include:"#core_syntax"}]},{include:"#core_syntax"},{begin:/^(?=[^\n]*->)((?![^"']*("|')[^"']*->)|(?=[^\n]*->[^"']*("|')[^"']*->))((?![^\n]*\([^\)]*->)|(?=[^\(\)]*->)|(?=\p{space}*\([^\n]*\)[^\n]*->))((?![^\n]*\b(fn)\b)|(?=[^\n]*->[^\n]*\bfn\b))/dgv,beginCaptures:{"1":{name:"keyword.control.elixir"}},end:/*@__PURE__*/ new EmulatedRegExp("(?:(?=((->)|(when)|(\\))))\\1)","dgv",{"hiddenCaptures":[1]}),endCaptures:{"1":{name:"keyword.operator.other.elixir"},"2":{name:"keyword.control.elixir"},"3":{name:"punctuation.section.function.elixir"}},patterns:[{include:"#core_syntax"}]}],repository:{core_syntax:{patterns:[{begin:/^\p{space}*(defmodule)\b/dgv,beginCaptures:{"1":{name:"keyword.control.module.elixir"}},end:/\b(do)\b/dgv,endCaptures:{"1":{name:"keyword.control.module.elixir"}},name:"meta.module.elixir",patterns:[{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*(?=\.)/dgv,name:"entity.other.inherited-class.elixir"},{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.class.elixir"}]},{begin:/^\p{space}*(defprotocol)\b/dgv,beginCaptures:{"1":{name:"keyword.control.protocol.elixir"}},end:/\b(do)\b/dgv,endCaptures:{"1":{name:"keyword.control.protocol.elixir"}},name:"meta.protocol_declaration.elixir",patterns:[{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.protocol.elixir"}]},{begin:/^\p{space}*(defimpl)\b/dgv,beginCaptures:{"1":{name:"keyword.control.protocol.elixir"}},end:/\b(do)\b/dgv,endCaptures:{"1":{name:"keyword.control.protocol.elixir"}},name:"meta.protocol_implementation.elixir",patterns:[{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.protocol.elixir"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("^\\p{space}*(def|defmacro|defdelegate|defguard)\\p{space}+((?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=(\\.|::))\\4)))\\3)?(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=([\\?\\!]|=(?!>)))\\6)?|===?|>[\\>\\=]?|<=>|<[\\<\\=]?|[\\%\\&\\`\\/\\|]|\\*\\*?|=?~|[\\-\\+]@?|\\[\\]=?))\\5))((\\()|\\p{space}*)","dgv",{"hiddenCaptures":[3,4,5,6]}),beginCaptures:{"1":{name:"keyword.control.module.elixir"},"2":{name:"entity.name.function.public.elixir"},"4":{name:"punctuation.section.function.elixir"}},end:/(\bdo:)|(\bdo\b)|(?=\p{space}+(def|defn|defmacro|defdelegate|defguard)\b)/dgv,endCaptures:{"1":{name:"constant.other.keywords.elixir"},"2":{name:"keyword.control.module.elixir"}},name:"meta.function.public.elixir",patterns:[{include:"$self"},{begin:/\p{space}(\\\\)/dgv,beginCaptures:{"1":{name:"keyword.operator.other.elixir"}},end:/,|\)|(?=\n?$)/dgv,patterns:[{include:"$self"}]},{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/dgv,name:"keyword.control.elixir"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("^\\p{space}*(defp|defnp|defmacrop|defguardp)\\p{space}+((?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=(\\.|::))\\4)))\\3)?(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:(?=([\\?\\!]|=(?!>)))\\6)?|===?|>[\\>\\=]?|<=>|<[\\<\\=]?|[\\%\\&\\`\\/\\|]|\\*\\*?|=?~|[\\-\\+]@?|\\[\\]=?))\\5))((\\()|\\p{space}*)","dgv",{"hiddenCaptures":[3,4,5,6]}),beginCaptures:{"1":{name:"keyword.control.module.elixir"},"2":{name:"entity.name.function.private.elixir"},"4":{name:"punctuation.section.function.elixir"}},end:/(\bdo:)|(\bdo\b)|(?=\p{space}+(defp|defmacrop|defguardp)\b)/dgv,endCaptures:{"1":{name:"constant.other.keywords.elixir"},"2":{name:"keyword.control.module.elixir"}},name:"meta.function.private.elixir",patterns:[{include:"$self"},{begin:/\p{space}(\\\\)/dgv,beginCaptures:{"1":{name:"keyword.operator.other.elixir"}},end:/,|\)|(?=\n?$)/dgv,patterns:[{include:"$self"}]},{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/dgv,name:"keyword.control.elixir"}]},{begin:/\p{space}*~L"""/dgv,end:/\p{space}*"""/dgv,name:"sigil.leex",patterns:[{include:"text.elixir"},{include:"text.html.basic"}]},{begin:/\p{space}*~H"""/dgv,end:/\p{space}*"""/dgv,name:"sigil.heex",patterns:[{include:"text.elixir"},{include:"text.html.basic"}]},{begin:/@(module|type)?doc (~[a-z])?"""/dgv,end:/\p{space}*"""/dgv,name:"comment.block.documentation.heredoc",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/@(module|type)?doc ~[A-Z]"""/dgv,end:/\p{space}*"""/dgv,name:"comment.block.documentation.heredoc"},{begin:/@(module|type)?doc (~[a-z])?'''/dgv,end:/\p{space}*'''/dgv,name:"comment.block.documentation.heredoc",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/@(module|type)?doc ~[A-Z]'''/dgv,end:/\p{space}*'''/dgv,name:"comment.block.documentation.heredoc"},{match:/@(module|type)?doc false/dgv,name:"comment.block.documentation.false"},{begin:/@(module|type)?doc "/dgv,end:/"/dgv,name:"comment.block.documentation.string",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{match:/(?<!\.)\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(?![\?\!\:])/dgv,name:"keyword.control.elixir"},{match:/(?<!\.)\b(and|not|or|when|xor|in)\b/dgv,name:"keyword.operator.elixir"},{match:/\b[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.type.class.elixir"},{match:/\b(nil|true|false)\b(?![\?\!])/dgv,name:"constant.language.elixir"},{match:/\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\b(?![\?\!])/dgv,name:"variable.language.elixir"},{captures:{"1":{name:"punctuation.definition.variable.elixir"}},match:/(@)[a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.readwrite.module.elixir"},{captures:{"1":{name:"punctuation.definition.variable.elixir"}},match:/(&)\p{Nd}+/dgv,name:"variable.other.anonymous.elixir"},{match:/&(?![\&])/dgv,name:"variable.other.anonymous.elixir"},{captures:{"1":{name:"punctuation.definition.variable.elixir"}},match:/\^[a-z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.capture.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b0x[0-9A-Fa-f](?:(?=(_?[0-9A-Fa-f]))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.hex.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b\\p{Nd}(?:(?=(_?\\p{Nd}))\\1)*(\\.(?![^\\p{space}\\p{Nd}])(?:(?=(_?\\p{Nd}))\\3)+)([eE][\\-\\+]?\\p{Nd}(?:(?=(_?\\p{Nd}))\\5)*)?\\b","dgv",{"hiddenCaptures":[1,3,5]}),name:"constant.numeric.float.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b\\p{Nd}(?:(?=(_?\\p{Nd}))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.integer.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b0b[01](?:(?=(_?[01]))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.binary.elixir"},{match:/*@__PURE__*/ new EmulatedRegExp("\\b0o[0-7](?:(?=(_?[0-7]))\\1)*\\b","dgv",{"hiddenCaptures":[1]}),name:"constant.numeric.octal.elixir"},{begin:/:'/dgv,captures:{"0":{name:"punctuation.definition.constant.elixir"}},end:/'/dgv,name:"constant.other.symbol.single-quoted.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/:"/dgv,captures:{"0":{name:"punctuation.definition.constant.elixir"}},end:/"/dgv,name:"constant.other.symbol.double-quoted.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?:(?=('''))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/^\p{space}*'''/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.single.heredoc.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.single.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?:(?=(\"\"\"))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/^\p{space}*"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.double.heredoc.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.double.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("~[a-z](?:(?=(\"\"\"))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/^\p{space}*"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.heredoc.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\}[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\][a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/>[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\)[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/~[a-z]([^\p{L}\p{M}\p{N}\p{Pc}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\1[a-z]*()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.elixir",patterns:[{include:"#interpolated_elixir"},{include:"#escaped_char"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("~[A-Z](?:(?=(\"\"\"))\\1)","dgv",{"hiddenCaptures":[1]}),beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/^\p{space}*"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.heredoc.literal.elixir"},{begin:/~[A-Z]\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\}[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\][a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]</dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/>[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\)[a-z]*/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{begin:/~[A-Z]([^\p{L}\p{M}\p{N}\p{Pc}])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elixir"}},end:/\1[a-z]*()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elixir"}},name:"string.quoted.other.sigil.literal.elixir"},{captures:{"1":{name:"punctuation.definition.constant.elixir"}},match:/*@__PURE__*/ new EmulatedRegExp("(?<!:)(:)(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}\\@]*(?:(?=([\\?\\!]|=(?![\\>\\=])))\\3)?|<>|===?|!==?|<<>>|<<<|>>>|~~~|::|<-|\\|>|=>|=~|=|/|\\\\\\\\|\\*\\*?|\\.\\.?\\.?|\\.\\.//|>=?|<=?|&&?&?|\\+\\+?|--?|\\|\\|?\\|?|!|@|%?\\{\\}|%|\\[\\]|\\^(\\^\\^)?))\\2)","dgv",{"hiddenCaptures":[2,3]}),name:"constant.other.symbol.elixir"},{captures:{"1":{name:"punctuation.definition.constant.elixir"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:(?=([a-zA-Z_][\\p{L}\\p{M}\\p{N}\\p{Pc}\\@]*(?:(?=([\\?\\!]))\\2)?))\\1)(:)(?!:)","dgv",{"hiddenCaptures":[1,2]}),name:"constant.other.keywords.elixir"},{begin:/(^[ \t]+)?(?=##)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.elixir"}},end:/(?!#)/dgv,patterns:[{begin:/##/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.elixir"}},end:/\n/dgv,name:"comment.line.section.elixir"}]},{begin:/(^[ \t]+)?(?=#)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.elixir"}},end:/(?!#)/dgv,patterns:[{begin:/#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.elixir"}},end:/\n/dgv,name:"comment.line.number-sign.elixir"}]},{match:/\b_([^_][\p{L}\p{M}\p{N}\p{Pc}]+[\?\!]?)/dgv,name:"comment.unused.elixir"},{match:/\b_\b/dgv,name:"comment.wildcard.elixir"},{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}])\?(\\(x[0-9A-Fa-f]{1,2}(?![0-9A-Fa-f])\b|[^xMC])|[^\p{space}\\])/dgv,name:"constant.numeric.elixir"},{match:/\+\+|--|<\|>/dgv,name:"keyword.operator.concatenation.elixir"},{match:/\|>|<~>|<>|<<<|>>>|~>>|<<~|~>|<~|<\|>/dgv,name:"keyword.operator.sigils_1.elixir"},{match:/&&&|&&/dgv,name:"keyword.operator.sigils_2.elixir"},{match:/<-|\\\\/dgv,name:"keyword.operator.sigils_3.elixir"},{match:/===?|!==?|<=?|>=?/dgv,name:"keyword.operator.comparison.elixir"},{match:/(\|\|\||&&&|\^\^\^|<<<|>>>|~~~)/dgv,name:"keyword.operator.bitwise.elixir"},{match:/(?<=[ \t])!+|\bnot\b|&&|\band\b|\|\||\bor\b|\bxor\b/dgv,name:"keyword.operator.logical.elixir"},{match:/(\*|\+|-|\/)/dgv,name:"keyword.operator.arithmetic.elixir"},{match:/\||\+\+|--|\*\*|\\\\|<-|<>|<<|>>|::|\.\.|\/\/|\|>|~|=>|&/dgv,name:"keyword.operator.other.elixir"},{match:/=/dgv,name:"keyword.operator.assignment.elixir"},{match:/:/dgv,name:"punctuation.separator.other.elixir"},{match:/;/dgv,name:"punctuation.separator.statement.elixir"},{match:/,/dgv,name:"punctuation.separator.object.elixir"},{match:/\./dgv,name:"punctuation.separator.method.elixir"},{match:/\{|\}/dgv,name:"punctuation.section.scope.elixir"},{match:/\[|\]/dgv,name:"punctuation.section.array.elixir"},{match:/\(|\)/dgv,name:"punctuation.section.function.elixir"}]},escaped_char:{match:/\\(x[\p{Nd}a-fA-F]{1,2}|[^\n])/dgv,name:"constant.character.escaped.elixir"},interpolated_elixir:{begin:/#\{/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.elixir"}},contentName:"source.elixir",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.elixir"}},name:"meta.embedded.line.elixir",patterns:[{include:"#nest_curly_and_self"},{include:"$self"}]},nest_curly_and_self:{patterns:[{begin:/\{/dgv,captures:{"0":{name:"punctuation.section.scope.elixir"}},end:/\}/dgv,patterns:[{include:"#nest_curly_and_self"}]},{include:"$self"}]}},scopeName:"source.elixir",embeddedLangs:["html"],aliases:undefined})
5
5
 
6
6
  export default [
7
7
  ...html,
package/dist/elm.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import glsl from './glsl.mjs'
2
2
 
3
- const lang = Object.freeze({displayName:"Elm",fileTypes:["elm"],name:"elm",patterns:[{include:"#import"},{include:"#module"},{include:"#debug"},{include:"#comments"},{match:/\b(_)\b/dgv,name:"keyword.unused.elm"},{include:"#type-signature"},{include:"#type-declaration"},{include:"#type-alias-declaration"},{include:"#string-triple"},{include:"#string-quote"},{include:"#char"},{comment:"Floats are always decimal",match:/\b([0-9]+\.[0-9]+([eE][\+\-]?[0-9]+)?|[0-9]+[eE][\+\-]?[0-9]+)\b/dgv,name:"constant.numeric.float.elm"},{match:/\b([0-9]+)\b/dgv,name:"constant.numeric.elm"},{match:/\b(0x[0-9a-fA-F]+)\b/dgv,name:"constant.numeric.elm"},{include:"#glsl"},{include:"#record-prefix"},{include:"#module-prefix"},{include:"#constructor"},{captures:{"1":{name:"punctuation.bracket.elm"},"2":{name:"record.name.elm"},"3":{name:"keyword.pipe.elm"},"4":{name:"entity.name.record.field.elm"}},match:/(\{)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(\|)\p{space}+([a-z][a-zA-Z0-9_]*)/dgv,name:"meta.record.field.update.elm"},{captures:{"1":{name:"keyword.pipe.elm"},"2":{name:"entity.name.record.field.elm"},"3":{name:"keyword.operator.assignment.elm"}},match:/(\|)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(=)/dgv,name:"meta.record.field.update.elm"},{captures:{"1":{name:"punctuation.bracket.elm"},"2":{name:"record.name.elm"}},match:/(\{)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(?=\n?$)/dgv,name:"meta.record.field.update.elm"},{captures:{"1":{name:"punctuation.bracket.elm"},"2":{name:"entity.name.record.field.elm"},"3":{name:"keyword.operator.assignment.elm"}},match:/(\{)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(=)/dgv,name:"meta.record.field.elm"},{captures:{"1":{name:"punctuation.separator.comma.elm"},"2":{name:"entity.name.record.field.elm"},"3":{name:"keyword.operator.assignment.elm"}},match:/(,)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(=)/dgv,name:"meta.record.field.elm"},{match:/(\}|\{)/dgv,name:"punctuation.bracket.elm"},{include:"#unit"},{include:"#comma"},{include:"#parens"},{match:/(->)/dgv,name:"keyword.operator.arrow.elm"},{include:"#infix_op"},{match:/(=|:|\||\\)/dgv,name:"keyword.other.elm"},{match:/\b(type|as|port|exposing|alias|infixl|infixr|infix)\p{space}+/dgv,name:"keyword.other.elm"},{match:/\b(if|then|else|case|of|let|in)\p{space}+/dgv,name:"keyword.control.elm"},{include:"#record-accessor"},{include:"#top_level_value"},{include:"#value"},{include:"#period"},{include:"#square_brackets"}],repository:{block_comment:{applyEndPatternLast:1,begin:/\{-(?!#)/dgv,captures:{"0":{name:"punctuation.definition.comment.elm"}},end:/-\}/dgv,name:"comment.block.elm",patterns:[{include:"#block_comment"}]},char:{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.char.begin.elm"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.char.end.elm"}},name:"string.quoted.single.elm",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&]|x[0-9a-fA-F]{1,5})/dgv,name:"constant.character.escape.elm"},{match:/\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.elm"}]},comma:{match:/(,)/dgv,name:"punctuation.separator.comma.elm"},comments:{patterns:[{begin:/--/dgv,captures:{"1":{name:"punctuation.definition.comment.elm"}},end:/(?=\n?$)/dgv,name:"comment.line.double-dash.elm"},{include:"#block_comment"}]},constructor:{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"constant.type-constructor.elm"},debug:{match:/\b(Debug)\b/dgv,name:"invalid.illegal.debug.elm"},glsl:{begin:/(\[)(glsl)(\|)/dgv,beginCaptures:{"1":{name:"entity.glsl.bracket.elm"},"2":{name:"entity.glsl.name.elm"},"3":{name:"entity.glsl.bracket.elm"}},end:/(\|\])/dgv,endCaptures:{"1":{name:"entity.glsl.bracket.elm"}},name:"meta.embedded.block.glsl",patterns:[{include:"source.glsl"}]},import:{begin:/^\b(import)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.control.import.elm"}},end:/\n(?!\p{space})/dgv,name:"meta.import.elm",patterns:[{match:/(as|exposing)/dgv,name:"keyword.control.elm"},{include:"#module_chunk"},{include:"#period"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#module-exports"}]},infix_op:{match:/(<\/>|<\?>|<\||<=|\|\||&&|>=|\|>|\|=|\|\.|\+\+|::|\/=|==|\/\/|>>|<<|<|>|\^|\+|-|\/|\*)/dgv,name:"keyword.operator.elm"},module:{begin:/^\b((port |effect )?module)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.other.elm"}},end:/\n(?!\p{space})/dgv,endCaptures:{"1":{name:"keyword.other.elm"}},name:"meta.declaration.module.elm",patterns:[{include:"#module_chunk"},{include:"#period"},{match:/(exposing)/dgv,name:"keyword.other.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#module-exports"}]},"module-exports":{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.parens.module-export.elm"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.parens.module-export.elm"}},name:"meta.declaration.exports.elm",patterns:[{match:/\b[a-z][a-zA-Z_'0-9]*/dgv,name:"entity.name.function.elm"},{match:/\b[A-Z][A-Za-z_'0-9]*/dgv,name:"storage.type.elm"},{match:/,/dgv,name:"punctuation.separator.comma.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#comma"},{match:/\(\.\.\)/dgv,name:"punctuation.parens.ellipses.elm"},{match:/\.\./dgv,name:"punctuation.parens.ellipses.elm"},{include:"#infix_op"},{comment:"So named because I don't know what to call this.",match:/\([^\n]*?\)/dgv,name:"meta.other.unknown.elm"}]},"module-prefix":{captures:{"1":{name:"support.module.elm"},"2":{name:"keyword.other.period.elm"}},match:/([A-Z][a-zA-Z0-9_]*)(\.)/dgv,name:"meta.module.name.elm"},module_chunk:{match:/[A-Z][a-zA-Z0-9_]*/dgv,name:"support.module.elm"},parens:{match:/(\(|\))/dgv,name:"punctuation.parens.elm"},period:{match:/[\.]/dgv,name:"keyword.other.period.elm"},"record-accessor":{captures:{"1":{name:"keyword.other.period.elm"},"2":{name:"entity.name.record.field.accessor.elm"}},match:/(\.)([a-z][a-zA-Z0-9_]*)/dgv,name:"meta.record.accessor"},"record-prefix":{captures:{"1":{name:"record.name.elm"},"2":{name:"keyword.other.period.elm"},"3":{name:"entity.name.record.field.accessor.elm"}},match:/([a-z][a-zA-Z0-9_]*)(\.)([a-z][a-zA-Z0-9_]*)/dgv,name:"record.accessor.elm"},square_brackets:{match:/[\[\]]/dgv,name:"punctuation.definition.list.elm"},"string-quote":{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elm"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elm"}},name:"string.quoted.double.elm",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&]|x[0-9a-fA-F]{1,5})/dgv,name:"constant.character.escape.elm"},{match:/\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.elm"}]},"string-triple":{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elm"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elm"}},name:"string.quoted.triple.elm",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&]|x[0-9a-fA-F]{1,5})/dgv,name:"constant.character.escape.elm"},{match:/\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.elm"}]},top_level_value:{match:/^[a-z][a-zA-Z0-9_]*\b/dgv,name:"entity.name.function.top_level.elm"},"type-alias-declaration":{begin:/^(type\p{space}+)(alias\p{space}+)([A-Z][a-zA-Z0-9_']*)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.type.elm"},"2":{name:"keyword.type-alias.elm"},"3":{name:"storage.type.elm"}},end:/^(?=\P{space})/dgv,name:"meta.function.type-declaration.elm",patterns:[{match:/\n\p{space}+/dgv,name:"punctuation.spaces.elm"},{match:/=/dgv,name:"keyword.operator.assignment.elm"},{include:"#module-prefix"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{include:"#comments"},{include:"#type-record"}]},"type-declaration":{begin:/^(type\p{space}+)([A-Z][a-zA-Z0-9_']*)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.type.elm"},"2":{name:"storage.type.elm"}},end:/^(?=\P{space})/dgv,name:"meta.function.type-declaration.elm",patterns:[{captures:{"1":{name:"constant.type-constructor.elm"}},match:/^\p{space}*([A-Z][a-zA-Z0-9_]*)\b/dgv,name:"meta.record.field.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{captures:{"1":{name:"keyword.operator.assignment.elm"},"2":{name:"constant.type-constructor.elm"}},match:/(=|\|)\p{space}+([A-Z][a-zA-Z0-9_]*)\b/dgv,name:"meta.record.field.elm"},{match:/=/dgv,name:"keyword.operator.assignment.elm"},{match:/->/dgv,name:"keyword.operator.arrow.elm"},{include:"#module-prefix"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{include:"#comments"},{include:"#type-record"}]},"type-record":{begin:/(\{)/dgv,beginCaptures:{"1":{name:"punctuation.section.braces.begin"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.section.braces.end"}},name:"meta.function.type-record.elm",patterns:[{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{match:/->/dgv,name:"keyword.operator.arrow.elm"},{captures:{"1":{name:"entity.name.record.field.elm"},"2":{name:"keyword.other.elm"}},match:/([a-z][a-zA-Z0-9_]*)\p{space}+(:)/dgv,name:"meta.record.field.elm"},{match:/,/dgv,name:"punctuation.separator.comma.elm"},{include:"#module-prefix"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{include:"#comments"},{include:"#type-record"}]},"type-signature":{begin:/^(port\p{space}+)?([a-z_][a-zA-Z0-9_']*)\p{space}+(:)/dgv,beginCaptures:{"1":{name:"keyword.other.port.elm"},"2":{name:"entity.name.function.elm"},"3":{name:"keyword.other.colon.elm"}},end:/((^(?=[a-z]))|^(?=\n?$))/dgv,name:"meta.function.type-declaration.elm",patterns:[{include:"#type-signature-chunk"}]},"type-signature-chunk":{patterns:[{match:/->/dgv,name:"keyword.operator.arrow.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#module-prefix"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{match:/\(\)/dgv,name:"constant.unit.elm"},{include:"#comma"},{include:"#parens"},{include:"#comments"},{include:"#type-record"}]},unit:{match:/\(\)/dgv,name:"constant.unit.elm"},value:{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"meta.value.elm"}},scopeName:"source.elm",embeddedLangs:["glsl"],aliases:undefined})
3
+ const lang = Object.freeze({displayName:"Elm",fileTypes:["elm"],name:"elm",patterns:[{include:"#import"},{include:"#module"},{include:"#debug"},{include:"#comments"},{match:/\b(_)\b/dgv,name:"keyword.unused.elm"},{include:"#type-signature"},{include:"#type-declaration"},{include:"#type-alias-declaration"},{include:"#string-triple"},{include:"#string-quote"},{include:"#char"},{match:/\b([0-9]+\.[0-9]+([eE][\+\-]?[0-9]+)?|[0-9]+[eE][\+\-]?[0-9]+)\b/dgv,name:"constant.numeric.float.elm"},{match:/\b([0-9]+)\b/dgv,name:"constant.numeric.elm"},{match:/\b(0x[0-9a-fA-F]+)\b/dgv,name:"constant.numeric.elm"},{include:"#glsl"},{include:"#record-prefix"},{include:"#module-prefix"},{include:"#constructor"},{captures:{"1":{name:"punctuation.bracket.elm"},"2":{name:"record.name.elm"},"3":{name:"keyword.pipe.elm"},"4":{name:"entity.name.record.field.elm"}},match:/(\{)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(\|)\p{space}+([a-z][a-zA-Z0-9_]*)/dgv,name:"meta.record.field.update.elm"},{captures:{"1":{name:"keyword.pipe.elm"},"2":{name:"entity.name.record.field.elm"},"3":{name:"keyword.operator.assignment.elm"}},match:/(\|)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(=)/dgv,name:"meta.record.field.update.elm"},{captures:{"1":{name:"punctuation.bracket.elm"},"2":{name:"record.name.elm"}},match:/(\{)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(?=\n?$)/dgv,name:"meta.record.field.update.elm"},{captures:{"1":{name:"punctuation.bracket.elm"},"2":{name:"entity.name.record.field.elm"},"3":{name:"keyword.operator.assignment.elm"}},match:/(\{)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(=)/dgv,name:"meta.record.field.elm"},{captures:{"1":{name:"punctuation.separator.comma.elm"},"2":{name:"entity.name.record.field.elm"},"3":{name:"keyword.operator.assignment.elm"}},match:/(,)\p{space}+([a-z][a-zA-Z0-9_]*)\p{space}+(=)/dgv,name:"meta.record.field.elm"},{match:/(\}|\{)/dgv,name:"punctuation.bracket.elm"},{include:"#unit"},{include:"#comma"},{include:"#parens"},{match:/(->)/dgv,name:"keyword.operator.arrow.elm"},{include:"#infix_op"},{match:/(=|:|\||\\)/dgv,name:"keyword.other.elm"},{match:/\b(type|as|port|exposing|alias|infixl|infixr|infix)\p{space}+/dgv,name:"keyword.other.elm"},{match:/\b(if|then|else|case|of|let|in)\p{space}+/dgv,name:"keyword.control.elm"},{include:"#record-accessor"},{include:"#top_level_value"},{include:"#value"},{include:"#period"},{include:"#square_brackets"}],repository:{block_comment:{applyEndPatternLast:1,begin:/\{-(?!#)/dgv,captures:{"0":{name:"punctuation.definition.comment.elm"}},end:/-\}/dgv,name:"comment.block.elm",patterns:[{include:"#block_comment"}]},char:{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.char.begin.elm"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.char.end.elm"}},name:"string.quoted.single.elm",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&]|x[0-9a-fA-F]{1,5})/dgv,name:"constant.character.escape.elm"},{match:/\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.elm"}]},comma:{match:/(,)/dgv,name:"punctuation.separator.comma.elm"},comments:{patterns:[{begin:/--/dgv,captures:{"1":{name:"punctuation.definition.comment.elm"}},end:/(?=\n?$)/dgv,name:"comment.line.double-dash.elm"},{include:"#block_comment"}]},constructor:{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"constant.type-constructor.elm"},debug:{match:/\b(Debug)\b/dgv,name:"invalid.illegal.debug.elm"},glsl:{begin:/(\[)(glsl)(\|)/dgv,beginCaptures:{"1":{name:"entity.glsl.bracket.elm"},"2":{name:"entity.glsl.name.elm"},"3":{name:"entity.glsl.bracket.elm"}},end:/(\|\])/dgv,endCaptures:{"1":{name:"entity.glsl.bracket.elm"}},name:"meta.embedded.block.glsl",patterns:[{include:"source.glsl"}]},import:{begin:/^\b(import)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.control.import.elm"}},end:/\n(?!\p{space})/dgv,name:"meta.import.elm",patterns:[{match:/(as|exposing)/dgv,name:"keyword.control.elm"},{include:"#module_chunk"},{include:"#period"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#module-exports"}]},infix_op:{match:/(<\/>|<\?>|<\||<=|\|\||&&|>=|\|>|\|=|\|\.|\+\+|::|\/=|==|\/\/|>>|<<|<|>|\^|\+|-|\/|\*)/dgv,name:"keyword.operator.elm"},module:{begin:/^\b((port |effect )?module)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.other.elm"}},end:/\n(?!\p{space})/dgv,endCaptures:{"1":{name:"keyword.other.elm"}},name:"meta.declaration.module.elm",patterns:[{include:"#module_chunk"},{include:"#period"},{match:/(exposing)/dgv,name:"keyword.other.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#module-exports"}]},"module-exports":{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.parens.module-export.elm"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.parens.module-export.elm"}},name:"meta.declaration.exports.elm",patterns:[{match:/\b[a-z][a-zA-Z_'0-9]*/dgv,name:"entity.name.function.elm"},{match:/\b[A-Z][A-Za-z_'0-9]*/dgv,name:"storage.type.elm"},{match:/,/dgv,name:"punctuation.separator.comma.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#comma"},{match:/\(\.\.\)/dgv,name:"punctuation.parens.ellipses.elm"},{match:/\.\./dgv,name:"punctuation.parens.ellipses.elm"},{include:"#infix_op"},{match:/\([^\n]*?\)/dgv,name:"meta.other.unknown.elm"}]},"module-prefix":{captures:{"1":{name:"support.module.elm"},"2":{name:"keyword.other.period.elm"}},match:/([A-Z][a-zA-Z0-9_]*)(\.)/dgv,name:"meta.module.name.elm"},module_chunk:{match:/[A-Z][a-zA-Z0-9_]*/dgv,name:"support.module.elm"},parens:{match:/(\(|\))/dgv,name:"punctuation.parens.elm"},period:{match:/[\.]/dgv,name:"keyword.other.period.elm"},"record-accessor":{captures:{"1":{name:"keyword.other.period.elm"},"2":{name:"entity.name.record.field.accessor.elm"}},match:/(\.)([a-z][a-zA-Z0-9_]*)/dgv,name:"meta.record.accessor"},"record-prefix":{captures:{"1":{name:"record.name.elm"},"2":{name:"keyword.other.period.elm"},"3":{name:"entity.name.record.field.accessor.elm"}},match:/([a-z][a-zA-Z0-9_]*)(\.)([a-z][a-zA-Z0-9_]*)/dgv,name:"record.accessor.elm"},square_brackets:{match:/[\[\]]/dgv,name:"punctuation.definition.list.elm"},"string-quote":{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elm"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elm"}},name:"string.quoted.double.elm",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&]|x[0-9a-fA-F]{1,5})/dgv,name:"constant.character.escape.elm"},{match:/\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.elm"}]},"string-triple":{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.elm"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.elm"}},name:"string.quoted.triple.elm",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&]|x[0-9a-fA-F]{1,5})/dgv,name:"constant.character.escape.elm"},{match:/\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.elm"}]},top_level_value:{match:/^[a-z][a-zA-Z0-9_]*\b/dgv,name:"entity.name.function.top_level.elm"},"type-alias-declaration":{begin:/^(type\p{space}+)(alias\p{space}+)([A-Z][a-zA-Z0-9_']*)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.type.elm"},"2":{name:"keyword.type-alias.elm"},"3":{name:"storage.type.elm"}},end:/^(?=\P{space})/dgv,name:"meta.function.type-declaration.elm",patterns:[{match:/\n\p{space}+/dgv,name:"punctuation.spaces.elm"},{match:/=/dgv,name:"keyword.operator.assignment.elm"},{include:"#module-prefix"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{include:"#comments"},{include:"#type-record"}]},"type-declaration":{begin:/^(type\p{space}+)([A-Z][a-zA-Z0-9_']*)\p{space}+/dgv,beginCaptures:{"1":{name:"keyword.type.elm"},"2":{name:"storage.type.elm"}},end:/^(?=\P{space})/dgv,name:"meta.function.type-declaration.elm",patterns:[{captures:{"1":{name:"constant.type-constructor.elm"}},match:/^\p{space}*([A-Z][a-zA-Z0-9_]*)\b/dgv,name:"meta.record.field.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{captures:{"1":{name:"keyword.operator.assignment.elm"},"2":{name:"constant.type-constructor.elm"}},match:/(=|\|)\p{space}+([A-Z][a-zA-Z0-9_]*)\b/dgv,name:"meta.record.field.elm"},{match:/=/dgv,name:"keyword.operator.assignment.elm"},{match:/->/dgv,name:"keyword.operator.arrow.elm"},{include:"#module-prefix"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{include:"#comments"},{include:"#type-record"}]},"type-record":{begin:/(\{)/dgv,beginCaptures:{"1":{name:"punctuation.section.braces.begin"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.section.braces.end"}},name:"meta.function.type-record.elm",patterns:[{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{match:/->/dgv,name:"keyword.operator.arrow.elm"},{captures:{"1":{name:"entity.name.record.field.elm"},"2":{name:"keyword.other.elm"}},match:/([a-z][a-zA-Z0-9_]*)\p{space}+(:)/dgv,name:"meta.record.field.elm"},{match:/,/dgv,name:"punctuation.separator.comma.elm"},{include:"#module-prefix"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{include:"#comments"},{include:"#type-record"}]},"type-signature":{begin:/^(port\p{space}+)?([a-z_][a-zA-Z0-9_']*)\p{space}+(:)/dgv,beginCaptures:{"1":{name:"keyword.other.port.elm"},"2":{name:"entity.name.function.elm"},"3":{name:"keyword.other.colon.elm"}},end:/((^(?=[a-z]))|^(?=\n?$))/dgv,name:"meta.function.type-declaration.elm",patterns:[{include:"#type-signature-chunk"}]},"type-signature-chunk":{patterns:[{match:/->/dgv,name:"keyword.operator.arrow.elm"},{match:/\p{space}+/dgv,name:"punctuation.spaces.elm"},{include:"#module-prefix"},{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"variable.type.elm"},{match:/\b[A-Z][a-zA-Z0-9_]*\b/dgv,name:"storage.type.elm"},{match:/\(\)/dgv,name:"constant.unit.elm"},{include:"#comma"},{include:"#parens"},{include:"#comments"},{include:"#type-record"}]},unit:{match:/\(\)/dgv,name:"constant.unit.elm"},value:{match:/\b[a-z][a-zA-Z0-9_]*\b/dgv,name:"meta.value.elm"}},scopeName:"source.elm",embeddedLangs:["glsl"],aliases:undefined})
4
4
 
5
5
  export default [
6
6
  ...glsl,
package/dist/erb.mjs CHANGED
@@ -1,7 +1,8 @@
1
+ import { EmulatedRegExp } from 'oniguruma-to-es'
1
2
  import html from './html.mjs'
2
3
  import ruby from './ruby.mjs'
3
4
 
4
- const lang = Object.freeze({displayName:"ERB",fileTypes:["erb","rhtml","html.erb"],injections:{"text.html.erb - (meta.embedded.block.erb | meta.embedded.line.erb | comment)":{patterns:[{begin:"(^\\s*)(?=<%+#(?![^%]*%>))",beginCaptures:{"0":{name:"punctuation.whitespace.comment.leading.erb"}},end:"(?!\\G)(\\s*$\\n)?",endCaptures:{"0":{name:"punctuation.whitespace.comment.trailing.erb"}},patterns:[{include:"#comment"}]},{begin:"(^\\s*)(?=<%(?![^%]*%>))",beginCaptures:{"0":{name:"punctuation.whitespace.embedded.leading.erb"}},end:"(?!\\G)(\\s*$\\n)?",endCaptures:{"0":{name:"punctuation.whitespace.embedded.trailing.erb"}},patterns:[{include:"#tags"}]},{include:"#comment"},{include:"#tags"}]}},name:"erb",patterns:[{include:"text.html.basic"}],repository:{comment:{patterns:[{begin:/<%+#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.begin.erb"}},end:/%>/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.end.erb"}},name:"comment.block.erb"}]},tags:{patterns:[{begin:/<%+(?!>)[\-\=]?(?![^\%]*%>)/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.erb"}},contentName:"source.ruby",end:/(-?%)>/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.erb"},"1":{name:"source.ruby"}},name:"meta.embedded.block.erb",patterns:[{captures:{"1":{name:"punctuation.definition.comment.erb"}},match:/(#)[^\n]*?(?=-?%>)/dgv,name:"comment.line.number-sign.erb"},{include:"source.ruby"}]},{begin:/<%+(?!>)[\-\=]?/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.erb"}},contentName:"source.ruby",end:/(-?%)>/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.erb"},"1":{name:"source.ruby"}},name:"meta.embedded.line.erb",patterns:[{captures:{"1":{name:"punctuation.definition.comment.erb"}},match:/(#)[^\n]*?(?=-?%>)/dgv,name:"comment.line.number-sign.erb"},{include:"source.ruby"}]}]}},scopeName:"text.html.erb",embeddedLangs:["html","ruby"],aliases:undefined})
5
+ const lang = Object.freeze({displayName:"ERB",fileTypes:["erb","rhtml","html.erb"],injections:{"text.html.erb - (meta.embedded.block.erb | meta.embedded.line.erb | comment)":{patterns:[{begin:/(^\p{space}*)(?=<%+#(?![^\%]*%>))/dgv,beginCaptures:{"0":{name:"punctuation.whitespace.comment.leading.erb"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)(\\p{space}*(?=\\n?$)\\n)?","dgv",{"strategy":"clip_search"}),endCaptures:{"0":{name:"punctuation.whitespace.comment.trailing.erb"}},patterns:[{include:"#comment"}]},{begin:/(^\p{space}*)(?=<%(?![^\%]*%>))/dgv,beginCaptures:{"0":{name:"punctuation.whitespace.embedded.leading.erb"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)(\\p{space}*(?=\\n?$)\\n)?","dgv",{"strategy":"clip_search"}),endCaptures:{"0":{name:"punctuation.whitespace.embedded.trailing.erb"}},patterns:[{include:"#tags"}]},{include:"#comment"},{include:"#tags"}]}},name:"erb",patterns:[{include:"text.html.basic"}],repository:{comment:{patterns:[{begin:/<%+#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.begin.erb"}},end:/%>/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.end.erb"}},name:"comment.block.erb"}]},tags:{patterns:[{begin:/<%+(?!>)[\-\=]?(?![^\%]*%>)/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.erb"}},contentName:"source.ruby",end:/(-?%)>/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.erb"},"1":{name:"source.ruby"}},name:"meta.embedded.block.erb",patterns:[{captures:{"1":{name:"punctuation.definition.comment.erb"}},match:/(#)[^\n]*?(?=-?%>)/dgv,name:"comment.line.number-sign.erb"},{include:"source.ruby"}]},{begin:/<%+(?!>)[\-\=]?/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.erb"}},contentName:"source.ruby",end:/(-?%)>/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.erb"},"1":{name:"source.ruby"}},name:"meta.embedded.line.erb",patterns:[{captures:{"1":{name:"punctuation.definition.comment.erb"}},match:/(#)[^\n]*?(?=-?%>)/dgv,name:"comment.line.number-sign.erb"},{include:"source.ruby"}]}]}},scopeName:"text.html.erb",embeddedLangs:["html","ruby"],aliases:undefined})
5
6
 
6
7
  export default [
7
8
  ...html,
package/dist/erlang.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { EmulatedRegExp } from 'oniguruma-to-es'
2
2
 
3
- const lang = Object.freeze({displayName:"Erlang",fileTypes:["erl","escript","hrl","xrl","yrl"],name:"erlang",patterns:[{include:"#module-directive"},{include:"#import-export-directive"},{include:"#behaviour-directive"},{include:"#record-directive"},{include:"#define-directive"},{include:"#macro-directive"},{include:"#directive"},{include:"#function"},{include:"#everything-else"}],repository:{atom:{patterns:[{begin:/(')/dgv,beginCaptures:{"1":{name:"punctuation.definition.symbol.begin.erlang"}},end:/(')/dgv,endCaptures:{"1":{name:"punctuation.definition.symbol.end.erlang"}},name:"constant.other.symbol.quoted.single.erlang",patterns:[{captures:{"1":{name:"punctuation.definition.escape.erlang"},"3":{name:"punctuation.definition.escape.erlang"}},match:/(\\)([bdefnrstv\\'"]|(\^)[\@-_a-z]|[0-7]{1,3}|x[\p{Nd}a-fA-F]{2})/dgv,name:"constant.other.symbol.escape.erlang"},{match:/\\\^?[^\n]?/dgv,name:"invalid.illegal.atom.erlang"}]},{match:/*@__PURE__*/ new EmulatedRegExp("[a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\1)","dgv",{"hiddenCaptures":[1]}),name:"constant.other.symbol.unquoted.erlang"}]},"behaviour-directive":{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.behaviour.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.behaviour.definition.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(behaviour)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.behaviour.erlang"},binary:{begin:/(<<)/dgv,beginCaptures:{"1":{name:"punctuation.definition.binary.begin.erlang"}},end:/(>>)/dgv,endCaptures:{"1":{name:"punctuation.definition.binary.end.erlang"}},name:"meta.structure.binary.erlang",patterns:[{captures:{"1":{name:"punctuation.separator.binary.erlang"},"2":{name:"punctuation.separator.value-size.erlang"}},match:/(,)|(:)/dgv},{include:"#internal-type-specifiers"},{include:"#everything-else"}]},character:{patterns:[{captures:{"1":{name:"punctuation.definition.character.erlang"},"2":{name:"constant.character.escape.erlang"},"3":{name:"punctuation.definition.escape.erlang"},"5":{name:"punctuation.definition.escape.erlang"}},match:/(\$)((\\)([bdefnrstv\\'"]|(\^)[\@-_a-z]|[0-7]{1,3}|x[\p{Nd}a-fA-F]{2}))/dgv,name:"constant.character.erlang"},{match:/\$\\\^?[^\n]?/dgv,name:"invalid.illegal.character.erlang"},{captures:{"1":{name:"punctuation.definition.character.erlang"}},match:/(\$)[ \P{space}]/dgv,name:"constant.character.erlang"},{match:/\$[^\n]?/dgv,name:"invalid.illegal.character.erlang"}]},comment:{begin:/(^[ \t]+)?(?=%)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/%/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.erlang"}},end:/\n/dgv,name:"comment.line.percentage.erlang"}]},"define-directive":{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(define)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)","dgv",{"hiddenCaptures":[1,3,5,7,9,10]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.define.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.definition.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.define.erlang",patterns:[{include:"#everything-else"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?=^(?:(?=(\\p{space}*))\\1)-(?:(?=(\\p{space}*))\\2)define(?:(?=(\\p{space}*))\\3)\\((?:(?=(\\p{space}*))\\4)(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\5)(?:(?=(\\p{space}*))\\6)\\()","dgv",{"hiddenCaptures":[1,2,3,4,5,6]}),end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.define.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(define)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\()","dgv",{"hiddenCaptures":[1,3,5,7,9,10]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.define.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.definition.erlang"},"5":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(\))\p{space}*(,)/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.separator.parameters.erlang"}},patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]},{match:/\|\||\||:|;|,|\.|->/dgv,name:"punctuation.separator.define.erlang"},{include:"#everything-else"}]}]},directive:{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))(?:(?=(\\p{space}*))\\6)(\\(?)","dgv",{"hiddenCaptures":[1,3,5,6]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\)?)(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.erlang",patterns:[{include:"#everything-else"}]},{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.erlang"},"3":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))(?:(?=(\\p{space}*))\\6)(\\.)","dgv",{"hiddenCaptures":[1,3,5,6]}),name:"meta.directive.erlang"}]},docstring:{begin:/(?<!")((["]{3,})\p{space}*)(\P{space}[^\n]*)?(?=\n?$)/dgv,beginCaptures:{"1":{name:"meta.string.quoted.triple.begin.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"},"3":{name:"invalid.illegal.string.erlang"}},comment:"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line",end:/^(\p{space}*((?!)))(?!")/dgv,endCaptures:{"1":{name:"meta.string.quoted.triple.end.erlang"},"2":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.triple.erlang"},"everything-else":{patterns:[{include:"#comment"},{include:"#record-usage"},{include:"#macro-usage"},{include:"#expression"},{include:"#keyword"},{include:"#textual-operator"},{include:"#language-constant"},{include:"#function-call"},{include:"#tuple"},{include:"#list"},{include:"#binary"},{include:"#parenthesized-expression"},{include:"#character"},{include:"#number"},{include:"#atom"},{include:"#sigil-docstring"},{include:"#sigil-string"},{include:"#docstring"},{include:"#string"},{include:"#symbolic-operator"},{include:"#variable"}]},expression:{patterns:[{begin:/\b(if)\b/dgv,beginCaptures:{"1":{name:"keyword.control.if.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.if.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(case)\b/dgv,beginCaptures:{"1":{name:"keyword.control.case.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.case.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(receive)\b/dgv,beginCaptures:{"1":{name:"keyword.control.receive.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.receive.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{captures:{"1":{name:"keyword.control.fun.erlang"},"4":{name:"entity.name.type.class.module.erlang"},"5":{name:"variable.other.erlang"},"6":{name:"punctuation.separator.module-function.erlang"},"8":{name:"entity.name.function.erlang"},"9":{name:"variable.other.erlang"},"10":{name:"punctuation.separator.function-arity.erlang"}},comment:"Implicit function expression with optional module qualifier when both module and function can be atom or variable",match:/*@__PURE__*/ new EmulatedRegExp("\\b(fun)\\p{space}+((([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\7)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\8)))(?:(?=(\\p{space}*))\\9)(:)(?:(?=(\\p{space}*))\\11))?(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\14)|'(?:(?=([^']*))\\15)')|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\17)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\18)))\\p{space}*(/)","dgv",{"hiddenCaptures":[5,7,8,9,11,14,15,17,18]}),name:"meta.expression.fun.implicit.erlang"},{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(fun)\\p{space}+(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4))|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\6)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\7)))(?:(?=(\\p{space}*))\\8)(:)","dgv",{"hiddenCaptures":[4,6,7,8]}),beginCaptures:{"1":{name:"keyword.control.fun.erlang"},"3":{name:"entity.name.type.class.module.erlang"},"4":{name:"variable.other.erlang"},"5":{name:"punctuation.separator.module-function.erlang"}},comment:"Implicit function expression with module qualifier when module can be atom or variable and function can by anything",end:/(\/)/dgv,endCaptures:{"1":{name:"punctuation.separator.function-arity.erlang"}},name:"meta.expression.fun.implicit.erlang",patterns:[{include:"#everything-else"}]},{begin:/\b(fun)\p{space}+(?!\()/dgv,beginCaptures:{"1":{name:"keyword.control.fun.erlang"}},comment:"Implicit function expression when both module and function can by anything",end:/(\/)/dgv,endCaptures:{"1":{name:"punctuation.separator.function-arity.erlang"}},name:"meta.expression.fun.implicit.erlang",patterns:[{include:"#everything-else"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(fun)(?:(?=(\\p{space}*))\\2)(\\()(?=((?:(?=(\\p{space}*))\\5)\\()|(\\)))","dgv",{"hiddenCaptures":[2,5]}),beginCaptures:{"1":{name:"entity.name.function.erlang"},"2":{name:"punctuation.definition.parameters.begin.erlang"}},comment:"Function type in type specification",end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"}},patterns:[{include:"#everything-else"}]},{begin:/\b(fun)\b/dgv,beginCaptures:{"1":{name:"keyword.control.fun.erlang"}},comment:"Explicit function expression",end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.fun.erlang",patterns:[{begin:/(?=\()/dgv,end:/(;)|(?=\bend\b)/dgv,endCaptures:{"1":{name:"punctuation.separator.clauses.erlang"}},patterns:[{include:"#internal-function-parts"}]},{include:"#everything-else"}]},{begin:/\b(try)\b/dgv,beginCaptures:{"1":{name:"keyword.control.try.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.try.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(begin)\b/dgv,beginCaptures:{"1":{name:"keyword.control.begin.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.begin.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(maybe)\b/dgv,beginCaptures:{"1":{name:"keyword.control.maybe.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.maybe.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]}]},function:{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3)|'(?:(?=([^']*))\\4)')(?:(?=(\\p{space}*))\\5)(?=\\()","dgv",{"hiddenCaptures":[1,3,4,5]}),beginCaptures:{"1":{name:"entity.name.function.definition.erlang"}},end:/(\.)/dgv,endCaptures:{"1":{name:"punctuation.terminator.function.erlang"}},name:"meta.function.erlang",patterns:[{captures:{"1":{name:"entity.name.function.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3)|'(?:(?=([^']*))\\4)')(?:(?=(\\p{space}*))\\5)(?=\\()","dgv",{"hiddenCaptures":[1,3,4,5]})},{begin:/(?=\()/dgv,end:/(;)|(?=\.)/dgv,endCaptures:{"1":{name:"punctuation.separator.clauses.erlang"}},patterns:[{include:"#parenthesized-expression"},{include:"#internal-function-parts"}]},{include:"#everything-else"}]},"function-call":{begin:/*@__PURE__*/ new EmulatedRegExp("(?=([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\2)|'(?:(?=([^']*))\\3)'|_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\4)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))(?:(?=(\\p{space}*))\\6)(\\(|:(?:(?=(\\p{space}*))\\8)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\10)|'(?:(?=([^']*))\\11)'|_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\12)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\13))(?:(?=(\\p{space}*))\\14)\\())","dgv",{"hiddenCaptures":[2,3,4,5,6,8,10,11,12,13,14]}),end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"}},name:"meta.function-call.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("((erlang)(?:(?=(\\p{space}*))\\3)(:)(?:(?=(\\p{space}*))\\5))?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)(?:(?=(\\p{space}*))\\7)(\\()","dgv",{"hiddenCaptures":[3,5,7]}),beginCaptures:{"2":{name:"entity.name.type.class.module.erlang"},"3":{name:"punctuation.separator.module-function.erlang"},"4":{name:"entity.name.function.guard.erlang"},"5":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(?=\))/dgv,patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("((([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4)|'(?:(?=([^']*))\\5)')|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\7)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\8)))(?:(?=(\\p{space}*))\\9)(:)(?:(?=(\\p{space}*))\\11))?(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\14)|'(?:(?=([^']*))\\15)')|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\17)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\18)))(?:(?=(\\p{space}*))\\19)(\\()","dgv",{"hiddenCaptures":[4,5,7,8,9,11,14,15,17,18,19]}),beginCaptures:{"3":{name:"entity.name.type.class.module.erlang"},"4":{name:"variable.other.erlang"},"5":{name:"punctuation.separator.module-function.erlang"},"7":{name:"entity.name.function.erlang"},"8":{name:"variable.other.erlang"},"9":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(?=\))/dgv,patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]}]},"import-export-directive":{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(import)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9)|'(?:(?=([^']*))\\10)')(?:(?=(\\p{space}*))\\11)(,)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,11]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.import.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.module.erlang"},"5":{name:"punctuation.separator.parameters.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.import.erlang",patterns:[{include:"#internal-function-list"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(export)(?:(?=(\\p{space}*))\\5)(\\()","dgv",{"hiddenCaptures":[1,3,5]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.export.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.export.erlang",patterns:[{include:"#internal-function-list"}]}]},"internal-expression-punctuation":{captures:{"1":{name:"punctuation.separator.clause-head-body.erlang"},"2":{name:"punctuation.separator.clauses.erlang"},"3":{name:"punctuation.separator.expressions.erlang"}},match:/(->)|(;)|(,)/dgv},"internal-function-list":{begin:/(\[)/dgv,beginCaptures:{"1":{name:"punctuation.definition.list.begin.erlang"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.list.end.erlang"}},name:"meta.structure.list.function.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\2)|'(?:(?=([^']*))\\3)')(?:(?=(\\p{space}*))\\4)(/)","dgv",{"hiddenCaptures":[2,3,4]}),beginCaptures:{"1":{name:"entity.name.function.erlang"},"2":{name:"punctuation.separator.function-arity.erlang"}},end:/(,)|(?=\])/dgv,endCaptures:{"1":{name:"punctuation.separator.list.erlang"}},patterns:[{include:"#everything-else"}]},{include:"#everything-else"}]},"internal-function-parts":{patterns:[{begin:/(?=\()/dgv,end:/(->)/dgv,endCaptures:{"1":{name:"punctuation.separator.clause-head-body.erlang"}},patterns:[{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"}},patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]},{match:/,|;/dgv,name:"punctuation.separator.guards.erlang"},{include:"#everything-else"}]},{match:/,/dgv,name:"punctuation.separator.expressions.erlang"},{include:"#everything-else"}]},"internal-record-body":{begin:/(\{)/dgv,beginCaptures:{"1":{name:"punctuation.definition.class.record.begin.erlang"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.class.record.end.erlang"}},name:"meta.structure.record.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3)|'(?:(?=([^']*))\\4)')|(_))","dgv",{"hiddenCaptures":[3,4]}),beginCaptures:{"2":{name:"variable.other.field.erlang"},"3":{name:"variable.language.omitted.field.erlang"}},end:/(,)|(?=\})/dgv,endCaptures:{"1":{name:"punctuation.separator.class.record.erlang"}},patterns:[{include:"#everything-else"}]},{include:"#everything-else"}]},"internal-string-body":{patterns:[{captures:{"1":{name:"punctuation.definition.escape.erlang"},"3":{name:"punctuation.definition.escape.erlang"}},comment:"escape sequence",match:/(\\)([bdefnrstv\\'"]|(\^)[\@-_a-z]|[0-7]{1,3}|x[\p{Nd}a-fA-F]{2})/dgv,name:"constant.character.escape.erlang"},{match:/\\\^?[^\n]?/dgv,name:"invalid.illegal.string.erlang"},{captures:{"1":{name:"punctuation.definition.placeholder.erlang"},"6":{name:"punctuation.separator.placeholder-parts.erlang"},"10":{name:"punctuation.separator.placeholder-parts.erlang"}},comment:"io:fwrite format control sequence",match:/*@__PURE__*/ new EmulatedRegExp("(~)((-)?(?:(?=(\\p{Nd}+))\\4)|(\\*))?((\\.)((?:(?=(\\p{Nd}+))\\9)|(\\*))?((\\.)((\\*)|[^\\n]))?)?[tlkK]*[\\~cfegswpWPBX\\#bx\\+ni]","dgv",{"hiddenCaptures":[4,9]}),name:"constant.character.format.placeholder.other.erlang"},{captures:{"1":{name:"punctuation.definition.placeholder.erlang"}},comment:"io:fread format control sequence",match:/*@__PURE__*/ new EmulatedRegExp("(~)(\\*)?((?:(?=(\\p{Nd}+))\\4))?(t)?[\\~du\\-\\#fsacl]","dgv",{"hiddenCaptures":[4]}),name:"constant.character.format.placeholder.other.erlang"},{match:/~[^"]?/dgv,name:"invalid.illegal.string.erlang"}]},"internal-type-specifiers":{begin:/(\/)/dgv,beginCaptures:{"1":{name:"punctuation.separator.value-type.erlang"}},end:/(?=,|:|>>)/dgv,patterns:[{captures:{"1":{name:"storage.type.erlang"},"2":{name:"storage.modifier.signedness.erlang"},"3":{name:"storage.modifier.endianness.erlang"},"4":{name:"storage.modifier.unit.erlang"},"5":{name:"punctuation.separator.unit-specifiers.erlang"},"6":{name:"constant.numeric.integer.decimal.erlang"},"7":{name:"punctuation.separator.type-specifiers.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)((?:(?=(\\p{Nd}+))\\7))|(-)","dgv",{"hiddenCaptures":[7]})}]},keyword:{match:/\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when|maybe|else)\b/dgv,name:"keyword.control.erlang"},"language-constant":{match:/\b(false|true|undefined)\b/dgv,name:"constant.language"},list:{begin:/(\[)/dgv,beginCaptures:{"1":{name:"punctuation.definition.list.begin.erlang"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.list.end.erlang"}},name:"meta.structure.list.erlang",patterns:[{match:/\||\|\||,/dgv,name:"punctuation.separator.list.erlang"},{include:"#everything-else"}]},"macro-directive":{patterns:[{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.ifdef.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(ifdef)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.ifdef.erlang"},{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.ifndef.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(ifndef)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.ifndef.erlang"},{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.undef.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(undef)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.undef.erlang"}]},"macro-usage":{captures:{"1":{name:"keyword.operator.macro.erlang"},"2":{name:"entity.name.function.macro.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\?\\??)(?:(?=(\\p{space}*))\\2)((?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\4))","dgv",{"hiddenCaptures":[2,4]}),name:"meta.macro-usage.erlang"},"module-directive":{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.module.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.module.definition.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(module)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.module.erlang"},number:{begin:/(?=\p{Nd})/dgv,end:/(?!\p{Nd})/dgv,patterns:[{captures:{"1":{name:"punctuation.separator.integer-float.erlang"},"2":{name:"punctuation.separator.float-exponent.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:(?=(\\p{Nd}+))\\1)(\\.)(?:(?=(\\p{Nd}+))\\3)([eE][\\+\\-]?(?:(?=(\\p{Nd}+))\\5))?","dgv",{"hiddenCaptures":[1,3,5]}),name:"constant.numeric.float.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("2(#)((?:(?=([0-1]+))\\3)_)*(?:(?=([0-1]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.binary.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("3(#)((?:(?=([0-2]+))\\3)_)*(?:(?=([0-2]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-3.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("4(#)((?:(?=([0-3]+))\\3)_)*(?:(?=([0-3]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-4.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("5(#)((?:(?=([0-4]+))\\3)_)*(?:(?=([0-4]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-5.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("6(#)((?:(?=([0-5]+))\\3)_)*(?:(?=([0-5]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-6.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("7(#)((?:(?=([0-6]+))\\3)_)*(?:(?=([0-6]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-7.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("8(#)((?:(?=([0-7]+))\\3)_)*(?:(?=([0-7]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.octal.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("9(#)((?:(?=([0-8]+))\\3)_)*(?:(?=([0-8]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-9.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("10(#)((?:(?=(\\p{Nd}+))\\3)_)*(?:(?=(\\p{Nd}+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.decimal.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("11(#)((?:(?=([\\p{Nd}aA]+))\\3)_)*(?:(?=([\\p{Nd}aA]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-11.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("12(#)((?:(?=([\\p{Nd}a-bA-B]+))\\3)_)*(?:(?=([\\p{Nd}a-bA-B]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-12.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("13(#)((?:(?=([\\p{Nd}a-cA-C]+))\\3)_)*(?:(?=([\\p{Nd}a-cA-C]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-13.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("14(#)((?:(?=([\\p{Nd}a-dA-D]+))\\3)_)*(?:(?=([\\p{Nd}a-dA-D]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-14.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("15(#)((?:(?=([\\p{Nd}a-eA-E]+))\\3)_)*(?:(?=([\\p{Nd}a-eA-E]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-15.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("16(#)((?:(?=([\\p{Nd}a-fA-F]+))\\3)_)*(?:(?=([\\p{Nd}a-fA-F]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.hexadecimal.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("17(#)((?:(?=([\\p{Nd}a-gA-G]+))\\3)_)*(?:(?=([\\p{Nd}a-gA-G]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-17.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("18(#)((?:(?=([\\p{Nd}a-hA-H]+))\\3)_)*(?:(?=([\\p{Nd}a-hA-H]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-18.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("19(#)((?:(?=([\\p{Nd}a-iA-I]+))\\3)_)*(?:(?=([\\p{Nd}a-iA-I]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-19.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("20(#)((?:(?=([\\p{Nd}a-jA-J]+))\\3)_)*(?:(?=([\\p{Nd}a-jA-J]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-20.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("21(#)((?:(?=([\\p{Nd}a-kA-K]+))\\3)_)*(?:(?=([\\p{Nd}a-kA-K]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-21.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("22(#)((?:(?=([\\p{Nd}a-lA-L]+))\\3)_)*(?:(?=([\\p{Nd}a-lA-L]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-22.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("23(#)((?:(?=([\\p{Nd}a-mA-M]+))\\3)_)*(?:(?=([\\p{Nd}a-mA-M]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-23.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("24(#)((?:(?=([\\p{Nd}a-nA-N]+))\\3)_)*(?:(?=([\\p{Nd}a-nA-N]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-24.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("25(#)((?:(?=([\\p{Nd}a-oA-O]+))\\3)_)*(?:(?=([\\p{Nd}a-oA-O]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-25.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("26(#)((?:(?=([\\p{Nd}a-pA-P]+))\\3)_)*(?:(?=([\\p{Nd}a-pA-P]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-26.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("27(#)((?:(?=([\\p{Nd}a-qA-Q]+))\\3)_)*(?:(?=([\\p{Nd}a-qA-Q]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-27.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("28(#)((?:(?=([\\p{Nd}a-rA-R]+))\\3)_)*(?:(?=([\\p{Nd}a-rA-R]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-28.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("29(#)((?:(?=([\\p{Nd}a-sA-S]+))\\3)_)*(?:(?=([\\p{Nd}a-sA-S]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-29.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("30(#)((?:(?=([\\p{Nd}a-tA-T]+))\\3)_)*(?:(?=([\\p{Nd}a-tA-T]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-30.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("31(#)((?:(?=([\\p{Nd}a-uA-U]+))\\3)_)*(?:(?=([\\p{Nd}a-uA-U]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-31.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("32(#)((?:(?=([\\p{Nd}a-vA-V]+))\\3)_)*(?:(?=([\\p{Nd}a-vA-V]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-32.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("33(#)((?:(?=([\\p{Nd}a-wA-W]+))\\3)_)*(?:(?=([\\p{Nd}a-wA-W]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-33.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("34(#)((?:(?=([\\p{Nd}a-xA-X]+))\\3)_)*(?:(?=([\\p{Nd}a-xA-X]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-34.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("35(#)((?:(?=([\\p{Nd}a-yA-Y]+))\\3)_)*(?:(?=([\\p{Nd}a-yA-Y]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-35.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("36(#)((?:(?=([\\p{Nd}a-zA-Z]+))\\3)_)*(?:(?=([\\p{Nd}a-zA-Z]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-36.erlang"},{match:/*@__PURE__*/ new EmulatedRegExp("(?:(?=(\\p{Nd}+))\\1)#((?:(?=([\\p{Nd}a-zA-Z]+))\\3)_)*(?:(?=([\\p{Nd}a-zA-Z]+))\\4)","dgv",{"hiddenCaptures":[1,3,4]}),name:"invalid.illegal.integer.erlang"},{match:/*@__PURE__*/ new EmulatedRegExp("((?:(?=(\\p{Nd}+))\\2)_)*(?:(?=(\\p{Nd}+))\\3)","dgv",{"hiddenCaptures":[2,3]}),name:"constant.numeric.integer.decimal.erlang"}]},"parenthesized-expression":{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.section.expression.begin.erlang"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.section.expression.end.erlang"}},name:"meta.expression.parenthesized",patterns:[{include:"#everything-else"}]},"record-directive":{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(record)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9)|'(?:(?=([^']*))\\10)')(?:(?=(\\p{space}*))\\11)(,)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,11]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.import.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.record.definition.erlang"},"5":{name:"punctuation.separator.parameters.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.record.erlang",patterns:[{include:"#internal-record-body"},{include:"#comment"}]},"record-usage":{patterns:[{captures:{"1":{name:"keyword.operator.record.erlang"},"2":{name:"entity.name.type.class.record.erlang"},"3":{name:"punctuation.separator.record-field.erlang"},"4":{name:"variable.other.field.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(#)(?:(?=(\\p{space}*))\\2)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4)|'(?:(?=([^']*))\\5)')(?:(?=(\\p{space}*))\\6)(\\.)(?:(?=(\\p{space}*))\\8)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\10)|'(?:(?=([^']*))\\11)')","dgv",{"hiddenCaptures":[2,4,5,6,8,10,11]}),name:"meta.record-usage.erlang"},{begin:/*@__PURE__*/ new EmulatedRegExp("(#)(?:(?=(\\p{space}*))\\2)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4)|'(?:(?=([^']*))\\5)')","dgv",{"hiddenCaptures":[2,4,5]}),beginCaptures:{"1":{name:"keyword.operator.record.erlang"},"2":{name:"entity.name.type.class.record.erlang"}},end:/(?<=\})/dgv,name:"meta.record-usage.erlang",patterns:[{include:"#internal-record-body"}]}]},"sigil-docstring":{begin:/(~[bBsS]?)((["]{3,})\p{space}*)(\P{space}[^\n]*)?(?=\n?$)/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"meta.string.quoted.triple.begin.erlang"},"3":{name:"punctuation.definition.string.begin.erlang"},"4":{name:"invalid.illegal.string.erlang"}},comment:"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line",end:/^(\p{space}*(\3))(?!")()/dgv,endCaptures:{"1":{name:"meta.string.quoted.triple.end.erlang"},"2":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.tripple.sigil.erlang"},"sigil-string":{patterns:[{include:"#sigil-string-parenthesis"},{include:"#sigil-string-parenthesis-verbatim"},{include:"#sigil-string-curly-brackets"},{include:"#sigil-string-curly-brackets-verbatim"},{include:"#sigil-string-square-brackets"},{include:"#sigil-string-square-brackets-verbatim"},{include:"#sigil-string-less-greater"},{include:"#sigil-string-less-greater-verbatim"},{include:"#sigil-string-single-character"},{include:"#sigil-string-single-character-verbatim"},{include:"#sigil-string-single-quote"},{include:"#sigil-string-single-quote-verbatim"},{include:"#sigil-string-double-quote"},{include:"#sigil-string-double-quote-verbatim"}]},"sigil-string-curly-brackets":{begin:/(~[bs]?)([\{])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\}])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.curly-brackets.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-curly-brackets-verbatim":{begin:/(~[BS])([\{])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\}])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.curly-brackets.sigil.erlang"},"sigil-string-double-quote":{begin:/(~[bs]?)(")/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.double.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-double-quote-verbatim":{begin:/(~[BS])(")/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.double.sigil.erlang"},"sigil-string-less-greater":{begin:/(~[bs]?)(<)/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(>)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.less-greater.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-less-greater-verbatim":{begin:/(~[BS])(<)/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(>)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.less-greater.sigil.erlang"},"sigil-string-parenthesis":{begin:/(~[bs]?)([\(])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\)])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.parenthesis.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-parenthesis-verbatim":{begin:/(~[BS])([\(])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\)])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.parenthesis.sigil.erlang"},"sigil-string-single-character":{begin:/(~[bs]?)([\/\|\`\#])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.other.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-single-character-verbatim":{begin:/(~[BS])([\/\|\`\#])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.other.sigil.erlang"},"sigil-string-single-quote":{begin:/(~[bs]?)(')/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.single.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-single-quote-verbatim":{begin:/(~[BS])(')/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.single.sigil.erlang"},"sigil-string-square-brackets":{begin:/(~[bs]?)([\[])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\]])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.square-brackets.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-square-brackets-verbatim":{begin:/(~[BS])([\[])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\]])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.square-brackets.sigil.erlang"},string:{begin:/(")/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.erlang"}},end:/(")/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.double.erlang",patterns:[{include:"#internal-string-body"}]},"symbolic-operator":{match:/\+\+|\+|--|-|\*|\/=|\/|=\/=|=:=|==|=<|=|<-|<|>=|>|!|::|\?=/dgv,name:"keyword.operator.symbolic.erlang"},"textual-operator":{match:/\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\b/dgv,name:"keyword.operator.textual.erlang"},tuple:{begin:/(\{)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tuple.begin.erlang"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.tuple.end.erlang"}},name:"meta.structure.tuple.erlang",patterns:[{match:/,/dgv,name:"punctuation.separator.tuple.erlang"},{include:"#everything-else"}]},variable:{captures:{"1":{name:"variable.other.erlang"},"2":{name:"variable.language.omitted.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\2)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3))|(_)","dgv",{"hiddenCaptures":[2,3]})}},scopeName:"source.erlang",embeddedLangs:undefined,aliases:["erl"]})
3
+ const lang = Object.freeze({displayName:"Erlang",fileTypes:["erl","escript","hrl","xrl","yrl"],name:"erlang",patterns:[{include:"#module-directive"},{include:"#import-export-directive"},{include:"#behaviour-directive"},{include:"#record-directive"},{include:"#define-directive"},{include:"#macro-directive"},{include:"#directive"},{include:"#function"},{include:"#everything-else"}],repository:{atom:{patterns:[{begin:/(')/dgv,beginCaptures:{"1":{name:"punctuation.definition.symbol.begin.erlang"}},end:/(')/dgv,endCaptures:{"1":{name:"punctuation.definition.symbol.end.erlang"}},name:"constant.other.symbol.quoted.single.erlang",patterns:[{captures:{"1":{name:"punctuation.definition.escape.erlang"},"3":{name:"punctuation.definition.escape.erlang"}},match:/(\\)([bdefnrstv\\'"]|(\^)[\@-_a-z]|[0-7]{1,3}|x[\p{Nd}a-fA-F]{2})/dgv,name:"constant.other.symbol.escape.erlang"},{match:/\\\^?[^\n]?/dgv,name:"invalid.illegal.atom.erlang"}]},{match:/*@__PURE__*/ new EmulatedRegExp("[a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\1)","dgv",{"hiddenCaptures":[1]}),name:"constant.other.symbol.unquoted.erlang"}]},"behaviour-directive":{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.behaviour.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.behaviour.definition.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(behaviour)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.behaviour.erlang"},binary:{begin:/(<<)/dgv,beginCaptures:{"1":{name:"punctuation.definition.binary.begin.erlang"}},end:/(>>)/dgv,endCaptures:{"1":{name:"punctuation.definition.binary.end.erlang"}},name:"meta.structure.binary.erlang",patterns:[{captures:{"1":{name:"punctuation.separator.binary.erlang"},"2":{name:"punctuation.separator.value-size.erlang"}},match:/(,)|(:)/dgv},{include:"#internal-type-specifiers"},{include:"#everything-else"}]},character:{patterns:[{captures:{"1":{name:"punctuation.definition.character.erlang"},"2":{name:"constant.character.escape.erlang"},"3":{name:"punctuation.definition.escape.erlang"},"5":{name:"punctuation.definition.escape.erlang"}},match:/(\$)((\\)([bdefnrstv\\'"]|(\^)[\@-_a-z]|[0-7]{1,3}|x[\p{Nd}a-fA-F]{2}))/dgv,name:"constant.character.erlang"},{match:/\$\\\^?[^\n]?/dgv,name:"invalid.illegal.character.erlang"},{captures:{"1":{name:"punctuation.definition.character.erlang"}},match:/(\$)[ \P{space}]/dgv,name:"constant.character.erlang"},{match:/\$[^\n]?/dgv,name:"invalid.illegal.character.erlang"}]},comment:{begin:/(^[ \t]+)?(?=%)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/%/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.erlang"}},end:/\n/dgv,name:"comment.line.percentage.erlang"}]},"define-directive":{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(define)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)","dgv",{"hiddenCaptures":[1,3,5,7,9,10]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.define.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.definition.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.define.erlang",patterns:[{include:"#everything-else"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?=^(?:(?=(\\p{space}*))\\1)-(?:(?=(\\p{space}*))\\2)define(?:(?=(\\p{space}*))\\3)\\((?:(?=(\\p{space}*))\\4)(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\5)(?:(?=(\\p{space}*))\\6)\\()","dgv",{"hiddenCaptures":[1,2,3,4,5,6]}),end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.define.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(define)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\()","dgv",{"hiddenCaptures":[1,3,5,7,9,10]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.define.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.definition.erlang"},"5":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(\))\p{space}*(,)/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.separator.parameters.erlang"}},patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]},{match:/\|\||\||:|;|,|\.|->/dgv,name:"punctuation.separator.define.erlang"},{include:"#everything-else"}]}]},directive:{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))(?:(?=(\\p{space}*))\\6)(\\(?)","dgv",{"hiddenCaptures":[1,3,5,6]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\)?)(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.erlang",patterns:[{include:"#everything-else"}]},{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.erlang"},"3":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))(?:(?=(\\p{space}*))\\6)(\\.)","dgv",{"hiddenCaptures":[1,3,5,6]}),name:"meta.directive.erlang"}]},docstring:{begin:/(?<!")((["]{3,})\p{space}*)(\P{space}[^\n]*)?(?=\n?$)/dgv,beginCaptures:{"1":{name:"meta.string.quoted.triple.begin.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"},"3":{name:"invalid.illegal.string.erlang"}},end:/^(\p{space}*((?!)))(?!")/dgv,endCaptures:{"1":{name:"meta.string.quoted.triple.end.erlang"},"2":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.triple.erlang"},"everything-else":{patterns:[{include:"#comment"},{include:"#record-usage"},{include:"#macro-usage"},{include:"#expression"},{include:"#keyword"},{include:"#textual-operator"},{include:"#language-constant"},{include:"#function-call"},{include:"#tuple"},{include:"#list"},{include:"#binary"},{include:"#parenthesized-expression"},{include:"#character"},{include:"#number"},{include:"#atom"},{include:"#sigil-docstring"},{include:"#sigil-string"},{include:"#docstring"},{include:"#string"},{include:"#symbolic-operator"},{include:"#variable"}]},expression:{patterns:[{begin:/\b(if)\b/dgv,beginCaptures:{"1":{name:"keyword.control.if.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.if.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(case)\b/dgv,beginCaptures:{"1":{name:"keyword.control.case.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.case.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(receive)\b/dgv,beginCaptures:{"1":{name:"keyword.control.receive.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.receive.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{captures:{"1":{name:"keyword.control.fun.erlang"},"4":{name:"entity.name.type.class.module.erlang"},"5":{name:"variable.other.erlang"},"6":{name:"punctuation.separator.module-function.erlang"},"8":{name:"entity.name.function.erlang"},"9":{name:"variable.other.erlang"},"10":{name:"punctuation.separator.function-arity.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("\\b(fun)\\p{space}+((([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\7)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\8)))(?:(?=(\\p{space}*))\\9)(:)(?:(?=(\\p{space}*))\\11))?(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\14)|'(?:(?=([^']*))\\15)')|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\17)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\18)))\\p{space}*(/)","dgv",{"hiddenCaptures":[5,7,8,9,11,14,15,17,18]}),name:"meta.expression.fun.implicit.erlang"},{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(fun)\\p{space}+(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4))|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\6)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\7)))(?:(?=(\\p{space}*))\\8)(:)","dgv",{"hiddenCaptures":[4,6,7,8]}),beginCaptures:{"1":{name:"keyword.control.fun.erlang"},"3":{name:"entity.name.type.class.module.erlang"},"4":{name:"variable.other.erlang"},"5":{name:"punctuation.separator.module-function.erlang"}},end:/(\/)/dgv,endCaptures:{"1":{name:"punctuation.separator.function-arity.erlang"}},name:"meta.expression.fun.implicit.erlang",patterns:[{include:"#everything-else"}]},{begin:/\b(fun)\p{space}+(?!\()/dgv,beginCaptures:{"1":{name:"keyword.control.fun.erlang"}},end:/(\/)/dgv,endCaptures:{"1":{name:"punctuation.separator.function-arity.erlang"}},name:"meta.expression.fun.implicit.erlang",patterns:[{include:"#everything-else"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("\\b(fun)(?:(?=(\\p{space}*))\\2)(\\()(?=((?:(?=(\\p{space}*))\\5)\\()|(\\)))","dgv",{"hiddenCaptures":[2,5]}),beginCaptures:{"1":{name:"entity.name.function.erlang"},"2":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"}},patterns:[{include:"#everything-else"}]},{begin:/\b(fun)\b/dgv,beginCaptures:{"1":{name:"keyword.control.fun.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.fun.erlang",patterns:[{begin:/(?=\()/dgv,end:/(;)|(?=\bend\b)/dgv,endCaptures:{"1":{name:"punctuation.separator.clauses.erlang"}},patterns:[{include:"#internal-function-parts"}]},{include:"#everything-else"}]},{begin:/\b(try)\b/dgv,beginCaptures:{"1":{name:"keyword.control.try.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.try.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(begin)\b/dgv,beginCaptures:{"1":{name:"keyword.control.begin.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.begin.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]},{begin:/\b(maybe)\b/dgv,beginCaptures:{"1":{name:"keyword.control.maybe.erlang"}},end:/\b(end)\b/dgv,endCaptures:{"1":{name:"keyword.control.end.erlang"}},name:"meta.expression.maybe.erlang",patterns:[{include:"#internal-expression-punctuation"},{include:"#everything-else"}]}]},function:{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3)|'(?:(?=([^']*))\\4)')(?:(?=(\\p{space}*))\\5)(?=\\()","dgv",{"hiddenCaptures":[1,3,4,5]}),beginCaptures:{"1":{name:"entity.name.function.definition.erlang"}},end:/(\.)/dgv,endCaptures:{"1":{name:"punctuation.terminator.function.erlang"}},name:"meta.function.erlang",patterns:[{captures:{"1":{name:"entity.name.function.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3)|'(?:(?=([^']*))\\4)')(?:(?=(\\p{space}*))\\5)(?=\\()","dgv",{"hiddenCaptures":[1,3,4,5]})},{begin:/(?=\()/dgv,end:/(;)|(?=\.)/dgv,endCaptures:{"1":{name:"punctuation.separator.clauses.erlang"}},patterns:[{include:"#parenthesized-expression"},{include:"#internal-function-parts"}]},{include:"#everything-else"}]},"function-call":{begin:/*@__PURE__*/ new EmulatedRegExp("(?=([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\2)|'(?:(?=([^']*))\\3)'|_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\4)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\5))(?:(?=(\\p{space}*))\\6)(\\(|:(?:(?=(\\p{space}*))\\8)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\10)|'(?:(?=([^']*))\\11)'|_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\12)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\13))(?:(?=(\\p{space}*))\\14)\\())","dgv",{"hiddenCaptures":[2,3,4,5,6,8,10,11,12,13,14]}),end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"}},name:"meta.function-call.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("((erlang)(?:(?=(\\p{space}*))\\3)(:)(?:(?=(\\p{space}*))\\5))?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)(?:(?=(\\p{space}*))\\7)(\\()","dgv",{"hiddenCaptures":[3,5,7]}),beginCaptures:{"2":{name:"entity.name.type.class.module.erlang"},"3":{name:"punctuation.separator.module-function.erlang"},"4":{name:"entity.name.function.guard.erlang"},"5":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(?=\))/dgv,patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("((([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4)|'(?:(?=([^']*))\\5)')|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\7)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\8)))(?:(?=(\\p{space}*))\\9)(:)(?:(?=(\\p{space}*))\\11))?(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\14)|'(?:(?=([^']*))\\15)')|(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\17)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\18)))(?:(?=(\\p{space}*))\\19)(\\()","dgv",{"hiddenCaptures":[4,5,7,8,9,11,14,15,17,18,19]}),beginCaptures:{"3":{name:"entity.name.type.class.module.erlang"},"4":{name:"variable.other.erlang"},"5":{name:"punctuation.separator.module-function.erlang"},"7":{name:"entity.name.function.erlang"},"8":{name:"variable.other.erlang"},"9":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(?=\))/dgv,patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]}]},"import-export-directive":{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(import)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9)|'(?:(?=([^']*))\\10)')(?:(?=(\\p{space}*))\\11)(,)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,11]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.import.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.module.erlang"},"5":{name:"punctuation.separator.parameters.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.import.erlang",patterns:[{include:"#internal-function-list"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(export)(?:(?=(\\p{space}*))\\5)(\\()","dgv",{"hiddenCaptures":[1,3,5]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.export.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.export.erlang",patterns:[{include:"#internal-function-list"}]}]},"internal-expression-punctuation":{captures:{"1":{name:"punctuation.separator.clause-head-body.erlang"},"2":{name:"punctuation.separator.clauses.erlang"},"3":{name:"punctuation.separator.expressions.erlang"}},match:/(->)|(;)|(,)/dgv},"internal-function-list":{begin:/(\[)/dgv,beginCaptures:{"1":{name:"punctuation.definition.list.begin.erlang"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.list.end.erlang"}},name:"meta.structure.list.function.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\2)|'(?:(?=([^']*))\\3)')(?:(?=(\\p{space}*))\\4)(/)","dgv",{"hiddenCaptures":[2,3,4]}),beginCaptures:{"1":{name:"entity.name.function.erlang"},"2":{name:"punctuation.separator.function-arity.erlang"}},end:/(,)|(?=\])/dgv,endCaptures:{"1":{name:"punctuation.separator.list.erlang"}},patterns:[{include:"#everything-else"}]},{include:"#everything-else"}]},"internal-function-parts":{patterns:[{begin:/(?=\()/dgv,end:/(->)/dgv,endCaptures:{"1":{name:"punctuation.separator.clause-head-body.erlang"}},patterns:[{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.definition.parameters.begin.erlang"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"}},patterns:[{match:/,/dgv,name:"punctuation.separator.parameters.erlang"},{include:"#everything-else"}]},{match:/,|;/dgv,name:"punctuation.separator.guards.erlang"},{include:"#everything-else"}]},{match:/,/dgv,name:"punctuation.separator.expressions.erlang"},{include:"#everything-else"}]},"internal-record-body":{begin:/(\{)/dgv,beginCaptures:{"1":{name:"punctuation.definition.class.record.begin.erlang"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.class.record.end.erlang"}},name:"meta.structure.record.erlang",patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("(([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3)|'(?:(?=([^']*))\\4)')|(_))","dgv",{"hiddenCaptures":[3,4]}),beginCaptures:{"2":{name:"variable.other.field.erlang"},"3":{name:"variable.language.omitted.field.erlang"}},end:/(,)|(?=\})/dgv,endCaptures:{"1":{name:"punctuation.separator.class.record.erlang"}},patterns:[{include:"#everything-else"}]},{include:"#everything-else"}]},"internal-string-body":{patterns:[{captures:{"1":{name:"punctuation.definition.escape.erlang"},"3":{name:"punctuation.definition.escape.erlang"}},match:/(\\)([bdefnrstv\\'"]|(\^)[\@-_a-z]|[0-7]{1,3}|x[\p{Nd}a-fA-F]{2})/dgv,name:"constant.character.escape.erlang"},{match:/\\\^?[^\n]?/dgv,name:"invalid.illegal.string.erlang"},{captures:{"1":{name:"punctuation.definition.placeholder.erlang"},"6":{name:"punctuation.separator.placeholder-parts.erlang"},"10":{name:"punctuation.separator.placeholder-parts.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(~)((-)?(?:(?=(\\p{Nd}+))\\4)|(\\*))?((\\.)((?:(?=(\\p{Nd}+))\\9)|(\\*))?((\\.)((\\*)|[^\\n]))?)?[tlkK]*[\\~cfegswpWPBX\\#bx\\+ni]","dgv",{"hiddenCaptures":[4,9]}),name:"constant.character.format.placeholder.other.erlang"},{captures:{"1":{name:"punctuation.definition.placeholder.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(~)(\\*)?((?:(?=(\\p{Nd}+))\\4))?(t)?[\\~du\\-\\#fsacl]","dgv",{"hiddenCaptures":[4]}),name:"constant.character.format.placeholder.other.erlang"},{match:/~[^"]?/dgv,name:"invalid.illegal.string.erlang"}]},"internal-type-specifiers":{begin:/(\/)/dgv,beginCaptures:{"1":{name:"punctuation.separator.value-type.erlang"}},end:/(?=,|:|>>)/dgv,patterns:[{captures:{"1":{name:"storage.type.erlang"},"2":{name:"storage.modifier.signedness.erlang"},"3":{name:"storage.modifier.endianness.erlang"},"4":{name:"storage.modifier.unit.erlang"},"5":{name:"punctuation.separator.unit-specifiers.erlang"},"6":{name:"constant.numeric.integer.decimal.erlang"},"7":{name:"punctuation.separator.type-specifiers.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)((?:(?=(\\p{Nd}+))\\7))|(-)","dgv",{"hiddenCaptures":[7]})}]},keyword:{match:/\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when|maybe|else)\b/dgv,name:"keyword.control.erlang"},"language-constant":{match:/\b(false|true|undefined)\b/dgv,name:"constant.language"},list:{begin:/(\[)/dgv,beginCaptures:{"1":{name:"punctuation.definition.list.begin.erlang"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.list.end.erlang"}},name:"meta.structure.list.erlang",patterns:[{match:/\||\|\||,/dgv,name:"punctuation.separator.list.erlang"},{include:"#everything-else"}]},"macro-directive":{patterns:[{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.ifdef.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(ifdef)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.ifdef.erlang"},{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.ifndef.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(ifndef)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.ifndef.erlang"},{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.undef.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.function.macro.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(undef)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)((?:(?=([a-zA-z\\p{Nd}\\@_]+))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.undef.erlang"}]},"macro-usage":{captures:{"1":{name:"keyword.operator.macro.erlang"},"2":{name:"entity.name.function.macro.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\?\\??)(?:(?=(\\p{space}*))\\2)((?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\4))","dgv",{"hiddenCaptures":[2,4]}),name:"meta.macro-usage.erlang"},"module-directive":{captures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.module.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.module.definition.erlang"},"5":{name:"punctuation.definition.parameters.end.erlang"},"6":{name:"punctuation.section.directive.end.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(module)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9))(?:(?=(\\p{space}*))\\10)(\\))(?:(?=(\\p{space}*))\\12)(\\.)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,12]}),name:"meta.directive.module.erlang"},number:{begin:/(?=\p{Nd})/dgv,end:/(?!\p{Nd})/dgv,patterns:[{captures:{"1":{name:"punctuation.separator.integer-float.erlang"},"2":{name:"punctuation.separator.float-exponent.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(?:(?=(\\p{Nd}+))\\1)(\\.)(?:(?=(\\p{Nd}+))\\3)([eE][\\+\\-]?(?:(?=(\\p{Nd}+))\\5))?","dgv",{"hiddenCaptures":[1,3,5]}),name:"constant.numeric.float.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("2(#)((?:(?=([0-1]+))\\3)_)*(?:(?=([0-1]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.binary.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("3(#)((?:(?=([0-2]+))\\3)_)*(?:(?=([0-2]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-3.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("4(#)((?:(?=([0-3]+))\\3)_)*(?:(?=([0-3]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-4.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("5(#)((?:(?=([0-4]+))\\3)_)*(?:(?=([0-4]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-5.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("6(#)((?:(?=([0-5]+))\\3)_)*(?:(?=([0-5]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-6.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("7(#)((?:(?=([0-6]+))\\3)_)*(?:(?=([0-6]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-7.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("8(#)((?:(?=([0-7]+))\\3)_)*(?:(?=([0-7]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.octal.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("9(#)((?:(?=([0-8]+))\\3)_)*(?:(?=([0-8]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-9.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("10(#)((?:(?=(\\p{Nd}+))\\3)_)*(?:(?=(\\p{Nd}+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.decimal.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("11(#)((?:(?=([\\p{Nd}aA]+))\\3)_)*(?:(?=([\\p{Nd}aA]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-11.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("12(#)((?:(?=([\\p{Nd}a-bA-B]+))\\3)_)*(?:(?=([\\p{Nd}a-bA-B]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-12.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("13(#)((?:(?=([\\p{Nd}a-cA-C]+))\\3)_)*(?:(?=([\\p{Nd}a-cA-C]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-13.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("14(#)((?:(?=([\\p{Nd}a-dA-D]+))\\3)_)*(?:(?=([\\p{Nd}a-dA-D]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-14.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("15(#)((?:(?=([\\p{Nd}a-eA-E]+))\\3)_)*(?:(?=([\\p{Nd}a-eA-E]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-15.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("16(#)((?:(?=([\\p{Nd}a-fA-F]+))\\3)_)*(?:(?=([\\p{Nd}a-fA-F]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.hexadecimal.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("17(#)((?:(?=([\\p{Nd}a-gA-G]+))\\3)_)*(?:(?=([\\p{Nd}a-gA-G]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-17.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("18(#)((?:(?=([\\p{Nd}a-hA-H]+))\\3)_)*(?:(?=([\\p{Nd}a-hA-H]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-18.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("19(#)((?:(?=([\\p{Nd}a-iA-I]+))\\3)_)*(?:(?=([\\p{Nd}a-iA-I]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-19.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("20(#)((?:(?=([\\p{Nd}a-jA-J]+))\\3)_)*(?:(?=([\\p{Nd}a-jA-J]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-20.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("21(#)((?:(?=([\\p{Nd}a-kA-K]+))\\3)_)*(?:(?=([\\p{Nd}a-kA-K]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-21.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("22(#)((?:(?=([\\p{Nd}a-lA-L]+))\\3)_)*(?:(?=([\\p{Nd}a-lA-L]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-22.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("23(#)((?:(?=([\\p{Nd}a-mA-M]+))\\3)_)*(?:(?=([\\p{Nd}a-mA-M]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-23.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("24(#)((?:(?=([\\p{Nd}a-nA-N]+))\\3)_)*(?:(?=([\\p{Nd}a-nA-N]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-24.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("25(#)((?:(?=([\\p{Nd}a-oA-O]+))\\3)_)*(?:(?=([\\p{Nd}a-oA-O]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-25.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("26(#)((?:(?=([\\p{Nd}a-pA-P]+))\\3)_)*(?:(?=([\\p{Nd}a-pA-P]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-26.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("27(#)((?:(?=([\\p{Nd}a-qA-Q]+))\\3)_)*(?:(?=([\\p{Nd}a-qA-Q]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-27.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("28(#)((?:(?=([\\p{Nd}a-rA-R]+))\\3)_)*(?:(?=([\\p{Nd}a-rA-R]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-28.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("29(#)((?:(?=([\\p{Nd}a-sA-S]+))\\3)_)*(?:(?=([\\p{Nd}a-sA-S]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-29.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("30(#)((?:(?=([\\p{Nd}a-tA-T]+))\\3)_)*(?:(?=([\\p{Nd}a-tA-T]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-30.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("31(#)((?:(?=([\\p{Nd}a-uA-U]+))\\3)_)*(?:(?=([\\p{Nd}a-uA-U]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-31.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("32(#)((?:(?=([\\p{Nd}a-vA-V]+))\\3)_)*(?:(?=([\\p{Nd}a-vA-V]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-32.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("33(#)((?:(?=([\\p{Nd}a-wA-W]+))\\3)_)*(?:(?=([\\p{Nd}a-wA-W]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-33.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("34(#)((?:(?=([\\p{Nd}a-xA-X]+))\\3)_)*(?:(?=([\\p{Nd}a-xA-X]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-34.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("35(#)((?:(?=([\\p{Nd}a-yA-Y]+))\\3)_)*(?:(?=([\\p{Nd}a-yA-Y]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-35.erlang"},{captures:{"1":{name:"punctuation.separator.base-integer.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("36(#)((?:(?=([\\p{Nd}a-zA-Z]+))\\3)_)*(?:(?=([\\p{Nd}a-zA-Z]+))\\4)","dgv",{"hiddenCaptures":[3,4]}),name:"constant.numeric.integer.base-36.erlang"},{match:/*@__PURE__*/ new EmulatedRegExp("(?:(?=(\\p{Nd}+))\\1)#((?:(?=([\\p{Nd}a-zA-Z]+))\\3)_)*(?:(?=([\\p{Nd}a-zA-Z]+))\\4)","dgv",{"hiddenCaptures":[1,3,4]}),name:"invalid.illegal.integer.erlang"},{match:/*@__PURE__*/ new EmulatedRegExp("((?:(?=(\\p{Nd}+))\\2)_)*(?:(?=(\\p{Nd}+))\\3)","dgv",{"hiddenCaptures":[2,3]}),name:"constant.numeric.integer.decimal.erlang"}]},"parenthesized-expression":{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.section.expression.begin.erlang"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.section.expression.end.erlang"}},name:"meta.expression.parenthesized",patterns:[{include:"#everything-else"}]},"record-directive":{begin:/*@__PURE__*/ new EmulatedRegExp("^(?:(?=(\\p{space}*))\\1)(-)(?:(?=(\\p{space}*))\\3)(record)(?:(?=(\\p{space}*))\\5)(\\()(?:(?=(\\p{space}*))\\7)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\9)|'(?:(?=([^']*))\\10)')(?:(?=(\\p{space}*))\\11)(,)","dgv",{"hiddenCaptures":[1,3,5,7,9,10,11]}),beginCaptures:{"1":{name:"punctuation.section.directive.begin.erlang"},"2":{name:"keyword.control.directive.import.erlang"},"3":{name:"punctuation.definition.parameters.begin.erlang"},"4":{name:"entity.name.type.class.record.definition.erlang"},"5":{name:"punctuation.separator.parameters.erlang"}},end:/*@__PURE__*/ new EmulatedRegExp("(\\))(?:(?=(\\p{space}*))\\2)(\\.)","dgv",{"hiddenCaptures":[2]}),endCaptures:{"1":{name:"punctuation.definition.parameters.end.erlang"},"2":{name:"punctuation.section.directive.end.erlang"}},name:"meta.directive.record.erlang",patterns:[{include:"#internal-record-body"},{include:"#comment"}]},"record-usage":{patterns:[{captures:{"1":{name:"keyword.operator.record.erlang"},"2":{name:"entity.name.type.class.record.erlang"},"3":{name:"punctuation.separator.record-field.erlang"},"4":{name:"variable.other.field.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(#)(?:(?=(\\p{space}*))\\2)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4)|'(?:(?=([^']*))\\5)')(?:(?=(\\p{space}*))\\6)(\\.)(?:(?=(\\p{space}*))\\8)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\10)|'(?:(?=([^']*))\\11)')","dgv",{"hiddenCaptures":[2,4,5,6,8,10,11]}),name:"meta.record-usage.erlang"},{begin:/*@__PURE__*/ new EmulatedRegExp("(#)(?:(?=(\\p{space}*))\\2)([a-z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\4)|'(?:(?=([^']*))\\5)')","dgv",{"hiddenCaptures":[2,4,5]}),beginCaptures:{"1":{name:"keyword.operator.record.erlang"},"2":{name:"entity.name.type.class.record.erlang"}},end:/(?<=\})/dgv,name:"meta.record-usage.erlang",patterns:[{include:"#internal-record-body"}]}]},"sigil-docstring":{begin:/(~[bBsS]?)((["]{3,})\p{space}*)(\P{space}[^\n]*)?(?=\n?$)/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"meta.string.quoted.triple.begin.erlang"},"3":{name:"punctuation.definition.string.begin.erlang"},"4":{name:"invalid.illegal.string.erlang"}},end:/^(\p{space}*(\3))(?!")()/dgv,endCaptures:{"1":{name:"meta.string.quoted.triple.end.erlang"},"2":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.tripple.sigil.erlang"},"sigil-string":{patterns:[{include:"#sigil-string-parenthesis"},{include:"#sigil-string-parenthesis-verbatim"},{include:"#sigil-string-curly-brackets"},{include:"#sigil-string-curly-brackets-verbatim"},{include:"#sigil-string-square-brackets"},{include:"#sigil-string-square-brackets-verbatim"},{include:"#sigil-string-less-greater"},{include:"#sigil-string-less-greater-verbatim"},{include:"#sigil-string-single-character"},{include:"#sigil-string-single-character-verbatim"},{include:"#sigil-string-single-quote"},{include:"#sigil-string-single-quote-verbatim"},{include:"#sigil-string-double-quote"},{include:"#sigil-string-double-quote-verbatim"}]},"sigil-string-curly-brackets":{begin:/(~[bs]?)([\{])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\}])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.curly-brackets.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-curly-brackets-verbatim":{begin:/(~[BS])([\{])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\}])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.curly-brackets.sigil.erlang"},"sigil-string-double-quote":{begin:/(~[bs]?)(")/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.double.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-double-quote-verbatim":{begin:/(~[BS])(")/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.double.sigil.erlang"},"sigil-string-less-greater":{begin:/(~[bs]?)(<)/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(>)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.less-greater.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-less-greater-verbatim":{begin:/(~[BS])(<)/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(>)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.less-greater.sigil.erlang"},"sigil-string-parenthesis":{begin:/(~[bs]?)([\(])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\)])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.parenthesis.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-parenthesis-verbatim":{begin:/(~[BS])([\(])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\)])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.parenthesis.sigil.erlang"},"sigil-string-single-character":{begin:/(~[bs]?)([\/\|\`\#])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.other.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-single-character-verbatim":{begin:/(~[BS])([\/\|\`\#])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.other.sigil.erlang"},"sigil-string-single-quote":{begin:/(~[bs]?)(')/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.single.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-single-quote-verbatim":{begin:/(~[BS])(')/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/(\2)()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.single.sigil.erlang"},"sigil-string-square-brackets":{begin:/(~[bs]?)([\[])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\]])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.square-brackets.sigil.erlang",patterns:[{include:"#internal-string-body"}]},"sigil-string-square-brackets-verbatim":{begin:/(~[BS])([\[])/dgv,beginCaptures:{"1":{name:"storage.type.string.erlang"},"2":{name:"punctuation.definition.string.begin.erlang"}},end:/([\]])/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.square-brackets.sigil.erlang"},string:{begin:/(")/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.erlang"}},end:/(")/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.erlang"}},name:"string.quoted.double.erlang",patterns:[{include:"#internal-string-body"}]},"symbolic-operator":{match:/\+\+|\+|--|-|\*|\/=|\/|=\/=|=:=|==|=<|=|<-|<|>=|>|!|::|\?=/dgv,name:"keyword.operator.symbolic.erlang"},"textual-operator":{match:/\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\b/dgv,name:"keyword.operator.textual.erlang"},tuple:{begin:/(\{)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tuple.begin.erlang"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.tuple.end.erlang"}},name:"meta.structure.tuple.erlang",patterns:[{match:/,/dgv,name:"punctuation.separator.tuple.erlang"},{include:"#everything-else"}]},variable:{captures:{"1":{name:"variable.other.erlang"},"2":{name:"variable.language.omitted.erlang"}},match:/*@__PURE__*/ new EmulatedRegExp("(_(?:(?=([a-zA-Z\\p{Nd}\\@_]+))\\2)|[A-Z](?:(?=([a-zA-Z\\p{Nd}\\@_]*))\\3))|(_)","dgv",{"hiddenCaptures":[2,3]})}},scopeName:"source.erlang",embeddedLangs:undefined,aliases:["erl"]})
4
4
 
5
5
  export default [
6
6
  lang
@@ -2,7 +2,7 @@ import typescript from './typescript.mjs'
2
2
  import css from './css.mjs'
3
3
  import javascript from './javascript.mjs'
4
4
 
5
- const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string, L:source.vue -comment -string, L:source.svelte -comment -string, L:source.php -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:"<",name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-css",patterns:[{begin:/(\p{space}?\/\*\p{space}?(css|inline-css)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.css"},{include:"inline.es6-htmlx#template"}]},{begin:/(\p{space}*(css|inline-css))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.css"},{include:"inline.es6-htmlx#template"},{include:"string.quoted.other.template.js"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(css|inline-css)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"source.css"}]},{begin:/(\$\{)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(\})/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]}],scopeName:"inline.es6-css",displayName:undefined,embeddedLangs:["typescript","css","javascript"],aliases:undefined})
5
+ const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string, L:source.vue -comment -string, L:source.svelte -comment -string, L:source.php -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:/</dgv,name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-css",patterns:[{begin:/(\p{space}?\/\*\p{space}?(css|inline-css)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.css"},{include:"inline.es6-htmlx#template"}]},{begin:/(\p{space}*(css|inline-css))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.css"},{include:"inline.es6-htmlx#template"},{include:"string.quoted.other.template.js"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(css|inline-css)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"source.css"}]},{begin:/(\$\{)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(\})/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]}],scopeName:"inline.es6-css",displayName:undefined,embeddedLangs:["typescript","css","javascript"],aliases:undefined})
6
6
 
7
7
  export default [
8
8
  ...typescript,
@@ -2,7 +2,7 @@ import typescript from './typescript.mjs'
2
2
  import glsl from './glsl.mjs'
3
3
  import javascript from './javascript.mjs'
4
4
 
5
- const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:"<",name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-glsl",patterns:[{begin:/(\p{space}?\/\*\p{space}?(glsl|inline-glsl)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.glsl"},{include:"inline.es6-htmlx#template"}]},{begin:/(\p{space}*(glsl|inline-glsl))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.glsl"},{include:"inline.es6-htmlx#template"},{include:"string.quoted.other.template.js"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(glsl|inline-glsl)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"source.glsl"}]},{begin:/(\$\{)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(\})/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]}],scopeName:"inline.es6-glsl",displayName:undefined,embeddedLangs:["typescript","glsl","javascript"],aliases:undefined})
5
+ const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:/</dgv,name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-glsl",patterns:[{begin:/(\p{space}?\/\*\p{space}?(glsl|inline-glsl)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.glsl"},{include:"inline.es6-htmlx#template"}]},{begin:/(\p{space}*(glsl|inline-glsl))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.glsl"},{include:"inline.es6-htmlx#template"},{include:"string.quoted.other.template.js"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(glsl|inline-glsl)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"source.glsl"}]},{begin:/(\$\{)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(\})/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]}],scopeName:"inline.es6-glsl",displayName:undefined,embeddedLangs:["typescript","glsl","javascript"],aliases:undefined})
6
6
 
7
7
  export default [
8
8
  ...typescript,
@@ -2,7 +2,7 @@ import typescript from './typescript.mjs'
2
2
  import html from './html.mjs'
3
3
  import javascript from './javascript.mjs'
4
4
 
5
- const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:"<",name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-html",patterns:[{begin:/(\p{space}?\/\*\p{space}?(html|template|inline-html|inline-template)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"text.html.basic"},{include:"inline.es6-htmlx#template"}]},{begin:/(\p{space}*(html|template|inline-html|inline-template))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"text.html.basic"},{include:"inline.es6-htmlx#template"},{include:"string.quoted.other.template.js"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(html|template|inline-html|inline-template)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"text.html.basic"}]},{begin:/(\$\{)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(\})/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]},{begin:/(\$\(`)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(`\))/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]}],scopeName:"inline.es6-html",displayName:undefined,embeddedLangs:["typescript","html","javascript"],aliases:undefined})
5
+ const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:/</dgv,name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-html",patterns:[{begin:/(\p{space}?\/\*\p{space}?(html|template|inline-html|inline-template)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"text.html.basic"},{include:"inline.es6-htmlx#template"}]},{begin:/(\p{space}*(html|template|inline-html|inline-template))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"text.html.basic"},{include:"inline.es6-htmlx#template"},{include:"string.quoted.other.template.js"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(html|template|inline-html|inline-template)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"text.html.basic"}]},{begin:/(\$\{)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(\})/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]},{begin:/(\$\(`)/dgv,beginCaptures:{"1":{name:"entity.name.tag"}},end:/(`\))/dgv,endCaptures:{"1":{name:"entity.name.tag"}},patterns:[{include:"source.ts#template-substitution-element"},{include:"source.js"}]}],scopeName:"inline.es6-html",displayName:undefined,embeddedLangs:["typescript","html","javascript"],aliases:undefined})
6
6
 
7
7
  export default [
8
8
  ...typescript,
@@ -1,7 +1,7 @@
1
1
  import typescript from './typescript.mjs'
2
2
  import sql from './sql.mjs'
3
3
 
4
- const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:"<",name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-sql",patterns:[{begin:/\b([\p{L}\p{M}\p{N}\p{Pc}]+\.sql)\p{space}*(`)/dgiv,beginCaptures:{"1":{name:"variable.parameter"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.ts#string-character-escape"},{include:"source.sql"},{include:"source.plpgsql.postgres"},{match:/[^\n]/dgv}]},{begin:/(\p{space}?\/?\*?\p{space}?(sql|inline-sql)\p{space}?\*?\/?\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.ts#string-character-escape"},{include:"source.sql"},{include:"source.plpgsql.postgres"},{match:/[^\n]/dgv}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(sql|inline-sql)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"source.ts#string-character-escape"},{include:"source.sql"},{include:"source.plpgsql.postgres"},{match:/[^\n]/dgv}]}],scopeName:"inline.es6-sql",displayName:undefined,embeddedLangs:["typescript","sql"],aliases:undefined})
4
+ const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:/</dgv,name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-sql",patterns:[{begin:/\b([\p{L}\p{M}\p{N}\p{Pc}]+\.sql)\p{space}*(`)/dgiv,beginCaptures:{"1":{name:"variable.parameter"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.ts#string-character-escape"},{include:"source.sql"},{include:"source.plpgsql.postgres"},{match:/[^\n]/dgv}]},{begin:/(\p{space}?\/?\*?\p{space}?(sql|inline-sql)\p{space}?\*?\/?\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"source.ts#template-substitution-element"},{include:"source.ts#string-character-escape"},{include:"source.sql"},{include:"source.plpgsql.postgres"},{match:/[^\n]/dgv}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(sql|inline-sql)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"source.ts#template-substitution-element"},{include:"source.ts#string-character-escape"},{include:"source.sql"},{include:"source.plpgsql.postgres"},{match:/[^\n]/dgv}]}],scopeName:"inline.es6-sql",displayName:undefined,embeddedLangs:["typescript","sql"],aliases:undefined})
5
5
 
6
6
  export default [
7
7
  ...typescript,
@@ -1,6 +1,6 @@
1
1
  import xml from './xml.mjs'
2
2
 
3
- const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:"<",name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-xml",patterns:[{begin:/(\p{space}?\/\*\p{space}?(xml|svg|inline-svg|inline-xml)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"text.xml"}]},{begin:/(\p{space}*(xml|inline-xml))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"text.xml"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(xml|svg|inline-svg|inline-xml)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"text.xml"}]}],scopeName:"inline.es6-xml",displayName:undefined,embeddedLangs:["xml"],aliases:undefined})
3
+ const lang = Object.freeze({fileTypes:["js","jsx","ts","tsx","html","vue","svelte","php","res"],injectTo:["source.ts","source.js"],injectionSelector:"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string",injections:{"L:source":{patterns:[{match:/</dgv,name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"es-tag-xml",patterns:[{begin:/(\p{space}?\/\*\p{space}?(xml|svg|inline-svg|inline-xml)\p{space}?\*\/\p{space}?)(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"text.xml"}]},{begin:/(\p{space}*(xml|inline-xml))(`)/dgiv,beginCaptures:{"1":{name:"comment.block"}},end:/(`)/dgv,patterns:[{include:"text.xml"}]},{begin:/(?<=\p{space}|,|=|:|\(|\$\()\p{space}*(((\/\*)|(\/\/))\p{space}?(xml|svg|inline-svg|inline-xml)[ ]{0,1000}\*?\/?)[ ]{0,1000}(?=\n?$)/dgiv,beginCaptures:{"1":{name:"comment.line"}},end:/(`)[^\n]*/dgv,patterns:[{begin:/()/dgvy,end:/(`)/dgv},{include:"text.xml"}]}],scopeName:"inline.es6-xml",displayName:undefined,embeddedLangs:["xml"],aliases:undefined})
4
4
 
5
5
  export default [
6
6
  ...xml,