@shikijs/langs 2.3.1 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/actionscript-3.mjs +1 -1
  2. package/dist/applescript.mjs +1 -1
  3. package/dist/ara.mjs +1 -1
  4. package/dist/asciidoc.mjs +1 -1
  5. package/dist/beancount.mjs +1 -1
  6. package/dist/bsl.mjs +1 -1
  7. package/dist/cadence.mjs +1 -1
  8. package/dist/clarity.mjs +1 -1
  9. package/dist/cmake.mjs +1 -1
  10. package/dist/cobol.mjs +1 -1
  11. package/dist/coq.mjs +1 -1
  12. package/dist/crystal.mjs +1 -1
  13. package/dist/cypher.mjs +1 -1
  14. package/dist/dax.mjs +1 -1
  15. package/dist/diff.mjs +1 -1
  16. package/dist/docker.mjs +1 -1
  17. package/dist/dotenv.mjs +1 -1
  18. package/dist/dream-maker.mjs +1 -1
  19. package/dist/elixir.mjs +1 -1
  20. package/dist/elm.mjs +1 -1
  21. package/dist/erlang.mjs +1 -1
  22. package/dist/fish.mjs +1 -1
  23. package/dist/fortran-free-form.mjs +1 -1
  24. package/dist/fsharp.mjs +1 -1
  25. package/dist/gdresource.mjs +1 -1
  26. package/dist/gdscript.mjs +1 -1
  27. package/dist/git-commit.mjs +1 -1
  28. package/dist/go.mjs +1 -1
  29. package/dist/graphql.mjs +1 -1
  30. package/dist/groovy.mjs +1 -1
  31. package/dist/hack.mjs +1 -1
  32. package/dist/haml.mjs +1 -1
  33. package/dist/haskell.mjs +1 -1
  34. package/dist/hcl.mjs +1 -1
  35. package/dist/html.mjs +1 -1
  36. package/dist/json.mjs +1 -1
  37. package/dist/json5.mjs +1 -1
  38. package/dist/jsonc.mjs +1 -1
  39. package/dist/jsonl.mjs +1 -1
  40. package/dist/jssm.mjs +1 -1
  41. package/dist/julia.mjs +1 -1
  42. package/dist/kusto.mjs +1 -1
  43. package/dist/latex.mjs +1 -1
  44. package/dist/less.mjs +1 -1
  45. package/dist/markdown.mjs +1 -1
  46. package/dist/marko.mjs +1 -1
  47. package/dist/matlab.mjs +1 -1
  48. package/dist/mermaid.mjs +1 -1
  49. package/dist/mipsasm.mjs +1 -1
  50. package/dist/mojo.mjs +1 -1
  51. package/dist/move.mjs +1 -1
  52. package/dist/nim.mjs +1 -1
  53. package/dist/nushell.mjs +1 -1
  54. package/dist/objective-c.mjs +1 -1
  55. package/dist/objective-cpp.mjs +1 -1
  56. package/dist/perl.mjs +1 -1
  57. package/dist/po.mjs +1 -1
  58. package/dist/polar.mjs +1 -1
  59. package/dist/powershell.mjs +1 -1
  60. package/dist/pug.mjs +1 -1
  61. package/dist/puppet.mjs +1 -1
  62. package/dist/python.mjs +1 -1
  63. package/dist/regexp.mjs +1 -1
  64. package/dist/riscv.mjs +1 -1
  65. package/dist/ruby.mjs +1 -1
  66. package/dist/rust.mjs +1 -1
  67. package/dist/sas.mjs +1 -1
  68. package/dist/scala.mjs +1 -1
  69. package/dist/scheme.mjs +1 -1
  70. package/dist/sdbl.mjs +1 -1
  71. package/dist/shellscript.mjs +1 -1
  72. package/dist/smalltalk.mjs +1 -1
  73. package/dist/splunk.mjs +1 -1
  74. package/dist/sql.mjs +1 -1
  75. package/dist/stata.mjs +1 -1
  76. package/dist/stylus.mjs +1 -1
  77. package/dist/talonscript.mjs +1 -1
  78. package/dist/tcl.mjs +1 -1
  79. package/dist/terraform.mjs +1 -1
  80. package/dist/toml.mjs +1 -1
  81. package/dist/twig.mjs +1 -1
  82. package/dist/typst.mjs +1 -1
  83. package/dist/vue.mjs +1 -1
  84. package/dist/vyper.mjs +1 -1
  85. package/dist/wasm.mjs +1 -1
  86. package/dist/wgsl.mjs +1 -1
  87. package/dist/zenscript.mjs +1 -1
  88. package/dist/zig.mjs +1 -1
  89. package/package.json +3 -3
