@shikijs/langs 3.14.0 → 3.16.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.
package/dist/index.mjs CHANGED
@@ -132,6 +132,7 @@ export const languageNames = [
132
132
  "luau",
133
133
  "make",
134
134
  "markdown",
135
+ "markdown-nix",
135
136
  "markdown-vue",
136
137
  "marko",
137
138
  "matlab",
@@ -150,6 +151,7 @@ export const languageNames = [
150
151
  "objective-c",
151
152
  "objective-cpp",
152
153
  "ocaml",
154
+ "openscad",
153
155
  "pascal",
154
156
  "perl",
155
157
  "php",
@@ -313,6 +315,7 @@ export const languageAliasNames = [
313
315
  "rb",
314
316
  "regex",
315
317
  "rs",
318
+ "scad",
316
319
  "sh",
317
320
  "shader",
318
321
  "shell",
package/dist/lean.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Lean 4\",\"fileTypes\":[],\"name\":\"lean\",\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"\\\\b(Prop|Type|Sort)\\\\b\",\"name\":\"storage.type.lean4\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.lean4\"},\"2\":{\"name\":\"storage.modifier.lean4\"},\"3\":{\"name\":\"storage.modifier.lean4\"}},\"match\":\"\\\\b(attribute\\\\b\\\\s*)(?:(\\\\[[^]\\\\s]*])|\\\\[([^]\\\\s]*))\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.lean4\"},\"2\":{\"name\":\"storage.modifier.lean4\"},\"3\":{\"name\":\"storage.modifier.lean4\"}},\"match\":\"(@)(?:(\\\\[[^]\\\\s]*])|\\\\[([^]\\\\s]*))\"},{\"match\":\"\\\\b(?<!\\\\.)(local|scoped|partial|unsafe|nonrec|public|private|protected|noncomputable|meta)(?!\\\\.)\\\\b\",\"name\":\"storage.modifier.lean4\"},{\"match\":\"\\\\b(sorry|admit|#exit)\\\\b\",\"name\":\"invalid.illegal.lean4\"},{\"match\":\"#(print|eval!??|reduce|synth|widget|where|version|with_exporting|check|check_tactic|check_tactic_failure|check_failure|check_simp|discr_tree_key|discr_tree_simp_key|guard|guard_expr|guard_msgs)\\\\b\",\"name\":\"keyword.other.lean4\"},{\"match\":\"\\\\bderiving\\\\s+instance\\\\b\",\"name\":\"keyword.other.command.lean4\"},{\"begin\":\"\\\\b(?<!\\\\.)(inductive|coinductive|structure|theorem|axiom|abbrev|lemma|def|instance|class)\\\\b\\\\s+(\\\\{[^}]*})?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.definitioncommand.lean4\"}},\"end\":\"(?=\\\\bwith\\\\b|\\\\bextends\\\\b|\\\\bwhere\\\\b|[(:<>\\\\[{|⦃])\",\"name\":\"meta.definitioncommand.lean4\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#definitionName\"},{\"match\":\",\"}]},{\"match\":\"\\\\b(?<!\\\\.)(theorem|show|have|using|haveI|from|suffices|nomatch|nofun|no_index|def|class|structure|instance|elab|set_option|initialize|builtin_initialize|example|inductive_fixpoint|inductive|coinductive_fixpoint|coinductive|termination_by\\\\??|decreasing_by|partial_fixpoint|axiom|universe|variable|module|import all|import|open|export|prelude|renaming|hiding|do|by\\\\??|letI??|let_expr|extends|mutual|mut|where|rec|declare_syntax_cat|syntax|macro_rules|macro|binop_lazy%|binop%|unop%|binrel_no_prop%|binrel%|leftact%|rightact%|max_prec|leading_parser|elab_rules|deriving|fun|section|namespace|end|prefix|postfix|infixl|infixr?|notation|abbrev|if|bif|then|else|calc|matches|match_expr|match|with|forall|for|while|repeat|unless|until|panic!|unreachable!|assert!|try|catch|finally|return|continue|break|exists|mod_cast|exact\\\\?%|include_str|include|in|trailing_parser|tactic_tag|tactic_alt|tactic_extension|register_tactic_tag|type_of%|binder_predicate|grind_propagator|builtin_grind_propagator|grind_pattern|simproc|builtin_simproc|simproc_pattern%|builtin_simproc_pattern%|simproc_decl|builtin_simproc_decl|dsimproc|builtin_dsimproc|dsimproc_decl|builtin_dsimproc_decl|show_panel_widgets|show_term|seal|unseal|nat_lit|norm_cast_add_elim|println!|private_decl%|declare_config_elab|decl_name%|register_error_explanation|register_builtin_option|register_option|register_parser_alias|register_simp_attr|register_linter_set|register_label_attr|recommended_spelling|reportIssue!|reprove|run_elab|run_cmd|run_meta|value_of%|add_decl_doc|omit|opaque|json%|dbg_trace|trace_goal\\\\[[^]\\\\s]*]|trace\\\\[[^]\\\\s]*]|throwErrorAt|throwError|throwNamedErrorAt|throwNamedError|logNamedWarningAt|logNamedWarning|logNamedErrorAt|logNamedError)(?!\\\\.)\\\\b\",\"name\":\"keyword.other.lean4\"},{\"begin\":\"«\",\"contentName\":\"entity.name.lean4\",\"end\":\"»\"},{\"begin\":\"(s!|m!|throwError|dbg_trace|panic!|reportIssue!|trace(?:_goal|)\\\\[[^]\\\\s]*])\\\\s*\\\"\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.lean4\"}},\"end\":\"\\\"\",\"name\":\"string.interpolated.lean4\",\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.lean4\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.lean4\"}},\"patterns\":[{\"include\":\"$self\"}]},{\"match\":\"\\\\\\\\[\\\"'\\\\\\\\nrt]\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\x\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\u\\\\h\\\\h\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"}]},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.lean4\",\"patterns\":[{\"match\":\"\\\\\\\\[\\\"'\\\\\\\\nrt]\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\x\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\u\\\\h\\\\h\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"}]},{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.lean4\"},{\"match\":\"(?<![]\\\\w])'[^'\\\\\\\\]'\",\"name\":\"string.quoted.single.lean4\"},{\"captures\":{\"1\":{\"name\":\"constant.character.escape.lean4\"}},\"match\":\"\\\\b(?<![]\\\\w])'(\\\\\\\\(x\\\\h\\\\h|u\\\\h\\\\h\\\\h\\\\h|.))'\\\\b\",\"name\":\"string.quoted.single.lean4\"},{\"match\":\"`+[^(\\\\[]\\\\S+\",\"name\":\"entity.name.lean4\"},{\"match\":\"\\\\b([0-9]+|0([Xx]\\\\h+)|-?(0|[1-9][0-9]*)(\\\\.[0-9]+)?([Ee][-+]?[0-9]+)?)\\\\b\",\"name\":\"constant.numeric.lean4\"}],\"repository\":{\"blockComment\":{\"begin\":\"/-\",\"end\":\"-/\",\"name\":\"comment.block.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"},{\"include\":\"#blockComment\"}]},\"comments\":{\"patterns\":[{\"include\":\"#dashComment\"},{\"include\":\"#docComment\"},{\"include\":\"#modDocComment\"},{\"include\":\"#blockComment\"}]},\"dashComment\":{\"begin\":\"--\",\"end\":\"$\",\"name\":\"comment.line.double-dash.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"}]},\"definitionName\":{\"patterns\":[{\"match\":\"\\\\b[^():=?{}«»λ→∀\\\\s][^():{}«»\\\\s]*\",\"name\":\"entity.name.function.lean4\"},{\"begin\":\"«\",\"contentName\":\"entity.name.function.lean4\",\"end\":\"»\"}]},\"docComment\":{\"begin\":\"/--\",\"end\":\"-/\",\"name\":\"comment.block.documentation.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"},{\"include\":\"#blockComment\"}]},\"modDocComment\":{\"begin\":\"/-!\",\"end\":\"-/\",\"name\":\"comment.block.documentation.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"},{\"include\":\"#blockComment\"}]}},\"scopeName\":\"source.lean4\",\"aliases\":[\"lean4\"]}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Lean 4\",\"fileTypes\":[],\"name\":\"lean\",\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"\\\\b(Prop|Type|Sort)\\\\b\",\"name\":\"storage.type.lean4\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.lean4\"},\"2\":{\"name\":\"storage.modifier.lean4\"},\"3\":{\"name\":\"storage.modifier.lean4\"}},\"match\":\"\\\\b(attribute\\\\b\\\\s*)(?:(\\\\[[^]\\\\s]*])|\\\\[([^]\\\\s]*))\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.lean4\"},\"2\":{\"name\":\"storage.modifier.lean4\"},\"3\":{\"name\":\"storage.modifier.lean4\"}},\"match\":\"(@)(?:(\\\\[[^]\\\\s]*])|\\\\[([^]\\\\s]*))\"},{\"match\":\"\\\\b(?<!\\\\.)(local|scoped|partial|unsafe|nonrec|public|private|protected|noncomputable|meta)(?!\\\\.)\\\\b\",\"name\":\"storage.modifier.lean4\"},{\"match\":\"\\\\b(sorry|admit|#exit)\\\\b\",\"name\":\"invalid.illegal.lean4\"},{\"match\":\"#(print|eval!??|reduce|synth|widget|where|version|with_exporting|check|check_tactic|check_tactic_failure|check_failure|check_simp|discr_tree_key|discr_tree_simp_key|guard|guard_expr|guard_msgs)\\\\b\",\"name\":\"keyword.other.lean4\"},{\"match\":\"\\\\bderiving\\\\s+instance\\\\b\",\"name\":\"keyword.other.command.lean4\"},{\"begin\":\"\\\\b(?<!\\\\.)(inductive|coinductive|structure|theorem|axiom|abbrev|lemma|def|instance|class)\\\\b\\\\s+(\\\\{[^}]*})?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.definitioncommand.lean4\"}},\"end\":\"(?=\\\\bwith\\\\b|\\\\bextends\\\\b|\\\\bwhere\\\\b|[(:<>\\\\[{|⦃])\",\"name\":\"meta.definitioncommand.lean4\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#definitionName\"},{\"match\":\",\"}]},{\"match\":\"\\\\b(?<!\\\\.)(theorem|show|have|using|haveI|from|suffices|nomatch|nofun|no_index|def|class|structure|instance|elab|set_option|initialize|builtin_initialize|example|inductive_fixpoint|inductive|coinductive_fixpoint|coinductive|termination_by\\\\??|decreasing_by|partial_fixpoint|axiom|universe|variable|module|import all|import|open|export|prelude|renaming|hiding|do|by\\\\??|letI??|let_expr|extends|mutual|mut|where|rec|declare_syntax_cat|syntax|macro_rules|macro|binop_lazy%|binop%|unop%|binrel_no_prop%|binrel%|leftact%|rightact%|max_prec|leading_parser|elab_rules|deriving|fun|section|namespace|end|prefix|postfix|infixl|infixr?|notation|abbrev|if|bif|then|else|calc|matches|match_expr|match|with|forall|for|while|repeat|unless|until|panic!|unreachable!|assert!|try|catch|finally|return|continue|break|exists|mod_cast|exact\\\\?%|include_str|include|in|trailing_parser|tactic_tag|tactic_alt|tactic_extension|register_tactic_tag|type_of%|binder_predicate|grind_propagator|builtin_grind_propagator|grind_pattern|simproc|builtin_simproc|simproc_pattern%|builtin_simproc_pattern%|simproc_decl|builtin_simproc_decl|dsimproc|builtin_dsimproc|dsimproc_decl|builtin_dsimproc_decl|show_panel_widgets|show_term|seal|unseal|nat_lit|norm_cast_add_elim|println!|private_decl%|declare_config_elab|decl_name%|register_error_explanation|register_builtin_option|register_option|register_parser_alias|register_simp_attr|register_linter_set|register_label_attr|recommended_spelling|reportIssue!|reprove|run_elab|run_cmd|run_meta|value_of%|add_decl_doc|omit|opaque|json%|dbg_trace|trace_goal\\\\[[^]\\\\s]*]|trace\\\\[[^]\\\\s]*]|throwErrorAt|throwError|throwNamedErrorAt|throwNamedError|logNamedWarningAt|logNamedWarning|logNamedErrorAt|logNamedError)(?!\\\\.)\\\\b\",\"name\":\"keyword.other.lean4\"},{\"begin\":\"«\",\"contentName\":\"entity.name.lean4\",\"end\":\"»\"},{\"begin\":\"(s!|m!|throwError|dbg_trace|panic!|reportIssue!|trace(?:_goal|)\\\\[[^]\\\\s]*])\\\\s*\\\"\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.lean4\"}},\"end\":\"\\\"\",\"name\":\"string.interpolated.lean4\",\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.lean4\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.lean4\"}},\"patterns\":[{\"include\":\"$self\"}]},{\"match\":\"\\\\\\\\[\\\"'\\\\\\\\nrt]\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\x\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\u\\\\h\\\\h\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"}]},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.lean4\",\"patterns\":[{\"match\":\"\\\\\\\\[\\\"'\\\\\\\\nrt]\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\x\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"},{\"match\":\"\\\\\\\\u\\\\h\\\\h\\\\h\\\\h\",\"name\":\"constant.character.escape.lean4\"}]},{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.lean4\"},{\"match\":\"(?<![]\\\\w])'[^'\\\\\\\\]'\",\"name\":\"string.quoted.single.lean4\"},{\"captures\":{\"1\":{\"name\":\"constant.character.escape.lean4\"}},\"match\":\"(?<![]\\\\w])'(\\\\\\\\(x\\\\h\\\\h|u\\\\h\\\\h\\\\h\\\\h|.))'\",\"name\":\"string.quoted.single.lean4\"},{\"match\":\"`+[^(\\\\[]\\\\S+\",\"name\":\"entity.name.lean4\"},{\"match\":\"\\\\b([0-9]+|0([Xx]\\\\h+)|-?(0|[1-9][0-9]*)(\\\\.[0-9]+)?([Ee][-+]?[0-9]+)?)\\\\b\",\"name\":\"constant.numeric.lean4\"}],\"repository\":{\"blockComment\":{\"begin\":\"/-\",\"end\":\"-/\",\"name\":\"comment.block.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"},{\"include\":\"#blockComment\"}]},\"comments\":{\"patterns\":[{\"include\":\"#dashComment\"},{\"include\":\"#docComment\"},{\"include\":\"#modDocComment\"},{\"include\":\"#blockComment\"}]},\"dashComment\":{\"begin\":\"--\",\"end\":\"$\",\"name\":\"comment.line.double-dash.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"}]},\"definitionName\":{\"patterns\":[{\"match\":\"\\\\b[^():=?{}«»λ→∀\\\\s][^():{}«»\\\\s]*\",\"name\":\"entity.name.function.lean4\"},{\"begin\":\"«\",\"contentName\":\"entity.name.function.lean4\",\"end\":\"»\"}]},\"docComment\":{\"begin\":\"/--\",\"end\":\"-/\",\"name\":\"comment.block.documentation.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"},{\"include\":\"#blockComment\"}]},\"modDocComment\":{\"begin\":\"/-!\",\"end\":\"-/\",\"name\":\"comment.block.documentation.lean4\",\"patterns\":[{\"include\":\"source.lean4.markdown\"},{\"include\":\"#blockComment\"}]}},\"scopeName\":\"source.lean4\",\"aliases\":[\"lean4\"]}"))
2
2
 
