@shikijs/langs 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/dist/abap.mjs +1 -1
  2. package/dist/ada.mjs +1 -1
  3. package/dist/angular-expression.mjs +1 -1
  4. package/dist/angular-ts.mjs +1 -1
  5. package/dist/applescript.mjs +1 -1
  6. package/dist/ara.mjs +1 -1
  7. package/dist/asciidoc.mjs +1 -1
  8. package/dist/astro.mjs +1 -1
  9. package/dist/awk.mjs +1 -1
  10. package/dist/ballerina.mjs +1 -1
  11. package/dist/bat.mjs +1 -1
  12. package/dist/blade.mjs +1 -1
  13. package/dist/c.mjs +1 -1
  14. package/dist/cadence.mjs +1 -1
  15. package/dist/clarity.mjs +1 -1
  16. package/dist/cmake.mjs +1 -1
  17. package/dist/cobol.mjs +1 -1
  18. package/dist/codeql.mjs +1 -1
  19. package/dist/coffee.mjs +1 -1
  20. package/dist/common-lisp.mjs +1 -1
  21. package/dist/coq.mjs +1 -1
  22. package/dist/cpp-macro.mjs +1 -1
  23. package/dist/cpp.mjs +1 -1
  24. package/dist/crystal.mjs +1 -1
  25. package/dist/css.mjs +1 -1
  26. package/dist/cypher.mjs +1 -1
  27. package/dist/d.mjs +1 -1
  28. package/dist/dax.mjs +1 -1
  29. package/dist/dream-maker.mjs +1 -1
  30. package/dist/elixir.mjs +1 -1
  31. package/dist/elm.mjs +1 -1
  32. package/dist/emacs-lisp.mjs +1 -1
  33. package/dist/erlang.mjs +1 -1
  34. package/dist/fennel.mjs +1 -1
  35. package/dist/fortran-free-form.mjs +1 -1
  36. package/dist/fsharp.mjs +1 -1
  37. package/dist/gdresource.mjs +1 -1
  38. package/dist/gdscript.mjs +1 -1
  39. package/dist/gherkin.mjs +1 -1
  40. package/dist/gleam.mjs +1 -1
  41. package/dist/glimmer-js.mjs +1 -1
  42. package/dist/glimmer-ts.mjs +1 -1
  43. package/dist/glsl.mjs +1 -1
  44. package/dist/gnuplot.mjs +1 -1
  45. package/dist/go.mjs +1 -1
  46. package/dist/groovy.mjs +1 -1
  47. package/dist/hack.mjs +1 -1
  48. package/dist/handlebars.mjs +1 -1
  49. package/dist/haxe.mjs +1 -1
  50. package/dist/hlsl.mjs +1 -1
  51. package/dist/html.mjs +1 -1
  52. package/dist/imba.mjs +1 -1
  53. package/dist/java.mjs +1 -1
  54. package/dist/javascript.mjs +1 -1
  55. package/dist/jinja.mjs +1 -1
  56. package/dist/jsonnet.mjs +1 -1
  57. package/dist/jsx.mjs +1 -1
  58. package/dist/julia.mjs +1 -1
  59. package/dist/kusto.mjs +1 -1
  60. package/dist/latex.mjs +1 -1
  61. package/dist/lean.mjs +1 -1
  62. package/dist/less.mjs +1 -1
  63. package/dist/liquid.mjs +1 -1
  64. package/dist/llvm.mjs +1 -1
  65. package/dist/log.mjs +1 -1
  66. package/dist/logo.mjs +1 -1
  67. package/dist/luau.mjs +1 -1
  68. package/dist/make.mjs +1 -1
  69. package/dist/markdown.mjs +1 -1
  70. package/dist/marko.mjs +1 -1
  71. package/dist/matlab.mjs +1 -1
  72. package/dist/mdc.mjs +1 -1
  73. package/dist/mdx.mjs +1 -1
  74. package/dist/mermaid.mjs +1 -1
  75. package/dist/mipsasm.mjs +1 -1
  76. package/dist/mojo.mjs +1 -1
  77. package/dist/nginx.mjs +1 -1
  78. package/dist/nim.mjs +1 -1
  79. package/dist/nix.mjs +1 -1
  80. package/dist/nushell.mjs +1 -1
  81. package/dist/objective-c.mjs +1 -1
  82. package/dist/objective-cpp.mjs +1 -1
  83. package/dist/ocaml.mjs +1 -1
  84. package/dist/pascal.mjs +1 -1
  85. package/dist/perl.mjs +1 -1
  86. package/dist/php.mjs +1 -1
  87. package/dist/plsql.mjs +1 -1
  88. package/dist/powershell.mjs +1 -1
  89. package/dist/prolog.mjs +1 -1
  90. package/dist/python.mjs +1 -1
  91. package/dist/qss.mjs +1 -1
  92. package/dist/r.mjs +1 -1
  93. package/dist/racket.mjs +1 -1
  94. package/dist/raku.mjs +1 -1
  95. package/dist/riscv.mjs +1 -1
  96. package/dist/ruby.mjs +1 -1
  97. package/dist/sas.mjs +1 -1
  98. package/dist/scheme.mjs +1 -1
  99. package/dist/shaderlab.mjs +1 -1
  100. package/dist/shellscript.mjs +1 -1
  101. package/dist/smalltalk.mjs +1 -1
  102. package/dist/splunk.mjs +1 -1
  103. package/dist/sql.mjs +1 -1
  104. package/dist/stata.mjs +1 -1
  105. package/dist/stylus.mjs +1 -1
  106. package/dist/svelte.mjs +1 -1
  107. package/dist/system-verilog.mjs +1 -1
  108. package/dist/systemd.mjs +1 -1
  109. package/dist/talonscript.mjs +1 -1
  110. package/dist/templ.mjs +1 -1
  111. package/dist/terraform.mjs +1 -1
  112. package/dist/tex.mjs +1 -1
  113. package/dist/toml.mjs +1 -1
  114. package/dist/tsx.mjs +1 -1
  115. package/dist/typescript.mjs +1 -1
  116. package/dist/typst.mjs +1 -1
  117. package/dist/v.mjs +1 -1
  118. package/dist/vala.mjs +1 -1
  119. package/dist/vb.mjs +1 -1
  120. package/dist/vhdl.mjs +1 -1
  121. package/dist/viml.mjs +1 -1
  122. package/dist/vyper.mjs +1 -1
  123. package/dist/wasm.mjs +1 -1
  124. package/dist/wikitext.mjs +1 -1
  125. package/dist/wolfram.mjs +1 -1
  126. package/dist/zenscript.mjs +1 -1
  127. package/package.json +3 -3