package/dist/matlab.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"MATLAB\",\"fileTypes\":[\"m\"],\"name\":\"matlab\",\"patterns\":[{\"comment\":\"This and #all_after_command_dual are split out so #command_dual can be excluded in things like (), {}, []\",\"include\":\"#all_before_command_dual\"},{\"include\":\"#command_dual\"},{\"include\":\"#all_after_command_dual\"}],\"repository\":{\"all_after_command_dual\":{\"patterns\":[{\"include\":\"#string\"},{\"include\":\"#line_continuation\"},{\"include\":\"#comments\"},{\"include\":\"#conjugate_transpose\"},{\"include\":\"#transpose\"},{\"include\":\"#constants\"},{\"include\":\"#variables\"},{\"include\":\"#numbers\"},{\"include\":\"#operators\"}]},\"all_before_command_dual\":{\"patterns\":[{\"include\":\"#classdef\"},{\"include\":\"#function\"},{\"include\":\"#blocks\"},{\"include\":\"#control_statements\"},{\"include\":\"#global_persistent\"},{\"include\":\"#parens\"},{\"include\":\"#square_brackets\"},{\"include\":\"#indexing_curly_brackets\"},{\"include\":\"#curly_brackets\"}]},\"blocks\":{\"patterns\":[{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(for)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.for.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.for.matlab\"}},\"name\":\"meta.for.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(if)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.if.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.if.matlab\"},\"2\":{\"patterns\":[{\"include\":\"$self\"}]}},\"name\":\"meta.if.matlab\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"keyword.control.elseif.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(elseif)\\\\b(.*)$\\\\n?\",\"name\":\"meta.elseif.matlab\"},{\"captures\":{\"2\":{\"name\":\"keyword.control.else.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(else)\\\\b(.*)?$\\\\n?\",\"name\":\"meta.else.matlab\"},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(parfor)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.for.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.for.matlab\"}},\"name\":\"meta.parfor.matlab\",\"patterns\":[{\"begin\":\"\\\\G(?!$)\",\"end\":\"$\\\\n?\",\"name\":\"meta.parfor-quantity.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(spmd)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.spmd.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.spmd.matlab\"}},\"name\":\"meta.spmd.matlab\",\"patterns\":[{\"begin\":\"\\\\G(?!$)\",\"end\":\"$\\\\n?\",\"name\":\"meta.spmd-statement.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(switch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.switch.matlab\"}},\"name\":\"meta.switch.matlab\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"keyword.control.case.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(case)\\\\b(.*)$\\\\n?\",\"name\":\"meta.case.matlab\"},{\"captures\":{\"2\":{\"name\":\"keyword.control.otherwise.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(otherwise)\\\\b(.*)?$\\\\n?\",\"name\":\"meta.otherwise.matlab\"},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(try)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.try.matlab\"}},\"name\":\"meta.try.matlab\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"keyword.control.catch.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(catch)\\\\b(.*)?$\\\\n?\",\"name\":\"meta.catch.matlab\"},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(while)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.while.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.while.matlab\"}},\"name\":\"meta.while.matlab\",\"patterns\":[{\"include\":\"$self\"}]}]},\"braced_validator_list\":{\"begin\":\"\\\\s*({)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.matlab\"}},\"comment\":\"Validator functions. Treated as a recursive group to permit nested brackets, quotes, etc.\",\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"storage.type.matlab\"}},\"patterns\":[{\"include\":\"#braced_validator_list\"},{\"include\":\"#validator_strings\"},{\"include\":\"#line_continuation\"},{\"captures\":{\"1\":{\"name\":\"storage.type.matlab\"}},\"match\":\"([^{}}'\\\"\\\\.]+)\"},{\"match\":\"\\\\.\",\"name\":\"storage.type.matlab\"}]},\"classdef\":{\"patterns\":[{\"begin\":\"(^\\\\s*)(classdef)\\\\b\\\\s*(.*)\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.class.matlab\"},\"3\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.class.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"include\":\"#string\"}]}]},\"2\":{\"name\":\"meta.class-declaration.matlab\"},\"3\":{\"name\":\"entity.name.section.class.matlab\"},\"4\":{\"name\":\"keyword.operator.other.matlab\"},\"5\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*(\\\\.[a-zA-Z][a-zA-Z0-9_]*)*\",\"name\":\"entity.other.inherited-class.matlab\"},{\"match\":\"&\",\"name\":\"keyword.operator.other.matlab\"}]},\"6\":{\"patterns\":[{\"include\":\"$self\"}]}},\"match\":\"(\\\\([^)]*\\\\))?\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)(?:\\\\s*(<)\\\\s*([^%]*))?)\\\\s*($|(?=(%|...)).*)\"}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.class.matlab\"}},\"name\":\"meta.class.matlab\",\"patterns\":[{\"begin\":\"(^\\\\s*)(properties)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.properties.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.properties.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"match\":\"public|protected|private\",\"name\":\"constant.language.access.matlab\"}]}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.properties.matlab\"}},\"name\":\"meta.properties.matlab\",\"patterns\":[{\"include\":\"#validators\"},{\"include\":\"$self\"}]},{\"begin\":\"(^\\\\s*)(methods)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.methods.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.methods.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"match\":\"public|protected|private\",\"name\":\"constant.language.access.matlab\"}]}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.methods.matlab\"}},\"name\":\"meta.methods.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(^\\\\s*)(events)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.events.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.events.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"match\":\"public|protected|private\",\"name\":\"constant.language.access.matlab\"}]}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.events.matlab\"}},\"name\":\"meta.events.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(^\\\\s*)(enumeration)\\\\b([^%]*)\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.enumeration.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.enumeration.matlab\"}},\"name\":\"meta.enumeration.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]}]},\"command_dual\":{\"captures\":{\"1\":{\"name\":\"string.interpolated.matlab\"},\"2\":{\"name\":\"variable.other.command.matlab\"},\"28\":{\"name\":\"comment.line.percentage.matlab\"}},\"comment\":\" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 21 22 23 24 25 26 27 28\",\"match\":\"^\\\\s*(([b-df-hk-moq-zA-HJ-MO-Z]\\\\w*|a|an|a([A-Za-mo-z0-9_]\\\\w*|n[A-Za-rt-z0-9_]\\\\w*|ns\\\\w+)|e|ep|e([A-Za-oq-z0-9_]\\\\w*|p[A-Za-rt-z0-9_]\\\\w*|ps\\\\w+)|in|i([A-Za-mo-z0-9_]\\\\w*|n[A-Za-eg-z0-9_]\\\\w*|nf\\\\w+)|I|In|I([A-Za-mo-z0-9_]\\\\w*|n[A-Za-eg-z0-9_]\\\\w*|nf\\\\w+)|j\\\\w+|N|Na|N([A-Zb-z0-9_]\\\\w*|a[A-MO-Za-z0-9_]\\\\w*|aN\\\\w+)|n|na|nar|narg|nargi|nargo|nargou|n([A-Zb-z0-9_]\\\\w*|a([A-Za-mo-qs-z0-9_]\\\\w*|n\\\\w+|r([A-Za-fh-z0-9_]\\\\w*|g([A-Za-hj-nq-z0-9_]\\\\w*|i([A-Za-mo-z0-9_]\\\\w*|n\\\\w+)|o([A-Za-tv-z0-9_]\\\\w*|u([A-Za-su-z]\\\\w*|t\\\\w+))))))|p|p[A-Za-hj-z0-9_]\\\\w*|pi\\\\w+)\\\\s+((([^\\\\s;,%()=.{&|~<>:+\\\\-*/\\\\\\\\@^'\\\"]|(?=')|(?=\\\"))|(\\\\.\\\\^|\\\\.\\\\*|\\\\./|\\\\.\\\\\\\\|\\\\.'|\\\\.\\\\(|&&|==|\\\\|\\\\||&(?=[^&])|\\\\|(?=[^\\\\|])|~=|<=|>=|~(?!=)|<(?!=)|>(?!=)|:|\\\\+|-|\\\\*|/|\\\\\\\\|@|\\\\^)([^\\\\s]|\\\\s*(?=%)|\\\\s+$|\\\\s+(,|;|\\\\)|}|\\\\]|&|\\\\||<|>|=|:|\\\\*|/|\\\\\\\\|\\\\^|@|(\\\\.[^\\\\d.]|\\\\.\\\\.[^.])))|(\\\\.[^^*/\\\\\\\\'(\\\\sA-Za-z]))([^%]|'[^']*'|\\\"[^\\\"]*\\\")*|(\\\\.(?=\\\\s)|\\\\.[A-Za-z]|(?={))([^(=\\\\'\\\"%]|==|'[^']*'|\\\"[^\\\"]*\\\"|\\\\(|\\\\([^)%]*\\\\)|\\\\[|\\\\[[^\\\\]%]*\\\\]|{|{[^}%]*})*(\\\\.\\\\.\\\\.[^%]*)?((?=%)|$)))(%.*)?$\"},\"comment_block\":{\"begin\":\"(^[\\\\s]*)%\\\\{[^\\\\n\\\\S]*+\\\\n\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.matlab\"}},\"end\":\"^[\\\\s]*%\\\\}[^\\\\n\\\\S]*+(?:\\\\n|$)\",\"name\":\"comment.block.percentage.matlab\",\"patterns\":[{\"include\":\"#comment_block\"},{\"match\":\"^[^\\\\n]*\\\\n\"}]},\"comments\":{\"patterns\":[{\"begin\":\"(^[ \\\\t]+)?(?=%%\\\\s)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.matlab\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"%%\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.matlab\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.double-percentage.matlab\",\"patterns\":[{\"begin\":\"\\\\G[^\\\\S\\\\n]*(?![\\\\n\\\\s])\",\"contentName\":\"meta.cell.matlab\",\"end\":\"(?=\\\\n)\"}]}]},{\"include\":\"#comment_block\"},{\"begin\":\"(^[ \\\\t]+)?(?=%)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.matlab\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"%\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.matlab\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.percentage.matlab\"}]}]},\"conjugate_transpose\":{\"match\":\"((?<=[^\\\\s])|(?<=\\\\])|(?<=\\\\))|(?<=\\\\}))'\",\"name\":\"keyword.operator.transpose.matlab\"},\"constants\":{\"comment\":\"MATLAB Constants\",\"match\":\"(?<!\\\\.)\\\\b(eps|false|Inf|inf|intmax|intmin|namelengthmax|NaN|nan|on|off|realmax|realmin|true|pi)\\\\b\",\"name\":\"constant.language.matlab\"},\"control_statements\":{\"captures\":{\"1\":{\"name\":\"keyword.control.matlab\"}},\"match\":\"\\\\s*(?:^|[\\\\s,;])(break|continue|return)\\\\b\",\"name\":\"meta.control.matlab\"},\"curly_brackets\":{\"begin\":\"\\\\{\",\"comment\":\"We don't include $self here to avoid matching command syntax inside (), [], {}\",\"end\":\"\\\\}\",\"patterns\":[{\"include\":\"#end_in_parens\"},{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"include\":\"#end_in_parens\"},{\"comment\":\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\",\"include\":\"#block_keywords\"}]},\"end_in_parens\":{\"comment\":\"end as operator symbol\",\"match\":\"\\\\bend\\\\b\",\"name\":\"keyword.operator.symbols.matlab\"},\"function\":{\"patterns\":[{\"begin\":\"(^\\\\s*)(function)\\\\s+(?:(?:(\\\\[)([^\\\\]]*)(\\\\])|([a-zA-Z][a-zA-Z0-9_]*))\\\\s*=\\\\s*)?([a-zA-Z][a-zA-Z0-9_]*(\\\\.[a-zA-Z][a-zA-Z0-9_]*)*)\\\\s*\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.function.matlab\"},\"3\":{\"name\":\"punctuation.definition.arguments.begin.matlab\"},\"4\":{\"patterns\":[{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.output.matlab\"}]},\"5\":{\"name\":\"punctuation.definition.arguments.end.matlab\"},\"6\":{\"name\":\"variable.parameter.output.function.matlab\"},\"7\":{\"name\":\"entity.name.function.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b(\\\\s*\\\\n)?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.function.matlab\"}},\"name\":\"meta.function.matlab\",\"patterns\":[{\"begin\":\"\\\\G\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.arguments.function.matlab\",\"patterns\":[{\"include\":\"#line_continuation\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.input.matlab\"}]},{\"begin\":\"(^\\\\s*)(arguments)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.arguments.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.arguments.matlab\"}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.arguments.matlab\"}},\"name\":\"meta.arguments.matlab\",\"patterns\":[{\"include\":\"#validators\"},{\"include\":\"$self\"}]},{\"include\":\"$self\"}]}]},\"global_persistent\":{\"captures\":{\"1\":{\"name\":\"keyword.control.globalpersistent.matlab\"}},\"match\":\"^\\\\s*(global|persistent)\\\\b\",\"name\":\"meta.globalpersistent.matlab\"},\"indexing_curly_brackets\":{\"Comment\":\"Match identifier{idx, idx, } and stop at newline without ... This helps with partially written code like x{idx \",\"begin\":\"([a-zA-Z][a-zA-Z0-9_\\\\.]*\\\\s*)\\\\{\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"$self\"}]}},\"comment\":\"We don't include $self here to avoid matching command syntax inside (), [], {}\",\"end\":\"(\\\\}|(?<!\\\\.\\\\.\\\\.).\\\\n)\",\"patterns\":[{\"include\":\"#end_in_parens\"},{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"include\":\"#end_in_parens\"},{\"comment\":\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\",\"include\":\"#block_keywords\"}]},\"line_continuation\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.symbols.matlab\"},\"2\":{\"name\":\"comment.line.continuation.matlab\"}},\"comment\":\"Line continuations\",\"match\":\"(\\\\.\\\\.\\\\.)(.*)$\",\"name\":\"meta.linecontinuation.matlab\"},\"numbers\":{\"comment\":\"Valid numbers: 1, .1, 1.1, .1e1, 1.1e1, 1e1, 1i, 1j, 1e2j\",\"match\":\"(?<=[\\\\s\\\\-\\\\+\\\\*\\\\/\\\\\\\\=:\\\\[\\\\(\\\\{,]|^)\\\\d*\\\\.?\\\\d+([eE][+-]?\\\\d)?([0-9&&[^\\\\.]])*(i|j)?\\\\b\",\"name\":\"constant.numeric.matlab\"},\"operators\":{\"comment\":\"Operator symbols\",\"match\":\"(?<=\\\\s)(==|~=|>|>=|<|<=|&|&&|:|\\\\||\\\\|\\\\||\\\\+|-|\\\\*|\\\\.\\\\*|/|\\\\./|\\\\\\\\|\\\\.\\\\\\\\|\\\\^|\\\\.\\\\^)(?=\\\\s)\",\"name\":\"keyword.operator.symbols.matlab\"},\"parens\":{\"begin\":\"\\\\(\",\"comment\":\"We don't include $self here to avoid matching command syntax inside (), [], {}\",\"end\":\"(\\\\)|(?<!\\\\.\\\\.\\\\.).\\\\n)\",\"patterns\":[{\"include\":\"#end_in_parens\"},{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"comment\":\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\",\"include\":\"#block_keywords\"}]},\"square_brackets\":{\"begin\":\"\\\\[\",\"comment\":\"We don't include $self here to avoid matching command syntax inside (), [], {}\",\"end\":\"\\\\]\",\"patterns\":[{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"comment\":\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\",\"include\":\"#block_keywords\"}]},\"string\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.interpolated.matlab\"},\"2\":{\"name\":\"punctuation.definition.string.begin.matlab\"}},\"comment\":\"Shell command\",\"match\":\"^\\\\s*((!).*$\\\\n?)\"},{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.matlab\"}},\"comment\":\"Character vector literal (single-quoted)\",\"end\":\"'(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\s|;|:|,))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.matlab\"}},\"name\":\"string.quoted.single.matlab\",\"patterns\":[{\"match\":\"''\",\"name\":\"constant.character.escape.matlab\"},{\"match\":\"'(?=.)\",\"name\":\"invalid.illegal.unescaped-quote.matlab\"},{\"comment\":\"Operator symbols\",\"match\":\"((\\\\%([\\\\+\\\\-0]?\\\\d{0,3}(\\\\.\\\\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\\\\%\\\\%|\\\\\\\\(b|f|n|r|t|\\\\\\\\))\",\"name\":\"constant.character.escape.matlab\"}]},{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.matlab\"}},\"comment\":\"String literal (double-quoted)\",\"end\":\"\\\"(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\||\\\\s|;|:|,))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.matlab\"}},\"name\":\"string.quoted.double.matlab\",\"patterns\":[{\"match\":\"\\\"\\\"\",\"name\":\"constant.character.escape.matlab\"},{\"match\":\"\\\"(?=.)\",\"name\":\"invalid.illegal.unescaped-quote.matlab\"}]}]},\"transpose\":{\"match\":\"\\\\.'\",\"name\":\"keyword.operator.transpose.matlab\"},\"validator_strings\":{\"comment\":\"Simplified string patterns nested inside validator functions which don't change scopes of matches.\",\"patterns\":[{\"patterns\":[{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)'\",\"comment\":\"Character vector literal (single-quoted)\",\"end\":\"'(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\s|;|:|,))\",\"name\":\"storage.type.matlab\",\"patterns\":[{\"match\":\"''\"},{\"match\":\"'(?=.)\"},{\"match\":\"([^']+)\"}]},{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)\\\"\",\"comment\":\"String literal (double-quoted)\",\"end\":\"\\\"(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\||\\\\s|;|:|,))\",\"name\":\"storage.type.matlab\",\"patterns\":[{\"match\":\"\\\"\\\"\"},{\"match\":\"\\\"(?=.)\"},{\"match\":\"[^\\\"]+\"}]}]}]},\"validators\":{\"begin\":\"\\\\s*[;]?\\\\s*([a-zA-Z][a-zA-Z0-9_\\\\.\\\\?]*)\",\"comment\":\"Property and argument validation. Match an identifier allowing . and ?.\",\"end\":\"([;\\\\n%=].*)\",\"endCaptures\":{\"1\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"$self\"}]}},\"comment\":\"Match comments\",\"match\":\"([%].*)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"$self\"}]}},\"comment\":\"Handle things like arg = val; nextArg\",\"match\":\"(=[^;]*)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#validators\"}]}},\"comment\":\"End of property/argument patterns which start a new property/argument. Look for beginning of identifier after semicolon. Otherwise treat as regular code.\",\"match\":\"([\\\\n;]\\\\s*[a-zA-Z].*)\"},{\"include\":\"$self\"}]}},\"patterns\":[{\"include\":\"#line_continuation\"},{\"comment\":\"Size declaration\",\"match\":\"\\\\s*(\\\\([^\\\\)]*\\\\))\",\"name\":\"storage.type.matlab\"},{\"comment\":\"Type declaration\",\"match\":\"([a-zA-Z][a-zA-Z0-9_\\\\.]*)\",\"name\":\"storage.type.matlab\"},{\"include\":\"#braced_validator_list\"}]},\"variables\":{\"comment\":\"MATLAB variables\",\"match\":\"(?<!\\\\.)\\\\b(nargin|nargout|varargin|varargout)\\\\b\",\"name\":\"variable.other.function.matlab\"}},\"scopeName\":\"source.matlab\"}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"MATLAB\",\"fileTypes\":[\"m\"],\"name\":\"matlab\",\"patterns\":[{\"include\":\"#all_before_command_dual\"},{\"include\":\"#command_dual\"},{\"include\":\"#all_after_command_dual\"}],\"repository\":{\"all_after_command_dual\":{\"patterns\":[{\"include\":\"#string\"},{\"include\":\"#line_continuation\"},{\"include\":\"#comments\"},{\"include\":\"#conjugate_transpose\"},{\"include\":\"#transpose\"},{\"include\":\"#constants\"},{\"include\":\"#variables\"},{\"include\":\"#numbers\"},{\"include\":\"#operators\"}]},\"all_before_command_dual\":{\"patterns\":[{\"include\":\"#classdef\"},{\"include\":\"#function\"},{\"include\":\"#blocks\"},{\"include\":\"#control_statements\"},{\"include\":\"#global_persistent\"},{\"include\":\"#parens\"},{\"include\":\"#square_brackets\"},{\"include\":\"#indexing_curly_brackets\"},{\"include\":\"#curly_brackets\"}]},\"blocks\":{\"patterns\":[{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(for)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.for.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.for.matlab\"}},\"name\":\"meta.for.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(if)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.if.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.if.matlab\"},\"2\":{\"patterns\":[{\"include\":\"$self\"}]}},\"name\":\"meta.if.matlab\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"keyword.control.elseif.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(elseif)\\\\b(.*)$\\\\n?\",\"name\":\"meta.elseif.matlab\"},{\"captures\":{\"2\":{\"name\":\"keyword.control.else.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(else)\\\\b(.*)?$\\\\n?\",\"name\":\"meta.else.matlab\"},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(parfor)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.for.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.for.matlab\"}},\"name\":\"meta.parfor.matlab\",\"patterns\":[{\"begin\":\"\\\\G(?!$)\",\"end\":\"$\\\\n?\",\"name\":\"meta.parfor-quantity.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(spmd)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.spmd.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.spmd.matlab\"}},\"name\":\"meta.spmd.matlab\",\"patterns\":[{\"begin\":\"\\\\G(?!$)\",\"end\":\"$\\\\n?\",\"name\":\"meta.spmd-statement.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(switch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.switch.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.switch.matlab\"}},\"name\":\"meta.switch.matlab\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"keyword.control.case.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(case)\\\\b(.*)$\\\\n?\",\"name\":\"meta.case.matlab\"},{\"captures\":{\"2\":{\"name\":\"keyword.control.otherwise.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(otherwise)\\\\b(.*)?$\\\\n?\",\"name\":\"meta.otherwise.matlab\"},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(try)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.try.matlab\"}},\"name\":\"meta.try.matlab\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"keyword.control.catch.matlab\"},\"3\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"^\",\"match\":\"(\\\\s*)(?:^|[\\\\s,;])(catch)\\\\b(.*)?$\\\\n?\",\"name\":\"meta.catch.matlab\"},{\"include\":\"$self\"}]},{\"begin\":\"\\\\s*(?:^|[\\\\s,;])(while)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.while.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.while.matlab\"}},\"name\":\"meta.while.matlab\",\"patterns\":[{\"include\":\"$self\"}]}]},\"braced_validator_list\":{\"begin\":\"\\\\s*({)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.matlab\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"storage.type.matlab\"}},\"patterns\":[{\"include\":\"#braced_validator_list\"},{\"include\":\"#validator_strings\"},{\"include\":\"#line_continuation\"},{\"captures\":{\"1\":{\"name\":\"storage.type.matlab\"}},\"match\":\"([^{}}'\\\"\\\\.]+)\"},{\"match\":\"\\\\.\",\"name\":\"storage.type.matlab\"}]},\"classdef\":{\"patterns\":[{\"begin\":\"(^\\\\s*)(classdef)\\\\b\\\\s*(.*)\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.class.matlab\"},\"3\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.class.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"include\":\"#string\"}]}]},\"2\":{\"name\":\"meta.class-declaration.matlab\"},\"3\":{\"name\":\"entity.name.section.class.matlab\"},\"4\":{\"name\":\"keyword.operator.other.matlab\"},\"5\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*(\\\\.[a-zA-Z][a-zA-Z0-9_]*)*\",\"name\":\"entity.other.inherited-class.matlab\"},{\"match\":\"&\",\"name\":\"keyword.operator.other.matlab\"}]},\"6\":{\"patterns\":[{\"include\":\"$self\"}]}},\"match\":\"(\\\\([^)]*\\\\))?\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)(?:\\\\s*(<)\\\\s*([^%]*))?)\\\\s*($|(?=(%|...)).*)\"}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.class.matlab\"}},\"name\":\"meta.class.matlab\",\"patterns\":[{\"begin\":\"(^\\\\s*)(properties)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.properties.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.properties.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"match\":\"public|protected|private\",\"name\":\"constant.language.access.matlab\"}]}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.properties.matlab\"}},\"name\":\"meta.properties.matlab\",\"patterns\":[{\"include\":\"#validators\"},{\"include\":\"$self\"}]},{\"begin\":\"(^\\\\s*)(methods)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.methods.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.methods.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"match\":\"public|protected|private\",\"name\":\"constant.language.access.matlab\"}]}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.methods.matlab\"}},\"name\":\"meta.methods.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(^\\\\s*)(events)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.events.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.events.matlab\"},{\"begin\":\"=\\\\s*\",\"end\":\",|(?=\\\\))\",\"patterns\":[{\"match\":\"true|false\",\"name\":\"constant.language.boolean.matlab\"},{\"match\":\"public|protected|private\",\"name\":\"constant.language.access.matlab\"}]}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.events.matlab\"}},\"name\":\"meta.events.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(^\\\\s*)(enumeration)\\\\b([^%]*)\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.enumeration.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.enumeration.matlab\"}},\"name\":\"meta.enumeration.matlab\",\"patterns\":[{\"include\":\"$self\"}]},{\"include\":\"$self\"}]}]},\"command_dual\":{\"captures\":{\"1\":{\"name\":\"string.interpolated.matlab\"},\"2\":{\"name\":\"variable.other.command.matlab\"},\"28\":{\"name\":\"comment.line.percentage.matlab\"}},\"match\":\"^\\\\s*(([b-df-hk-moq-zA-HJ-MO-Z]\\\\w*|a|an|a([A-Za-mo-z0-9_]\\\\w*|n[A-Za-rt-z0-9_]\\\\w*|ns\\\\w+)|e|ep|e([A-Za-oq-z0-9_]\\\\w*|p[A-Za-rt-z0-9_]\\\\w*|ps\\\\w+)|in|i([A-Za-mo-z0-9_]\\\\w*|n[A-Za-eg-z0-9_]\\\\w*|nf\\\\w+)|I|In|I([A-Za-mo-z0-9_]\\\\w*|n[A-Za-eg-z0-9_]\\\\w*|nf\\\\w+)|j\\\\w+|N|Na|N([A-Zb-z0-9_]\\\\w*|a[A-MO-Za-z0-9_]\\\\w*|aN\\\\w+)|n|na|nar|narg|nargi|nargo|nargou|n([A-Zb-z0-9_]\\\\w*|a([A-Za-mo-qs-z0-9_]\\\\w*|n\\\\w+|r([A-Za-fh-z0-9_]\\\\w*|g([A-Za-hj-nq-z0-9_]\\\\w*|i([A-Za-mo-z0-9_]\\\\w*|n\\\\w+)|o([A-Za-tv-z0-9_]\\\\w*|u([A-Za-su-z]\\\\w*|t\\\\w+))))))|p|p[A-Za-hj-z0-9_]\\\\w*|pi\\\\w+)\\\\s+((([^\\\\s;,%()=.{&|~<>:+\\\\-*/\\\\\\\\@^'\\\"]|(?=')|(?=\\\"))|(\\\\.\\\\^|\\\\.\\\\*|\\\\./|\\\\.\\\\\\\\|\\\\.'|\\\\.\\\\(|&&|==|\\\\|\\\\||&(?=[^&])|\\\\|(?=[^\\\\|])|~=|<=|>=|~(?!=)|<(?!=)|>(?!=)|:|\\\\+|-|\\\\*|/|\\\\\\\\|@|\\\\^)([^\\\\s]|\\\\s*(?=%)|\\\\s+$|\\\\s+(,|;|\\\\)|}|\\\\]|&|\\\\||<|>|=|:|\\\\*|/|\\\\\\\\|\\\\^|@|(\\\\.[^\\\\d.]|\\\\.\\\\.[^.])))|(\\\\.[^^*/\\\\\\\\'(\\\\sA-Za-z]))([^%]|'[^']*'|\\\"[^\\\"]*\\\")*|(\\\\.(?=\\\\s)|\\\\.[A-Za-z]|(?={))([^(=\\\\'\\\"%]|==|'[^']*'|\\\"[^\\\"]*\\\"|\\\\(|\\\\([^)%]*\\\\)|\\\\[|\\\\[[^\\\\]%]*\\\\]|{|{[^}%]*})*(\\\\.\\\\.\\\\.[^%]*)?((?=%)|$)))(%.*)?$\"},\"comment_block\":{\"begin\":\"(^[\\\\s]*)%\\\\{[^\\\\n\\\\S]*+\\\\n\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.matlab\"}},\"end\":\"^[\\\\s]*%\\\\}[^\\\\n\\\\S]*+(?:\\\\n|$)\",\"name\":\"comment.block.percentage.matlab\",\"patterns\":[{\"include\":\"#comment_block\"},{\"match\":\"^[^\\\\n]*\\\\n\"}]},\"comments\":{\"patterns\":[{\"begin\":\"(^[ \\\\t]+)?(?=%%\\\\s)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.matlab\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"%%\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.matlab\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.double-percentage.matlab\",\"patterns\":[{\"begin\":\"\\\\G[^\\\\S\\\\n]*(?![\\\\n\\\\s])\",\"contentName\":\"meta.cell.matlab\",\"end\":\"(?=\\\\n)\"}]}]},{\"include\":\"#comment_block\"},{\"begin\":\"(^[ \\\\t]+)?(?=%)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.matlab\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"%\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.matlab\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.percentage.matlab\"}]}]},\"conjugate_transpose\":{\"match\":\"((?<=[^\\\\s])|(?<=\\\\])|(?<=\\\\))|(?<=\\\\}))'\",\"name\":\"keyword.operator.transpose.matlab\"},\"constants\":{\"match\":\"(?<!\\\\.)\\\\b(eps|false|Inf|inf|intmax|intmin|namelengthmax|NaN|nan|on|off|realmax|realmin|true|pi)\\\\b\",\"name\":\"constant.language.matlab\"},\"control_statements\":{\"captures\":{\"1\":{\"name\":\"keyword.control.matlab\"}},\"match\":\"\\\\s*(?:^|[\\\\s,;])(break|continue|return)\\\\b\",\"name\":\"meta.control.matlab\"},\"curly_brackets\":{\"begin\":\"\\\\{\",\"end\":\"\\\\}\",\"patterns\":[{\"include\":\"#end_in_parens\"},{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"include\":\"#end_in_parens\"},{\"include\":\"#block_keywords\"}]},\"end_in_parens\":{\"match\":\"\\\\bend\\\\b\",\"name\":\"keyword.operator.symbols.matlab\"},\"function\":{\"patterns\":[{\"begin\":\"(^\\\\s*)(function)\\\\s+(?:(?:(\\\\[)([^\\\\]]*)(\\\\])|([a-zA-Z][a-zA-Z0-9_]*))\\\\s*=\\\\s*)?([a-zA-Z][a-zA-Z0-9_]*(\\\\.[a-zA-Z][a-zA-Z0-9_]*)*)\\\\s*\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.function.matlab\"},\"3\":{\"name\":\"punctuation.definition.arguments.begin.matlab\"},\"4\":{\"patterns\":[{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.output.matlab\"}]},\"5\":{\"name\":\"punctuation.definition.arguments.end.matlab\"},\"6\":{\"name\":\"variable.parameter.output.function.matlab\"},\"7\":{\"name\":\"entity.name.function.matlab\"}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b(\\\\s*\\\\n)?\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.function.matlab\"}},\"name\":\"meta.function.matlab\",\"patterns\":[{\"begin\":\"\\\\G\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.arguments.function.matlab\",\"patterns\":[{\"include\":\"#line_continuation\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.input.matlab\"}]},{\"begin\":\"(^\\\\s*)(arguments)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.arguments.matlab\"},\"3\":{\"patterns\":[{\"match\":\"[a-zA-Z][a-zA-Z0-9_]*\",\"name\":\"variable.parameter.arguments.matlab\"}]}},\"end\":\"\\\\s*(?:^|[\\\\s,;])(end)\\\\b\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.end.arguments.matlab\"}},\"name\":\"meta.arguments.matlab\",\"patterns\":[{\"include\":\"#validators\"},{\"include\":\"$self\"}]},{\"include\":\"$self\"}]}]},\"global_persistent\":{\"captures\":{\"1\":{\"name\":\"keyword.control.globalpersistent.matlab\"}},\"match\":\"^\\\\s*(global|persistent)\\\\b\",\"name\":\"meta.globalpersistent.matlab\"},\"indexing_curly_brackets\":{\"Comment\":\"Match identifier{idx, idx, } and stop at newline without ... This helps with partially written code like x{idx \",\"begin\":\"([a-zA-Z][a-zA-Z0-9_\\\\.]*\\\\s*)\\\\{\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"$self\"}]}},\"end\":\"(\\\\}|(?<!\\\\.\\\\.\\\\.).\\\\n)\",\"patterns\":[{\"include\":\"#end_in_parens\"},{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"include\":\"#end_in_parens\"},{\"include\":\"#block_keywords\"}]},\"line_continuation\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.symbols.matlab\"},\"2\":{\"name\":\"comment.line.continuation.matlab\"}},\"match\":\"(\\\\.\\\\.\\\\.)(.*)$\",\"name\":\"meta.linecontinuation.matlab\"},\"numbers\":{\"match\":\"(?<=[\\\\s\\\\-\\\\+\\\\*\\\\/\\\\\\\\=:\\\\[\\\\(\\\\{,]|^)\\\\d*\\\\.?\\\\d+([eE][+-]?\\\\d)?([0-9&&[^\\\\.]])*(i|j)?\\\\b\",\"name\":\"constant.numeric.matlab\"},\"operators\":{\"match\":\"(?<=\\\\s)(==|~=|>|>=|<|<=|&|&&|:|\\\\||\\\\|\\\\||\\\\+|-|\\\\*|\\\\.\\\\*|/|\\\\./|\\\\\\\\|\\\\.\\\\\\\\|\\\\^|\\\\.\\\\^)(?=\\\\s)\",\"name\":\"keyword.operator.symbols.matlab\"},\"parens\":{\"begin\":\"\\\\(\",\"end\":\"(\\\\)|(?<!\\\\.\\\\.\\\\.).\\\\n)\",\"patterns\":[{\"include\":\"#end_in_parens\"},{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"include\":\"#block_keywords\"}]},\"square_brackets\":{\"begin\":\"\\\\[\",\"end\":\"\\\\]\",\"patterns\":[{\"include\":\"#all_before_command_dual\"},{\"include\":\"#all_after_command_dual\"},{\"include\":\"#block_keywords\"}]},\"string\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.interpolated.matlab\"},\"2\":{\"name\":\"punctuation.definition.string.begin.matlab\"}},\"match\":\"^\\\\s*((!).*$\\\\n?)\"},{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.matlab\"}},\"end\":\"'(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\s|;|:|,))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.matlab\"}},\"name\":\"string.quoted.single.matlab\",\"patterns\":[{\"match\":\"''\",\"name\":\"constant.character.escape.matlab\"},{\"match\":\"'(?=.)\",\"name\":\"invalid.illegal.unescaped-quote.matlab\"},{\"match\":\"((\\\\%([\\\\+\\\\-0]?\\\\d{0,3}(\\\\.\\\\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\\\\%\\\\%|\\\\\\\\(b|f|n|r|t|\\\\\\\\))\",\"name\":\"constant.character.escape.matlab\"}]},{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.matlab\"}},\"end\":\"\\\"(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\||\\\\s|;|:|,))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.matlab\"}},\"name\":\"string.quoted.double.matlab\",\"patterns\":[{\"match\":\"\\\"\\\"\",\"name\":\"constant.character.escape.matlab\"},{\"match\":\"\\\"(?=.)\",\"name\":\"invalid.illegal.unescaped-quote.matlab\"}]}]},\"transpose\":{\"match\":\"\\\\.'\",\"name\":\"keyword.operator.transpose.matlab\"},\"validator_strings\":{\"patterns\":[{\"patterns\":[{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)'\",\"end\":\"'(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\s|;|:|,))\",\"name\":\"storage.type.matlab\",\"patterns\":[{\"match\":\"''\"},{\"match\":\"'(?=.)\"},{\"match\":\"([^']+)\"}]},{\"begin\":\"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)\\\"\",\"end\":\"\\\"(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\||\\\\s|;|:|,))\",\"name\":\"storage.type.matlab\",\"patterns\":[{\"match\":\"\\\"\\\"\"},{\"match\":\"\\\"(?=.)\"},{\"match\":\"[^\\\"]+\"}]}]}]},\"validators\":{\"begin\":\"\\\\s*[;]?\\\\s*([a-zA-Z][a-zA-Z0-9_\\\\.\\\\?]*)\",\"end\":\"([;\\\\n%=].*)\",\"endCaptures\":{\"1\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"$self\"}]}},\"match\":\"([%].*)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"$self\"}]}},\"match\":\"(=[^;]*)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#validators\"}]}},\"match\":\"([\\\\n;]\\\\s*[a-zA-Z].*)\"},{\"include\":\"$self\"}]}},\"patterns\":[{\"include\":\"#line_continuation\"},{\"match\":\"\\\\s*(\\\\([^\\\\)]*\\\\))\",\"name\":\"storage.type.matlab\"},{\"match\":\"([a-zA-Z][a-zA-Z0-9_\\\\.]*)\",\"name\":\"storage.type.matlab\"},{\"include\":\"#braced_validator_list\"}]},\"variables\":{\"match\":\"(?<!\\\\.)\\\\b(nargin|nargout|varargin|varargout)\\\\b\",\"name\":\"variable.other.function.matlab\"}},\"scopeName\":\"source.matlab\"}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/mermaid.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Mermaid\",\"fileTypes\":[],\"injectionSelector\":\"L:text.html.markdown\",\"name\":\"mermaid\",\"patterns\":[{\"include\":\"#mermaid-code-block\"},{\"include\":\"#mermaid-code-block-with-attributes\"},{\"include\":\"#mermaid-ado-code-block\"}],\"repository\":{\"mermaid\":{\"patterns\":[{\"begin\":\"^\\\\s*(architecture-beta)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Architecture Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"string\"},\"5\":{\"name\":\"keyword.control.mermaid\"},\"6\":{\"name\":\"string\"},\"7\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"8\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"9\":{\"name\":\"string\"},\"10\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"11\":{\"name\":\"keyword.control.mermaid\"},\"12\":{\"name\":\"variable\"}},\"comment\":\"(group|service)(group id)(icon name)?(title)(in)?(parent)?\",\"match\":\"(?i)\\\\s*(group|service)\\\\s+([\\\\w-]+)\\\\s*(\\\\()?([\\\\w\\\\s-]+)?(:)?([\\\\w\\\\s-]+)?(\\\\))?\\\\s*(\\\\[)?([\\\\w\\\\s-]+)?\\\\s*(\\\\])?\\\\s*(in)?\\\\s*([\\\\w-]+)?\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"5\":{\"name\":\"keyword.control.mermaid\"},\"6\":{\"name\":\"entity.name.function.mermaid\"},\"7\":{\"name\":\"keyword.control.mermaid\"},\"8\":{\"name\":\"entity.name.function.mermaid\"},\"9\":{\"name\":\"keyword.control.mermaid\"},\"10\":{\"name\":\"variable\"},\"11\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"12\":{\"name\":\"variable\"},\"13\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"comment\":\"(service id)(group id)?:(T|B|L|R) <?-->? (T|B|L|R):(service id)(group id)?\",\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s*(\\\\{)?\\\\s*(group)?(\\\\})?\\\\s*(:)\\\\s*(T|B|L|R)\\\\s+(<?-->?)\\\\s+(T|B|L|R)\\\\s*(:)\\\\s*([\\\\w-]+)\\\\s*(\\\\{)?\\\\s*(group)?(\\\\})?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"variable\"}},\"comment\":\"(junction)(junction id)(in)?(group)\",\"match\":\"(?i)\\\\s*(junction)\\\\s+([\\\\w-]+)\\\\s*(in)?\\\\s*([\\\\w-]+)?\"}]},{\"begin\":\"^\\\\s*(classDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Class Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"entity.name.type.class.mermaid\"},\"6\":{\"name\":\"keyword.control.mermaid\"},\"7\":{\"name\":\"string\"}},\"comment\":\"(class name) (\\\"multiplicity relationship\\\")? (relationship) (\\\"multiplicity relationship\\\")? (class name) :? (labelText)?\",\"match\":\"(?i)([\\\\w-]+)\\\\s(\\\"(?:\\\\d+|\\\\*|0..\\\\d+|1..\\\\d+|1..\\\\*)\\\")?\\\\s?(--o|--\\\\*|\\\\<--|--\\\\>|<\\\\.\\\\.|\\\\.\\\\.\\\\>|\\\\<\\\\|\\\\.\\\\.|\\\\.\\\\.\\\\|\\\\>|\\\\<\\\\|--|--\\\\|>|--\\\\*|--|\\\\.\\\\.|\\\\*--|o--)\\\\s(\\\"(?:\\\\d+|\\\\*|0..\\\\d+|1..\\\\d+|1..\\\\*)\\\")?\\\\s?([\\\\w-]+)\\\\s?(:)?\\\\s(.*)$\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"entity.name.function.mermaid\"},\"5\":{\"name\":\"punctuation.parenthesis.open.mermaid\"},\"6\":{\"name\":\"storage.type.mermaid\"},\"7\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"8\":{\"name\":\"storage.type.mermaid\"},\"9\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"10\":{\"name\":\"entity.name.variable.parameter.mermaid\"},\"11\":{\"name\":\"punctuation.parenthesis.closed.mermaid\"},\"12\":{\"name\":\"keyword.control.mermaid\"},\"13\":{\"name\":\"storage.type.mermaid\"},\"14\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"15\":{\"name\":\"storage.type.mermaid\"},\"16\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"comment\":\"(class name) : (visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$\",\"match\":\"(?i)([\\\\w-]+)\\\\s?(:)\\\\s([\\\\+~#-])?([\\\\w-]+)(\\\\()([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?\\\\s?([\\\\w-]+)?(\\\\))([*\\\\$]{0,2})\\\\s?([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?$\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"6\":{\"name\":\"storage.type.mermaid\"},\"7\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"8\":{\"name\":\"entity.name.variable.field.mermaid\"}},\"comment\":\"(class name) : (visibility)?(datatype/generic data type) (attribute name)$\",\"match\":\"(?i)([\\\\w-]+)\\\\s?(:)\\\\s([\\\\+~#-])?([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s([\\\\w-]+)?$\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"2\":{\"name\":\"storage.type.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"4\":{\"name\":\"entity.name.type.class.mermaid\"}},\"comment\":\"<<(Annotation)>> (class name)\",\"match\":\"(?i)(<<)([\\\\w-]+)(>>)\\\\s?([\\\\w-]+)?\"},{\"begin\":\"(?i)(class)\\\\s+([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s?({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.type.class.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"6\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"class (class name) ~?(generic type)?~? ({)\",\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"begin\":\"(?i)\\\\s([\\\\+~#-])?([\\\\w-]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"},\"3\":{\"name\":\"punctuation.parenthesis.open.mermaid\"}},\"comment\":\"(visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$\",\"end\":\"(?i)(\\\\))([*\\\\$]{0,2})\\\\s?([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.closed.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"storage.type.mermaid\"},\"4\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"5\":{\"name\":\"storage.type.mermaid\"},\"6\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.mermaid\"},\"2\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"3\":{\"name\":\"storage.type.mermaid\"},\"4\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"5\":{\"name\":\"entity.name.variable.parameter.mermaid\"}},\"comment\":\"(TBD)\",\"match\":\"(?i)\\\\s*,?\\\\s*([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?\\\\s?([\\\\w-]+)?\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"storage.type.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"6\":{\"name\":\"entity.name.variable.field.mermaid\"}},\"comment\":\"(visibility)?(datatype/generic data type) (attribute name)$\",\"match\":\"(?i)\\\\s([\\\\+~#-])?([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s([\\\\w-]+)?$\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"2\":{\"name\":\"storage.type.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"4\":{\"name\":\"entity.name.type.class.mermaid\"}},\"comment\":\"<<(Annotation)>> (class name)\",\"match\":\"(?i)(<<)([\\\\w-]+)(>>)\\\\s?([\\\\w-]+)?\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.type.class.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"comment\":\"class (class name) ~?(generic type)?~?\",\"match\":\"(?i)(class)\\\\s+([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\"}]},{\"begin\":\"^\\\\s*(erDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Entity Relationship Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"},\"4\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(entity)\",\"match\":\"(?i)^\\\\s*([\\\\w-]+)\\\\s*(\\\\[)?\\\\s*((?:[\\\\w-]+)|(?:\\\"[\\\\w\\\\s-]+\\\"))?\\\\s*(\\\\])?$\"},{\"begin\":\"(?i)\\\\s+([\\\\w-]+)\\\\s*(\\\\[)?\\\\s*((?:[\\\\w-]+)|(?:\\\"[\\\\w\\\\s-]+\\\"))?\\\\s*(\\\\])?\\\\s*({)\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(entity) {\",\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"comment\":\"(type) (name) (PK|FK)? (\\\"comment\\\")?\",\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s+([\\\\w-]+)\\\\s+(PK|FK)?\\\\s*(\\\"[\\\"\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")?\\\\s*\"},{\"match\":\"\\\\%%.*\",\"name\":\"comment\"}]},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"comment\":\"(entity) (relationship) (entity) : (label)\",\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s*((?:\\\\|o|\\\\|\\\\||}o|}\\\\||one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\((?:0|1)\\\\)|only one|0\\\\+|1\\\\+?)(?:..|--)(?:o\\\\||\\\\|\\\\||o{|\\\\|{|one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\((?:0|1)\\\\)|only one|0\\\\+|1\\\\+?))\\\\s*([\\\\w-]+)\\\\s*(:)\\\\s*((?:\\\"[\\\\w\\\\s]*\\\")|(?:[\\\\w-]+))\"}]},{\"begin\":\"^\\\\s*(gantt)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Gantt Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)^\\\\s*(dateFormat)\\\\s+([\\\\w\\\\-\\\\.]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)^\\\\s*(axisFormat)\\\\s+([\\\\w\\\\%\\\\/\\\\\\\\\\\\-\\\\.]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)(tickInterval)\\\\s+(([1-9][0-9]*)(millisecond|second|minute|hour|day|week|month))\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(excludes)\\\\s+((?:[\\\\d\\\\-,\\\\s]+|monday|tuesday|wednesday|thursday|friday|saturday|sunday|weekends)+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s+(todayMarker)\\\\s+(.*)$\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(section)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)^\\\\s(.*)(:)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"match\":\"(crit|done|active|after)\",\"name\":\"entity.name.function.mermaid\"},{\"match\":\"\\\\%%.*\",\"name\":\"comment\"}]}]},{\"begin\":\"^\\\\s*(gitGraph)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Git Graph\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"begin\":\"(?i)^\\\\s*(commit)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"commit\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(id)(:) (\\\"id\\\")\",\"match\":\"(?i)\\\\s*(id)(:)\\\\s?(\\\"[^\\\"\\\\n]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"entity.name.function.mermaid\"}},\"comment\":\"(type)(:) (COMMIT_TYPE)\",\"match\":\"(?i)\\\\s*(type)(:)\\\\s?(NORMAL|REVERSE|HIGHLIGHT)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(tag)(:) (\\\"tag\\\")\",\"match\":\"(?i)\\\\s*(tag)(:)\\\\s?(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"comment\":\"(checkout) (branch-name)\",\"match\":\"(?i)^\\\\s*(checkout)\\\\s*([^\\\\s\\\"]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"comment\":\"(branch) (branch-name) (order)?(:) (number)\",\"match\":\"(?i)^\\\\s*(branch)\\\\s*([^\\\\s\\\"]*)\\\\s*(?:(order)(:)\\\\s?(\\\\d+))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"comment\":\"(merge) (branch-name) (tag: \\\"tag-name\\\")?\",\"match\":\"(?i)^\\\\s*(merge)\\\\s*([^\\\\s\\\"]*)\\\\s*(?:(tag)(:)\\\\s?(\\\"[^\\\"\\\\n]*\\\"))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"comment\":\"(cherry-pick) (id)(:)(\\\"commit-id\\\")\",\"match\":\"(?i)^\\\\s*(cherry-pick)\\\\s+(id)(:)\\\\s*(\\\"[^\\\"\\\\n]*\\\")\"}]},{\"begin\":\"^\\\\s*(graph|flowchart)\\\\s+([\\\\p{Letter}\\\\ 0-9]+)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"comment\":\"Graph\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"},\"5\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"\",\"match\":\"(?i)^\\\\s*(subgraph)\\\\s+(\\\\w+)(\\\\[)(\\\"?[\\\\w\\\\s*+%=\\\\\\\\/:\\\\.\\\\-'`,&^#$!?<>]*\\\"?)(\\\\])\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"^\\\\s*(subgraph)\\\\s+([\\\\p{Letter}\\\\ 0-9<>]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"^(?i)\\\\s*(direction)\\\\s+(RB|BT|RL|TD|LR)\"},{\"match\":\"\\\\b(end)\\\\b\",\"name\":\"keyword.control.mermaid\"},{\"begin\":\"(?i)(\\\\b(?:(?!--|==)[-\\\\w])+\\\\b\\\\s*)(\\\\(\\\\[|\\\\[\\\\[|\\\\[\\\\(|\\\\[|\\\\(+|\\\\>|\\\\{|\\\\(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(Entity)(Edge/Shape)(Text)(Edge/Shape)\",\"end\":\"(?i)(\\\\]\\\\)|\\\\]\\\\]|\\\\)\\\\]|\\\\]|\\\\)+|\\\\}|\\\\)\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"begin\":\"\\\\s*(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(\\\"multi-line text\\\")\",\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"string\"}},\"patterns\":[{\"begin\":\"(?i)([^\\\"]*)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"capture inner text between quotes\",\"end\":\"(?=\\\")\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"comment\"}},\"match\":\"([^\\\"]*)\"}]}]},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(single line text)\",\"match\":\"(?i)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"}]},{\"begin\":\"(?i)\\\\s*((?:-{2,5}|={2,5})[xo>]?\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(Graph Link)(\\\"Multiline text\\\")(Graph Link)\",\"end\":\"(?i)(\\\\|)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"begin\":\"\\\\s*(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(\\\"multi-line text\\\")\",\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"string\"}},\"patterns\":[{\"begin\":\"(?i)([^\\\"]*)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"capture inner text between quotes\",\"end\":\"(?=\\\")\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"comment\"}},\"match\":\"([^\\\"]*)\"}]}]},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(single line text)\",\"match\":\"(?i)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"},\"3\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(Graph Link Start Arrow)(Text)(Graph Link End Arrow)\",\"match\":\"(?i)\\\\s*([xo<]?(?:-{2,5}|={2,5}|-\\\\.{1,3}|-\\\\.))((?:(?!--|==)[\\\\w\\\\s*+%=\\\\\\\\/:\\\\.\\\\-'`,\\\"&^#$!?<>\\\\[\\\\]])*)((?:-{2,5}|={2,5}|\\\\.{1,3}-|\\\\.-)[xo>]?)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(Graph Link)\",\"match\":\"(?i)\\\\s*([ox<]?(?:-.{1,3}-|-{1,3}|={1,3})[ox>]?)\"},{\"comment\":\"Entity\",\"match\":\"(\\\\b(?:(?!--|==)[-\\\\w])+\\\\b\\\\s*)\",\"name\":\"variable\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(Class)(Node(s))(ClassName)\",\"match\":\"(?i)\\\\s*(class)\\\\s+(\\\\b[-,\\\\w]+)\\\\s+(\\\\b\\\\w+\\\\b)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(ClassDef)(ClassName)(Styles)\",\"match\":\"(?i)\\\\s*(classDef)\\\\s+(\\\\b\\\\w+\\\\b)\\\\s+(\\\\b[-,:;#\\\\w]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"string\"}},\"comment\":\"(Click)(Entity)(Link)?(Tooltip)\",\"match\":\"(?i)\\\\s*(click)\\\\s+(\\\\b[-\\\\w]+\\\\b\\\\s*)(\\\\b\\\\w+\\\\b)?\\\\s(\\\"*.*\\\")\"}]},{\"begin\":\"^\\\\s*(pie)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Pie Chart\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)\\\\s(.*)(:)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"}]}]},{\"begin\":\"^\\\\s*(quadrantChart)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Quadrant Chart\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)^\\\\s*([xy]-axis)\\\\s+((?:(?!-->)[$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s])*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"comment\":\"(x|y-axis) (text) (-->)? (text)?\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"comment\":\"(-->) (text)\",\"match\":\"(?i)\\\\s*(-->)\\\\s*([$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(quadrant-[1234])\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"5\":{\"name\":\"keyword.control.mermaid\"},\"6\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"7\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(text)(:) ([)(decimal)(,) (decimal)(])\",\"match\":\"(?i)\\\\s*([$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*(:)\\\\s*(\\\\[)\\\\s*(\\\\d\\\\.\\\\d+)\\\\s*(,)\\\\s*(\\\\d\\\\.\\\\d+)\\\\s*(\\\\])\"}]},{\"begin\":\"^\\\\s*(requirementDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Requirement Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"begin\":\"(?i)^\\\\s*((?:functional|interface|performance|physical)?requirement|designConstraint)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(requirement) (name) ({)\",\"end\":\"(?i)\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"comment\":\"(id:) (variable id)\",\"match\":\"(?i)\\\\s*(id:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"comment\":\"(text:) (text string)\",\"match\":\"(?i)\\\\s*(text:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"comment\":\"(risk:) (risk option)\",\"match\":\"(?i)\\\\s*(risk:)\\\\s*(low|medium|high)\\\\s*$\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"comment\":\"(verifyMethod)(:) (method)\",\"match\":\"(?i)\\\\s*(verifymethod:)\\\\s*(analysis|inspection|test|demonstration)\\\\s*$\"}]},{\"begin\":\"(?i)^\\\\s*(element)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(element) (name) ({)\",\"end\":\"(?i)\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"comment\":\"(type:) (user type)\",\"match\":\"(?i)\\\\s*(type:)\\\\s*([\\\"$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"comment\":\"(docref:) (user ref)\",\"match\":\"(?i)\\\\s*(docref:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"}]},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"variable\"}},\"comment\":\"(source) (-) (type) (->) (destination)\",\"match\":\"(?i)^\\\\s*([\\\\w]+)\\\\s*(-)\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\s*(->)\\\\s*([\\\\w]+)\\\\s*$\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"variable\"}},\"comment\":\"(destination) (<-) (type) (-) (source)\",\"match\":\"(?i)^\\\\s*([\\\\w]+)\\\\s*(<-)\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\s*(-)\\\\s*([\\\\w]+)\\\\s*$\"}]},{\"begin\":\"^\\\\s*(sequenceDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"Sequence Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"(\\\\%%|#).*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(title)(title text)\",\"match\":\"(?i)(title)\\\\s*(:)?\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"comment\":\"(participant)(Actor)(as)?(Label)?\",\"match\":\"(?i)\\\\s*(participant|actor)\\\\s+((?:(?! as )[\\\"\\\\(\\\\)$&%\\\\^/#.?!*=<>\\\\'\\\\\\\\\\\\w\\\\s])+)\\\\s*(as)?\\\\s([\\\"\\\\(\\\\)$&%\\\\^/#.,?!*=<>\\\\'\\\\\\\\\\\\w\\\\s]+)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"comment\":\"(activate/deactivate)(Actor)\",\"match\":\"(?i)\\\\s*((?:de)?activate)\\\\s+(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"variable\"},\"6\":{\"name\":\"keyword.control.mermaid\"},\"7\":{\"name\":\"string\"}},\"comment\":\"(Note)(direction)(Actor)(,)?(Actor)?(:)(Message)\",\"match\":\"(?i)\\\\s*(Note)\\\\s+((?:left|right)\\\\sof|over)\\\\s+(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)(,)?(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)?(:)(?:\\\\s+([^;#]*))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"comment\":\"(loop)(loop text)\",\"match\":\"(?i)\\\\s*(loop)(?:\\\\s+([^;#]*))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(end)\",\"match\":\"\\\\s*(end)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"comment\":\"(alt/else/option/par/and/autonumber/critical/opt)(text)\",\"match\":\"(?i)\\\\s*(alt|else|option|par|and|rect|autonumber|critical|opt)(?:\\\\s+([^#;]*))?$\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"comment\":\"(Actor)(Arrow)(Actor)(:)(Message)\",\"match\":\"(?i)\\\\s*(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?)\\\\s*(-?-(?:\\\\>|x|\\\\))\\\\>?[+-]?)\\\\s*([\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?)\\\\s*(:)\\\\s*([^;#]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(box transparent text)\",\"match\":\"(?i)\\\\s*(box)\\\\s+(transparent)(?:\\\\s+([^;#]*))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"comment\":\"(box text)\",\"match\":\"(?i)\\\\s*(box)(?:\\\\s+([^;#]*))?\"}]},{\"begin\":\"^\\\\s*(stateDiagram(?:-v2)?)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"State Diagram\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"}\",\"match\":\"\\\\s+(})\\\\s+\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"--\",\"match\":\"\\\\s+(--)\\\\s+\"},{\"comment\":\"(state)\",\"match\":\"^\\\\s*([\\\\w-]+)$\",\"name\":\"variable\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(state) : (description)\",\"match\":\"(?i)([\\\\w-]+)\\\\s+(:)\\\\s+(\\\\s*[-\\\\w\\\\s]+\\\\b)\"},{\"begin\":\"(?i)^\\\\s*(state)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"state\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"}},\"comment\":\"\\\"(description)\\\" as (state)\",\"match\":\"(?i)\\\\s*(\\\"[-\\\\w\\\\s]+\\\\b\\\")\\\\s+(as)\\\\s+([\\\\w-]+)\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(state name) {\",\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s+({)\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(state name) <<fork|join>>\",\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s+(<<(?:fork|join)>>)\"}]},{\"begin\":\"(?i)([\\\\w-]+)\\\\s+(-->)\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(state) -->\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"(state) (:)? (transition text)?\",\"match\":\"(?i)\\\\s+([\\\\w-]+)\\\\s*(:)?\\\\s*([^\\\\n:]+)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"comment\":\"[*] (:)? (transition text)?\",\"match\":\"(?i)(\\\\[\\\\*\\\\])\\\\s*(:)?\\\\s*([^\\\\n:]+)?\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"comment\":\"[*] --> (state) (:)? (transition text)?\",\"match\":\"(?i)(\\\\[\\\\*\\\\])\\\\s+(-->)\\\\s+([\\\\w-]+)\\\\s*(:)?\\\\s*([^\\\\n:]+)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"comment\":\"note left|right of (state name)\",\"match\":\"(?i)^\\\\s*(note (?:left|right) of)\\\\s+([\\\\w-]+)\\\\s+(:)\\\\s*([^\\\\n:]+)\"},{\"begin\":\"(?i)^\\\\s*(note (?:left|right) of)\\\\s+([\\\\w-]+)(.|\\\\n)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"comment\":\"note left|right of (state name) (note text) end note\",\"contentName\":\"string\",\"end\":\"(?i)(end note)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}}}]},{\"begin\":\"^\\\\s*(journey)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"User Journey\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title|section)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/.,?!*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*(:)\\\\s*(\\\\d+)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable\"}},\"comment\":\"(taskName)\",\"match\":\"(?i)\\\\s*,?\\\\s*([^,#\\\\n]+)\"}]}]},{\"begin\":\"^\\\\s*(xychart(?:-beta)?(?:\\\\s+horizontal)?)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"XY Chart\",\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)^\\\\s*(x-axis)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(x-axis)\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"comment\":\"(decimal) (-->) (decimal)\",\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\\\\s*(-->)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(\\\"text\\\")\",\"match\":\"(?i)\\\\s+(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(text)\",\"match\":\"(?i)\\\\s+([\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w]*)\"},{\"begin\":\"\\\\s*(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"([)(text)(,)(text)*(])\",\"end\":\"\\\\s*(\\\\])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"comment\":\"(decimal)\",\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(\\\"text\\\")\",\"match\":\"(?i)\\\\s*(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(text)\",\"match\":\"(?i)\\\\s*([\\\\($&%\\\\^/#.?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(,)\",\"match\":\"(?i)\\\\s*(,)\"}]}]},{\"begin\":\"(?i)^\\\\s*(y-axis)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(y-axis)\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"comment\":\"(decimal) (-->) (decimal)\",\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\\\\s*(-->)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(\\\"text\\\")\",\"match\":\"(?i)\\\\s+(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"comment\":\"(text)\",\"match\":\"(?i)\\\\s+([\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w]*)\"}]},{\"begin\":\"(?i)^\\\\s*(line|bar)\\\\s*(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(line|bar) ([)(decimal)+(])\",\"end\":\"\\\\s*(\\\\])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"comment\":\"(decimal)\",\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"comment\":\"(,)\",\"match\":\"(?i)\\\\s*(,)\"}]}]}]},\"mermaid-ado-code-block\":{\"begin\":\"(?i)\\\\s*:::\\\\s*mermaid\\\\s*$\",\"contentName\":\"meta.embedded.block.mermaid\",\"end\":\"\\\\s*:::\\\\s*\",\"patterns\":[{\"include\":\"#mermaid\"}]},\"mermaid-code-block\":{\"begin\":\"(?i)(?<=[`~])mermaid(\\\\s+[^`~]*)?$\",\"contentName\":\"meta.embedded.block.mermaid\",\"end\":\"(^|\\\\G)(?=\\\\s*[`~]{3,}\\\\s*$)\",\"patterns\":[{\"include\":\"#mermaid\"}]},\"mermaid-code-block-with-attributes\":{\"begin\":\"(?i)(?<=[`~])\\\\{\\\\s*\\\\.?mermaid(\\\\s+[^`~]*)?$\",\"contentName\":\"meta.embedded.block.mermaid\",\"end\":\"(^|\\\\G)(?=\\\\s*[`~]{3,}\\\\s*$)\",\"patterns\":[{\"include\":\"#mermaid\"}]}},\"scopeName\":\"markdown.mermaid.codeblock\",\"aliases\":[\"mmd\"]}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Mermaid\",\"fileTypes\":[],\"injectionSelector\":\"L:text.html.markdown\",\"name\":\"mermaid\",\"patterns\":[{\"include\":\"#mermaid-code-block\"},{\"include\":\"#mermaid-code-block-with-attributes\"},{\"include\":\"#mermaid-ado-code-block\"}],\"repository\":{\"mermaid\":{\"patterns\":[{\"begin\":\"^\\\\s*(architecture-beta)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"string\"},\"5\":{\"name\":\"keyword.control.mermaid\"},\"6\":{\"name\":\"string\"},\"7\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"8\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"9\":{\"name\":\"string\"},\"10\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"11\":{\"name\":\"keyword.control.mermaid\"},\"12\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*(group|service)\\\\s+([\\\\w-]+)\\\\s*(\\\\()?([\\\\w\\\\s-]+)?(:)?([\\\\w\\\\s-]+)?(\\\\))?\\\\s*(\\\\[)?([\\\\w\\\\s-]+)?\\\\s*(\\\\])?\\\\s*(in)?\\\\s*([\\\\w-]+)?\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"5\":{\"name\":\"keyword.control.mermaid\"},\"6\":{\"name\":\"entity.name.function.mermaid\"},\"7\":{\"name\":\"keyword.control.mermaid\"},\"8\":{\"name\":\"entity.name.function.mermaid\"},\"9\":{\"name\":\"keyword.control.mermaid\"},\"10\":{\"name\":\"variable\"},\"11\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"12\":{\"name\":\"variable\"},\"13\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s*(\\\\{)?\\\\s*(group)?(\\\\})?\\\\s*(:)\\\\s*(T|B|L|R)\\\\s+(<?-->?)\\\\s+(T|B|L|R)\\\\s*(:)\\\\s*([\\\\w-]+)\\\\s*(\\\\{)?\\\\s*(group)?(\\\\})?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*(junction)\\\\s+([\\\\w-]+)\\\\s*(in)?\\\\s*([\\\\w-]+)?\"}]},{\"begin\":\"^\\\\s*(classDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"entity.name.type.class.mermaid\"},\"6\":{\"name\":\"keyword.control.mermaid\"},\"7\":{\"name\":\"string\"}},\"match\":\"(?i)([\\\\w-]+)\\\\s(\\\"(?:\\\\d+|\\\\*|0..\\\\d+|1..\\\\d+|1..\\\\*)\\\")?\\\\s?(--o|--\\\\*|\\\\<--|--\\\\>|<\\\\.\\\\.|\\\\.\\\\.\\\\>|\\\\<\\\\|\\\\.\\\\.|\\\\.\\\\.\\\\|\\\\>|\\\\<\\\\|--|--\\\\|>|--\\\\*|--|\\\\.\\\\.|\\\\*--|o--)\\\\s(\\\"(?:\\\\d+|\\\\*|0..\\\\d+|1..\\\\d+|1..\\\\*)\\\")?\\\\s?([\\\\w-]+)\\\\s?(:)?\\\\s(.*)$\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"entity.name.function.mermaid\"},\"5\":{\"name\":\"punctuation.parenthesis.open.mermaid\"},\"6\":{\"name\":\"storage.type.mermaid\"},\"7\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"8\":{\"name\":\"storage.type.mermaid\"},\"9\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"10\":{\"name\":\"entity.name.variable.parameter.mermaid\"},\"11\":{\"name\":\"punctuation.parenthesis.closed.mermaid\"},\"12\":{\"name\":\"keyword.control.mermaid\"},\"13\":{\"name\":\"storage.type.mermaid\"},\"14\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"15\":{\"name\":\"storage.type.mermaid\"},\"16\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"match\":\"(?i)([\\\\w-]+)\\\\s?(:)\\\\s([\\\\+~#-])?([\\\\w-]+)(\\\\()([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?\\\\s?([\\\\w-]+)?(\\\\))([*\\\\$]{0,2})\\\\s?([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?$\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"6\":{\"name\":\"storage.type.mermaid\"},\"7\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"8\":{\"name\":\"entity.name.variable.field.mermaid\"}},\"match\":\"(?i)([\\\\w-]+)\\\\s?(:)\\\\s([\\\\+~#-])?([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s([\\\\w-]+)?$\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"2\":{\"name\":\"storage.type.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"4\":{\"name\":\"entity.name.type.class.mermaid\"}},\"match\":\"(?i)(<<)([\\\\w-]+)(>>)\\\\s?([\\\\w-]+)?\"},{\"begin\":\"(?i)(class)\\\\s+([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s?({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.type.class.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"6\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"begin\":\"(?i)\\\\s([\\\\+~#-])?([\\\\w-]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"},\"3\":{\"name\":\"punctuation.parenthesis.open.mermaid\"}},\"end\":\"(?i)(\\\\))([*\\\\$]{0,2})\\\\s?([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.closed.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"storage.type.mermaid\"},\"4\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"5\":{\"name\":\"storage.type.mermaid\"},\"6\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.mermaid\"},\"2\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"3\":{\"name\":\"storage.type.mermaid\"},\"4\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"5\":{\"name\":\"entity.name.variable.parameter.mermaid\"}},\"match\":\"(?i)\\\\s*,?\\\\s*([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?\\\\s?([\\\\w-]+)?\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"storage.type.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"6\":{\"name\":\"entity.name.variable.field.mermaid\"}},\"match\":\"(?i)\\\\s([\\\\+~#-])?([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s([\\\\w-]+)?$\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"2\":{\"name\":\"storage.type.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"},\"4\":{\"name\":\"entity.name.type.class.mermaid\"}},\"match\":\"(?i)(<<)([\\\\w-]+)(>>)\\\\s?([\\\\w-]+)?\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.type.class.mermaid\"},\"3\":{\"name\":\"punctuation.definition.typeparameters.begin.mermaid\"},\"4\":{\"name\":\"storage.type.mermaid\"},\"5\":{\"name\":\"punctuation.definition.typeparameters.end.mermaid\"}},\"match\":\"(?i)(class)\\\\s+([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\"}]},{\"begin\":\"^\\\\s*(erDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"},\"4\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)^\\\\s*([\\\\w-]+)\\\\s*(\\\\[)?\\\\s*((?:[\\\\w-]+)|(?:\\\"[\\\\w\\\\s-]+\\\"))?\\\\s*(\\\\])?$\"},{\"begin\":\"(?i)\\\\s+([\\\\w-]+)\\\\s*(\\\\[)?\\\\s*((?:[\\\\w-]+)|(?:\\\"[\\\\w\\\\s-]+\\\"))?\\\\s*(\\\\])?\\\\s*({)\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s+([\\\\w-]+)\\\\s+(PK|FK)?\\\\s*(\\\"[\\\"\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")?\\\\s*\"},{\"match\":\"\\\\%%.*\",\"name\":\"comment\"}]},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s*((?:\\\\|o|\\\\|\\\\||}o|}\\\\||one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\((?:0|1)\\\\)|only one|0\\\\+|1\\\\+?)(?:..|--)(?:o\\\\||\\\\|\\\\||o{|\\\\|{|one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\((?:0|1)\\\\)|only one|0\\\\+|1\\\\+?))\\\\s*([\\\\w-]+)\\\\s*(:)\\\\s*((?:\\\"[\\\\w\\\\s]*\\\")|(?:[\\\\w-]+))\"}]},{\"begin\":\"^\\\\s*(gantt)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)^\\\\s*(dateFormat)\\\\s+([\\\\w\\\\-\\\\.]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)^\\\\s*(axisFormat)\\\\s+([\\\\w\\\\%\\\\/\\\\\\\\\\\\-\\\\.]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)(tickInterval)\\\\s+(([1-9][0-9]*)(millisecond|second|minute|hour|day|week|month))\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(excludes)\\\\s+((?:[\\\\d\\\\-,\\\\s]+|monday|tuesday|wednesday|thursday|friday|saturday|sunday|weekends)+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s+(todayMarker)\\\\s+(.*)$\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(section)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)^\\\\s(.*)(:)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"match\":\"(crit|done|active|after)\",\"name\":\"entity.name.function.mermaid\"},{\"match\":\"\\\\%%.*\",\"name\":\"comment\"}]}]},{\"begin\":\"^\\\\s*(gitGraph)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"begin\":\"(?i)^\\\\s*(commit)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(id)(:)\\\\s?(\\\"[^\\\"\\\\n]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)\\\\s*(type)(:)\\\\s?(NORMAL|REVERSE|HIGHLIGHT)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(tag)(:)\\\\s?(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"match\":\"(?i)^\\\\s*(checkout)\\\\s*([^\\\\s\\\"]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"match\":\"(?i)^\\\\s*(branch)\\\\s*([^\\\\s\\\"]*)\\\\s*(?:(order)(:)\\\\s?(\\\\d+))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(merge)\\\\s*([^\\\\s\\\"]*)\\\\s*(?:(tag)(:)\\\\s?(\\\"[^\\\"\\\\n]*\\\"))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(cherry-pick)\\\\s+(id)(:)\\\\s*(\\\"[^\\\"\\\\n]*\\\")\"}]},{\"begin\":\"^\\\\s*(graph|flowchart)\\\\s+([\\\\p{Letter}\\\\ 0-9]+)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"},\"5\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)^\\\\s*(subgraph)\\\\s+(\\\\w+)(\\\\[)(\\\"?[\\\\w\\\\s*+%=\\\\\\\\/:\\\\.\\\\-'`,&^#$!?<>]*\\\"?)(\\\\])\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"^\\\\s*(subgraph)\\\\s+([\\\\p{Letter}\\\\ 0-9<>]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"^(?i)\\\\s*(direction)\\\\s+(RB|BT|RL|TD|LR)\"},{\"match\":\"\\\\b(end)\\\\b\",\"name\":\"keyword.control.mermaid\"},{\"begin\":\"(?i)(\\\\b(?:(?!--|==)[-\\\\w])+\\\\b\\\\s*)(\\\\(\\\\[|\\\\[\\\\[|\\\\[\\\\(|\\\\[|\\\\(+|\\\\>|\\\\{|\\\\(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"end\":\"(?i)(\\\\]\\\\)|\\\\]\\\\]|\\\\)\\\\]|\\\\]|\\\\)+|\\\\}|\\\\)\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"begin\":\"\\\\s*(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"string\"}},\"patterns\":[{\"begin\":\"(?i)([^\\\"]*)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"end\":\"(?=\\\")\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"comment\"}},\"match\":\"([^\\\"]*)\"}]}]},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"}]},{\"begin\":\"(?i)\\\\s*((?:-{2,5}|={2,5})[xo>]?\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(?i)(\\\\|)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"begin\":\"\\\\s*(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"string\"}},\"patterns\":[{\"begin\":\"(?i)([^\\\"]*)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"}},\"end\":\"(?=\\\")\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"comment\"}},\"match\":\"([^\\\"]*)\"}]}]},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"},\"3\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*([xo<]?(?:-{2,5}|={2,5}|-\\\\.{1,3}|-\\\\.))((?:(?!--|==)[\\\\w\\\\s*+%=\\\\\\\\/:\\\\.\\\\-'`,\\\"&^#$!?<>\\\\[\\\\]])*)((?:-{2,5}|={2,5}|\\\\.{1,3}-|\\\\.-)[xo>]?)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*([ox<]?(?:-.{1,3}-|-{1,3}|={1,3})[ox>]?)\"},{\"match\":\"(\\\\b(?:(?!--|==)[-\\\\w])+\\\\b\\\\s*)\",\"name\":\"variable\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(class)\\\\s+(\\\\b[-,\\\\w]+)\\\\s+(\\\\b\\\\w+\\\\b)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(classDef)\\\\s+(\\\\b\\\\w+\\\\b)\\\\s+(\\\\b[-,:;#\\\\w]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(click)\\\\s+(\\\\b[-\\\\w]+\\\\b\\\\s*)(\\\\b\\\\w+\\\\b)?\\\\s(\\\"*.*\\\")\"}]},{\"begin\":\"^\\\\s*(pie)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)\\\\s(.*)(:)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"}]}]},{\"begin\":\"^\\\\s*(quadrantChart)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)^\\\\s*([xy]-axis)\\\\s+((?:(?!-->)[$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s])*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(-->)\\\\s*([$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(quadrant-[1234])\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"5\":{\"name\":\"keyword.control.mermaid\"},\"6\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"7\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*([$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*(:)\\\\s*(\\\\[)\\\\s*(\\\\d\\\\.\\\\d+)\\\\s*(,)\\\\s*(\\\\d\\\\.\\\\d+)\\\\s*(\\\\])\"}]},{\"begin\":\"^\\\\s*(requirementDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"begin\":\"(?i)^\\\\s*((?:functional|interface|performance|physical)?requirement|designConstraint)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(?i)\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*(id:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(text:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)\\\\s*(risk:)\\\\s*(low|medium|high)\\\\s*$\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"}},\"match\":\"(?i)\\\\s*(verifymethod:)\\\\s*(analysis|inspection|test|demonstration)\\\\s*$\"}]},{\"begin\":\"(?i)^\\\\s*(element)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(?i)\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*(type:)\\\\s*([\\\"$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*(docref:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)\"}]},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"variable\"}},\"match\":\"(?i)^\\\\s*([\\\\w]+)\\\\s*(-)\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\s*(->)\\\\s*([\\\\w]+)\\\\s*$\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"variable\"}},\"match\":\"(?i)^\\\\s*([\\\\w]+)\\\\s*(<-)\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\s*(-)\\\\s*([\\\\w]+)\\\\s*$\"}]},{\"begin\":\"^\\\\s*(sequenceDiagram)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"(\\\\%%|#).*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)(title)\\\\s*(:)?\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(participant|actor)\\\\s+((?:(?! as )[\\\"\\\\(\\\\)$&%\\\\^/#.?!*=<>\\\\'\\\\\\\\\\\\w\\\\s])+)\\\\s*(as)?\\\\s([\\\"\\\\(\\\\)$&%\\\\^/#.,?!*=<>\\\\'\\\\\\\\\\\\w\\\\s]+)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*((?:de)?activate)\\\\s+(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"variable\"},\"6\":{\"name\":\"keyword.control.mermaid\"},\"7\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(Note)\\\\s+((?:left|right)\\\\sof|over)\\\\s+(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)(,)?(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)?(:)(?:\\\\s+([^;#]*))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(loop)(?:\\\\s+([^;#]*))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"\\\\s*(end)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(alt|else|option|par|and|rect|autonumber|critical|opt)(?:\\\\s+([^#;]*))?$\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(\\\\b[\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?)\\\\s*(-?-(?:\\\\>|x|\\\\))\\\\>?[+-]?)\\\\s*([\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?)\\\\s*(:)\\\\s*([^;#]*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"entity.name.function.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(box)\\\\s+(transparent)(?:\\\\s+([^;#]*))?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(box)(?:\\\\s+([^;#]*))?\"}]},{\"begin\":\"^\\\\s*(stateDiagram(?:-v2)?)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"\\\\s+(})\\\\s+\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"\\\\s+(--)\\\\s+\"},{\"match\":\"^\\\\s*([\\\\w-]+)$\",\"name\":\"variable\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)([\\\\w-]+)\\\\s+(:)\\\\s+(\\\\s*[-\\\\w\\\\s]+\\\\b)\"},{\"begin\":\"(?i)^\\\\s*(state)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*(\\\"[-\\\\w\\\\s]+\\\\b\\\")\\\\s+(as)\\\\s+([\\\\w-]+)\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s+({)\"},{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*([\\\\w-]+)\\\\s+(<<(?:fork|join)>>)\"}]},{\"begin\":\"(?i)([\\\\w-]+)\\\\s+(-->)\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s+([\\\\w-]+)\\\\s*(:)?\\\\s*([^\\\\n:]+)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"string\"}},\"match\":\"(?i)(\\\\[\\\\*\\\\])\\\\s*(:)?\\\\s*([^\\\\n:]+)?\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"variable\"},\"4\":{\"name\":\"keyword.control.mermaid\"},\"5\":{\"name\":\"string\"}},\"match\":\"(?i)(\\\\[\\\\*\\\\])\\\\s+(-->)\\\\s+([\\\\w-]+)\\\\s*(:)?\\\\s*([^\\\\n:]+)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"},\"3\":{\"name\":\"keyword.control.mermaid\"},\"4\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(note (?:left|right) of)\\\\s+([\\\\w-]+)\\\\s+(:)\\\\s*([^\\\\n:]+)\"},{\"begin\":\"(?i)^\\\\s*(note (?:left|right) of)\\\\s+([\\\\w-]+)(.|\\\\n)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"variable\"}},\"contentName\":\"string\",\"end\":\"(?i)(end note)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}}}]},{\"begin\":\"^\\\\s*(journey)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title|section)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)\\\\s*([\\\"\\\\(\\\\)$&%\\\\^/.,?!*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*(:)\\\\s*(\\\\d+)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"4\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable\"}},\"match\":\"(?i)\\\\s*,?\\\\s*([^,#\\\\n]+)\"}]}]},{\"begin\":\"^\\\\s*(xychart(?:-beta)?(?:\\\\s+horizontal)?)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"(^|\\\\G)(?=\\\\s*[`:~]{3,}\\\\s*$)\",\"patterns\":[{\"match\":\"\\\\%%.*\",\"name\":\"comment\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"string\"}},\"match\":\"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\"},{\"begin\":\"(?i)^\\\\s*(x-axis)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\\\\s*(-->)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s+(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s+([\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w]*)\"},{\"begin\":\"\\\\s*(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"\\\\s*(\\\\])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s*([\\\\($&%\\\\^/#.?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*(,)\"}]}]},{\"begin\":\"(?i)^\\\\s*(y-axis)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"$\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"},\"3\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\\\\s*(-->)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s+(\\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\\")\"},{\"captures\":{\"1\":{\"name\":\"string\"}},\"match\":\"(?i)\\\\s+([\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w]*)\"}]},{\"begin\":\"(?i)^\\\\s*(line|bar)\\\\s*(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"},\"2\":{\"name\":\"keyword.control.mermaid\"}},\"end\":\"\\\\s*(\\\\])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.mermaid\"}},\"match\":\"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.mermaid\"}},\"match\":\"(?i)\\\\s*(,)\"}]}]}]},\"mermaid-ado-code-block\":{\"begin\":\"(?i)\\\\s*:::\\\\s*mermaid\\\\s*$\",\"contentName\":\"meta.embedded.block.mermaid\",\"end\":\"\\\\s*:::\\\\s*\",\"patterns\":[{\"include\":\"#mermaid\"}]},\"mermaid-code-block\":{\"begin\":\"(?i)(?<=[`~])mermaid(\\\\s+[^`~]*)?$\",\"contentName\":\"meta.embedded.block.mermaid\",\"end\":\"(^|\\\\G)(?=\\\\s*[`~]{3,}\\\\s*$)\",\"patterns\":[{\"include\":\"#mermaid\"}]},\"mermaid-code-block-with-attributes\":{\"begin\":\"(?i)(?<=[`~])\\\\{\\\\s*\\\\.?mermaid(\\\\s+[^`~]*)?$\",\"contentName\":\"meta.embedded.block.mermaid\",\"end\":\"(^|\\\\G)(?=\\\\s*[`~]{3,}\\\\s*$)\",\"patterns\":[{\"include\":\"#mermaid\"}]}},\"scopeName\":\"markdown.mermaid.codeblock\",\"aliases\":[\"mmd\"]}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/mipsasm.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"MIPS Assembly\",\"fileTypes\":[\"s\",\"mips\",\"spim\",\"asm\"],\"name\":\"mipsasm\",\"patterns\":[{\"comment\":\"ok actually this are instructions, but one also could call them funtions…\",\"match\":\"\\\\b(mul|abs|div|divu|mulo|mulou|neg|negu|not|rem|remu|rol|ror|li|seq|sge|sgeu|sgt|sgtu|sle|sleu|sne|b|beqz|bge|bgeu|bgt|bgtu|ble|bleu|blt|bltu|bnez|la|ld|ulh|ulhu|ulw|sd|ush|usw|move|mfc1\\\\.d|l\\\\.d|l\\\\.s|s\\\\.d|s\\\\.s)\\\\b\",\"name\":\"support.function.pseudo.mips\"},{\"match\":\"\\\\b(abs\\\\.d|abs\\\\.s|add|add\\\\.d|add\\\\.s|addi|addiu|addu|and|andi|bc1f|bc1t|beq|bgez|bgezal|bgtz|blez|bltz|bltzal|bne|break|c\\\\.eq\\\\.d|c\\\\.eq\\\\.s|c\\\\.le\\\\.d|c\\\\.le\\\\.s|c\\\\.lt\\\\.d|c\\\\.lt\\\\.s|ceil\\\\.w\\\\.d|ceil\\\\.w\\\\.s|clo|clz|cvt\\\\.d\\\\.s|cvt\\\\.d\\\\.w|cvt\\\\.s\\\\.d|cvt\\\\.s\\\\.w|cvt\\\\.w\\\\.d|cvt\\\\.w\\\\.s|div|div\\\\.d|div\\\\.s|divu|eret|floor\\\\.w\\\\.d|floor\\\\.w\\\\.s|j|jal|jalr|jr|lb|lbu|lh|lhu|ll|lui|lw|lwc1|lwl|lwr|madd|maddu|mfc0|mfc1|mfhi|mflo|mov\\\\.d|mov\\\\.s|movf|movf\\\\.d|movf\\\\.s|movn|movn\\\\.d|movn\\\\.s|movt|movt\\\\.d|movt\\\\.s|movz|movz\\\\.d|movz\\\\.s|msub|mtc0|mtc1|mthi|mtlo|mul|mul\\\\.d|mul\\\\.s|mult|multu|neg\\\\.d|neg\\\\.s|nop|nor|or|ori|round\\\\.w\\\\.d|round\\\\.w\\\\.s|sb|sc|sdc1|sh|sll|sllv|slt|slti|sltiu|sltu|sqrt\\\\.d|sqrt\\\\.s|sra|srav|srl|srlv|sub|sub\\\\.d|sub\\\\.s|subu|sw|swc1|swl|swr|syscall|teq|teqi|tge|tgei|tgeiu|tgeu|tlt|tlti|tltiu|tltu|trunc\\\\.w\\\\.d|trunc\\\\.w\\\\.s|xor|xori)\\\\b\",\"name\":\"support.function.mips\"},{\"match\":\"\\\\.(ascii|asciiz|byte|data|double|float|half|kdata|ktext|space|text|word|set\\\\s*(noat|at))\\\\b\",\"name\":\"storage.type.mips\"},{\"match\":\"\\\\.(align|extern||globl)\\\\b\",\"name\":\"storage.modifier.mips\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.label.mips\"}},\"match\":\"\\\\b([A-Za-z0-9_]+):\",\"name\":\"meta.function.label.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)(0|[2-9]|1[0-9]|2[0-5]|2[89]|3[0-1])\\\\b\",\"name\":\"variable.other.register.usable.by-number.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)(zero|v[01]|a[0-3]|t[0-9]|s[0-7]|gp|sp|fp|ra)\\\\b\",\"name\":\"variable.other.register.usable.by-name.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)(at|k[01]|1|2[67])\\\\b\",\"name\":\"variable.other.register.reserved.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)f([0-9]|1[0-9]|2[0-9]|3[0-1])\\\\b\",\"name\":\"variable.other.register.usable.floating-point.mips\"},{\"match\":\"\\\\b\\\\d+\\\\.\\\\d+\\\\b\",\"name\":\"constant.numeric.float.mips\"},{\"match\":\"\\\\b(\\\\d+|0(x|X)[a-fA-F0-9]+)\\\\b\",\"name\":\"constant.numeric.integer.mips\"},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.mips\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.mips\"}},\"name\":\"string.quoted.double.mips\",\"patterns\":[{\"match\":\"\\\\\\\\[rnt\\\\\\\\\\\"]\",\"name\":\"constant.character.escape.mips\"}]},{\"begin\":\"(^[ \\\\t]+)?(?=#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.mips\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.mips\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.number-sign.mips\"}]}],\"scopeName\":\"source.mips\",\"aliases\":[\"mips\"]}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"MIPS Assembly\",\"fileTypes\":[\"s\",\"mips\",\"spim\",\"asm\"],\"name\":\"mipsasm\",\"patterns\":[{\"match\":\"\\\\b(mul|abs|div|divu|mulo|mulou|neg|negu|not|rem|remu|rol|ror|li|seq|sge|sgeu|sgt|sgtu|sle|sleu|sne|b|beqz|bge|bgeu|bgt|bgtu|ble|bleu|blt|bltu|bnez|la|ld|ulh|ulhu|ulw|sd|ush|usw|move|mfc1\\\\.d|l\\\\.d|l\\\\.s|s\\\\.d|s\\\\.s)\\\\b\",\"name\":\"support.function.pseudo.mips\"},{\"match\":\"\\\\b(abs\\\\.d|abs\\\\.s|add|add\\\\.d|add\\\\.s|addi|addiu|addu|and|andi|bc1f|bc1t|beq|bgez|bgezal|bgtz|blez|bltz|bltzal|bne|break|c\\\\.eq\\\\.d|c\\\\.eq\\\\.s|c\\\\.le\\\\.d|c\\\\.le\\\\.s|c\\\\.lt\\\\.d|c\\\\.lt\\\\.s|ceil\\\\.w\\\\.d|ceil\\\\.w\\\\.s|clo|clz|cvt\\\\.d\\\\.s|cvt\\\\.d\\\\.w|cvt\\\\.s\\\\.d|cvt\\\\.s\\\\.w|cvt\\\\.w\\\\.d|cvt\\\\.w\\\\.s|div|div\\\\.d|div\\\\.s|divu|eret|floor\\\\.w\\\\.d|floor\\\\.w\\\\.s|j|jal|jalr|jr|lb|lbu|lh|lhu|ll|lui|lw|lwc1|lwl|lwr|madd|maddu|mfc0|mfc1|mfhi|mflo|mov\\\\.d|mov\\\\.s|movf|movf\\\\.d|movf\\\\.s|movn|movn\\\\.d|movn\\\\.s|movt|movt\\\\.d|movt\\\\.s|movz|movz\\\\.d|movz\\\\.s|msub|mtc0|mtc1|mthi|mtlo|mul|mul\\\\.d|mul\\\\.s|mult|multu|neg\\\\.d|neg\\\\.s|nop|nor|or|ori|round\\\\.w\\\\.d|round\\\\.w\\\\.s|sb|sc|sdc1|sh|sll|sllv|slt|slti|sltiu|sltu|sqrt\\\\.d|sqrt\\\\.s|sra|srav|srl|srlv|sub|sub\\\\.d|sub\\\\.s|subu|sw|swc1|swl|swr|syscall|teq|teqi|tge|tgei|tgeiu|tgeu|tlt|tlti|tltiu|tltu|trunc\\\\.w\\\\.d|trunc\\\\.w\\\\.s|xor|xori)\\\\b\",\"name\":\"support.function.mips\"},{\"match\":\"\\\\.(ascii|asciiz|byte|data|double|float|half|kdata|ktext|space|text|word|set\\\\s*(noat|at))\\\\b\",\"name\":\"storage.type.mips\"},{\"match\":\"\\\\.(align|extern||globl)\\\\b\",\"name\":\"storage.modifier.mips\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.label.mips\"}},\"match\":\"\\\\b([A-Za-z0-9_]+):\",\"name\":\"meta.function.label.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)(0|[2-9]|1[0-9]|2[0-5]|2[89]|3[0-1])\\\\b\",\"name\":\"variable.other.register.usable.by-number.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)(zero|v[01]|a[0-3]|t[0-9]|s[0-7]|gp|sp|fp|ra)\\\\b\",\"name\":\"variable.other.register.usable.by-name.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)(at|k[01]|1|2[67])\\\\b\",\"name\":\"variable.other.register.reserved.mips\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.mips\"}},\"match\":\"(\\\\$)f([0-9]|1[0-9]|2[0-9]|3[0-1])\\\\b\",\"name\":\"variable.other.register.usable.floating-point.mips\"},{\"match\":\"\\\\b\\\\d+\\\\.\\\\d+\\\\b\",\"name\":\"constant.numeric.float.mips\"},{\"match\":\"\\\\b(\\\\d+|0(x|X)[a-fA-F0-9]+)\\\\b\",\"name\":\"constant.numeric.integer.mips\"},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.mips\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.mips\"}},\"name\":\"string.quoted.double.mips\",\"patterns\":[{\"match\":\"\\\\\\\\[rnt\\\\\\\\\\\"]\",\"name\":\"constant.character.escape.mips\"}]},{\"begin\":\"(^[ \\\\t]+)?(?=#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.mips\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.mips\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.number-sign.mips\"}]}],\"scopeName\":\"source.mips\",\"aliases\":[\"mips\"]}"))
2
2
 
3
3
  export default [
4
4
  lang