3
3
  export default [
4
4
  lang
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs
@@ -0,0 +1,5 @@
1
+ const lang = Object.freeze(JSON.parse("{\"fileTypes\":[],\"injectTo\":[\"text.html.markdown\"],\"injectionSelector\":\"L:text.html.markdown\",\"name\":\"markdown-nix\",\"patterns\":[{\"include\":\"#nixCodeBlock\"}],\"repository\":{\"nixCodeBlock\":{\"begin\":\"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(nix)(\\\\s+[^`~]*)?$)\",\"beginCaptures\":{\"3\":{\"name\":\"punctuation.definition.markdown\"},\"5\":{\"name\":\"fenced_code.block.language\"},\"6\":{\"name\":\"fenced_code.block.language.attributes\"}},\"end\":\"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$\",\"endCaptures\":{\"3\":{\"name\":\"punctuation.definition.markdown\"}},\"name\":\"markup.fenced_code.block.markdown\",\"patterns\":[{\"begin\":\"(^|\\\\G)(\\\\s*)(.*)\",\"contentName\":\"meta.embedded.block.nix\",\"patterns\":[{\"include\":\"source.nix\"}],\"while\":\"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)\"}]}},\"scopeName\":\"markdown.nix.codeblock\"}"))
2
+
3
+ export default [
4
+ lang
5
+ ]
package/dist/nextflow.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Nextflow\",\"name\":\"nextflow\",\"patterns\":[{\"include\":\"#nextflow\"}],\"repository\":{\"enum-def\":{\"begin\":\"^\\\\s*(enum)\\\\s+(\\\\w+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"storage.type.groovy\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"},{\"include\":\"#enum-values\"}]},\"enum-values\":{\"patterns\":[{\"begin\":\"(?<=;|^)\\\\s*\\\\b([0-9A-Z_]+)(?=\\\\s*(?:[(,}]|$))\",\"beginCaptures\":{\"1\":{\"name\":\"constant.enum.name.groovy\"}},\"end\":\",|(?=})|^(?!\\\\s*\\\\w+\\\\s*(?:,|$))\",\"patterns\":[{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.enum.value.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.seperator.parameter.groovy\"},{\"include\":\"#groovy-code\"}]}]}]},\"function-body\":{\"patterns\":[{\"match\":\"\\\\s\"},{\"begin\":\"(?=[<\\\\w][^(]*\\\\s+[$<\\\\w]+\\\\s*\\\\()\",\"end\":\"(?=[$\\\\w]+\\\\s*\\\\()\",\"name\":\"meta.method.return-type.java\",\"patterns\":[{\"include\":\"source.nextflow-groovy#types\"}]},{\"begin\":\"([$\\\\w]+)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.nextflow\"}},\"end\":\"\\\\)\",\"name\":\"meta.definition.method.signature.java\",\"patterns\":[{\"begin\":\"(?=[^)])\",\"end\":\"(?=\\\\))\",\"name\":\"meta.method.parameters.groovy\",\"patterns\":[{\"begin\":\"(?=[^),])\",\"end\":\"(?=[),])\",\"name\":\"meta.method.parameter.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.separator.groovy\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"(?=[),])\",\"name\":\"meta.parameter.default.groovy\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy-code\"}]},{\"include\":\"source.nextflow-groovy#parameters\"}]}]}]},{\"begin\":\"(?=<)\",\"end\":\"(?=\\\\s)\",\"name\":\"meta.method.paramerised-type.groovy\",\"patterns\":[{\"begin\":\"<\",\"end\":\">\",\"name\":\"storage.type.parameters.groovy\",\"patterns\":[{\"include\":\"source.nextflow-groovy#types\"},{\"match\":\",\",\"name\":\"punctuation.definition.seperator.groovy\"}]}]},{\"begin\":\"\\\\{\",\"end\":\"(?=})\",\"name\":\"meta.method.body.java\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy-code\"}]}]},\"function-def\":{\"applyEndPatternLast\":1,\"begin\":\"(?<=;|^|\\\\{)(?=\\\\s*(?:def|(?:(?:boolean|byte|char|short|int|float|long|double)|@?(?:[A-Za-z]\\\\w*\\\\.)*[A-Z]+\\\\w*)[]\\\\[]*(?:<.*>)?n)\\\\s+([^=]+\\\\s+)?\\\\w+\\\\s*\\\\()\",\"end\":\"}|(?=[^{])\",\"name\":\"meta.definition.method.groovy\",\"patterns\":[{\"include\":\"#function-body\"}]},\"include-decl\":{\"patterns\":[{\"match\":\"^\\\\b(include)\\\\b\",\"name\":\"keyword.nextflow\"},{\"match\":\"\\\\b(from)\\\\b\",\"name\":\"keyword.nextflow\"}]},\"nextflow\":{\"patterns\":[{\"include\":\"#enum-def\"},{\"include\":\"#function-def\"},{\"include\":\"#process-def\"},{\"include\":\"#workflow-def\"},{\"include\":\"#params-def\"},{\"include\":\"#output-def\"},{\"include\":\"#include-decl\"},{\"include\":\"source.nextflow-groovy\"}]},\"output-def\":{\"begin\":\"^\\\\s*(output)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"}},\"end\":\"}\",\"name\":\"output.nextflow\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"}]},\"params-def\":{\"begin\":\"^\\\\s*(params)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"}},\"end\":\"}\",\"name\":\"params.nextflow\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"}]},\"process-body\":{\"patterns\":[{\"match\":\"(?:input|output|when|script|shell|exec):\",\"name\":\"constant.block.nextflow\"},{\"match\":\"\\\\b(val|env|file|path|stdin|stdout|tuple)([(\\\\s])\",\"name\":\"entity.name.function.nextflow\"},{\"include\":\"source.nextflow-groovy#groovy\"}]},\"process-def\":{\"begin\":\"^\\\\s*(process)\\\\s+(\\\\w+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"entity.name.function.nextflow\"}},\"end\":\"}\",\"name\":\"process.nextflow\",\"patterns\":[{\"include\":\"#process-body\"}]},\"workflow-body\":{\"patterns\":[{\"match\":\"(?:take|main|emit|publish):\",\"name\":\"constant.block.nextflow\"},{\"include\":\"source.nextflow-groovy#groovy\"}]},\"workflow-def\":{\"begin\":\"^\\\\s*(workflow)(?:\\\\s+(\\\\w+))?\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"entity.name.function.nextflow\"}},\"end\":\"}\",\"name\":\"workflow.nextflow\",\"patterns\":[{\"include\":\"#workflow-body\"}]}},\"scopeName\":\"source.nextflow\",\"aliases\":[\"nf\"]}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Nextflow\",\"name\":\"nextflow\",\"patterns\":[{\"include\":\"#nextflow\"}],\"repository\":{\"enum-def\":{\"begin\":\"^\\\\s*(enum)\\\\s+(\\\\w+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"storage.type.groovy\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"},{\"include\":\"#enum-values\"}]},\"enum-values\":{\"patterns\":[{\"begin\":\"(?<=;|^)\\\\s*\\\\b([0-9A-Z_]+)(?=\\\\s*(?:[(,}]|$))\",\"beginCaptures\":{\"1\":{\"name\":\"constant.enum.name.groovy\"}},\"end\":\",|(?=})|^(?!\\\\s*\\\\w+\\\\s*(?:,|$))\",\"patterns\":[{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.enum.value.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.seperator.parameter.groovy\"},{\"include\":\"#groovy-code\"}]}]}]},\"function-body\":{\"patterns\":[{\"match\":\"\\\\s\"},{\"begin\":\"(?=[<\\\\w][^(]*\\\\s+[$<\\\\w]+\\\\s*\\\\()\",\"end\":\"(?=[$\\\\w]+\\\\s*\\\\()\",\"name\":\"meta.method.return-type.java\",\"patterns\":[{\"include\":\"source.nextflow-groovy#types\"}]},{\"begin\":\"([$\\\\w]+)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.nextflow\"}},\"end\":\"\\\\)\",\"name\":\"meta.definition.method.signature.java\",\"patterns\":[{\"begin\":\"(?=[^)])\",\"end\":\"(?=\\\\))\",\"name\":\"meta.method.parameters.groovy\",\"patterns\":[{\"begin\":\"(?=[^),])\",\"end\":\"(?=[),])\",\"name\":\"meta.method.parameter.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.separator.groovy\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"(?=[),])\",\"name\":\"meta.parameter.default.groovy\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy-code\"}]},{\"include\":\"source.nextflow-groovy#parameters\"}]}]}]},{\"begin\":\"(?=<)\",\"end\":\"(?=\\\\s)\",\"name\":\"meta.method.paramerised-type.groovy\",\"patterns\":[{\"begin\":\"<\",\"end\":\">\",\"name\":\"storage.type.parameters.groovy\",\"patterns\":[{\"include\":\"source.nextflow-groovy#types\"},{\"match\":\",\",\"name\":\"punctuation.definition.seperator.groovy\"}]}]},{\"begin\":\"\\\\{\",\"end\":\"(?=})\",\"name\":\"meta.method.body.java\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy-code\"}]}]},\"function-def\":{\"applyEndPatternLast\":1,\"begin\":\"(?<=;|^|\\\\{)(?=\\\\s*(?:def|(?:(?:boolean|byte|char|short|int|float|long|double)|@?(?:[A-Za-z]\\\\w*\\\\.)*[A-Z]+\\\\w*)[]\\\\[]*(?:<.*>)?n)\\\\s+([^=]+\\\\s+)?\\\\w+\\\\s*\\\\()\",\"end\":\"}|(?=[^{])\",\"name\":\"meta.definition.method.groovy\",\"patterns\":[{\"include\":\"#function-body\"}]},\"include-decl\":{\"patterns\":[{\"match\":\"^\\\\b(include)\\\\b\",\"name\":\"keyword.nextflow\"},{\"match\":\"\\\\b(from)\\\\b\",\"name\":\"keyword.nextflow\"}]},\"nextflow\":{\"patterns\":[{\"include\":\"#record-def\"},{\"include\":\"#enum-def\"},{\"include\":\"#function-def\"},{\"include\":\"#process-def\"},{\"include\":\"#workflow-def\"},{\"include\":\"#params-def\"},{\"include\":\"#output-def\"},{\"include\":\"#include-decl\"},{\"include\":\"source.nextflow-groovy\"}]},\"output-def\":{\"begin\":\"^\\\\s*(output)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"}},\"end\":\"}\",\"name\":\"output.nextflow\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"}]},\"params-def\":{\"begin\":\"^\\\\s*(params)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"}},\"end\":\"}\",\"name\":\"params.nextflow\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"}]},\"process-body\":{\"patterns\":[{\"match\":\"(?:input|output|when|script|shell|exec):\",\"name\":\"constant.block.nextflow\"},{\"match\":\"\\\\b(val|env|file|path|stdin|stdout|tuple)([(\\\\s])\",\"name\":\"entity.name.function.nextflow\"},{\"include\":\"source.nextflow-groovy#groovy\"}]},\"process-def\":{\"begin\":\"^\\\\s*(process)\\\\s+(\\\\w+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"entity.name.function.nextflow\"}},\"end\":\"}\",\"name\":\"process.nextflow\",\"patterns\":[{\"include\":\"#process-body\"}]},\"record-def\":{\"begin\":\"^\\\\s*(record)\\\\s+(\\\\w+)\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"storage.type.groovy\"}},\"end\":\"}\",\"name\":\"record.nextflow\",\"patterns\":[{\"include\":\"source.nextflow-groovy#groovy\"}]},\"workflow-body\":{\"patterns\":[{\"match\":\"(?:take|main|emit|publish):\",\"name\":\"constant.block.nextflow\"},{\"include\":\"source.nextflow-groovy#groovy\"}]},\"workflow-def\":{\"begin\":\"^\\\\s*(workflow)(?:\\\\s+(\\\\w+))?\\\\s*\\\\{\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.nextflow\"},\"2\":{\"name\":\"entity.name.function.nextflow\"}},\"end\":\"}\",\"name\":\"workflow.nextflow\",\"patterns\":[{\"include\":\"#workflow-body\"}]}},\"scopeName\":\"source.nextflow\",\"aliases\":[\"nf\"]}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/nix.mjs CHANGED
@@ -1,5 +1,8 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Nix\",\"fileTypes\":[\"nix\"],\"name\":\"nix\",\"patterns\":[{\"include\":\"#expression\"}],\"repository\":{\"attribute-bind\":{\"patterns\":[{\"include\":\"#attribute-name\"},{\"include\":\"#attribute-bind-from-equals\"}]},\"attribute-bind-from-equals\":{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.bind.nix\"}},\"end\":\";\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.terminator.bind.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"attribute-inherit\":{\"begin\":\"\\\\binherit\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.inherit.nix\"}},\"end\":\";\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.terminator.inherit.nix\"}},\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.function.arguments.nix\"}},\"end\":\"(?=;)\",\"patterns\":[{\"begin\":\"\\\\)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.function.arguments.nix\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#bad-reserved\"},{\"include\":\"#attribute-name-single\"},{\"include\":\"#others\"}]},{\"include\":\"#expression\"}]},{\"begin\":\"(?=[A-Z_a-z])\",\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#bad-reserved\"},{\"include\":\"#attribute-name-single\"},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},\"attribute-name\":{\"patterns\":[{\"match\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"name\":\"entity.other.attribute-name.multipart.nix\"},{\"match\":\"\\\\.\"},{\"include\":\"#string-quoted\"},{\"include\":\"#interpolation\"}]},\"attribute-name-single\":{\"match\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"name\":\"entity.other.attribute-name.single.nix\"},\"attrset-contents\":{\"patterns\":[{\"include\":\"#attribute-inherit\"},{\"include\":\"#bad-reserved\"},{\"include\":\"#attribute-bind\"},{\"include\":\"#others\"}]},\"attrset-definition\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset.nix\"}},\"end\":\"(})\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset.nix\"}},\"patterns\":[{\"include\":\"#attrset-contents\"}]},{\"begin\":\"(?<=})\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]}]},\"attrset-definition-brace-opened\":{\"patterns\":[{\"begin\":\"(?<=})\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"(?=.?)\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset.nix\"}},\"patterns\":[{\"include\":\"#attrset-contents\"}]}]},\"attrset-for-sure\":{\"patterns\":[{\"begin\":\"(?=\\\\brec\\\\b)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\brec\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#others\"}]},{\"include\":\"#attrset-definition\"},{\"include\":\"#others\"}]},{\"begin\":\"(?=\\\\{\\\\s*(}|[^,?]*([;=])))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attrset-definition\"},{\"include\":\"#others\"}]}]},\"attrset-or-function\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset-or-function.nix\"}},\"end\":\"(?=([]);}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(?=(\\\\s*}|\\\"|\\\\binherit\\\\b|\\\\$\\\\{|\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*(\\\\s*\\\\.|\\\\s*=[^=])))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attrset-definition-brace-opened\"}]},{\"begin\":\"(?=(\\\\.\\\\.\\\\.|\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\\\\s*[,?]))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition-brace-opened\"}]},{\"include\":\"#bad-reserved\"},{\"begin\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.function.maybe.nix\"}},\"end\":\"(?=([]);}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(?=\\\\.)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attrset-definition-brace-opened\"}]},{\"begin\":\"\\\\s*(,)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition-brace-opened\"}]},{\"begin\":\"(?==)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attribute-bind-from-equals\"},{\"include\":\"#attrset-definition-brace-opened\"}]},{\"begin\":\"(?=\\\\?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-parameter-default\"},{\"begin\":\",\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition-brace-opened\"}]}]},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},\"bad-reserved\":{\"match\":\"(?<![-'\\\\w])(if|then|else|assert|with|let|in|rec|inherit)(?![-'\\\\w])\",\"name\":\"invalid.illegal.reserved.nix\"},\"comment\":{\"patterns\":[{\"begin\":\"/\\\\*([^*]|\\\\*[^/])*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.nix\"},{\"begin\":\"#\",\"end\":\"$\",\"name\":\"comment.line.number-sign.nix\"}]},\"constants\":{\"patterns\":[{\"begin\":\"\\\\b(builtins|true|false|null)\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"constant.language.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"\\\\b(scopedImport|import|isNull|abort|throw|baseNameOf|dirOf|removeAttrs|map|toString|derivationStrict|derivation)\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"support.function.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"\\\\b[0-9]+\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"constant.numeric.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]}]},\"expression\":{\"patterns\":[{\"include\":\"#parens-and-cont\"},{\"include\":\"#list-and-cont\"},{\"include\":\"#string\"},{\"include\":\"#interpolation\"},{\"include\":\"#with-assert\"},{\"include\":\"#function-for-sure\"},{\"include\":\"#attrset-for-sure\"},{\"include\":\"#attrset-or-function\"},{\"include\":\"#let\"},{\"include\":\"#if\"},{\"include\":\"#operator-unary\"},{\"include\":\"#constants\"},{\"include\":\"#bad-reserved\"},{\"include\":\"#parameter-name-and-cont\"},{\"include\":\"#others\"}]},\"expression-cont\":{\"begin\":\"(?=.?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#list\"},{\"include\":\"#string\"},{\"include\":\"#interpolation\"},{\"include\":\"#function-for-sure\"},{\"include\":\"#attrset-for-sure\"},{\"include\":\"#attrset-or-function\"},{\"match\":\"(\\\\bor\\\\b|\\\\.|\\\\|>|<\\\\||==|!=?|<=?|>=?|&&|\\\\|\\\\||->|//|\\\\?|\\\\+\\\\+|[-*]|/(?=([^*]|$))|\\\\+)\",\"name\":\"keyword.operator.nix\"},{\"include\":\"#constants\"},{\"include\":\"#bad-reserved\"},{\"include\":\"#parameter-name\"},{\"include\":\"#others\"}]},\"function-body\":{\"begin\":\"(@\\\\s*([A-Z_a-z][-'0-9A-Z_a-z]*)\\\\s*)?(:)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression\"}]},\"function-body-from-colon\":{\"begin\":\"(:)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.function.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression\"}]},\"function-contents\":{\"patterns\":[{\"include\":\"#bad-reserved\"},{\"include\":\"#function-parameter\"},{\"include\":\"#others\"}]},\"function-definition\":{\"begin\":\"(?=.?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-body-from-colon\"},{\"begin\":\"(?=.?)\",\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"\\\\b([A-Z_a-z][-'0-9A-Z_a-z]*)\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.function.4.nix\"}},\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"@\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-until-colon-no-arg\"},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-until-colon-with-arg\"}]}]},{\"include\":\"#others\"}]},\"function-definition-brace-opened\":{\"begin\":\"(?=.?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-body-from-colon\"},{\"begin\":\"(?=.?)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-close-brace-with-arg\"},{\"begin\":\"(?=.?)\",\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#function-contents\"}]}]},{\"include\":\"#others\"}]},\"function-for-sure\":{\"patterns\":[{\"begin\":\"(?=(\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\\\\s*[:@]|\\\\{[^\\\"'}]*}\\\\s*:|\\\\{[^\\\"#'/=}]*[,?]))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition\"}]}]},\"function-header-close-brace-no-arg\":{\"begin\":\"}\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.entity.function.nix\"}},\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#others\"}]},\"function-header-close-brace-with-arg\":{\"begin\":\"}\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.entity.function.nix\"}},\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-terminal-arg\"},{\"include\":\"#others\"}]},\"function-header-open-brace\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.entity.function.2.nix\"}},\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#function-contents\"}]},\"function-header-terminal-arg\":{\"begin\":\"(?=@)\",\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"@\",\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"\\\\b([A-Z_a-z][-'0-9A-Z_a-z]*)\",\"end\":\"(?=:)\",\"name\":\"variable.parameter.function.3.nix\"},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},\"function-header-until-colon-no-arg\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-open-brace\"},{\"include\":\"#function-header-close-brace-no-arg\"}]},\"function-header-until-colon-with-arg\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-open-brace\"},{\"include\":\"#function-header-close-brace-with-arg\"}]},\"function-parameter\":{\"patterns\":[{\"begin\":\"(\\\\.\\\\.\\\\.)\",\"end\":\"(,|(?=}))\",\"name\":\"keyword.operator.nix\",\"patterns\":[{\"include\":\"#others\"}]},{\"begin\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.function.1.nix\"}},\"end\":\"(,|(?=}))\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.nix\"}},\"patterns\":[{\"include\":\"#whitespace\"},{\"include\":\"#comment\"},{\"include\":\"#function-parameter-default\"},{\"include\":\"#expression\"}]},{\"include\":\"#others\"}]},\"function-parameter-default\":{\"begin\":\"\\\\?\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.nix\"}},\"end\":\"(?=[,}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"if\":{\"begin\":\"(?=\\\\bif\\\\b)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\bif\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"\\\\bth(?=en\\\\b)\",\"endCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"(?<=th)en\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"\\\\bel(?=se\\\\b)\",\"endCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"(?<=el)se\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"endCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]}]},\"illegal\":{\"match\":\".\",\"name\":\"invalid.illegal\"},\"interpolation\":{\"begin\":\"\\\\$\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.begin.nix\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.end.nix\"}},\"name\":\"meta.embedded\",\"patterns\":[{\"include\":\"#expression\"}]},\"let\":{\"begin\":\"(?=\\\\blet\\\\b)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\blet\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(in|else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\{\",\"end\":\"}\",\"patterns\":[{\"include\":\"#attrset-contents\"}]},{\"begin\":\"(^|(?<=}))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"include\":\"#others\"}]},{\"include\":\"#attrset-contents\"},{\"include\":\"#others\"}]},{\"begin\":\"\\\\bin\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression\"}]}]},\"list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.nix\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"list-and-cont\":{\"begin\":\"(?=\\\\[)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#list\"},{\"include\":\"#expression-cont\"}]},\"operator-unary\":{\"match\":\"([-!])\",\"name\":\"keyword.operator.unary.nix\"},\"others\":{\"patterns\":[{\"include\":\"#whitespace\"},{\"include\":\"#comment\"},{\"include\":\"#illegal\"}]},\"parameter-name\":{\"captures\":{\"0\":{\"name\":\"variable.parameter.name.nix\"}},\"match\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\"},\"parameter-name-and-cont\":{\"begin\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.name.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},\"parens\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.expression.nix\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.expression.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"parens-and-cont\":{\"begin\":\"(?=\\\\()\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#expression-cont\"}]},\"string\":{\"patterns\":[{\"begin\":\"(?='')\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.other.start.nix\"}},\"end\":\"''(?![$']|\\\\\\\\.)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.other.end.nix\"}},\"name\":\"string.quoted.other.nix\",\"patterns\":[{\"match\":\"''([$']|\\\\\\\\.)\",\"name\":\"constant.character.escape.nix\"},{\"include\":\"#interpolation\"}]},{\"include\":\"#expression-cont\"}]},{\"begin\":\"(?=\\\")\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#string-quoted\"},{\"include\":\"#expression-cont\"}]},{\"begin\":\"(~?[-+.0-9A-Z_a-z]*(/[-+.0-9A-Z_a-z]+)+)\",\"beginCaptures\":{\"0\":{\"name\":\"string.unquoted.path.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"(<[-+.0-9A-Z_a-z]+(/[-+.0-9A-Z_a-z]+)*>)\",\"beginCaptures\":{\"0\":{\"name\":\"string.unquoted.spath.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"([A-Za-z][-+.0-9A-Za-z]*:[!$-'*-:=?-Z_a-z~]+)\",\"beginCaptures\":{\"0\":{\"name\":\"string.unquoted.url.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]}]},\"string-quoted\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.double.start.nix\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.double.end.nix\"}},\"name\":\"string.quoted.double.nix\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.nix\"},{\"include\":\"#interpolation\"}]},\"whitespace\":{\"match\":\"\\\\s+\"},\"with-assert\":{\"begin\":\"(?<![-'\\\\w])(with|assert)(?![-'\\\\w])\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\";\",\"patterns\":[{\"include\":\"#expression\"}]}},\"scopeName\":\"source.nix\"}"))
1
+ import markdown_nix from './markdown-nix.mjs'
2
+
3
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Nix\",\"fileTypes\":[\"nix\"],\"name\":\"nix\",\"patterns\":[{\"include\":\"#expression\"}],\"repository\":{\"attribute-bind\":{\"patterns\":[{\"include\":\"#attribute-name\"},{\"include\":\"#attribute-bind-from-equals\"}]},\"attribute-bind-from-equals\":{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.bind.nix\"}},\"end\":\";\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.terminator.bind.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"attribute-inherit\":{\"begin\":\"\\\\binherit\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.inherit.nix\"}},\"end\":\";\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.terminator.inherit.nix\"}},\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.function.arguments.nix\"}},\"end\":\"(?=;)\",\"patterns\":[{\"begin\":\"\\\\)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.function.arguments.nix\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#bad-reserved\"},{\"include\":\"#attribute-name-single\"},{\"include\":\"#others\"}]},{\"include\":\"#expression\"}]},{\"begin\":\"(?=[A-Z_a-z])\",\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#bad-reserved\"},{\"include\":\"#attribute-name-single\"},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},\"attribute-name\":{\"patterns\":[{\"match\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"name\":\"entity.other.attribute-name.multipart.nix\"},{\"match\":\"\\\\.\"},{\"include\":\"#string-quoted\"},{\"include\":\"#interpolation\"}]},\"attribute-name-single\":{\"match\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"name\":\"entity.other.attribute-name.single.nix\"},\"attrset-contents\":{\"patterns\":[{\"include\":\"#attribute-inherit\"},{\"include\":\"#bad-reserved\"},{\"include\":\"#attribute-bind\"},{\"include\":\"#others\"}]},\"attrset-definition\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset.nix\"}},\"end\":\"(})\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset.nix\"}},\"patterns\":[{\"include\":\"#attrset-contents\"}]},{\"begin\":\"(?<=})\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]}]},\"attrset-definition-brace-opened\":{\"patterns\":[{\"begin\":\"(?<=})\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"(?=.?)\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset.nix\"}},\"patterns\":[{\"include\":\"#attrset-contents\"}]}]},\"attrset-for-sure\":{\"patterns\":[{\"begin\":\"(?=\\\\brec\\\\b)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\brec\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#others\"}]},{\"include\":\"#attrset-definition\"},{\"include\":\"#others\"}]},{\"begin\":\"(?=\\\\{\\\\s*(}|[^,?]*([;=])))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attrset-definition\"},{\"include\":\"#others\"}]}]},\"attrset-or-function\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.attrset-or-function.nix\"}},\"end\":\"(?=([]);}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(?=(\\\\s*}|\\\"|\\\\binherit\\\\b|\\\\$\\\\{|\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*(\\\\s*\\\\.|\\\\s*=[^=])))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attrset-definition-brace-opened\"}]},{\"begin\":\"(?=(\\\\.\\\\.\\\\.|\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\\\\s*[,?]))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition-brace-opened\"}]},{\"include\":\"#bad-reserved\"},{\"begin\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.function.maybe.nix\"}},\"end\":\"(?=([]);}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(?=\\\\.)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attrset-definition-brace-opened\"}]},{\"begin\":\"\\\\s*(,)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition-brace-opened\"}]},{\"begin\":\"(?==)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#attribute-bind-from-equals\"},{\"include\":\"#attrset-definition-brace-opened\"}]},{\"begin\":\"(?=\\\\?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-parameter-default\"},{\"begin\":\",\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition-brace-opened\"}]}]},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},\"bad-reserved\":{\"match\":\"(?<![-'\\\\w])(if|then|else|assert|with|let|in|rec|inherit)(?![-'\\\\w])\",\"name\":\"invalid.illegal.reserved.nix\"},\"comment\":{\"patterns\":[{\"begin\":\"/\\\\*([^*]|\\\\*[^/])*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.nix\"},{\"begin\":\"#\",\"end\":\"$\",\"name\":\"comment.line.number-sign.nix\"}]},\"constants\":{\"patterns\":[{\"begin\":\"\\\\b(builtins|true|false|null)\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"constant.language.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"\\\\b(scopedImport|import|isNull|abort|throw|baseNameOf|dirOf|removeAttrs|map|toString|derivationStrict|derivation)\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"support.function.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"\\\\b[0-9]+\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"constant.numeric.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]}]},\"expression\":{\"patterns\":[{\"include\":\"#parens-and-cont\"},{\"include\":\"#list-and-cont\"},{\"include\":\"#string\"},{\"include\":\"#interpolation\"},{\"include\":\"#with-assert\"},{\"include\":\"#function-for-sure\"},{\"include\":\"#attrset-for-sure\"},{\"include\":\"#attrset-or-function\"},{\"include\":\"#let\"},{\"include\":\"#if\"},{\"include\":\"#operator-unary\"},{\"include\":\"#operator-binary\"},{\"include\":\"#constants\"},{\"include\":\"#bad-reserved\"},{\"include\":\"#parameter-name-and-cont\"},{\"include\":\"#others\"}]},\"expression-cont\":{\"begin\":\"(?=.?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#list\"},{\"include\":\"#string\"},{\"include\":\"#interpolation\"},{\"include\":\"#function-for-sure\"},{\"include\":\"#attrset-for-sure\"},{\"include\":\"#attrset-or-function\"},{\"include\":\"#operator-binary\"},{\"include\":\"#constants\"},{\"include\":\"#bad-reserved\"},{\"include\":\"#parameter-name\"},{\"include\":\"#others\"}]},\"function-body\":{\"begin\":\"(@\\\\s*([A-Z_a-z][-'0-9A-Z_a-z]*)\\\\s*)?(:)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression\"}]},\"function-body-from-colon\":{\"begin\":\"(:)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.function.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression\"}]},\"function-contents\":{\"patterns\":[{\"include\":\"#bad-reserved\"},{\"include\":\"#function-parameter\"},{\"include\":\"#others\"}]},\"function-definition\":{\"begin\":\"(?=.?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-body-from-colon\"},{\"begin\":\"(?=.?)\",\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"\\\\b([A-Z_a-z][-'0-9A-Z_a-z]*)\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.function.4.nix\"}},\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"@\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-until-colon-no-arg\"},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-until-colon-with-arg\"}]}]},{\"include\":\"#others\"}]},\"function-definition-brace-opened\":{\"begin\":\"(?=.?)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-body-from-colon\"},{\"begin\":\"(?=.?)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-close-brace-with-arg\"},{\"begin\":\"(?=.?)\",\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#function-contents\"}]}]},{\"include\":\"#others\"}]},\"function-for-sure\":{\"patterns\":[{\"begin\":\"(?=(\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\\\\s*[:@]|\\\\{[^\\\"'}]*}\\\\s*:|\\\\{[^\\\"#'/=}]*[,?]))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#function-definition\"}]}]},\"function-header-close-brace-no-arg\":{\"begin\":\"}\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.entity.function.nix\"}},\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#others\"}]},\"function-header-close-brace-with-arg\":{\"begin\":\"}\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.entity.function.nix\"}},\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-terminal-arg\"},{\"include\":\"#others\"}]},\"function-header-open-brace\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.entity.function.2.nix\"}},\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#function-contents\"}]},\"function-header-terminal-arg\":{\"begin\":\"(?=@)\",\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"@\",\"end\":\"(?=:)\",\"patterns\":[{\"begin\":\"\\\\b([A-Z_a-z][-'0-9A-Z_a-z]*)\",\"end\":\"(?=:)\",\"name\":\"variable.parameter.function.3.nix\"},{\"include\":\"#others\"}]},{\"include\":\"#others\"}]},\"function-header-until-colon-no-arg\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-open-brace\"},{\"include\":\"#function-header-close-brace-no-arg\"}]},\"function-header-until-colon-with-arg\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#function-header-open-brace\"},{\"include\":\"#function-header-close-brace-with-arg\"}]},\"function-parameter\":{\"patterns\":[{\"begin\":\"(\\\\.\\\\.\\\\.)\",\"end\":\"(,|(?=}))\",\"name\":\"keyword.operator.nix\",\"patterns\":[{\"include\":\"#others\"}]},{\"begin\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.function.1.nix\"}},\"end\":\"(,|(?=}))\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.nix\"}},\"patterns\":[{\"include\":\"#whitespace\"},{\"include\":\"#comment\"},{\"include\":\"#function-parameter-default\"},{\"include\":\"#expression\"}]},{\"include\":\"#others\"}]},\"function-parameter-default\":{\"begin\":\"\\\\?\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.nix\"}},\"end\":\"(?=[,}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"if\":{\"begin\":\"(?=\\\\bif\\\\b)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\bif\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"\\\\bth(?=en\\\\b)\",\"endCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"(?<=th)en\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"\\\\bel(?=se\\\\b)\",\"endCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"(?<=el)se\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"endCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]}]},\"illegal\":{\"match\":\".\",\"name\":\"invalid.illegal\"},\"interpolation\":{\"begin\":\"\\\\$\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.begin.nix\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.embedded.end.nix\"}},\"name\":\"meta.embedded\",\"patterns\":[{\"include\":\"#expression\"}]},\"let\":{\"begin\":\"(?=\\\\blet\\\\b)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\blet\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(in|else|then)\\\\b))\",\"patterns\":[{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"\\\\{\",\"end\":\"}\",\"patterns\":[{\"include\":\"#attrset-contents\"}]},{\"begin\":\"(^|(?<=}))\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"include\":\"#others\"}]},{\"include\":\"#attrset-contents\"},{\"include\":\"#others\"}]},{\"begin\":\"\\\\bin\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression\"}]}]},\"list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.nix\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"list-and-cont\":{\"begin\":\"(?=\\\\[)\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#list\"},{\"include\":\"#expression-cont\"}]},\"operator-binary\":{\"match\":\"(\\\\bor\\\\b|\\\\.|\\\\|>|<\\\\||==|!=?|<=?|>=?|&&|\\\\|\\\\||->|//|\\\\?|\\\\+\\\\+|[-*]|/(?=([^*]|$))|\\\\+)\",\"name\":\"keyword.operator.nix\"},\"operator-unary\":{\"match\":\"([-!])\",\"name\":\"keyword.operator.unary.nix\"},\"others\":{\"patterns\":[{\"include\":\"#whitespace\"},{\"include\":\"#comment\"},{\"include\":\"#illegal\"}]},\"parameter-name\":{\"captures\":{\"0\":{\"name\":\"variable.parameter.name.nix\"}},\"match\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\"},\"parameter-name-and-cont\":{\"begin\":\"\\\\b[A-Z_a-z][-'0-9A-Z_a-z]*\",\"beginCaptures\":{\"0\":{\"name\":\"variable.parameter.name.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},\"parens\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.expression.nix\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.expression.nix\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"parens-and-cont\":{\"begin\":\"(?=\\\\()\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#expression-cont\"}]},\"string\":{\"patterns\":[{\"begin\":\"(?='')\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"begin\":\"''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.other.start.nix\"}},\"end\":\"''(?![$']|\\\\\\\\.)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.other.end.nix\"}},\"name\":\"string.quoted.other.nix\",\"patterns\":[{\"match\":\"''([$']|\\\\\\\\.)\",\"name\":\"constant.character.escape.nix\"},{\"include\":\"#interpolation\"}]},{\"include\":\"#expression-cont\"}]},{\"begin\":\"(?=\\\")\",\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#string-quoted\"},{\"include\":\"#expression-cont\"}]},{\"begin\":\"(~?[-+.0-9A-Z_a-z]*(/[-+.0-9A-Z_a-z]+)+)\",\"beginCaptures\":{\"0\":{\"name\":\"string.unquoted.path.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"(<[-+.0-9A-Z_a-z]+(/[-+.0-9A-Z_a-z]+)*>)\",\"beginCaptures\":{\"0\":{\"name\":\"string.unquoted.spath.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]},{\"begin\":\"([A-Za-z][-+.0-9A-Za-z]*:[!$-'*-:=?-Z_a-z~]+)\",\"beginCaptures\":{\"0\":{\"name\":\"string.unquoted.url.nix\"}},\"end\":\"(?=([]),;}]|\\\\b(else|then)\\\\b))\",\"patterns\":[{\"include\":\"#expression-cont\"}]}]},\"string-quoted\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.double.start.nix\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.double.end.nix\"}},\"name\":\"string.quoted.double.nix\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.nix\"},{\"include\":\"#interpolation\"}]},\"whitespace\":{\"match\":\"\\\\s+\"},\"with-assert\":{\"begin\":\"(?<![-'\\\\w])(with|assert)(?![-'\\\\w])\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.nix\"}},\"end\":\";\",\"patterns\":[{\"include\":\"#expression\"}]}},\"scopeName\":\"source.nix\",\"embeddedLangs\":[\"markdown-nix\"]}"))
2
4
 
3
5
  export default [
6
+ ...markdown_nix,
4
7
  lang
5
8
  ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs
@@ -0,0 +1,5 @@
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"OpenSCAD\",\"fileTypes\":[\"scad\"],\"foldingStartMarker\":\"/\\\\*\\\\*|\\\\{\\\\s*$\",\"foldingStopMarker\":\"\\\\*\\\\*/|^\\\\s*}\",\"name\":\"openscad\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.scad\"}},\"match\":\"^(module)\\\\s.*$\",\"name\":\"meta.function.scad\"},{\"match\":\"\\\\b(if|else|for|intersection_for|assign|render|function|include|use)\\\\b\",\"name\":\"keyword.control.scad\"},{\"begin\":\"/\\\\*\\\\*(?!/)\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.scad\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.documentation.scad\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.scad\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.scad\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.scad\"}},\"match\":\"(//).*$\\\\n?\",\"name\":\"comment.line.double-slash.scad\"},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.scad\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.scad\"}]},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.scad\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.scad\"}},\"name\":\"string.quoted.single.scad\",\"patterns\":[{\"match\":\"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)\",\"name\":\"constant.character.escape.scad\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.scad\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.scad\"}},\"name\":\"string.quoted.double.scad\",\"patterns\":[{\"match\":\"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)\",\"name\":\"constant.character.escape.scad\"}]},{\"match\":\"\\\\b(abs|acos|asun|atan2??|ceil|cos|exp|floor|ln|log|lookup|max|min|pow|rands|round|sign|sin|sqrt|tan|str|cube|sphere|cylinder|polyhedron|scale|rotate|translate|mirror|multimatrix|color|minkowski|hull|union|difference|intersection|echo)\\\\b\",\"name\":\"support.function.scad\"},{\"match\":\";\",\"name\":\"punctuation.terminator.statement.scad\"},{\"match\":\",[\\\\t |]*\",\"name\":\"meta.delimiter.object.comma.scad\"},{\"match\":\"\\\\.\",\"name\":\"meta.delimiter.method.period.scad\"},{\"match\":\"[{}]\",\"name\":\"meta.brace.curly.scad\"},{\"match\":\"[()]\",\"name\":\"meta.brace.round.scad\"},{\"match\":\"[]\\\\[]\",\"name\":\"meta.brace.square.scad\"},{\"match\":\"[!$%\\\\&*]|--?|\\\\+\\\\+|[+~]|===?|=|!==??|<=|>=|<<=|>>=|>>>=|<>|[!<>]|&&|\\\\|\\\\||\\\\?:|\\\\*=|(?<!\\\\()/=|%=|\\\\+=|-=|&=|\\\\^=|\\\\b(in|instanceof|new|delete|typeof|void)\\\\b\",\"name\":\"keyword.operator.scad\"},{\"match\":\"\\\\b((0([Xx])\\\\h+)|([0-9]+(\\\\.[0-9]+)?))\\\\b\",\"name\":\"constant.numeric.scad\"},{\"match\":\"\\\\btrue\\\\b\",\"name\":\"constant.language.boolean.true.scad\"},{\"match\":\"\\\\bfalse\\\\b\",\"name\":\"constant.language.boolean.false.scad\"}],\"scopeName\":\"source.scad\",\"aliases\":[\"scad\"]}"))
2
+
3
+ export default [
4
+ lang
5
+ ]
@@ -0,0 +1,3 @@
1
+ import type { LanguageRegistration } from '@shikijs/types'
2
+ const langs: LanguageRegistration []
3
+ export default langs
package/dist/scad.mjs ADDED
@@ -0,0 +1,2 @@
1
+ /* Alias scad for openscad */
2
+ export { default } from './openscad.mjs'
package/dist/solidity.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Solidity\",\"fileTypes\":[\"sol\"],\"name\":\"solidity\",\"patterns\":[{\"include\":\"#natspec\"},{\"include\":\"#declaration-userType\"},{\"include\":\"#comment\"},{\"include\":\"#operator\"},{\"include\":\"#global\"},{\"include\":\"#control\"},{\"include\":\"#constant\"},{\"include\":\"#primitive\"},{\"include\":\"#type-primitive\"},{\"include\":\"#type-modifier-extended-scope\"},{\"include\":\"#declaration\"},{\"include\":\"#function-call\"},{\"include\":\"#assembly\"},{\"include\":\"#punctuation\"}],\"repository\":{\"assembly\":{\"patterns\":[{\"match\":\"\\\\b(assembly)\\\\b\",\"name\":\"keyword.control.assembly\"},{\"match\":\"\\\\b(let)\\\\b\",\"name\":\"storage.type.assembly\"}]},\"comment\":{\"patterns\":[{\"include\":\"#comment-line\"},{\"include\":\"#comment-block\"}]},\"comment-block\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block\",\"patterns\":[{\"include\":\"#comment-todo\"}]},\"comment-line\":{\"begin\":\"(?<!tp:)//\",\"end\":\"$\",\"name\":\"comment.line\",\"patterns\":[{\"include\":\"#comment-todo\"}]},\"comment-todo\":{\"match\":\"(?i)\\\\b(FIXME|TODO|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|COMBAK|TEMP|SUPPRESS|LINT|\\\\w+-disable|\\\\w+-suppress)\\\\b(?-i)\",\"name\":\"keyword.comment.todo\"},\"constant\":{\"patterns\":[{\"include\":\"#constant-boolean\"},{\"include\":\"#constant-time\"},{\"include\":\"#constant-currency\"}]},\"constant-boolean\":{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean\"},\"constant-currency\":{\"match\":\"\\\\b(ether|wei|gwei|finney|szabo)\\\\b\",\"name\":\"constant.language.currency\"},\"constant-time\":{\"match\":\"\\\\b((?:second|minute|hour|day|week|year)s)\\\\b\",\"name\":\"constant.language.time\"},\"control\":{\"patterns\":[{\"include\":\"#control-flow\"},{\"include\":\"#control-using\"},{\"include\":\"#control-import\"},{\"include\":\"#control-pragma\"},{\"include\":\"#control-underscore\"},{\"include\":\"#control-unchecked\"},{\"include\":\"#control-other\"}]},\"control-flow\":{\"patterns\":[{\"match\":\"\\\\b(if|else|for|while|do|break|continue|try|catch|finally|throw|return|global)\\\\b\",\"name\":\"keyword.control.flow\"},{\"begin\":\"\\\\b(returns)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.return\"}},\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"}]}]},\"control-import\":{\"patterns\":[{\"begin\":\"\\\\b(import)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import\"}},\"end\":\"(?=;)\",\"patterns\":[{\"begin\":\"((?=\\\\{))\",\"end\":\"((?=}))\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.type.interface\"}]},{\"match\":\"\\\\b(from)\\\\b\",\"name\":\"keyword.control.import.from\"},{\"include\":\"#string\"},{\"include\":\"#punctuation\"}]},{\"match\":\"\\\\b(import)\\\\b\",\"name\":\"keyword.control.import\"}]},\"control-other\":{\"match\":\"\\\\b(new|delete|emit)\\\\b\",\"name\":\"keyword.control\"},\"control-pragma\":{\"captures\":{\"1\":{\"name\":\"keyword.control.pragma\"},\"2\":{\"name\":\"entity.name.tag.pragma\"},\"3\":{\"name\":\"constant.other.pragma\"}},\"match\":\"\\\\b(pragma)(?:\\\\s+([A-Z_a-z]\\\\w+)\\\\s+(\\\\S+))?\\\\b\"},\"control-unchecked\":{\"match\":\"\\\\b(unchecked)\\\\b\",\"name\":\"keyword.control.unchecked\"},\"control-underscore\":{\"match\":\"\\\\b(_)\\\\b\",\"name\":\"constant.other.underscore\"},\"control-using\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.using\"},\"2\":{\"name\":\"entity.name.type.library\"},\"3\":{\"name\":\"keyword.control.for\"},\"4\":{\"name\":\"entity.name.type\"}},\"match\":\"\\\\b(using)\\\\b\\\\s+\\\\b([A-Z_a-z\\\\d]+)\\\\b\\\\s+\\\\b(for)\\\\b\\\\s+\\\\b([A-Z_a-z\\\\d]+)\"},{\"match\":\"\\\\b(using)\\\\b\",\"name\":\"keyword.control.using\"}]},\"declaration\":{\"patterns\":[{\"include\":\"#declaration-contract\"},{\"include\":\"#declaration-userType\"},{\"include\":\"#declaration-interface\"},{\"include\":\"#declaration-library\"},{\"include\":\"#declaration-function\"},{\"include\":\"#declaration-modifier\"},{\"include\":\"#declaration-constructor\"},{\"include\":\"#declaration-event\"},{\"include\":\"#declaration-storage\"},{\"include\":\"#declaration-error\"}]},\"declaration-constructor\":{\"patterns\":[{\"begin\":\"\\\\b(constructor)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.constructor\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"begin\":\"\\\\G\\\\s*(?=\\\\()\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"}]},{\"begin\":\"(?<=\\\\))\",\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#type-modifier-access\"},{\"include\":\"#function-call\"}]}]},{\"captures\":{\"1\":{\"name\":\"storage.type.constructor\"}},\"match\":\"\\\\b(constructor)\\\\b\"}]},\"declaration-contract\":{\"patterns\":[{\"begin\":\"\\\\b(contract)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.contract\"},\"2\":{\"name\":\"entity.name.type.contract\"},\"3\":{\"name\":\"storage.modifier.is\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.type.contract.extend\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.contract\"},\"2\":{\"name\":\"entity.name.type.contract\"}},\"match\":\"\\\\b(contract)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-enum\":{\"patterns\":[{\"begin\":\"\\\\b(enum)\\\\s+(\\\\w+)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.enum\"},\"2\":{\"name\":\"entity.name.type.enum\"}},\"end\":\"(?=})\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"variable.other.enummember\"},{\"include\":\"#punctuation\"},{\"include\":\"#comment\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.enum\"},\"3\":{\"name\":\"entity.name.type.enum\"}},\"match\":\"\\\\b(enum)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-error\":{\"captures\":{\"1\":{\"name\":\"storage.type.error\"},\"3\":{\"name\":\"entity.name.type.error\"}},\"match\":\"\\\\b(error)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"declaration-event\":{\"patterns\":[{\"begin\":\"\\\\b(event)\\\\b(?:\\\\s+(\\\\w+)\\\\b)?\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.event\"},\"2\":{\"name\":\"entity.name.type.event\"}},\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#type-primitive\"},{\"captures\":{\"1\":{\"name\":\"storage.type.modifier.indexed\"},\"2\":{\"name\":\"variable.parameter.event\"}},\"match\":\"\\\\b(?:(indexed)\\\\s)?(\\\\w+)(?:,\\\\s*|)\"},{\"include\":\"#punctuation\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.event\"},\"3\":{\"name\":\"entity.name.type.event\"}},\"match\":\"\\\\b(event)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-function\":{\"patterns\":[{\"begin\":\"\\\\b(function)\\\\s+(\\\\w+)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function\"},\"2\":{\"name\":\"entity.name.function\"}},\"end\":\"(?=[;{])\",\"patterns\":[{\"include\":\"#natspec\"},{\"include\":\"#global\"},{\"include\":\"#declaration-function-parameters\"},{\"include\":\"#type-modifier-access\"},{\"include\":\"#type-modifier-payable\"},{\"include\":\"#type-modifier-immutable\"},{\"include\":\"#type-modifier-extended-scope\"},{\"include\":\"#control-flow\"},{\"include\":\"#function-call\"},{\"include\":\"#modifier-call\"},{\"include\":\"#punctuation\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.function\"},\"2\":{\"name\":\"entity.name.function\"}},\"match\":\"\\\\b(function)\\\\s+([A-Z_a-z]\\\\w*)\\\\b\"}]},\"declaration-function-parameters\":{\"begin\":\"\\\\G\\\\s*(?=\\\\()\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#type-primitive\"},{\"include\":\"#type-modifier-extended-scope\"},{\"captures\":{\"1\":{\"name\":\"storage.type.struct\"}},\"match\":\"\\\\b([A-Z]\\\\w*)\\\\b\"},{\"include\":\"#variable\"},{\"include\":\"#punctuation\"},{\"include\":\"#comment\"}]},\"declaration-interface\":{\"patterns\":[{\"begin\":\"\\\\b(interface)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.interface\"},\"2\":{\"name\":\"entity.name.type.interface\"},\"3\":{\"name\":\"storage.modifier.is\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.type.interface.extend\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.interface\"},\"2\":{\"name\":\"entity.name.type.interface\"}},\"match\":\"\\\\b(interface)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-library\":{\"captures\":{\"1\":{\"name\":\"storage.type.library\"},\"3\":{\"name\":\"entity.name.type.library\"}},\"match\":\"\\\\b(library)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"declaration-modifier\":{\"patterns\":[{\"begin\":\"\\\\b(modifier)\\\\b\\\\s*(\\\\w+)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.modifier\"},\"2\":{\"name\":\"entity.name.function.modifier\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"},{\"begin\":\"(?<=\\\\))\",\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"},{\"include\":\"#type-modifier-access\"},{\"include\":\"#type-modifier-payable\"},{\"include\":\"#type-modifier-immutable\"},{\"include\":\"#type-modifier-extended-scope\"},{\"include\":\"#function-call\"},{\"include\":\"#modifier-call\"},{\"include\":\"#control-flow\"}]}]},{\"captures\":{\"1\":{\"name\":\"storage.type.modifier\"},\"3\":{\"name\":\"entity.name.function\"}},\"match\":\"\\\\b(modifier)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-storage\":{\"patterns\":[{\"include\":\"#declaration-storage-mapping\"},{\"include\":\"#declaration-struct\"},{\"include\":\"#declaration-enum\"},{\"include\":\"#declaration-storage-field\"}]},\"declaration-storage-field\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#control\"},{\"include\":\"#type-primitive\"},{\"include\":\"#type-modifier-access\"},{\"include\":\"#type-modifier-immutable\"},{\"include\":\"#type-modifier-transient\"},{\"include\":\"#type-modifier-extend-scope\"},{\"include\":\"#type-modifier-payable\"},{\"include\":\"#type-modifier-constant\"},{\"include\":\"#primitive\"},{\"include\":\"#constant\"},{\"include\":\"#operator\"},{\"include\":\"#punctuation\"}]},\"declaration-storage-mapping\":{\"patterns\":[{\"begin\":\"\\\\b(mapping)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.mapping\"}},\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#declaration-storage-mapping\"},{\"include\":\"#type-primitive\"},{\"include\":\"#punctuation\"},{\"include\":\"#operator\"}]},{\"match\":\"\\\\b(mapping)\\\\b\",\"name\":\"storage.type.mapping\"}]},\"declaration-struct\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.struct\"},\"3\":{\"name\":\"entity.name.type.struct\"}},\"match\":\"\\\\b(struct)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},{\"begin\":\"\\\\b(struct)\\\\b\\\\s*(\\\\w+)?\\\\b\\\\s*(?=\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.struct\"},\"2\":{\"name\":\"entity.name.type.struct\"}},\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#type-primitive\"},{\"include\":\"#variable\"},{\"include\":\"#punctuation\"},{\"include\":\"#comment\"}]}]},\"declaration-userType\":{\"captures\":{\"1\":{\"name\":\"storage.type.userType\"},\"2\":{\"name\":\"entity.name.type.userType\"},\"3\":{\"name\":\"storage.modifier.is\"}},\"match\":\"\\\\b(type)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\"},\"function-call\":{\"captures\":{\"1\":{\"name\":\"entity.name.function\"},\"2\":{\"name\":\"punctuation.parameters.begin\"}},\"match\":\"\\\\b([A-Z_a-z]\\\\w*)\\\\s*(\\\\()\"},\"global\":{\"patterns\":[{\"include\":\"#global-variables\"},{\"include\":\"#global-functions\"}]},\"global-functions\":{\"patterns\":[{\"match\":\"\\\\b(require|assert|revert)\\\\b\",\"name\":\"keyword.control.exceptions\"},{\"match\":\"\\\\b(s(?:elfdestruct|uicide))\\\\b\",\"name\":\"keyword.control.contract\"},{\"match\":\"\\\\b(addmod|mulmod|keccak256|sha256|sha3|ripemd160|ecrecover)\\\\b\",\"name\":\"support.function.math\"},{\"match\":\"\\\\b(unicode)\\\\b\",\"name\":\"support.function.string\"},{\"match\":\"\\\\b(blockhash|gasleft)\\\\b\",\"name\":\"variable.language.transaction\"},{\"match\":\"\\\\b(type)\\\\b\",\"name\":\"variable.language.type\"}]},\"global-variables\":{\"patterns\":[{\"match\":\"\\\\b(this)\\\\b\",\"name\":\"variable.language.this\"},{\"match\":\"\\\\b(super)\\\\b\",\"name\":\"variable.language.super\"},{\"match\":\"\\\\b(abi)\\\\b\",\"name\":\"variable.language.builtin.abi\"},{\"match\":\"\\\\b(msg\\\\.sender|msg|block|tx|now)\\\\b\",\"name\":\"variable.language.transaction\"},{\"match\":\"\\\\b(tx\\\\.origin|tx\\\\.gasprice|msg\\\\.data|msg\\\\.sig|msg\\\\.value)\\\\b\",\"name\":\"variable.language.transaction\"}]},\"modifier-call\":{\"patterns\":[{\"include\":\"#function-call\"},{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.function.modifier\"}]},\"natspec\":{\"patterns\":[{\"begin\":\"/\\\\*\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.documentation\",\"patterns\":[{\"include\":\"#natspec-tags\"}]},{\"begin\":\"///\",\"end\":\"$\",\"name\":\"comment.block.documentation\",\"patterns\":[{\"include\":\"#natspec-tags\"}]}]},\"natspec-tag-author\":{\"match\":\"(@author)\\\\b\",\"name\":\"storage.type.author.natspec\"},\"natspec-tag-custom\":{\"match\":\"(@custom:\\\\w*)\\\\b\",\"name\":\"storage.type.dev.natspec\"},\"natspec-tag-dev\":{\"match\":\"(@dev)\\\\b\",\"name\":\"storage.type.dev.natspec\"},\"natspec-tag-inheritdoc\":{\"match\":\"(@inheritdoc)\\\\b\",\"name\":\"storage.type.author.natspec\"},\"natspec-tag-notice\":{\"match\":\"(@notice)\\\\b\",\"name\":\"storage.type.dev.natspec\"},\"natspec-tag-param\":{\"captures\":{\"1\":{\"name\":\"storage.type.param.natspec\"},\"3\":{\"name\":\"variable.other.natspec\"}},\"match\":\"(@param)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"natspec-tag-return\":{\"captures\":{\"1\":{\"name\":\"storage.type.return.natspec\"},\"3\":{\"name\":\"variable.other.natspec\"}},\"match\":\"(@return)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"natspec-tag-title\":{\"match\":\"(@title)\\\\b\",\"name\":\"storage.type.title.natspec\"},\"natspec-tags\":{\"patterns\":[{\"include\":\"#comment-todo\"},{\"include\":\"#natspec-tag-title\"},{\"include\":\"#natspec-tag-author\"},{\"include\":\"#natspec-tag-notice\"},{\"include\":\"#natspec-tag-dev\"},{\"include\":\"#natspec-tag-param\"},{\"include\":\"#natspec-tag-return\"},{\"include\":\"#natspec-tag-custom\"},{\"include\":\"#natspec-tag-inheritdoc\"}]},\"number\":{\"patterns\":[{\"include\":\"#number-decimal\"},{\"include\":\"#number-hex\"},{\"include\":\"#number-scientific\"}]},\"number-decimal\":{\"match\":\"\\\\b([0-9_]+(\\\\.[0-9_]+)?)\\\\b\",\"name\":\"constant.numeric.decimal\"},\"number-hex\":{\"match\":\"\\\\b(0[Xx]\\\\h+)\\\\b\",\"name\":\"constant.numeric.hexadecimal\"},\"number-scientific\":{\"match\":\"\\\\b(?:0\\\\.(?:0[0-9]|[0-9][0-9_]?)|[0-9][0-9_]*(?:\\\\.\\\\d{1,2})?)(?:e[-+]?[0-9_]+)?\",\"name\":\"constant.numeric.scientific\"},\"operator\":{\"patterns\":[{\"include\":\"#operator-logic\"},{\"include\":\"#operator-mapping\"},{\"include\":\"#operator-arithmetic\"},{\"include\":\"#operator-binary\"},{\"include\":\"#operator-assignment\"}]},\"operator-arithmetic\":{\"match\":\"([-*+/])\",\"name\":\"keyword.operator.arithmetic\"},\"operator-assignment\":{\"match\":\"(:?=)\",\"name\":\"keyword.operator.assignment\"},\"operator-binary\":{\"match\":\"([\\\\&^|]|<<|>>)\",\"name\":\"keyword.operator.binary\"},\"operator-logic\":{\"match\":\"(==|!=|<(?!<)|<=|>(?!>)|>=|&&|\\\\|\\\\||:(?!=)|[!?])\",\"name\":\"keyword.operator.logic\"},\"operator-mapping\":{\"match\":\"(=>)\",\"name\":\"keyword.operator.mapping\"},\"primitive\":{\"patterns\":[{\"include\":\"#number-decimal\"},{\"include\":\"#number-hex\"},{\"include\":\"#number-scientific\"},{\"include\":\"#string\"}]},\"punctuation\":{\"patterns\":[{\"match\":\";\",\"name\":\"punctuation.terminator.statement\"},{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor\"},{\"match\":\",\",\"name\":\"punctuation.separator\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.brace.curly.begin\"},{\"match\":\"}\",\"name\":\"punctuation.brace.curly.end\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.brace.square.begin\"},{\"match\":\"]\",\"name\":\"punctuation.brace.square.end\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.parameters.begin\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.parameters.end\"}]},\"string\":{\"patterns\":[{\"match\":\"\\\"(?:\\\\\\\\\\\"|[^\\\"])*\\\"\",\"name\":\"string.quoted.double\"},{\"match\":\"'(?:\\\\\\\\'|[^'])*'\",\"name\":\"string.quoted.single\"}]},\"type-modifier-access\":{\"match\":\"\\\\b(internal|external|private|public)\\\\b\",\"name\":\"storage.type.modifier.access\"},\"type-modifier-constant\":{\"match\":\"\\\\b(constant)\\\\b\",\"name\":\"storage.type.modifier.readonly\"},\"type-modifier-extended-scope\":{\"match\":\"\\\\b(pure|view|inherited|indexed|storage|memory|virtual|calldata|override|abstract)\\\\b\",\"name\":\"storage.type.modifier.extendedscope\"},\"type-modifier-immutable\":{\"match\":\"\\\\b(immutable)\\\\b\",\"name\":\"storage.type.modifier.readonly\"},\"type-modifier-payable\":{\"match\":\"\\\\b((?:non|)payable)\\\\b\",\"name\":\"storage.type.modifier.payable\"},\"type-modifier-transient\":{\"match\":\"\\\\b(transient)\\\\b\",\"name\":\"storage.type.modifier.readonly\"},\"type-primitive\":{\"patterns\":[{\"begin\":\"\\\\b(address|string\\\\d*|bytes\\\\d*|int\\\\d*|uint\\\\d*|bool|hash\\\\d*)\\\\b\\\\[](\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.primitive\"}},\"end\":\"(\\\\))\",\"patterns\":[{\"include\":\"#primitive\"},{\"include\":\"#punctuation\"},{\"include\":\"#global\"},{\"include\":\"#variable\"}]},{\"match\":\"\\\\b(address|string\\\\d*|bytes\\\\d*|int\\\\d*|uint\\\\d*|bool|hash\\\\d*)\\\\b\",\"name\":\"support.type.primitive\"}]},\"variable\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable.parameter.function\"}},\"match\":\"\\\\b(_\\\\w+)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"support.variable.property\"}},\"match\":\"\\\\.(\\\\w+)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.other\"}},\"match\":\"\\\\b(\\\\w+)\\\\b\"}]}},\"scopeName\":\"source.solidity\"}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Solidity\",\"fileTypes\":[\"sol\"],\"name\":\"solidity\",\"patterns\":[{\"include\":\"#natspec\"},{\"include\":\"#declaration-userType\"},{\"include\":\"#comment\"},{\"include\":\"#operator\"},{\"include\":\"#global\"},{\"include\":\"#control\"},{\"include\":\"#constant\"},{\"include\":\"#primitive\"},{\"include\":\"#type-primitive\"},{\"include\":\"#type-modifier-extended-scope\"},{\"include\":\"#declaration\"},{\"include\":\"#function-call\"},{\"include\":\"#assembly\"},{\"include\":\"#punctuation\"}],\"repository\":{\"assembly\":{\"patterns\":[{\"match\":\"\\\\b(assembly)\\\\b\",\"name\":\"keyword.control.assembly\"},{\"match\":\"\\\\b(let)\\\\b\",\"name\":\"storage.type.assembly\"}]},\"comment\":{\"patterns\":[{\"include\":\"#comment-line\"},{\"include\":\"#comment-block\"}]},\"comment-block\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block\",\"patterns\":[{\"include\":\"#comment-todo\"}]},\"comment-line\":{\"begin\":\"(?<!tp:)//\",\"end\":\"$\",\"name\":\"comment.line\",\"patterns\":[{\"include\":\"#comment-todo\"}]},\"comment-todo\":{\"match\":\"(?i)\\\\b(FIXME|TODO|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|COMBAK|TEMP|SUPPRESS|LINT|\\\\w+-disable|\\\\w+-suppress)\\\\b(?-i)\",\"name\":\"keyword.comment.todo\"},\"constant\":{\"patterns\":[{\"include\":\"#constant-boolean\"},{\"include\":\"#constant-time\"},{\"include\":\"#constant-currency\"}]},\"constant-boolean\":{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean\"},\"constant-currency\":{\"match\":\"\\\\b(ether|wei|gwei|finney|szabo)\\\\b\",\"name\":\"constant.language.currency\"},\"constant-time\":{\"match\":\"\\\\b((?:second|minute|hour|day|week|year)s)\\\\b\",\"name\":\"constant.language.time\"},\"control\":{\"patterns\":[{\"include\":\"#control-flow\"},{\"include\":\"#control-using\"},{\"include\":\"#control-import\"},{\"include\":\"#control-pragma\"},{\"include\":\"#control-underscore\"},{\"include\":\"#control-unchecked\"},{\"include\":\"#control-other\"}]},\"control-flow\":{\"patterns\":[{\"match\":\"\\\\b(if|else|for|while|do|break|continue|try|catch|finally|throw|return|global)\\\\b\",\"name\":\"keyword.control.flow\"},{\"begin\":\"\\\\b(returns)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.return\"}},\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"}]}]},\"control-import\":{\"patterns\":[{\"begin\":\"\\\\b(import)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import\"}},\"end\":\"(?=;)\",\"patterns\":[{\"begin\":\"((?=\\\\{))\",\"end\":\"((?=}))\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.type.interface\"}]},{\"match\":\"\\\\b(from)\\\\b\",\"name\":\"keyword.control.import.from\"},{\"include\":\"#string\"},{\"include\":\"#punctuation\"}]},{\"match\":\"\\\\b(import)\\\\b\",\"name\":\"keyword.control.import\"}]},\"control-other\":{\"match\":\"\\\\b(new|delete|emit)\\\\b\",\"name\":\"keyword.control\"},\"control-pragma\":{\"captures\":{\"1\":{\"name\":\"keyword.control.pragma\"},\"2\":{\"name\":\"entity.name.tag.pragma\"},\"3\":{\"name\":\"constant.other.pragma\"}},\"match\":\"\\\\b(pragma)(?:\\\\s+([A-Z_a-z]\\\\w+)\\\\s+(\\\\S+))?\\\\b\"},\"control-unchecked\":{\"match\":\"\\\\b(unchecked)\\\\b\",\"name\":\"keyword.control.unchecked\"},\"control-underscore\":{\"match\":\"\\\\b(_)\\\\b\",\"name\":\"constant.other.underscore\"},\"control-using\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.using\"},\"2\":{\"name\":\"entity.name.type.library\"},\"3\":{\"name\":\"keyword.control.for\"},\"4\":{\"name\":\"entity.name.type\"}},\"match\":\"\\\\b(using)\\\\b\\\\s+\\\\b([A-Z_a-z\\\\d]+)\\\\b\\\\s+\\\\b(for)\\\\b\\\\s+\\\\b([A-Z_a-z\\\\d]+)\"},{\"match\":\"\\\\b(using)\\\\b\",\"name\":\"keyword.control.using\"}]},\"declaration\":{\"patterns\":[{\"include\":\"#declaration-contract\"},{\"include\":\"#declaration-userType\"},{\"include\":\"#declaration-interface\"},{\"include\":\"#declaration-library\"},{\"include\":\"#declaration-function\"},{\"include\":\"#declaration-modifier\"},{\"include\":\"#declaration-constructor\"},{\"include\":\"#declaration-event\"},{\"include\":\"#declaration-storage\"},{\"include\":\"#declaration-error\"}]},\"declaration-constructor\":{\"patterns\":[{\"begin\":\"\\\\b(constructor)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.constructor\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"begin\":\"\\\\G\\\\s*(?=\\\\()\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"}]},{\"begin\":\"(?<=\\\\))\",\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#type-modifier-access\"},{\"include\":\"#function-call\"}]}]},{\"captures\":{\"1\":{\"name\":\"storage.type.constructor\"}},\"match\":\"\\\\b(constructor)\\\\b\"}]},\"declaration-contract\":{\"patterns\":[{\"begin\":\"\\\\b(contract)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.contract\"},\"2\":{\"name\":\"entity.name.type.contract\"},\"3\":{\"name\":\"storage.modifier.is\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.type.contract.extend\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.contract\"},\"2\":{\"name\":\"entity.name.type.contract\"}},\"match\":\"\\\\b(contract)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-enum\":{\"patterns\":[{\"begin\":\"\\\\b(enum)\\\\s+(\\\\w+)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.enum\"},\"2\":{\"name\":\"entity.name.type.enum\"}},\"end\":\"(?=})\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"variable.other.enummember\"},{\"include\":\"#punctuation\"},{\"include\":\"#comment\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.enum\"},\"3\":{\"name\":\"entity.name.type.enum\"}},\"match\":\"\\\\b(enum)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-error\":{\"captures\":{\"1\":{\"name\":\"storage.type.error\"},\"3\":{\"name\":\"entity.name.type.error\"}},\"match\":\"\\\\b(error)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"declaration-event\":{\"patterns\":[{\"begin\":\"\\\\b(event)\\\\b(?:\\\\s+(\\\\w+)\\\\b)?\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.event\"},\"2\":{\"name\":\"entity.name.type.event\"}},\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#type-primitive\"},{\"captures\":{\"1\":{\"name\":\"storage.type.modifier.indexed\"},\"2\":{\"name\":\"variable.parameter.event\"}},\"match\":\"\\\\b(?:(indexed)\\\\s)?(\\\\w+)(?:,\\\\s*|)\"},{\"include\":\"#punctuation\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.event\"},\"3\":{\"name\":\"entity.name.type.event\"}},\"match\":\"\\\\b(event)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-function\":{\"patterns\":[{\"begin\":\"\\\\b(function)\\\\s+(\\\\w+)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function\"},\"2\":{\"name\":\"entity.name.function\"}},\"end\":\"(?=[;{])\",\"patterns\":[{\"include\":\"#natspec\"},{\"include\":\"#global\"},{\"include\":\"#declaration-function-parameters\"},{\"include\":\"#type-modifier-access\"},{\"include\":\"#type-modifier-payable\"},{\"include\":\"#type-modifier-immutable\"},{\"include\":\"#type-modifier-extended-scope\"},{\"include\":\"#control-flow\"},{\"include\":\"#function-call\"},{\"include\":\"#modifier-call\"},{\"include\":\"#punctuation\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.function\"},\"2\":{\"name\":\"entity.name.function\"}},\"match\":\"\\\\b(function)\\\\s+([A-Z_a-z]\\\\w*)\\\\b\"}]},\"declaration-function-parameters\":{\"begin\":\"\\\\G\\\\s*(?=\\\\()\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#type-primitive\"},{\"include\":\"#type-modifier-extended-scope\"},{\"captures\":{\"1\":{\"name\":\"storage.type.struct\"}},\"match\":\"\\\\b([A-Z]\\\\w*)\\\\b\"},{\"include\":\"#variable\"},{\"include\":\"#punctuation\"},{\"include\":\"#comment\"}]},\"declaration-interface\":{\"patterns\":[{\"begin\":\"\\\\b(interface)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.interface\"},\"2\":{\"name\":\"entity.name.type.interface\"},\"3\":{\"name\":\"storage.modifier.is\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.type.interface.extend\"}]},{\"captures\":{\"1\":{\"name\":\"storage.type.interface\"},\"2\":{\"name\":\"entity.name.type.interface\"}},\"match\":\"\\\\b(interface)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-library\":{\"captures\":{\"1\":{\"name\":\"storage.type.library\"},\"3\":{\"name\":\"entity.name.type.library\"}},\"match\":\"\\\\b(library)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"declaration-modifier\":{\"patterns\":[{\"begin\":\"\\\\b(modifier)\\\\b\\\\s*(\\\\w+)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.modifier\"},\"2\":{\"name\":\"entity.name.function.modifier\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"},{\"begin\":\"(?<=\\\\))\",\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#declaration-function-parameters\"},{\"include\":\"#type-modifier-access\"},{\"include\":\"#type-modifier-payable\"},{\"include\":\"#type-modifier-immutable\"},{\"include\":\"#type-modifier-extended-scope\"},{\"include\":\"#function-call\"},{\"include\":\"#modifier-call\"},{\"include\":\"#control-flow\"}]}]},{\"captures\":{\"1\":{\"name\":\"storage.type.modifier\"},\"3\":{\"name\":\"entity.name.function\"}},\"match\":\"\\\\b(modifier)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"}]},\"declaration-storage\":{\"patterns\":[{\"include\":\"#declaration-storage-mapping\"},{\"include\":\"#declaration-struct\"},{\"include\":\"#declaration-enum\"},{\"include\":\"#declaration-storage-field\"}]},\"declaration-storage-field\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#control\"},{\"include\":\"#type-primitive\"},{\"include\":\"#type-modifier-access\"},{\"include\":\"#type-modifier-immutable\"},{\"include\":\"#type-modifier-transient\"},{\"include\":\"#type-modifier-payable\"},{\"include\":\"#type-modifier-constant\"},{\"include\":\"#primitive\"},{\"include\":\"#constant\"},{\"include\":\"#operator\"},{\"include\":\"#punctuation\"}]},\"declaration-storage-mapping\":{\"patterns\":[{\"begin\":\"\\\\b(mapping)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.mapping\"}},\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#declaration-storage-mapping\"},{\"include\":\"#type-primitive\"},{\"include\":\"#punctuation\"},{\"include\":\"#operator\"}]},{\"match\":\"\\\\b(mapping)\\\\b\",\"name\":\"storage.type.mapping\"}]},\"declaration-struct\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.struct\"},\"3\":{\"name\":\"entity.name.type.struct\"}},\"match\":\"\\\\b(struct)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},{\"begin\":\"\\\\b(struct)\\\\b\\\\s*(\\\\w+)?\\\\b\\\\s*(?=\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.struct\"},\"2\":{\"name\":\"entity.name.type.struct\"}},\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#type-primitive\"},{\"include\":\"#variable\"},{\"include\":\"#punctuation\"},{\"include\":\"#comment\"}]}]},\"declaration-userType\":{\"captures\":{\"1\":{\"name\":\"storage.type.userType\"},\"2\":{\"name\":\"entity.name.type.userType\"},\"3\":{\"name\":\"storage.modifier.is\"}},\"match\":\"\\\\b(type)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\"},\"function-call\":{\"captures\":{\"1\":{\"name\":\"entity.name.function\"},\"2\":{\"name\":\"punctuation.parameters.begin\"}},\"match\":\"\\\\b([A-Z_a-z]\\\\w*)\\\\s*(\\\\()\"},\"global\":{\"patterns\":[{\"include\":\"#global-variables\"},{\"include\":\"#global-functions\"}]},\"global-functions\":{\"patterns\":[{\"match\":\"\\\\b(require|assert|revert)\\\\b\",\"name\":\"keyword.control.exceptions\"},{\"match\":\"\\\\b(s(?:elfdestruct|uicide))\\\\b\",\"name\":\"keyword.control.contract\"},{\"match\":\"\\\\b(addmod|mulmod|keccak256|sha256|sha3|ripemd160|ecrecover)\\\\b\",\"name\":\"support.function.math\"},{\"match\":\"\\\\b(unicode)\\\\b\",\"name\":\"support.function.string\"},{\"match\":\"\\\\b(blockhash|gasleft)\\\\b\",\"name\":\"variable.language.transaction\"},{\"match\":\"\\\\b(type)\\\\b\",\"name\":\"variable.language.type\"}]},\"global-variables\":{\"patterns\":[{\"match\":\"\\\\b(this)\\\\b\",\"name\":\"variable.language.this\"},{\"match\":\"\\\\b(super)\\\\b\",\"name\":\"variable.language.super\"},{\"match\":\"\\\\b(abi)\\\\b\",\"name\":\"variable.language.builtin.abi\"},{\"match\":\"\\\\b(msg\\\\.sender|msg|block|tx|now)\\\\b\",\"name\":\"variable.language.transaction\"},{\"match\":\"\\\\b(tx\\\\.origin|tx\\\\.gasprice|msg\\\\.data|msg\\\\.sig|msg\\\\.value)\\\\b\",\"name\":\"variable.language.transaction\"}]},\"modifier-call\":{\"patterns\":[{\"include\":\"#function-call\"},{\"match\":\"\\\\b(\\\\w+)\\\\b\",\"name\":\"entity.name.function.modifier\"}]},\"natspec\":{\"patterns\":[{\"begin\":\"/\\\\*\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.documentation\",\"patterns\":[{\"include\":\"#natspec-tags\"}]},{\"begin\":\"///\",\"end\":\"$\",\"name\":\"comment.block.documentation\",\"patterns\":[{\"include\":\"#natspec-tags\"}]}]},\"natspec-tag-author\":{\"match\":\"(@author)\\\\b\",\"name\":\"storage.type.author.natspec\"},\"natspec-tag-custom\":{\"match\":\"(@custom:\\\\w*)\\\\b\",\"name\":\"storage.type.dev.natspec\"},\"natspec-tag-dev\":{\"match\":\"(@dev)\\\\b\",\"name\":\"storage.type.dev.natspec\"},\"natspec-tag-inheritdoc\":{\"match\":\"(@inheritdoc)\\\\b\",\"name\":\"storage.type.author.natspec\"},\"natspec-tag-notice\":{\"match\":\"(@notice)\\\\b\",\"name\":\"storage.type.dev.natspec\"},\"natspec-tag-param\":{\"captures\":{\"1\":{\"name\":\"storage.type.param.natspec\"},\"3\":{\"name\":\"variable.other.natspec\"}},\"match\":\"(@param)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"natspec-tag-return\":{\"captures\":{\"1\":{\"name\":\"storage.type.return.natspec\"},\"3\":{\"name\":\"variable.other.natspec\"}},\"match\":\"(@return)(\\\\s+([A-Z_a-z]\\\\w*))?\\\\b\"},\"natspec-tag-title\":{\"match\":\"(@title)\\\\b\",\"name\":\"storage.type.title.natspec\"},\"natspec-tags\":{\"patterns\":[{\"include\":\"#comment-todo\"},{\"include\":\"#natspec-tag-title\"},{\"include\":\"#natspec-tag-author\"},{\"include\":\"#natspec-tag-notice\"},{\"include\":\"#natspec-tag-dev\"},{\"include\":\"#natspec-tag-param\"},{\"include\":\"#natspec-tag-return\"},{\"include\":\"#natspec-tag-custom\"},{\"include\":\"#natspec-tag-inheritdoc\"}]},\"number-decimal\":{\"match\":\"\\\\b([0-9_]+(\\\\.[0-9_]+)?)\\\\b\",\"name\":\"constant.numeric.decimal\"},\"number-hex\":{\"match\":\"\\\\b(0[Xx]\\\\h+)\\\\b\",\"name\":\"constant.numeric.hexadecimal\"},\"number-scientific\":{\"match\":\"\\\\b(?:0\\\\.(?:0[0-9]|[0-9][0-9_]?)|[0-9][0-9_]*(?:\\\\.\\\\d{1,2})?)(?:e[-+]?[0-9_]+)?\",\"name\":\"constant.numeric.scientific\"},\"operator\":{\"patterns\":[{\"include\":\"#operator-logic\"},{\"include\":\"#operator-mapping\"},{\"include\":\"#operator-arithmetic\"},{\"include\":\"#operator-binary\"},{\"include\":\"#operator-assignment\"}]},\"operator-arithmetic\":{\"match\":\"([-*+/])\",\"name\":\"keyword.operator.arithmetic\"},\"operator-assignment\":{\"match\":\"(:?=)\",\"name\":\"keyword.operator.assignment\"},\"operator-binary\":{\"match\":\"([\\\\&^|]|<<|>>)\",\"name\":\"keyword.operator.binary\"},\"operator-logic\":{\"match\":\"(==|!=|<(?!<)|<=|>(?!>)|>=|&&|\\\\|\\\\||:(?!=)|[!?])\",\"name\":\"keyword.operator.logic\"},\"operator-mapping\":{\"match\":\"(=>)\",\"name\":\"keyword.operator.mapping\"},\"primitive\":{\"patterns\":[{\"include\":\"#number-decimal\"},{\"include\":\"#number-hex\"},{\"include\":\"#number-scientific\"},{\"include\":\"#string\"}]},\"punctuation\":{\"patterns\":[{\"match\":\";\",\"name\":\"punctuation.terminator.statement\"},{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor\"},{\"match\":\",\",\"name\":\"punctuation.separator\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.brace.curly.begin\"},{\"match\":\"}\",\"name\":\"punctuation.brace.curly.end\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.brace.square.begin\"},{\"match\":\"]\",\"name\":\"punctuation.brace.square.end\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.parameters.begin\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.parameters.end\"}]},\"string\":{\"patterns\":[{\"match\":\"\\\"(?:\\\\\\\\\\\"|[^\\\"])*\\\"\",\"name\":\"string.quoted.double\"},{\"match\":\"'(?:\\\\\\\\'|[^'])*'\",\"name\":\"string.quoted.single\"}]},\"type-modifier-access\":{\"match\":\"\\\\b(internal|external|private|public)\\\\b\",\"name\":\"storage.type.modifier.access\"},\"type-modifier-constant\":{\"match\":\"\\\\b(constant)\\\\b\",\"name\":\"storage.type.modifier.readonly\"},\"type-modifier-extended-scope\":{\"match\":\"\\\\b(pure|view|inherited|indexed|storage|memory|virtual|calldata|override|abstract)\\\\b\",\"name\":\"storage.type.modifier.extendedscope\"},\"type-modifier-immutable\":{\"match\":\"\\\\b(immutable)\\\\b\",\"name\":\"storage.type.modifier.readonly\"},\"type-modifier-payable\":{\"match\":\"\\\\b((?:non|)payable)\\\\b\",\"name\":\"storage.type.modifier.payable\"},\"type-modifier-transient\":{\"match\":\"\\\\b(transient)\\\\b\",\"name\":\"storage.type.modifier.readonly\"},\"type-primitive\":{\"patterns\":[{\"begin\":\"\\\\b(address|string\\\\d*|bytes\\\\d*|int\\\\d*|uint\\\\d*|bool\\\\d*)\\\\b\\\\[](\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.primitive\"}},\"end\":\"(\\\\))\",\"patterns\":[{\"include\":\"#primitive\"},{\"include\":\"#punctuation\"},{\"include\":\"#global\"},{\"include\":\"#variable\"}]},{\"match\":\"\\\\b(address|string\\\\d*|bytes\\\\d*|int\\\\d*|uint\\\\d*|bool\\\\d*)\\\\b\",\"name\":\"support.type.primitive\"}]},\"variable\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable.parameter.function\"}},\"match\":\"\\\\b(_\\\\w+)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"support.variable.property\"}},\"match\":\"\\\\.(\\\\w+)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.other\"}},\"match\":\"\\\\b(\\\\w+)\\\\b\"}]}},\"scopeName\":\"source.solidity\"}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/tex.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import r from './r.mjs'
2
2
 