package/dist/elixir.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import html from './html.mjs'
2
2
 
3
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Elixir\",\"fileTypes\":[\"ex\",\"exs\"],\"firstLineMatch\":\"^#!/.*\\\\belixir\",\"foldingStartMarker\":\"(after|else|catch|rescue|->|[\\\\[{]|do)\\\\s*$\",\"foldingStopMarker\":\"^\\\\s*(([]}]|after|else|catch|rescue)\\\\s*$|end\\\\b)\",\"name\":\"elixir\",\"patterns\":[{\"begin\":\"\\\\b(fn)\\\\b(?!.*->)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elixir\"}},\"end\":\"$\",\"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]\\\\w+)\\\\s*(\\\\.)\\\\s*([_a-z]\\\\w*[!?]?)\"},{\"captures\":{\"1\":{\"name\":\"constant.other.symbol.elixir\"},\"2\":{\"name\":\"punctuation.separator.method.elixir\"},\"3\":{\"name\":\"entity.name.function.elixir\"}},\"match\":\"(:\\\\w+)\\\\s*(\\\\.)\\\\s*(_?\\\\w*[!?]?)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.other.elixir\"},\"2\":{\"name\":\"entity.name.function.elixir\"}},\"match\":\"(\\\\|>)\\\\s*([_a-z]\\\\w*[!?]?)\"},{\"match\":\"\\\\b[_a-z]\\\\w*[!?]?(?=\\\\s*\\\\.?\\\\s*\\\\()\",\"name\":\"entity.name.function.elixir\"},{\"begin\":\"\\\\b(fn)\\\\b(?=.*->)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elixir\"}},\"end\":\"(?>(->)|(when)|(\\\\)))\",\"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\":\"^(?=.*->)((?![^\\\"']*([\\\"'])[^\\\"']*->)|(?=.*->[^\\\"']*([\\\"'])[^\\\"']*->))((?!.*\\\\([^)]*->)|(?=[^()]*->)|(?=\\\\s*\\\\(.*\\\\).*->))((?!.*\\\\b(fn)\\\\b)|(?=.*->.*\\\\bfn\\\\b))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elixir\"}},\"end\":\"(?>(->)|(when)|(\\\\)))\",\"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\":\"^\\\\s*(defmodule)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"}},\"end\":\"\\\\b(do)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"}},\"name\":\"meta.module.elixir\",\"patterns\":[{\"match\":\"\\\\b[A-Z]\\\\w*(?=\\\\.)\",\"name\":\"entity.other.inherited-class.elixir\"},{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.class.elixir\"}]},{\"begin\":\"^\\\\s*(defprotocol)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"end\":\"\\\\b(do)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"name\":\"meta.protocol_declaration.elixir\",\"patterns\":[{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.protocol.elixir\"}]},{\"begin\":\"^\\\\s*(defimpl)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"end\":\"\\\\b(do)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"name\":\"meta.protocol_implementation.elixir\",\"patterns\":[{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.protocol.elixir\"}]},{\"begin\":\"^\\\\s*(def(?:|macro|delegate|guard))\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))((\\\\()|\\\\s*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"},\"2\":{\"name\":\"entity.name.function.public.elixir\"},\"4\":{\"name\":\"punctuation.section.function.elixir\"}},\"end\":\"\\\\b(do:)|\\\\b(do)\\\\b|(?=\\\\s+(def(?:|n|macro|delegate|guard))\\\\b)\",\"endCaptures\":{\"1\":{\"name\":\"constant.other.keywords.elixir\"},\"2\":{\"name\":\"keyword.control.module.elixir\"}},\"name\":\"meta.function.public.elixir\",\"patterns\":[{\"include\":\"$self\"},{\"begin\":\"\\\\s(\\\\\\\\\\\\\\\\)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.other.elixir\"}},\"end\":\"[),]|$\",\"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\",\"name\":\"keyword.control.elixir\"}]},{\"begin\":\"^\\\\s*(def(?:|n|macro|guard)p)\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))((\\\\()|\\\\s*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"},\"2\":{\"name\":\"entity.name.function.private.elixir\"},\"4\":{\"name\":\"punctuation.section.function.elixir\"}},\"end\":\"\\\\b(do:)|\\\\b(do)\\\\b|(?=\\\\s+(def(?:p|macrop|guardp))\\\\b)\",\"endCaptures\":{\"1\":{\"name\":\"constant.other.keywords.elixir\"},\"2\":{\"name\":\"keyword.control.module.elixir\"}},\"name\":\"meta.function.private.elixir\",\"patterns\":[{\"include\":\"$self\"},{\"begin\":\"\\\\s(\\\\\\\\\\\\\\\\)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.other.elixir\"}},\"end\":\"[),]|$\",\"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\",\"name\":\"keyword.control.elixir\"}]},{\"begin\":\"\\\\s*~L\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"sigil.leex\",\"patterns\":[{\"include\":\"text.elixir\"},{\"include\":\"text.html.basic\"}]},{\"begin\":\"\\\\s*~H\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"sigil.heex\",\"patterns\":[{\"include\":\"text.elixir\"},{\"include\":\"text.html.basic\"}]},{\"begin\":\"@(module|type)?doc (~[a-z])?\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"comment.block.documentation.heredoc\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"@(module|type)?doc ~[A-Z]\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"comment.block.documentation.heredoc\"},{\"begin\":\"@(module|type)?doc (~[a-z])?'''\",\"end\":\"\\\\s*'''\",\"name\":\"comment.block.documentation.heredoc\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"@(module|type)?doc ~[A-Z]'''\",\"end\":\"\\\\s*'''\",\"name\":\"comment.block.documentation.heredoc\"},{\"match\":\"@(module|type)?doc false\",\"name\":\"comment.block.documentation.false\"},{\"begin\":\"@(module|type)?doc \\\"\",\"end\":\"\\\"\",\"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(?![!:?])\",\"name\":\"keyword.control.elixir\"},{\"match\":\"(?<!\\\\.)\\\\b(and|not|or|when|xor|in)\\\\b\",\"name\":\"keyword.operator.elixir\"},{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.class.elixir\"},{\"match\":\"\\\\b(nil|true|false)\\\\b(?![!?])\",\"name\":\"constant.language.elixir\"},{\"match\":\"\\\\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\\\\b(?![!?])\",\"name\":\"variable.language.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.elixir\"}},\"match\":\"(@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.module.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.elixir\"}},\"match\":\"(&)\\\\d+\",\"name\":\"variable.other.anonymous.elixir\"},{\"match\":\"&(?!&)\",\"name\":\"variable.other.anonymous.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.elixir\"}},\"match\":\"\\\\^[_a-z]\\\\w*\",\"name\":\"variable.other.capture.elixir\"},{\"match\":\"\\\\b0x\\\\h(?>_?\\\\h)*\\\\b\",\"name\":\"constant.numeric.hex.elixir\"},{\"match\":\"\\\\b\\\\d(?>_?\\\\d)*(\\\\.(?![^\\\\s\\\\d])(?>_?\\\\d)+)([Ee][-+]?\\\\d(?>_?\\\\d)*)?\\\\b\",\"name\":\"constant.numeric.float.elixir\"},{\"match\":\"\\\\b\\\\d(?>_?\\\\d)*\\\\b\",\"name\":\"constant.numeric.integer.elixir\"},{\"match\":\"\\\\b0b[01](?>_?[01])*\\\\b\",\"name\":\"constant.numeric.binary.elixir\"},{\"match\":\"\\\\b0o[0-7](?>_?[0-7])*\\\\b\",\"name\":\"constant.numeric.octal.elixir\"},{\"begin\":\":'\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"end\":\"'\",\"name\":\"constant.other.symbol.single-quoted.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\":\\\"\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"end\":\"\\\"\",\"name\":\"constant.other.symbol.double-quoted.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"'''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*'''\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.single.heredoc.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.single.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.double.heredoc.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.double.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*\\\"\\\"\\\"\",\"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]\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"}[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"][a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\">[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\)[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z](\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\1[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[A-Z]\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.heredoc.literal.elixir\"},{\"begin\":\"~[A-Z]\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"}[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z]\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"][a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z]<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\">[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z]\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\)[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z](\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\1[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"match\":\"(?<!:)(:)(?>[A-Z_a-z][@\\\\w]*(?>[!?]|=(?![=>]))?|<>|===?|!==?|<<>>|<<<|>>>|~~~|::|<-|\\\\|>|=>|=~|[/=]|\\\\\\\\\\\\\\\\|\\\\*\\\\*?|\\\\.\\\\.?\\\\.?|\\\\.\\\\.//|>=?|<=?|&&?&?|\\\\+\\\\+?|--?|\\\\|\\\\|?\\\\|?|[!@]|%?\\\\{}|%|\\\\[]|\\\\^(\\\\^\\\\^)?)\",\"name\":\"constant.other.symbol.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"match\":\"(?>[A-Z_a-z][@\\\\w]*[!?]?)(:)(?!:)\",\"name\":\"constant.other.keywords.elixir\"},{\"begin\":\"(^[\\\\t ]+)?(?=##)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.elixir\"}},\"end\":\"(?!#)\",\"patterns\":[{\"begin\":\"##\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.elixir\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.section.elixir\"}]},{\"begin\":\"(^[\\\\t ]+)?(?=#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.elixir\"}},\"end\":\"(?!#)\",\"patterns\":[{\"begin\":\"#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.elixir\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.number-sign.elixir\"}]},{\"match\":\"\\\\b_([^_]\\\\w+[!?]?)\",\"name\":\"comment.unused.elixir\"},{\"match\":\"\\\\b_\\\\b\",\"name\":\"comment.wildcard.elixir\"},{\"match\":\"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|[^CMx])|[^\\\\\\\\\\\\s])\",\"name\":\"constant.numeric.elixir\"},{\"match\":\"\\\\+\\\\+|--|<\\\\|>\",\"name\":\"keyword.operator.concatenation.elixir\"},{\"match\":\"\\\\|>|<~>|<>|<<<|>>>|~>>|<<~|~>|<~|<\\\\|>\",\"name\":\"keyword.operator.sigils_1.elixir\"},{\"match\":\"&&(?:&|)\",\"name\":\"keyword.operator.sigils_2.elixir\"},{\"match\":\"<-|\\\\\\\\\\\\\\\\\",\"name\":\"keyword.operator.sigils_3.elixir\"},{\"match\":\"===?|!==?|<=?|>=?\",\"name\":\"keyword.operator.comparison.elixir\"},{\"match\":\"(\\\\|\\\\|\\\\||&&&|\\\\^\\\\^\\\\^|<<<|>>>|~~~)\",\"name\":\"keyword.operator.bitwise.elixir\"},{\"match\":\"(?<=[\\\\t ])!+|\\\\bnot\\\\b|&&|\\\\band\\\\b|\\\\|\\\\||\\\\bor\\\\b|\\\\bxor\\\\b\",\"name\":\"keyword.operator.logical.elixir\"},{\"match\":\"([-*+/])\",\"name\":\"keyword.operator.arithmetic.elixir\"},{\"match\":\"\\\\||\\\\+\\\\+|--|\\\\*\\\\*|\\\\\\\\\\\\\\\\|<-|<>|<<|>>|::|\\\\.\\\\.|//|\\\\|>|~|=>|&\",\"name\":\"keyword.operator.other.elixir\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.elixir\"},{\"match\":\":\",\"name\":\"punctuation.separator.other.elixir\"},{\"match\":\";\",\"name\":\"punctuation.separator.statement.elixir\"},{\"match\":\",\",\"name\":\"punctuation.separator.object.elixir\"},{\"match\":\"\\\\.\",\"name\":\"punctuation.separator.method.elixir\"},{\"match\":\"[{}]\",\"name\":\"punctuation.section.scope.elixir\"},{\"match\":\"[]\\\\[]\",\"name\":\"punctuation.section.array.elixir\"},{\"match\":\"[()]\",\"name\":\"punctuation.section.function.elixir\"}]},\"escaped_char\":{\"match\":\"\\\\\\\\(x[A-Fa-f\\\\d]{1,2}|.)\",\"name\":\"constant.character.escaped.elixir\"},\"interpolated_elixir\":{\"begin\":\"#\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.begin.elixir\"}},\"contentName\":\"source.elixir\",\"end\":\"}\",\"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\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.elixir\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#nest_curly_and_self\"}]},{\"include\":\"$self\"}]}},\"scopeName\":\"source.elixir\",\"embeddedLangs\":[\"html\"]}"))
3
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Elixir\",\"fileTypes\":[\"ex\",\"exs\"],\"firstLineMatch\":\"^#!/.*\\\\belixir\",\"foldingStartMarker\":\"(after|else|catch|rescue|->|[\\\\[{]|do)\\\\s*$\",\"foldingStopMarker\":\"^\\\\s*(([]}]|after|else|catch|rescue)\\\\s*$|end\\\\b)\",\"name\":\"elixir\",\"patterns\":[{\"begin\":\"\\\\b(fn)\\\\b(?!.*->)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elixir\"}},\"end\":\"$\",\"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]\\\\w+)\\\\s*(\\\\.)\\\\s*([_a-z]\\\\w*[!?]?)\"},{\"captures\":{\"1\":{\"name\":\"constant.other.symbol.elixir\"},\"2\":{\"name\":\"punctuation.separator.method.elixir\"},\"3\":{\"name\":\"entity.name.function.elixir\"}},\"match\":\"(:\\\\w+)\\\\s*(\\\\.)\\\\s*(_?\\\\w*[!?]?)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.other.elixir\"},\"2\":{\"name\":\"entity.name.function.elixir\"}},\"match\":\"(\\\\|>)\\\\s*([_a-z]\\\\w*[!?]?)\"},{\"match\":\"\\\\b[_a-z]\\\\w*[!?]?(?=\\\\s*\\\\.?\\\\s*\\\\()\",\"name\":\"entity.name.function.elixir\"},{\"begin\":\"\\\\b(fn)\\\\b(?=.*->)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elixir\"}},\"end\":\"(?>(->)|(when)|(\\\\)))\",\"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\":\"^(?=.*->)((?![^\\\"']*([\\\"'])[^\\\"']*->)|(?=.*->[^\\\"']*([\\\"'])[^\\\"']*->))((?!.*\\\\([^)]*->)|(?=[^()]*->)|(?=\\\\s*\\\\(.*\\\\).*->))((?!.*\\\\b(fn)\\\\b)|(?=.*->.*\\\\bfn\\\\b))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elixir\"}},\"end\":\"(?>(->)|(when)|(\\\\)))\",\"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\":\"^\\\\s*(defmodule)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"}},\"end\":\"\\\\b(do)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"}},\"name\":\"meta.module.elixir\",\"patterns\":[{\"match\":\"\\\\b[A-Z]\\\\w*(?=\\\\.)\",\"name\":\"entity.other.inherited-class.elixir\"},{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.class.elixir\"}]},{\"begin\":\"^\\\\s*(defprotocol)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"end\":\"\\\\b(do)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"name\":\"meta.protocol_declaration.elixir\",\"patterns\":[{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.protocol.elixir\"}]},{\"begin\":\"^\\\\s*(defimpl)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"end\":\"\\\\b(do)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.protocol.elixir\"}},\"name\":\"meta.protocol_implementation.elixir\",\"patterns\":[{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.protocol.elixir\"}]},{\"begin\":\"^\\\\s*(def(?:|macro|delegate|guard))\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))((\\\\()|\\\\s*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"},\"2\":{\"name\":\"entity.name.function.public.elixir\"},\"4\":{\"name\":\"punctuation.section.function.elixir\"}},\"end\":\"\\\\b(do:)|\\\\b(do)\\\\b|(?=\\\\s+(def(?:|n|macro|delegate|guard))\\\\b)\",\"endCaptures\":{\"1\":{\"name\":\"constant.other.keywords.elixir\"},\"2\":{\"name\":\"keyword.control.module.elixir\"}},\"name\":\"meta.function.public.elixir\",\"patterns\":[{\"include\":\"$self\"},{\"begin\":\"\\\\s(\\\\\\\\\\\\\\\\)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.other.elixir\"}},\"end\":\"[),]|$\",\"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\",\"name\":\"keyword.control.elixir\"}]},{\"begin\":\"^\\\\s*(def(?:|n|macro|guard)p)\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))((\\\\()|\\\\s*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.module.elixir\"},\"2\":{\"name\":\"entity.name.function.private.elixir\"},\"4\":{\"name\":\"punctuation.section.function.elixir\"}},\"end\":\"\\\\b(do:)|\\\\b(do)\\\\b|(?=\\\\s+(def(?:p|macrop|guardp))\\\\b)\",\"endCaptures\":{\"1\":{\"name\":\"constant.other.keywords.elixir\"},\"2\":{\"name\":\"keyword.control.module.elixir\"}},\"name\":\"meta.function.private.elixir\",\"patterns\":[{\"include\":\"$self\"},{\"begin\":\"\\\\s(\\\\\\\\\\\\\\\\)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.other.elixir\"}},\"end\":\"[),]|$\",\"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\",\"name\":\"keyword.control.elixir\"}]},{\"begin\":\"\\\\s*~L\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"sigil.leex\",\"patterns\":[{\"include\":\"text.elixir\"},{\"include\":\"text.html.basic\"}]},{\"begin\":\"\\\\s*~H\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"sigil.heex\",\"patterns\":[{\"include\":\"text.elixir\"},{\"include\":\"text.html.basic\"}]},{\"begin\":\"@(module|type)?doc (~[a-z])?\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"comment.block.documentation.heredoc\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"@(module|type)?doc ~[A-Z]\\\"\\\"\\\"\",\"end\":\"\\\\s*\\\"\\\"\\\"\",\"name\":\"comment.block.documentation.heredoc\"},{\"begin\":\"@(module|type)?doc (~[a-z])?'''\",\"end\":\"\\\\s*'''\",\"name\":\"comment.block.documentation.heredoc\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"@(module|type)?doc ~[A-Z]'''\",\"end\":\"\\\\s*'''\",\"name\":\"comment.block.documentation.heredoc\"},{\"match\":\"@(module|type)?doc false\",\"name\":\"comment.block.documentation.false\"},{\"begin\":\"@(module|type)?doc \\\"\",\"end\":\"\\\"\",\"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(?![!:?])\",\"name\":\"keyword.control.elixir\"},{\"match\":\"(?<!\\\\.)\\\\b(and|not|or|when|xor|in)\\\\b\",\"name\":\"keyword.operator.elixir\"},{\"match\":\"\\\\b[A-Z]\\\\w*\\\\b\",\"name\":\"entity.name.type.class.elixir\"},{\"match\":\"\\\\b(nil|true|false)\\\\b(?![!?])\",\"name\":\"constant.language.elixir\"},{\"match\":\"\\\\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\\\\b(?![!?])\",\"name\":\"variable.language.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.elixir\"}},\"match\":\"(@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.module.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.elixir\"}},\"match\":\"(&)\\\\d+\",\"name\":\"variable.other.anonymous.elixir\"},{\"match\":\"&(?!&)\",\"name\":\"variable.other.anonymous.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.elixir\"}},\"match\":\"\\\\^[_a-z]\\\\w*\",\"name\":\"variable.other.capture.elixir\"},{\"match\":\"\\\\b0x\\\\h(?>_?\\\\h)*\\\\b\",\"name\":\"constant.numeric.hex.elixir\"},{\"match\":\"\\\\b\\\\d(?>_?\\\\d)*(\\\\.(?![^\\\\s\\\\d])(?>_?\\\\d)+)([Ee][-+]?\\\\d(?>_?\\\\d)*)?\\\\b\",\"name\":\"constant.numeric.float.elixir\"},{\"match\":\"\\\\b\\\\d(?>_?\\\\d)*\\\\b\",\"name\":\"constant.numeric.integer.elixir\"},{\"match\":\"\\\\b0b[01](?>_?[01])*\\\\b\",\"name\":\"constant.numeric.binary.elixir\"},{\"match\":\"\\\\b0o[0-7](?>_?[0-7])*\\\\b\",\"name\":\"constant.numeric.octal.elixir\"},{\"begin\":\":'\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"end\":\"'\",\"name\":\"constant.other.symbol.single-quoted.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\":\\\"\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"end\":\"\\\"\",\"name\":\"constant.other.symbol.double-quoted.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"'''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*'''\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.single.heredoc.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.single.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.double.heredoc.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.double.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*\\\"\\\"\\\"\",\"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]\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"}[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"][a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\">[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z]\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\)[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[a-z](\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\1[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.elixir\",\"patterns\":[{\"include\":\"#interpolated_elixir\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"~[A-Z]\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"^\\\\s*\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.heredoc.literal.elixir\"},{\"begin\":\"~[A-Z]\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"}[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z]\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"][a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z]<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\">[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z]\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\)[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"begin\":\"~[A-Z](\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elixir\"}},\"end\":\"\\\\1[a-z]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.elixir\"}},\"name\":\"string.quoted.other.sigil.literal.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"match\":\"(?<!:)(:)(?>[A-Z_a-z][@\\\\w]*(?>[!?]|=(?![=>]))?|<>|===?|!==?|<<>>|<<<|>>>|~~~|::|<-|\\\\|>|=>|=~|[/=]|\\\\\\\\\\\\\\\\|\\\\*\\\\*?|\\\\.\\\\.?\\\\.?|\\\\.\\\\.//|>=?|<=?|&&?&?|\\\\+\\\\+?|--?|\\\\|\\\\|?\\\\|?|[!@]|%?\\\\{}|%|\\\\[]|\\\\^(\\\\^\\\\^)?)\",\"name\":\"constant.other.symbol.elixir\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.elixir\"}},\"match\":\"(?>[A-Z_a-z][@\\\\w]*[!?]?)(:)(?!:)\",\"name\":\"constant.other.keywords.elixir\"},{\"begin\":\"(^[\\\\t ]+)?(?=##)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.elixir\"}},\"end\":\"(?!#)\",\"patterns\":[{\"begin\":\"##\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.elixir\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.section.elixir\"}]},{\"begin\":\"(^[\\\\t ]+)?(?=#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.elixir\"}},\"end\":\"(?!#)\",\"patterns\":[{\"begin\":\"#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.elixir\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.number-sign.elixir\"}]},{\"match\":\"\\\\b_([^_]\\\\w+[!?]?)\",\"name\":\"comment.unused.elixir\"},{\"match\":\"\\\\b_\\\\b\",\"name\":\"comment.wildcard.elixir\"},{\"match\":\"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|[^CMx])|[^\\\\\\\\\\\\s])\",\"name\":\"constant.numeric.elixir\"},{\"match\":\"\\\\+\\\\+|--|<\\\\|>\",\"name\":\"keyword.operator.concatenation.elixir\"},{\"match\":\"\\\\|>|<~>|<>|<<<|>>>|~>>|<<~|~>|<~|<\\\\|>\",\"name\":\"keyword.operator.sigils_1.elixir\"},{\"match\":\"&&&?\",\"name\":\"keyword.operator.sigils_2.elixir\"},{\"match\":\"<-|\\\\\\\\\\\\\\\\\",\"name\":\"keyword.operator.sigils_3.elixir\"},{\"match\":\"===?|!==?|<=?|>=?\",\"name\":\"keyword.operator.comparison.elixir\"},{\"match\":\"(\\\\|\\\\|\\\\||&&&|\\\\^\\\\^\\\\^|<<<|>>>|~~~)\",\"name\":\"keyword.operator.bitwise.elixir\"},{\"match\":\"(?<=[\\\\t ])!+|\\\\bnot\\\\b|&&|\\\\band\\\\b|\\\\|\\\\||\\\\bor\\\\b|\\\\bxor\\\\b\",\"name\":\"keyword.operator.logical.elixir\"},{\"match\":\"([-*+/])\",\"name\":\"keyword.operator.arithmetic.elixir\"},{\"match\":\"\\\\||\\\\+\\\\+|--|\\\\*\\\\*|\\\\\\\\\\\\\\\\|<-|<>|<<|>>|::|\\\\.\\\\.|//|\\\\|>|~|=>|&\",\"name\":\"keyword.operator.other.elixir\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.elixir\"},{\"match\":\":\",\"name\":\"punctuation.separator.other.elixir\"},{\"match\":\";\",\"name\":\"punctuation.separator.statement.elixir\"},{\"match\":\",\",\"name\":\"punctuation.separator.object.elixir\"},{\"match\":\"\\\\.\",\"name\":\"punctuation.separator.method.elixir\"},{\"match\":\"[{}]\",\"name\":\"punctuation.section.scope.elixir\"},{\"match\":\"[]\\\\[]\",\"name\":\"punctuation.section.array.elixir\"},{\"match\":\"[()]\",\"name\":\"punctuation.section.function.elixir\"}]},\"escaped_char\":{\"match\":\"\\\\\\\\(x[A-Fa-f\\\\d]{1,2}|.)\",\"name\":\"constant.character.escaped.elixir\"},\"interpolated_elixir\":{\"begin\":\"#\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.begin.elixir\"}},\"contentName\":\"source.elixir\",\"end\":\"}\",\"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\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.elixir\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#nest_curly_and_self\"}]},{\"include\":\"$self\"}]}},\"scopeName\":\"source.elixir\",\"embeddedLangs\":[\"html\"]}"))
4
4
 