3
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"TeX\",\"name\":\"tex\",\"patterns\":[{\"include\":\"#iffalse-block\"},{\"include\":\"#macro-control\"},{\"include\":\"#catcode\"},{\"include\":\"#comment\"},{\"match\":\"[]\\\\[]\",\"name\":\"punctuation.definition.brackets.tex\"},{\"include\":\"#dollar-math\"},{\"match\":\"\\\\\\\\\\\\\\\\\",\"name\":\"keyword.control.newline.tex\"},{\"include\":\"#ifnextchar\"},{\"include\":\"#macro-general\"}],\"repository\":{\"braces\":{\"begin\":\"(?<!\\\\\\\\)\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.group.begin.tex\"}},\"end\":\"(?<!\\\\\\\\)}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.group.end.tex\"}},\"name\":\"meta.group.braces.tex\",\"patterns\":[{\"include\":\"#braces\"}]},\"catcode\":{\"captures\":{\"1\":{\"name\":\"keyword.control.catcode.tex\"},\"2\":{\"name\":\"punctuation.definition.keyword.tex\"},\"3\":{\"name\":\"punctuation.separator.key-value.tex\"},\"4\":{\"name\":\"constant.numeric.category.tex\"}},\"match\":\"((\\\\\\\\)catcode)`\\\\\\\\?.(=)(\\\\d+)\",\"name\":\"meta.catcode.tex\"},\"comment\":{\"begin\":\"(^[\\\\t ]+)?(?=%)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.tex\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"%:?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.tex\"}},\"end\":\"$\\\\n?\",\"name\":\"comment.line.percentage.tex\"},{\"begin\":\"^(%!TEX) (\\\\S*) =\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.tex\"}},\"end\":\"$\\\\n?\",\"name\":\"comment.line.percentage.directive.tex\"}]},\"conditionals\":{\"begin\":\"(?<=^\\\\s*)\\\\\\\\if[a-z]*\",\"end\":\"(?<=^\\\\s*)\\\\\\\\fi\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#conditionals\"}]},\"dollar-math\":{\"begin\":\"(\\\\$\\\\$?)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.tex\"}},\"end\":\"(\\\\1)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.tex\"}},\"name\":\"meta.math.block.tex support.class.math.block.tex\",\"patterns\":[{\"match\":\"\\\\\\\\\\\\$\",\"name\":\"constant.character.escape.tex\"},{\"include\":\"#math-content\"},{\"include\":\"$self\"}]},\"iffalse-block\":{\"begin\":\"(?<=^\\\\s*)((\\\\\\\\)iffalse)(?!\\\\s*[{}]\\\\s*\\\\\\\\fi\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.tex\"},\"2\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"contentName\":\"comment.line.percentage.tex\",\"end\":\"((\\\\\\\\)(?:else|fi))\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.tex\"},\"2\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#braces\"},{\"include\":\"#conditionals\"}]},\"ifnextchar\":{\"match\":\"\\\\\\\\@ifnextchar[(\\\\[{]\",\"name\":\"keyword.control.ifnextchar.tex\"},\"macro-control\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"match\":\"(\\\\\\\\)(backmatter|csname|else|endcsname|fi|frontmatter|mainmatter|unless|if(case|cat|csname|defined|dim|eof|false|fontchar|hbox|hmode|inner|mmode|num|odd|true|vbox|vmode|void|x)?)(?![@-Za-z])\",\"name\":\"keyword.control.tex\"},\"macro-general\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.function.tex\"}},\"match\":\"(\\\\\\\\)_*[@\\\\p{Alphabetic}]+(?:_[@\\\\p{Alphabetic}]+)*:[DFNTVcefnopvwx]*\",\"name\":\"support.class.general.latex3.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.function.tex\"}},\"match\":\"(\\\\.)[@\\\\p{Alphabetic}]+(?:_[@\\\\p{Alphabetic}]+)*:[DFNTVcefnopvwx]*\",\"name\":\"support.class.general.latex3.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.function.tex\"}},\"match\":\"(\\\\\\\\)(?:[,;]|[@\\\\p{Alphabetic}]+)\",\"name\":\"support.function.general.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"match\":\"(\\\\\\\\)[^@-Za-z]\",\"name\":\"constant.character.escape.tex\"}]},\"math-content\":{\"patterns\":[{\"begin\":\"((\\\\\\\\)(?:text|mbox))(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"constant.other.math.tex\"},\"2\":{\"name\":\"punctuation.definition.function.tex\"},\"3\":{\"name\":\"punctuation.definition.arguments.begin.tex meta.text.normal.tex\"}},\"contentName\":\"meta.text.normal.tex\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.arguments.end.tex meta.text.normal.tex\"}},\"patterns\":[{\"include\":\"#math-content\"},{\"include\":\"$self\"}]},{\"match\":\"\\\\\\\\[{}]\",\"name\":\"punctuation.math.bracket.pair.tex\"},{\"match\":\"\\\\\\\\(left|right|((bigg??|Bigg??)[lr]?))([]().<>\\\\[|]|\\\\\\\\[{|}]|\\\\\\\\[lr]?[Vv]ert|\\\\\\\\[lr]angle)\",\"name\":\"punctuation.math.bracket.pair.big.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(s(s(earrow|warrow|lash)|h(ort(downarrow|uparrow|parallel|leftarrow|rightarrow|mid)|arp)|tar|i(gma|m(eq)?)|u(cc(sim|n(sim|approx)|curlyeq|eq|approx)?|pset(neq(q)?|plus(eq)?|eq(q)?)?|rd|m|bset(neq(q)?|plus(eq)?|eq(q)?)?)|p(hericalangle|adesuit)|e(tminus|arrow)|q(su(pset(eq)?|bset(eq)?)|c([au]p)|uare)|warrow|m(ile|all(s(etminus|mile)|frown)))|h(slash|ook((?:lef|righ)tarrow)|eartsuit|bar)|R(sh|ightarrow|e|bag)|Gam(e|ma)|n(s(hort(parallel|mid)|im|u(cc(eq)?|pseteq(q)?|bseteq))|Rightarrow|n([ew]arrow)|cong|triangle(left(eq(slant)?)?|right(eq(slant)?)?)|i(plus)?|u|p(lus|arallel|rec(eq)?)|e(q|arrow|g|xists)|v([Dd]ash)|warrow|le(ss|q(slant|q)?|ft((?:|right)arrow))|a(tural|bla)|VDash|rightarrow|g(tr|eq(slant|q)?)|mid|Left((?:|right)arrow))|c(hi|irc(eq|le(d(circ|S|dash|ast)|arrow(left|right)))?|o(ng|prod|lon|mplement)|dot([ps])?|u(p|r(vearrow(left|right)|ly(eq(succ|prec)|vee((?:down|up)arrow)?|wedge((?:down|up)arrow)?)))|enterdot|lubsuit|ap)|Xi|Maps(to(char)?|from(char)?)|B(ox|umpeq|bbk)|t(h(ick(sim|approx)|e(ta|refore))|imes|op|wohead((?:lef|righ)tarrow)|a(u|lloblong)|riangle(down|q|left(eq(slant)?)?|right(eq(slant)?)?)?)|i(n(t(er(cal|leave))?|plus|fty)?|ota|math)|S(igma|u([bp]set))|zeta|o(slash|times|int|dot|plus|vee|wedge|lessthan|greaterthan|m(inus|ega)|b(slash|long|ar))|d(i(v(ideontimes)?|a(g(down|up)|mond(suit)?)|gamma)|o(t(plus|eq(dot)?)|ublebarwedge|wn(harpoon(left|right)|downarrows|arrow))|d(ots|agger)|elta|a(sh(v|leftarrow|rightarrow)|leth|gger))|Y(down|up|left|right)|C([au]p)|u(n([lr]hd)|p(silon|harpoon(left|right)|downarrow|uparrows|lus|arrow)|lcorner|rcorner)|jmath|Theta|Im|p(si|hi|i(tchfork)?|erp|ar(tial|allel)|r(ime|o(d|pto)|ec(sim|n(sim|approx)|curlyeq|eq|approx)?)|m)|e(t([ah])|psilon|q(slant(less|gtr)|circ|uiv)|ll|xists|mptyset)|Omega|D(iamond|ownarrow|elta)|v(d(ots|ash)|ee(bar)?|Dash|ar(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|curly(vee|wedge)|t(heta|imes|riangle(left|right)?)|o(slash|circle|times|dot|plus|vee|wedge|lessthan|ast|greaterthan|minus|b(slash|ar))|p(hi|i|ropto)|epsilon|kappa|rho|bigcirc))|kappa|Up(silon|downarrow|arrow)|Join|f(orall|lat|a(t(s(emi|lash)|bslash)|llingdotseq)|rown)|P((?:s|h?)i)|w(p|edge|r)|l(hd|n(sim|eq(q)?|approx)|ceil|times|ightning|o(ng(left((?:|right)arrow)|rightarrow|maps(to|from))|zenge|oparrow(left|right))|dot([ps])|e(ss(sim|dot|eq(q?gtr)|approx|gtr)|q(slant|q)?|ft(slice|harpoon(down|up)|threetimes|leftarrows|arrow(t(ail|riangle))?|right(squigarrow|harpoons|arrow(s|triangle|eq)?))|adsto)|vertneqq|floor|l(c(orner|eil)|floor|l|bracket)?|a(ngle|mbda)|rcorner|bag)|a(s(ymp|t)|ngle|pprox(eq)?|l(pha|eph)|rrownot|malg)|V(v??dash)|r(h([do])|ceil|times|i(singdotseq|ght(s(quigarrow|lice)|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(t(ail|riangle))?|rightarrows))|floor|angle|r(ceil|parenthesis|floor|bracket)|bag)|g(n(sim|eq(q)?|approx)|tr(sim|dot|eq(q?less)|less|approx)|imel|eq(slant|q)?|vertneqq|amma|g(g)?)|Finv|xi|m(ho|i(nuso|d)|o(o|dels)|u(ltimap)?|p|e(asuredangle|rge)|aps(to|from(char)?))|b(i(n(dnasrepma|ampersand)|g(s(tar|qc([au]p))|nplus|c(irc|u(p|rly(vee|wedge))|ap)|triangle(down|up)|interleave|o(times|dot|plus)|uplus|parallel|vee|wedge|box))|o(t|wtie|x(slash|circle|times|dot|plus|empty|ast|minus|b(slash|ox|ar)))|u(llet|mpeq)|e(cause|t(h|ween|a))|lack(square|triangle(down|left|right)?|lozenge)|a(ck(s(im(eq)?|lash)|prime|epsilon)|r(o|wedge))|bslash)|L(sh|ong(left((?:|right)arrow)|rightarrow|maps(to|from))|eft((?:|right)arrow)|leftarrow|ambda|bag)|Arrownot)(?![@-Za-z])\",\"name\":\"constant.character.math.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(sum|prod|coprod|int|oint|bigcap|bigcup|bigsqcup|bigvee|bigwedge|bigodot|bigotimes|bogoplus|biguplus)\\\\b\",\"name\":\"constant.character.math.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(arccos|arcsin|arctan|arg|cosh??|coth??|csc|deg|det|dim|exp|gcd|hom|inf|ker|lg|lim|liminf|limsup|ln|log|max|min|pr|sec|sinh??|sup|tanh??)\\\\b\",\"name\":\"constant.other.math.tex\"},{\"begin\":\"((\\\\\\\\)Sexpr(\\\\{))\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.sexpr.math.tex\"},\"2\":{\"name\":\"punctuation.definition.function.math.tex\"},\"3\":{\"name\":\"punctuation.section.embedded.begin.math.tex\"}},\"contentName\":\"support.function.sexpr.math.tex\",\"end\":\"(((})))\",\"endCaptures\":{\"1\":{\"name\":\"support.function.sexpr.math.tex\"},\"2\":{\"name\":\"punctuation.section.embedded.end.math.tex\"},\"3\":{\"name\":\"source.r\"}},\"name\":\"meta.embedded.line.r\",\"patterns\":[{\"begin\":\"\\\\G(?!})\",\"end\":\"(?=})\",\"name\":\"source.r\",\"patterns\":[{\"include\":\"source.r\"}]}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(?!begin\\\\{|verb)([A-Za-z]+)\",\"name\":\"constant.other.general.math.tex\"},{\"match\":\"(?<!\\\\\\\\)\\\\{\",\"name\":\"punctuation.math.begin.bracket.curly.tex\"},{\"match\":\"(?<!\\\\\\\\)}\",\"name\":\"punctuation.math.end.bracket.curly.tex\"},{\"match\":\"(?<!\\\\\\\\)\\\\(\",\"name\":\"punctuation.math.begin.bracket.round.tex\"},{\"match\":\"(?<!\\\\\\\\)\\\\)\",\"name\":\"punctuation.math.end.bracket.round.tex\"},{\"match\":\"(([0-9]*\\\\.[0-9]+)|[0-9]+)\",\"name\":\"constant.numeric.math.tex\"},{\"match\":\"[-*+/]|(?<!\\\\^)\\\\^(?!\\\\^)|(?<!_)_(?!_)\",\"name\":\"punctuation.math.operator.tex\"}]}},\"scopeName\":\"text.tex\",\"embeddedLangs\":[\"r\"]}"))
3
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"TeX\",\"name\":\"tex\",\"patterns\":[{\"include\":\"#iffalse-block\"},{\"include\":\"#macro-control\"},{\"include\":\"#catcode\"},{\"include\":\"#comment\"},{\"match\":\"[]\\\\[]\",\"name\":\"punctuation.definition.brackets.tex\"},{\"include\":\"#dollar-math\"},{\"match\":\"\\\\\\\\\\\\\\\\\",\"name\":\"keyword.control.newline.tex\"},{\"include\":\"#ifnextchar\"},{\"include\":\"#macro-general\"}],\"repository\":{\"braces\":{\"begin\":\"(?<!\\\\\\\\)\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.group.begin.tex\"}},\"end\":\"(?<!\\\\\\\\)}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.group.end.tex\"}},\"name\":\"meta.group.braces.tex\",\"patterns\":[{\"include\":\"#braces\"}]},\"catcode\":{\"captures\":{\"1\":{\"name\":\"keyword.control.catcode.tex\"},\"2\":{\"name\":\"punctuation.definition.keyword.tex\"},\"3\":{\"name\":\"punctuation.separator.key-value.tex\"},\"4\":{\"name\":\"constant.numeric.category.tex\"}},\"match\":\"((\\\\\\\\)catcode)`\\\\\\\\?.(=)(\\\\d+)\",\"name\":\"meta.catcode.tex\"},\"comment\":{\"begin\":\"(^[\\\\t ]+)?(?=%)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.tex\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"%:?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.tex\"}},\"end\":\"$\\\\n?\",\"name\":\"comment.line.percentage.tex\"},{\"begin\":\"^(%!TEX) (\\\\S*) =\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.tex\"}},\"end\":\"$\\\\n?\",\"name\":\"comment.line.percentage.directive.tex\"}]},\"conditionals\":{\"begin\":\"(?<=^\\\\s*)\\\\\\\\if[a-z]*\",\"end\":\"(?<=^\\\\s*)\\\\\\\\fi\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#conditionals\"}]},\"dollar-math\":{\"begin\":\"(\\\\$\\\\$?)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.tex\"}},\"end\":\"(\\\\1)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.tex\"}},\"name\":\"meta.math.block.tex support.class.math.block.tex\",\"patterns\":[{\"match\":\"\\\\\\\\\\\\$\",\"name\":\"constant.character.escape.tex\"},{\"include\":\"#math-content\"},{\"include\":\"$self\"}]},\"iffalse-block\":{\"begin\":\"(?<=^\\\\s*)((\\\\\\\\)iffalse)(?!\\\\s*[{}]\\\\s*\\\\\\\\fi\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.tex\"},\"2\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"contentName\":\"comment.line.percentage.tex\",\"end\":\"((\\\\\\\\)(?:else|fi))\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.tex\"},\"2\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#braces\"},{\"include\":\"#conditionals\"}]},\"ifnextchar\":{\"match\":\"\\\\\\\\@ifnextchar[(\\\\[{]\",\"name\":\"keyword.control.ifnextchar.tex\"},\"macro-control\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"match\":\"(\\\\\\\\)(backmatter|csname|else|endcsname|fi|frontmatter|mainmatter|unless|if(case|cat|csname|defined|dim|eof|false|fontchar|hbox|hmode|inner|mmode|num|odd|true|vbox|vmode|void|x)?)(?![@-Za-z])\",\"name\":\"keyword.control.tex\"},\"macro-general\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.function.tex\"}},\"match\":\"(\\\\\\\\)_*[@\\\\p{Alphabetic}]+(?:_[@\\\\p{Alphabetic}]+)*:[DFNTVcefnopvwx]*\",\"name\":\"support.class.general.latex3.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.function.tex\"}},\"match\":\"(\\\\.)[@\\\\p{Alphabetic}]+(?:_[@\\\\p{Alphabetic}]+)*:[DFNTVcefnopvwx]*\",\"name\":\"support.class.general.latex3.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.function.tex\"}},\"match\":\"(\\\\\\\\)(?:[,;]|[@\\\\p{Alphabetic}]+)\",\"name\":\"support.function.general.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.keyword.tex\"}},\"match\":\"(\\\\\\\\)[^@-Za-z]\",\"name\":\"constant.character.escape.tex\"}]},\"math-content\":{\"patterns\":[{\"begin\":\"((\\\\\\\\)(?:text|mbox))(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"constant.other.math.tex\"},\"2\":{\"name\":\"punctuation.definition.function.tex\"},\"3\":{\"name\":\"punctuation.definition.arguments.begin.tex meta.text.normal.tex\"}},\"contentName\":\"meta.text.normal.tex\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.arguments.end.tex meta.text.normal.tex\"}},\"patterns\":[{\"include\":\"#math-content\"},{\"include\":\"$self\"}]},{\"match\":\"\\\\\\\\[{}]\",\"name\":\"punctuation.math.bracket.pair.tex\"},{\"match\":\"\\\\\\\\(left|right|((bigg??|Bigg??)[lr]?))([]().<>\\\\[|]|\\\\\\\\[{|}]|\\\\\\\\[lr]?[Vv]ert|\\\\\\\\[lr]angle)\",\"name\":\"punctuation.math.bracket.pair.big.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(s(s(earrow|warrow|lash)|h(ort(downarrow|uparrow|parallel|leftarrow|rightarrow|mid)|arp)|tar|i(gma|m(eq)?)|u(cc(sim|n(sim|approx)|curlyeq|eq|approx)?|pset(neq(q)?|plus(eq)?|eq(q)?)?|rd|m|bset(neq(q)?|plus(eq)?|eq(q)?)?)|p(hericalangle|adesuit)|e(tminus|arrow)|q(su(pset(eq)?|bset(eq)?)|c([au]p)|uare)|warrow|m(ile|all(s(etminus|mile)|frown)))|h(slash|ook((?:lef|righ)tarrow)|eartsuit|bar)|R(sh|ightarrow|e|bag)|Gam(e|ma)|n(s(hort(parallel|mid)|im|u(cc(eq)?|pseteq(q)?|bseteq))|Rightarrow|n([ew]arrow)|cong|triangle(left(eq(slant)?)?|right(eq(slant)?)?)|i(plus)?|u|p(lus|arallel|rec(eq)?)|e(q|arrow|g|xists)|v([Dd]ash)|warrow|le(ss|q(slant|q)?|ft((?:|right)arrow))|a(tural|bla)|VDash|rightarrow|g(tr|eq(slant|q)?)|mid|Left((?:|right)arrow))|c(hi|irc(eq|le(d(circ|S|dash|ast)|arrow(left|right)))?|o(ng|prod|lon|mplement)|dot([ps])?|u(p|r(vearrow(left|right)|ly(eq(succ|prec)|vee((?:down|up)arrow)?|wedge((?:down|up)arrow)?)))|enterdot|lubsuit|ap)|Xi|Maps(to(char)?|from(char)?)|B(ox|umpeq|bbk)|t(h(ick(sim|approx)|e(ta|refore))|imes|op|wohead((?:lef|righ)tarrow)|a(u|lloblong)|riangle(down|q|left(eq(slant)?)?|right(eq(slant)?)?)?)|i(n(t(er(cal|leave))?|plus|fty)?|ota|math)|S(igma|u([bp]set))|zeta|o(slash|times|int|dot|plus|vee|wedge|lessthan|greaterthan|m(inus|ega)|b(slash|long|ar))|d(i(v(ideontimes)?|a(g(down|up)|mond(suit)?)|gamma)|o(t(plus|eq(dot)?)|ublebarwedge|wn(harpoon(left|right)|downarrows|arrow))|d(ots|agger)|elta|a(sh(v|leftarrow|rightarrow)|leth|gger))|Y(down|up|left|right)|C([au]p)|u(n([lr]hd)|p(silon|harpoon(left|right)|downarrow|uparrows|lus|arrow)|lcorner|rcorner)|jmath|Theta|Im|p(si|hi|i(tchfork)?|erp|ar(tial|allel)|r(ime|o(d|pto)|ec(sim|n(sim|approx)|curlyeq|eq|approx)?)|m)|e(t([ah])|psilon|q(slant(less|gtr)|circ|uiv)|ll|xists|mptyset)|Omega|D(iamond|ownarrow|elta)|v(d(ots|ash)|ee(bar)?|Dash|ar(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|curly(vee|wedge)|t(heta|imes|riangle(left|right)?)|o(slash|circle|times|dot|plus|vee|wedge|lessthan|ast|greaterthan|minus|b(slash|ar))|p(hi|i|ropto)|epsilon|kappa|rho|bigcirc))|kappa|Up(silon|downarrow|arrow)|Join|f(orall|lat|a(t(s(emi|lash)|bslash)|llingdotseq)|rown)|P((?:s|h?)i)|w(p|edge|r)|l(hd|n(sim|eq(q)?|approx)|ceil|times|ightning|o(ng(left((?:|right)arrow)|rightarrow|maps(to|from))|zenge|oparrow(left|right))|dot([ps])|e(ss(sim|dot|eq(q?gtr)|approx|gtr)|q(slant|q)?|ft(slice|harpoon(down|up)|threetimes|leftarrows|arrow(t(ail|riangle))?|right(squigarrow|harpoons|arrow(s|triangle|eq)?))|adsto)|vertneqq|floor|l(c(orner|eil)|floor|l|bracket)?|a(ngle|mbda)|rcorner|bag)|a(s(ymp|t)|ngle|pprox(eq)?|l(pha|eph)|rrownot|malg)|V(v??dash)|r(h([do])|ceil|times|i(singdotseq|ght(s(quigarrow|lice)|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(t(ail|riangle))?|rightarrows))|floor|angle|r(ceil|parenthesis|floor|bracket)|bag)|g(n(sim|eq(q)?|approx)|tr(sim|dot|eq(q?less)|less|approx)|imel|eq(slant|q)?|vertneqq|amma|g(g)?)|Finv|xi|m(ho|i(nuso|d)|o(o|dels)|u(ltimap)?|p|e(asuredangle|rge)|aps(to|from(char)?))|b(i(n(dnasrepma|ampersand)|g(s(tar|qc([au]p))|nplus|c(irc|u(p|rly(vee|wedge))|ap)|triangle(down|up)|interleave|o(times|dot|plus)|uplus|parallel|vee|wedge|box))|o(t|wtie|x(slash|circle|times|dot|plus|empty|ast|minus|b(slash|ox|ar)))|u(llet|mpeq)|e(cause|t(h|ween|a))|lack(square|triangle(down|left|right)?|lozenge)|a(ck(s(im(eq)?|lash)|prime|epsilon)|r(o|wedge))|bslash)|L(sh|ong(left((?:|right)arrow)|rightarrow|maps(to|from))|eft((?:|right)arrow)|leftarrow|ambda|bag)|ge|le|Arrownot)(?![@-Za-z])\",\"name\":\"constant.character.math.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(sum|prod|coprod|int|oint|bigcap|bigcup|bigsqcup|bigvee|bigwedge|bigodot|bigotimes|bogoplus|biguplus)\\\\b\",\"name\":\"constant.character.math.tex\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(arccos|arcsin|arctan|arg|cosh??|coth??|csc|deg|det|dim|exp|gcd|hom|inf|ker|lg|lim|liminf|limsup|ln|log|max|min|pr|sec|sinh??|sup|tanh??)\\\\b\",\"name\":\"constant.other.math.tex\"},{\"begin\":\"((\\\\\\\\)Sexpr(\\\\{))\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.sexpr.math.tex\"},\"2\":{\"name\":\"punctuation.definition.function.math.tex\"},\"3\":{\"name\":\"punctuation.section.embedded.begin.math.tex\"}},\"contentName\":\"support.function.sexpr.math.tex\",\"end\":\"(((})))\",\"endCaptures\":{\"1\":{\"name\":\"support.function.sexpr.math.tex\"},\"2\":{\"name\":\"punctuation.section.embedded.end.math.tex\"},\"3\":{\"name\":\"source.r\"}},\"name\":\"meta.embedded.line.r\",\"patterns\":[{\"begin\":\"\\\\G(?!})\",\"end\":\"(?=})\",\"name\":\"source.r\",\"patterns\":[{\"include\":\"source.r\"}]}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.math.tex\"}},\"match\":\"(\\\\\\\\)(?!begin\\\\{|verb)([A-Za-z]+)\",\"name\":\"constant.other.general.math.tex\"},{\"match\":\"(?<!\\\\\\\\)\\\\{\",\"name\":\"punctuation.math.begin.bracket.curly.tex\"},{\"match\":\"(?<!\\\\\\\\)}\",\"name\":\"punctuation.math.end.bracket.curly.tex\"},{\"match\":\"(?<!\\\\\\\\)\\\\(\",\"name\":\"punctuation.math.begin.bracket.round.tex\"},{\"match\":\"(?<!\\\\\\\\)\\\\)\",\"name\":\"punctuation.math.end.bracket.round.tex\"},{\"match\":\"(([0-9]*\\\\.[0-9]+)|[0-9]+)\",\"name\":\"constant.numeric.math.tex\"},{\"match\":\"[-*+/]|(?<!\\\\^)\\\\^(?!\\\\^)|(?<!_)_(?!_)\",\"name\":\"punctuation.math.operator.tex\"}]}},\"scopeName\":\"text.tex\",\"embeddedLangs\":[\"r\"]}"))
4
4
 
5
5
  export default [
6
6
  ...r,