5
5
  export default [
6
6
  ...html,
package/dist/elm.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import glsl from './glsl.mjs'
2
2
 
3
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Elm\",\"fileTypes\":[\"elm\"],\"name\":\"elm\",\"patterns\":[{\"include\":\"#import\"},{\"include\":\"#module\"},{\"include\":\"#debug\"},{\"include\":\"#comments\"},{\"match\":\"\\\\b(_)\\\\b\",\"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\",\"name\":\"constant.numeric.float.elm\"},{\"match\":\"\\\\b([0-9]+)\\\\b\",\"name\":\"constant.numeric.elm\"},{\"match\":\"\\\\b(0x\\\\h+)\\\\b\",\"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\":\"(\\\\{)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(\\\\|)\\\\s+([a-z][0-9A-Z_a-z]*)\",\"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\":\"(\\\\|)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(=)\",\"name\":\"meta.record.field.update.elm\"},{\"captures\":{\"1\":{\"name\":\"punctuation.bracket.elm\"},\"2\":{\"name\":\"record.name.elm\"}},\"match\":\"(\\\\{)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+$\",\"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\":\"(\\\\{)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(=)\",\"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\":\"(,)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(=)\",\"name\":\"meta.record.field.elm\"},{\"match\":\"([{}])\",\"name\":\"punctuation.bracket.elm\"},{\"include\":\"#unit\"},{\"include\":\"#comma\"},{\"include\":\"#parens\"},{\"match\":\"(->)\",\"name\":\"keyword.operator.arrow.elm\"},{\"include\":\"#infix_op\"},{\"match\":\"([:=\\\\\\\\|])\",\"name\":\"keyword.other.elm\"},{\"match\":\"\\\\b(type|as|port|exposing|alias|infixl|infixr|infix)\\\\s+\",\"name\":\"keyword.other.elm\"},{\"match\":\"\\\\b(if|then|else|case|of|let|in)\\\\s+\",\"name\":\"keyword.control.elm\"},{\"include\":\"#record-accessor\"},{\"include\":\"#top_level_value\"},{\"include\":\"#value\"},{\"include\":\"#period\"},{\"include\":\"#square_brackets\"}],\"repository\":{\"block_comment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\{-(?!#)\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.elm\"}},\"end\":\"-}\",\"name\":\"comment.block.elm\",\"patterns\":[{\"include\":\"#block_comment\"}]},\"char\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.char.begin.elm\"}},\"end\":\"'\",\"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\\\\h{1,5})\",\"name\":\"constant.character.escape.elm\"},{\"match\":\"\\\\^[@-_]\",\"name\":\"constant.character.escape.control.elm\"}]},\"comma\":{\"match\":\"(,)\",\"name\":\"punctuation.separator.comma.elm\"},\"comments\":{\"patterns\":[{\"begin\":\"--\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.elm\"}},\"end\":\"$\",\"name\":\"comment.line.double-dash.elm\"},{\"include\":\"#block_comment\"}]},\"constructor\":{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"constant.type-constructor.elm\"},\"debug\":{\"match\":\"\\\\b(Debug)\\\\b\",\"name\":\"invalid.illegal.debug.elm\"},\"glsl\":{\"begin\":\"(\\\\[)(glsl)(\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.glsl.bracket.elm\"},\"2\":{\"name\":\"entity.glsl.name.elm\"},\"3\":{\"name\":\"entity.glsl.bracket.elm\"}},\"end\":\"(\\\\|])\",\"endCaptures\":{\"1\":{\"name\":\"entity.glsl.bracket.elm\"}},\"name\":\"meta.embedded.block.glsl\",\"patterns\":[{\"include\":\"source.glsl\"}]},\"import\":{\"begin\":\"^\\\\b(import)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import.elm\"}},\"end\":\"\\\\n(?!\\\\s)\",\"name\":\"meta.import.elm\",\"patterns\":[{\"match\":\"(as|exposing)\",\"name\":\"keyword.control.elm\"},{\"include\":\"#module_chunk\"},{\"include\":\"#period\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#module-exports\"}]},\"infix_op\":{\"match\":\"(</>|<\\\\?>|<\\\\||<=|\\\\|\\\\||&&|>=|\\\\|>|\\\\|=|\\\\|\\\\.|\\\\+\\\\+|::|/=|==|//|>>|<<|[-*+/<>^])\",\"name\":\"keyword.operator.elm\"},\"module\":{\"begin\":\"^\\\\b((port |effect )?module)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.elm\"}},\"end\":\"\\\\n(?!\\\\s)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.elm\"}},\"name\":\"meta.declaration.module.elm\",\"patterns\":[{\"include\":\"#module_chunk\"},{\"include\":\"#period\"},{\"match\":\"(exposing)\",\"name\":\"keyword.other.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#module-exports\"}]},\"module-exports\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parens.module-export.elm\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parens.module-export.elm\"}},\"name\":\"meta.declaration.exports.elm\",\"patterns\":[{\"match\":\"\\\\b[a-z]['0-9A-Z_a-z]*\",\"name\":\"entity.name.function.elm\"},{\"match\":\"\\\\b[A-Z]['0-9A-Z_a-z]*\",\"name\":\"storage.type.elm\"},{\"match\":\",\",\"name\":\"punctuation.separator.comma.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#comma\"},{\"match\":\"\\\\(\\\\.\\\\.\\\\)\",\"name\":\"punctuation.parens.ellipses.elm\"},{\"match\":\"\\\\.\\\\.\",\"name\":\"punctuation.parens.ellipses.elm\"},{\"include\":\"#infix_op\"},{\"match\":\"\\\\(.*?\\\\)\",\"name\":\"meta.other.unknown.elm\"}]},\"module-prefix\":{\"captures\":{\"1\":{\"name\":\"support.module.elm\"},\"2\":{\"name\":\"keyword.other.period.elm\"}},\"match\":\"([A-Z][0-9A-Z_a-z]*)(\\\\.)\",\"name\":\"meta.module.name.elm\"},\"module_chunk\":{\"match\":\"[A-Z][0-9A-Z_a-z]*\",\"name\":\"support.module.elm\"},\"parens\":{\"match\":\"([()])\",\"name\":\"punctuation.parens.elm\"},\"period\":{\"match\":\"\\\\.\",\"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][0-9A-Z_a-z]*)\",\"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][0-9A-Z_a-z]*)(\\\\.)([a-z][0-9A-Z_a-z]*)\",\"name\":\"record.accessor.elm\"},\"square_brackets\":{\"match\":\"[]\\\\[]\",\"name\":\"punctuation.definition.list.elm\"},\"string-quote\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elm\"}},\"end\":\"\\\"\",\"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\\\\h{1,5})\",\"name\":\"constant.character.escape.elm\"},{\"match\":\"\\\\^[@-_]\",\"name\":\"constant.character.escape.control.elm\"}]},\"string-triple\":{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elm\"}},\"end\":\"\\\"\\\"\\\"\",\"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\\\\h{1,5})\",\"name\":\"constant.character.escape.elm\"},{\"match\":\"\\\\^[@-_]\",\"name\":\"constant.character.escape.control.elm\"}]},\"top_level_value\":{\"match\":\"^[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"entity.name.function.top_level.elm\"},\"type-alias-declaration\":{\"begin\":\"^(type\\\\s+)(alias\\\\s+)([A-Z]['0-9A-Z_a-z]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.elm\"},\"2\":{\"name\":\"keyword.type-alias.elm\"},\"3\":{\"name\":\"storage.type.elm\"}},\"end\":\"^(?=\\\\S)\",\"name\":\"meta.function.type-declaration.elm\",\"patterns\":[{\"match\":\"\\\\n\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"type-declaration\":{\"begin\":\"^(type\\\\s+)([A-Z]['0-9A-Z_a-z]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.elm\"},\"2\":{\"name\":\"storage.type.elm\"}},\"end\":\"^(?=\\\\S)\",\"name\":\"meta.function.type-declaration.elm\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.type-constructor.elm\"}},\"match\":\"^\\\\s*([A-Z][0-9A-Z_a-z]*)\\\\b\",\"name\":\"meta.record.field.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.assignment.elm\"},\"2\":{\"name\":\"constant.type-constructor.elm\"}},\"match\":\"([=|])\\\\s+([A-Z][0-9A-Z_a-z]*)\\\\b\",\"name\":\"meta.record.field.elm\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.elm\"},{\"match\":\"->\",\"name\":\"keyword.operator.arrow.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"type-record\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.braces.begin\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.braces.end\"}},\"name\":\"meta.function.type-record.elm\",\"patterns\":[{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"match\":\"->\",\"name\":\"keyword.operator.arrow.elm\"},{\"captures\":{\"1\":{\"name\":\"entity.name.record.field.elm\"},\"2\":{\"name\":\"keyword.other.elm\"}},\"match\":\"([a-z][0-9A-Z_a-z]*)\\\\s+(:)\",\"name\":\"meta.record.field.elm\"},{\"match\":\",\",\"name\":\"punctuation.separator.comma.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"type-signature\":{\"begin\":\"^(port\\\\s+)?([_a-z]['0-9A-Z_a-z]*)\\\\s+(:)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.port.elm\"},\"2\":{\"name\":\"entity.name.function.elm\"},\"3\":{\"name\":\"keyword.other.colon.elm\"}},\"end\":\"^(((?=[a-z]))|$)\",\"name\":\"meta.function.type-declaration.elm\",\"patterns\":[{\"include\":\"#type-signature-chunk\"}]},\"type-signature-chunk\":{\"patterns\":[{\"match\":\"->\",\"name\":\"keyword.operator.arrow.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"match\":\"\\\\(\\\\)\",\"name\":\"constant.unit.elm\"},{\"include\":\"#comma\"},{\"include\":\"#parens\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"unit\":{\"match\":\"\\\\(\\\\)\",\"name\":\"constant.unit.elm\"},\"value\":{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"meta.value.elm\"}},\"scopeName\":\"source.elm\",\"embeddedLangs\":[\"glsl\"]}"))
3
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Elm\",\"fileTypes\":[\"elm\"],\"name\":\"elm\",\"patterns\":[{\"include\":\"#import\"},{\"include\":\"#module\"},{\"include\":\"#debug\"},{\"include\":\"#comments\"},{\"match\":\"\\\\b(_)\\\\b\",\"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\",\"name\":\"constant.numeric.float.elm\"},{\"match\":\"\\\\b([0-9]+)\\\\b\",\"name\":\"constant.numeric.elm\"},{\"match\":\"\\\\b(0x\\\\h+)\\\\b\",\"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\":\"(\\\\{)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(\\\\|)\\\\s+([a-z][0-9A-Z_a-z]*)\",\"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\":\"(\\\\|)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(=)\",\"name\":\"meta.record.field.update.elm\"},{\"captures\":{\"1\":{\"name\":\"punctuation.bracket.elm\"},\"2\":{\"name\":\"record.name.elm\"}},\"match\":\"(\\\\{)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+$\",\"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\":\"(\\\\{)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(=)\",\"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\":\"(,)\\\\s+([a-z][0-9A-Z_a-z]*)\\\\s+(=)\",\"name\":\"meta.record.field.elm\"},{\"match\":\"([{}])\",\"name\":\"punctuation.bracket.elm\"},{\"include\":\"#unit\"},{\"include\":\"#comma\"},{\"include\":\"#parens\"},{\"match\":\"(->)\",\"name\":\"keyword.operator.arrow.elm\"},{\"include\":\"#infix_op\"},{\"match\":\"([:=\\\\\\\\|])\",\"name\":\"keyword.other.elm\"},{\"match\":\"\\\\b(type|as|port|exposing|alias|infixl|infixr?)\\\\s+\",\"name\":\"keyword.other.elm\"},{\"match\":\"\\\\b(if|then|else|case|of|let|in)\\\\s+\",\"name\":\"keyword.control.elm\"},{\"include\":\"#record-accessor\"},{\"include\":\"#top_level_value\"},{\"include\":\"#value\"},{\"include\":\"#period\"},{\"include\":\"#square_brackets\"}],\"repository\":{\"block_comment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\{-(?!#)\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.elm\"}},\"end\":\"-}\",\"name\":\"comment.block.elm\",\"patterns\":[{\"include\":\"#block_comment\"}]},\"char\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.char.begin.elm\"}},\"end\":\"'\",\"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\\\\h{1,5})\",\"name\":\"constant.character.escape.elm\"},{\"match\":\"\\\\^[@-_]\",\"name\":\"constant.character.escape.control.elm\"}]},\"comma\":{\"match\":\"(,)\",\"name\":\"punctuation.separator.comma.elm\"},\"comments\":{\"patterns\":[{\"begin\":\"--\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.elm\"}},\"end\":\"$\",\"name\":\"comment.line.double-dash.elm\"},{\"include\":\"#block_comment\"}]},\"constructor\":{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"constant.type-constructor.elm\"},\"debug\":{\"match\":\"\\\\b(Debug)\\\\b\",\"name\":\"invalid.illegal.debug.elm\"},\"glsl\":{\"begin\":\"(\\\\[)(glsl)(\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.glsl.bracket.elm\"},\"2\":{\"name\":\"entity.glsl.name.elm\"},\"3\":{\"name\":\"entity.glsl.bracket.elm\"}},\"end\":\"(\\\\|])\",\"endCaptures\":{\"1\":{\"name\":\"entity.glsl.bracket.elm\"}},\"name\":\"meta.embedded.block.glsl\",\"patterns\":[{\"include\":\"source.glsl\"}]},\"import\":{\"begin\":\"^\\\\b(import)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import.elm\"}},\"end\":\"\\\\n(?!\\\\s)\",\"name\":\"meta.import.elm\",\"patterns\":[{\"match\":\"(as|exposing)\",\"name\":\"keyword.control.elm\"},{\"include\":\"#module_chunk\"},{\"include\":\"#period\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#module-exports\"}]},\"infix_op\":{\"match\":\"(</>|<\\\\?>|<\\\\||<=|\\\\|\\\\||&&|>=|\\\\|>|\\\\|=|\\\\|\\\\.|\\\\+\\\\+|::|/=|==|//|>>|<<|[-*+/<>^])\",\"name\":\"keyword.operator.elm\"},\"module\":{\"begin\":\"^\\\\b((port |effect )?module)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.elm\"}},\"end\":\"\\\\n(?!\\\\s)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.elm\"}},\"name\":\"meta.declaration.module.elm\",\"patterns\":[{\"include\":\"#module_chunk\"},{\"include\":\"#period\"},{\"match\":\"(exposing)\",\"name\":\"keyword.other.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#module-exports\"}]},\"module-exports\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parens.module-export.elm\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parens.module-export.elm\"}},\"name\":\"meta.declaration.exports.elm\",\"patterns\":[{\"match\":\"\\\\b[a-z]['0-9A-Z_a-z]*\",\"name\":\"entity.name.function.elm\"},{\"match\":\"\\\\b[A-Z]['0-9A-Z_a-z]*\",\"name\":\"storage.type.elm\"},{\"match\":\",\",\"name\":\"punctuation.separator.comma.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#comma\"},{\"match\":\"\\\\(\\\\.\\\\.\\\\)\",\"name\":\"punctuation.parens.ellipses.elm\"},{\"match\":\"\\\\.\\\\.\",\"name\":\"punctuation.parens.ellipses.elm\"},{\"include\":\"#infix_op\"},{\"match\":\"\\\\(.*?\\\\)\",\"name\":\"meta.other.unknown.elm\"}]},\"module-prefix\":{\"captures\":{\"1\":{\"name\":\"support.module.elm\"},\"2\":{\"name\":\"keyword.other.period.elm\"}},\"match\":\"([A-Z][0-9A-Z_a-z]*)(\\\\.)\",\"name\":\"meta.module.name.elm\"},\"module_chunk\":{\"match\":\"[A-Z][0-9A-Z_a-z]*\",\"name\":\"support.module.elm\"},\"parens\":{\"match\":\"([()])\",\"name\":\"punctuation.parens.elm\"},\"period\":{\"match\":\"\\\\.\",\"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][0-9A-Z_a-z]*)\",\"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][0-9A-Z_a-z]*)(\\\\.)([a-z][0-9A-Z_a-z]*)\",\"name\":\"record.accessor.elm\"},\"square_brackets\":{\"match\":\"[]\\\\[]\",\"name\":\"punctuation.definition.list.elm\"},\"string-quote\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elm\"}},\"end\":\"\\\"\",\"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\\\\h{1,5})\",\"name\":\"constant.character.escape.elm\"},{\"match\":\"\\\\^[@-_]\",\"name\":\"constant.character.escape.control.elm\"}]},\"string-triple\":{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.elm\"}},\"end\":\"\\\"\\\"\\\"\",\"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\\\\h{1,5})\",\"name\":\"constant.character.escape.elm\"},{\"match\":\"\\\\^[@-_]\",\"name\":\"constant.character.escape.control.elm\"}]},\"top_level_value\":{\"match\":\"^[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"entity.name.function.top_level.elm\"},\"type-alias-declaration\":{\"begin\":\"^(type\\\\s+)(alias\\\\s+)([A-Z]['0-9A-Z_a-z]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.elm\"},\"2\":{\"name\":\"keyword.type-alias.elm\"},\"3\":{\"name\":\"storage.type.elm\"}},\"end\":\"^(?=\\\\S)\",\"name\":\"meta.function.type-declaration.elm\",\"patterns\":[{\"match\":\"\\\\n\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"type-declaration\":{\"begin\":\"^(type\\\\s+)([A-Z]['0-9A-Z_a-z]*)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.elm\"},\"2\":{\"name\":\"storage.type.elm\"}},\"end\":\"^(?=\\\\S)\",\"name\":\"meta.function.type-declaration.elm\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.type-constructor.elm\"}},\"match\":\"^\\\\s*([A-Z][0-9A-Z_a-z]*)\\\\b\",\"name\":\"meta.record.field.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.assignment.elm\"},\"2\":{\"name\":\"constant.type-constructor.elm\"}},\"match\":\"([=|])\\\\s+([A-Z][0-9A-Z_a-z]*)\\\\b\",\"name\":\"meta.record.field.elm\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.elm\"},{\"match\":\"->\",\"name\":\"keyword.operator.arrow.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"type-record\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.braces.begin\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.braces.end\"}},\"name\":\"meta.function.type-record.elm\",\"patterns\":[{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"match\":\"->\",\"name\":\"keyword.operator.arrow.elm\"},{\"captures\":{\"1\":{\"name\":\"entity.name.record.field.elm\"},\"2\":{\"name\":\"keyword.other.elm\"}},\"match\":\"([a-z][0-9A-Z_a-z]*)\\\\s+(:)\",\"name\":\"meta.record.field.elm\"},{\"match\":\",\",\"name\":\"punctuation.separator.comma.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"type-signature\":{\"begin\":\"^(port\\\\s+)?([_a-z]['0-9A-Z_a-z]*)\\\\s+(:)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.port.elm\"},\"2\":{\"name\":\"entity.name.function.elm\"},\"3\":{\"name\":\"keyword.other.colon.elm\"}},\"end\":\"^(((?=[a-z]))|$)\",\"name\":\"meta.function.type-declaration.elm\",\"patterns\":[{\"include\":\"#type-signature-chunk\"}]},\"type-signature-chunk\":{\"patterns\":[{\"match\":\"->\",\"name\":\"keyword.operator.arrow.elm\"},{\"match\":\"\\\\s+\",\"name\":\"punctuation.spaces.elm\"},{\"include\":\"#module-prefix\"},{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"variable.type.elm\"},{\"match\":\"\\\\b[A-Z][0-9A-Z_a-z]*\\\\b\",\"name\":\"storage.type.elm\"},{\"match\":\"\\\\(\\\\)\",\"name\":\"constant.unit.elm\"},{\"include\":\"#comma\"},{\"include\":\"#parens\"},{\"include\":\"#comments\"},{\"include\":\"#type-record\"}]},\"unit\":{\"match\":\"\\\\(\\\\)\",\"name\":\"constant.unit.elm\"},\"value\":{\"match\":\"\\\\b[a-z][0-9A-Z_a-z]*\\\\b\",\"name\":\"meta.value.elm\"}},\"scopeName\":\"source.elm\",\"embeddedLangs\":[\"glsl\"]}"))
4
4
 
5
5
  export default [
6
6
  ...glsl,