pi-umbra 0.3.0 → 0.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.
- package/README.md +3 -4
- package/node_modules/@shikijs/cli/dist/cli.d.mts +13 -6
- package/node_modules/@shikijs/cli/dist/cli.mjs +32 -27
- package/node_modules/@shikijs/cli/dist/{code-to-ansi-BNrZay-4.mjs → code-to-ansi-Dmm_CuZ9.mjs} +15 -7
- package/node_modules/@shikijs/cli/dist/index.d.mts +24 -3
- package/node_modules/@shikijs/cli/dist/index.mjs +1 -1
- package/node_modules/@shikijs/cli/package.json +3 -3
- package/node_modules/@shikijs/core/dist/index.d.mts +28 -28
- package/node_modules/@shikijs/core/dist/index.mjs +15 -12
- package/node_modules/@shikijs/core/package.json +4 -4
- package/node_modules/@shikijs/engine-javascript/dist/{engine-compile-Bdn9ihA2.d.mts → engine-compile-CtqiSkRk.d.mts} +5 -0
- package/node_modules/@shikijs/engine-javascript/dist/engine-compile.d.mts +1 -1
- package/node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs +2 -4
- package/node_modules/@shikijs/engine-javascript/dist/engine-raw.d.mts +2 -3
- package/node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs +2 -4
- package/node_modules/@shikijs/engine-javascript/dist/index.d.mts +1 -1
- package/node_modules/@shikijs/engine-javascript/dist/index.mjs +1 -1
- package/node_modules/@shikijs/engine-javascript/dist/string-TLTPtCPs.mjs +115 -0
- package/node_modules/@shikijs/engine-javascript/package.json +3 -3
- package/node_modules/@shikijs/engine-oniguruma/package.json +3 -3
- package/node_modules/@shikijs/langs/dist/ada.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/ahk.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/beancount.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/coq.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/csharp.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/css.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/dart.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/dotenv.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/emacs-lisp.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/gn.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/handlebars.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/julia.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/latex.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/luau.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/marko.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/moonbit.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/nextflow-groovy.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/nextflow.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/nushell.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/php.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/powershell.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/ruby.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/rust.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/sql.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/svelte.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/twig.mjs +3 -3
- package/node_modules/@shikijs/langs/dist/typespec.mjs +1 -1
- package/node_modules/@shikijs/langs/package.json +3 -3
- package/node_modules/@shikijs/primitive/dist/index.d.mts +31 -32
- package/node_modules/@shikijs/primitive/dist/index.mjs +2 -1
- package/node_modules/@shikijs/primitive/package.json +3 -3
- package/node_modules/@shikijs/themes/dist/monokai.mjs +1 -1
- package/node_modules/@shikijs/themes/dist/one-dark-pro.mjs +1 -1
- package/node_modules/@shikijs/themes/dist/red.mjs +1 -1
- package/node_modules/@shikijs/themes/dist/solarized-dark.mjs +1 -1
- package/node_modules/@shikijs/themes/dist/solarized-light.mjs +1 -1
- package/node_modules/@shikijs/themes/package.json +3 -3
- package/node_modules/@shikijs/types/dist/index.d.mts +76 -76
- package/node_modules/@shikijs/types/package.json +1 -1
- package/node_modules/pi-umbra-copy-chat/README.md +4 -7
- package/node_modules/pi-umbra-copy-chat/extensions/umbra-copy-chat.ts +16 -54
- package/node_modules/pi-umbra-copy-chat/package.json +1 -1
- package/node_modules/pi-umbra-help/checks/umbra-help.check.ts +10 -1
- package/node_modules/pi-umbra-help/extensions/umbra-help.ts +31 -0
- package/node_modules/pi-umbra-help/package.json +1 -1
- package/node_modules/pi-umbra-inputbar/README.md +1 -1
- package/node_modules/pi-umbra-inputbar/extensions/umbra-inputbar.ts +1 -1
- package/node_modules/pi-umbra-inputbar/package.json +2 -2
- package/node_modules/pi-umbra-shimmer/package.json +1 -1
- package/node_modules/pi-umbra-shimmer/patch.mjs +23 -21
- package/node_modules/pi-umbra-skill-matcher/package.json +1 -1
- package/node_modules/pi-umbra-skill-matcher/patch.mjs +7 -0
- package/node_modules/pi-umbra-subagents/README.md +24 -6
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/bar/bar-line.ts +250 -102
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/bar.check.ts +133 -66
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/bar.ts +59 -27
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/fan/index.ts +53 -8
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/fan/spec.ts +24 -14
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/fan/store.check.ts +132 -5
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/fan/store.ts +156 -64
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/fan/worktree.ts +156 -0
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/panel.ts +1 -1
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/skills/delegate/state.ts +19 -0
- package/node_modules/pi-umbra-subagents/extensions/umbra-subagents/skills/fan/SKILL.md +25 -4
- package/node_modules/pi-umbra-subagents/package.json +2 -2
- package/node_modules/pi-umbra-theme/checks/umbra-background.check.ts +7 -1
- package/node_modules/pi-umbra-theme/extensions/umbra-background.ts +2 -1
- package/node_modules/pi-umbra-theme/package.json +3 -3
- package/node_modules/shiki/dist/bundle-full.d.mts +4 -4
- package/node_modules/shiki/dist/bundle-web.d.mts +9 -9
- package/node_modules/shiki/dist/types.d.mts +3 -3
- package/node_modules/shiki/package.json +10 -10
- package/package.json +9 -12
- package/node_modules/@shikijs/engine-javascript/dist/scanner-DX8LRFGE.mjs +0 -77
- package/node_modules/pi-umbra-rename/LICENSE +0 -21
- package/node_modules/pi-umbra-rename/README.md +0 -18
- package/node_modules/pi-umbra-rename/checks/umbra-rename.check.ts +0 -55
- package/node_modules/pi-umbra-rename/extensions/umbra-rename.ts +0 -22
- package/node_modules/pi-umbra-rename/package.json +0 -36
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import css from './css.mjs'
|
|
2
1
|
import javascript from './javascript.mjs'
|
|
2
|
+
import css from './css.mjs'
|
|
3
3
|
import scss from './scss.mjs'
|
|
4
4
|
import php from './php.mjs'
|
|
5
5
|
import python from './python.mjs'
|
|
6
6
|
import ruby from './ruby.mjs'
|
|
7
7
|
|
|
8
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Twig\",\"fileTypes\":[\"twig\",\"html.twig\"],\"firstLineMatch\":\"<!(?i:DOCTYPE)|<(?i:html)|<\\\\?(?i:php)|\\\\{\\\\{|\\\\{%|\\\\{#\",\"foldingStartMarker\":\"(<(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)\\\\b.*?>|<!--(?!.*--\\\\s*>)|^<!-- #tminclude (?>.*?-->)$|\\\\{%\\\\s+(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))\",\"foldingStopMarker\":\"(</(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)>|^(?!.*?<!--).*?--\\\\s*>|^<!-- end tminclude -->$|\\\\{%\\\\s+end(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))\",\"name\":\"twig\",\"patterns\":[{\"begin\":\"(<)([0-:A-Za-z]++)(?=[^>]*></\\\\2>)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.html\"}},\"end\":\"(>(<)/)(\\\\2)(>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"meta.scope.between-tag-pair.html\"},\"3\":{\"name\":\"entity.name.tag.html\"},\"4\":{\"name\":\"punctuation.definition.tag.html\"}},\"name\":\"meta.tag.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(<\\\\?)(xml)\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.xml.html\"}},\"end\":\"(\\\\?>)\",\"name\":\"meta.tag.preprocessor.xml.html\",\"patterns\":[{\"include\":\"#tag-generic-attribute\"},{\"include\":\"#string-double-quoted\"},{\"include\":\"#string-single-quoted\"}]},{\"begin\":\"<!--\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.html\"}},\"end\":\"--\\\\s*>\",\"name\":\"comment.block.html\",\"patterns\":[{\"match\":\"--\",\"name\":\"invalid.illegal.bad-comments-or-CDATA.html\"},{\"include\":\"#embedded-code\"}]},{\"begin\":\"<!\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.tag.html\"}},\"end\":\">\",\"name\":\"meta.tag.sgml.html\",\"patterns\":[{\"begin\":\"(?i:DOCTYPE)\",\"captures\":{\"1\":{\"name\":\"entity.name.tag.doctype.html\"}},\"end\":\"(?=>)\",\"name\":\"meta.tag.sgml.doctype.html\",\"patterns\":[{\"match\":\"\\\"[^\\\">]*\\\"\",\"name\":\"string.quoted.double.doctype.identifiers-and-DTDs.html\"}]},{\"begin\":\"\\\\[CDATA\\\\[\",\"end\":\"]](?=>)\",\"name\":\"constant.other.inline-data.html\"},{\"match\":\"(\\\\s*)(?!--|>)\\\\S(\\\\s*)\",\"name\":\"invalid.illegal.bad-comments-or-CDATA.html\"}]},{\"include\":\"#embedded-code\"},{\"begin\":\"(?:^\\\\s+)?(<)((?i:style))\\\\b(?![^>]*/>)\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.style.html\"},\"3\":{\"name\":\"punctuation.definition.tag.html\"}},\"end\":\"(</)((?i:style))(>)(?:\\\\s*\\\\n)?\",\"name\":\"source.css.embedded.html\",\"patterns\":[{\"include\":\"#tag-stuff\"},{\"begin\":\"(>)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"}},\"end\":\"(?=</(?i:style))\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"source.css\"}]}]},{\"begin\":\"(?:^\\\\s+)?(<)((?i:script))\\\\b(?![^>]*/>)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.script.html\"}},\"end\":\"(?<=</(script|SCRIPT))(>)(?:\\\\s*\\\\n)?\",\"endCaptures\":{\"2\":{\"name\":\"punctuation.definition.tag.html\"}},\"name\":\"source.js.embedded.html\",\"patterns\":[{\"include\":\"#tag-stuff\"},{\"begin\":\"(?<!</(?:script|SCRIPT))(>)\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.script.html\"}},\"end\":\"(</)((?i:script))\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.js\"}},\"match\":\"(//).*?((?=</script)|$\\\\n?)\",\"name\":\"comment.line.double-slash.js\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.js\"}},\"end\":\"\\\\*/|(?=</script)\",\"name\":\"comment.block.js\"},{\"include\":\"#php\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-statement-tag\"},{\"include\":\"#twig-comment-tag\"},{\"include\":\"source.js\"}]}]},{\"begin\":\"(?i)(?<=\\\\{%\\\\s(?:|include)js\\\\s%})\",\"end\":\"(?i)(?=\\\\{%\\\\send(?:|include)js\\\\s%})\",\"name\":\"source.js.embedded.twig\",\"patterns\":[{\"include\":\"source.js\"}]},{\"begin\":\"(?i)(?<=\\\\{%\\\\s(?:|include|includehires)css\\\\s%})\",\"end\":\"(?i)(?=\\\\{%\\\\send(?:|include|includehires)css\\\\s%})\",\"name\":\"source.css.embedded.twig\",\"patterns\":[{\"include\":\"source.css\"}]},{\"begin\":\"(?i)(?<=\\\\{%\\\\s(?:|include|includehires)scss\\\\s%})\",\"end\":\"(?i)(?=\\\\{%\\\\send(?:|include|includehires)scss\\\\s%})\",\"name\":\"source.css.scss.embedded.twig\",\"patterns\":[{\"include\":\"source.css.scss\"}]},{\"begin\":\"(</?)((?i:body|head|html))\\\\b\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.structure.any.html\"}},\"end\":\"(>)\",\"name\":\"meta.tag.structure.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.begin.html\"},\"2\":{\"name\":\"entity.name.tag.block.any.html\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.end.html\"}},\"name\":\"meta.tag.block.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|[qs]|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.begin.html\"},\"2\":{\"name\":\"entity.name.tag.inline.any.html\"}},\"end\":\"((?: ?/)?>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.end.html\"}},\"name\":\"meta.tag.inline.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(</?)([0-:A-Za-z]+)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.begin.html\"},\"2\":{\"name\":\"entity.name.tag.other.html\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.end.html\"}},\"name\":\"meta.tag.other.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"include\":\"#entities\"},{\"match\":\"<>\",\"name\":\"invalid.illegal.incomplete.html\"},{\"match\":\"<\",\"name\":\"invalid.illegal.bad-angle-bracket.html\"},{\"include\":\"#twig-verbatim\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-statement-tag\"},{\"include\":\"#twig-comment-tag\"}],\"repository\":{\"embedded-code\":{\"patterns\":[{\"include\":\"#ruby\"},{\"include\":\"#php\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-statement-tag\"},{\"include\":\"#twig-comment-tag\"},{\"include\":\"#python\"}]},\"entities\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.entity.html\"},\"3\":{\"name\":\"punctuation.definition.entity.html\"}},\"match\":\"(&)([0-9A-Za-z]+|#[0-9]+|#x\\\\h+)(;)\",\"name\":\"constant.character.entity.html\"},{\"match\":\"&\",\"name\":\"invalid.illegal.bad-ampersand.html\"}]},\"php\":{\"begin\":\"(?=(^\\\\s*)?<\\\\?)\",\"end\":\"(?!(^\\\\s*)?<\\\\?)\",\"patterns\":[{\"include\":\"source.php\"}]},\"python\":{\"begin\":\"^\\\\s*<\\\\?python(?!.*\\\\?>)\",\"end\":\"\\\\?>(?:\\\\s*$\\\\n)?\",\"name\":\"source.python.embedded.html\",\"patterns\":[{\"include\":\"source.python\"}]},\"ruby\":{\"patterns\":[{\"begin\":\"<%+#\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.erb\"}},\"end\":\"%>\",\"name\":\"comment.block.erb\"},{\"begin\":\"<%+(?!>)=?\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.ruby\"}},\"end\":\"-?%>\",\"name\":\"source.ruby.embedded.html\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.ruby\"}},\"match\":\"(#).*?(?=-?%>)\",\"name\":\"comment.line.number-sign.ruby\"},{\"include\":\"source.ruby\"}]},{\"begin\":\"<\\\\?r(?!>)=?\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.ruby.nitro\"}},\"end\":\"-?\\\\?>\",\"name\":\"source.ruby.nitro.embedded.html\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.ruby.nitro\"}},\"match\":\"(#).*?(?=-?\\\\?>)\",\"name\":\"comment.line.number-sign.ruby.nitro\"},{\"include\":\"source.ruby\"}]}]},\"string-double-quoted\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.double.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]},\"string-single-quoted\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.single.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]},\"tag-generic-attribute\":{\"match\":\"\\\\b([-:A-Za-z]+)\",\"name\":\"entity.other.attribute-name.html\"},\"tag-id-attribute\":{\"begin\":\"\\\\b(id)\\\\b\\\\s*(=)\",\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.id.html\"},\"2\":{\"name\":\"punctuation.separator.key-value.html\"}},\"end\":\"(?<=[\\\"'])\",\"name\":\"meta.attribute-with-value.id.html\",\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"contentName\":\"meta.toc-list.id.html\",\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.double.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"contentName\":\"meta.toc-list.id.html\",\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.single.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]}]},\"tag-stuff\":{\"patterns\":[{\"include\":\"#tag-id-attribute\"},{\"include\":\"#tag-generic-attribute\"},{\"include\":\"#string-double-quoted\"},{\"include\":\"#string-single-quoted\"},{\"include\":\"#embedded-code\"}]},\"twig-arrays\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.twig\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.twig\"}},\"name\":\"meta.array.twig\",\"patterns\":[{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"},{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"match\":\",\",\"name\":\"punctuation.separator.object.twig\"}]},\"twig-comment-tag\":{\"begin\":\"\\\\{#-?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.twig\"}},\"end\":\"-?#}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.twig\"}},\"name\":\"comment.block.twig\"},\"twig-constants\":{\"patterns\":[{\"match\":\"(?i)(?<=[(,:\\\\[{\\\\s])(?:true|false|null|none)(?=[]),}\\\\s])\",\"name\":\"constant.language.twig\"},{\"match\":\"(?<=[(,:\\\\[{\\\\s]|\\\\.\\\\.|\\\\*\\\\*)[0-9]+(?:\\\\.[0-9]+)?(?=[]),}\\\\s]|\\\\.\\\\.|\\\\*\\\\*)\",\"name\":\"constant.numeric.twig\"}]},\"twig-filters\":{\"captures\":{\"1\":{\"name\":\"support.function.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)(abs|capitalize|e(?:scape)?|first|join|(?:json|url)_encode|keys|last|length|lower|nl2br|number_format|raw|reverse|round|sort|striptags|title|trim|upper)(?=[]),:|}\\\\s]|\\\\.\\\\.|\\\\*\\\\*)\"},\"twig-filters-ud\":{\"captures\":{\"1\":{\"name\":\"meta.function-call.other.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)\"},\"twig-filters-warg\":{\"begin\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)(batch|convert_encoding|date|date_modify|default|e(?:scape)?|format|join|merge|number_format|replace|round|slice|split|trim)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.twig\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-filters-warg-ud\":{\"begin\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.function-call.other.twig\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-functions\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.twig\"},\"2\":{\"name\":\"support.function.twig\"}},\"match\":\"(?<=is\\\\s)(?:(not)\\\\s+)?(defined|empty|even|iterable|odd|null|same\\\\s+as)\"},\"twig-functions-warg\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])(attribute|block|constant|cycle|date|divisible by|dump|include|max|min|parent|random|range|same as|source|template_from_string)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.twig\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"}]},\"twig-hashes\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.hash.begin.twig\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.hash.end.twig\"}},\"name\":\"meta.hash.twig\",\"patterns\":[{\"include\":\"#twig-hashes\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"match\":\":\",\"name\":\"punctuation.separator.key-value.twig\"},{\"match\":\",\",\"name\":\"punctuation.separator.object.twig\"}]},\"twig-keywords\":{\"match\":\"(?<=\\\\s)((?:end)?(?:autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim)|as|do|else|elseif|extends|flush|from|ignore missing|import|include|only|types|use|with)(?=\\\\s)\",\"name\":\"keyword.control.twig\"},\"twig-macros\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(?:(\\\\.)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*))?(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.function-call.twig\"},\"2\":{\"name\":\"punctuation.separator.property.twig\"},\"3\":{\"name\":\"variable.other.property.twig\"},\"4\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-objects\":{\"captures\":{\"1\":{\"name\":\"variable.other.twig\"}},\"match\":\"(?<=[(,:\\\\[{\\\\s])([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(?=[](),.:\\\\[|}\\\\s])\"},\"twig-operators\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.operator.arithmetic.twig\"}},\"match\":\"(?<=\\\\s)([-+]|//?|%|\\\\*\\\\*?)(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.assignment.twig\"}},\"match\":\"(?<=\\\\s)([=~])(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.bitwise.twig\"}},\"match\":\"(?<=\\\\s)(b-(?:and|or|xor))(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.comparison.twig\"}},\"match\":\"(?<=\\\\s)([!=]=|<=?|>=?|(?:not )?in|is(?: not)?|(?:ends|starts) with|matches)(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.twig\"}},\"match\":\"(?<=\\\\s)([:?]|\\\\?:|\\\\?\\\\?|and|not|or)(?=\\\\s)\"},{\"captures\":{\"0\":{\"name\":\"keyword.operator.other.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ])\\\\.\\\\.(?=[\\\"'0-9A-Z_a-z\\\\x7F-ÿ])\"},{\"captures\":{\"0\":{\"name\":\"keyword.operator.other.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z}\\\\x7F-ÿ])\\\\|(?=[A-Z_a-z\\\\x7F-ÿ])\"}]},\"twig-print-tag\":{\"begin\":\"\\\\{\\\\{-?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"end\":\"-?}}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"name\":\"meta.tag.template.value.twig\",\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-properties\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.property.twig\"},\"2\":{\"name\":\"variable.other.property.twig\"}},\"match\":\"(?<=[0-9A-Z_a-z\\\\x7F-ÿ])(\\\\.)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(?=[]),.:\\\\[|}\\\\s])\"},{\"begin\":\"(?<=[0-9A-Z_a-z\\\\x7F-ÿ])(\\\\.)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.property.twig\"},\"2\":{\"name\":\"variable.other.property.twig\"},\"3\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.section.array.begin.twig\"},\"2\":{\"name\":\"variable.other.property.twig\"},\"3\":{\"name\":\"punctuation.section.array.end.twig\"},\"4\":{\"name\":\"punctuation.section.array.begin.twig\"},\"5\":{\"name\":\"variable.other.property.twig\"},\"6\":{\"name\":\"punctuation.section.array.end.twig\"},\"7\":{\"name\":\"punctuation.section.array.begin.twig\"},\"8\":{\"name\":\"variable.other.property.twig\"},\"9\":{\"name\":\"punctuation.section.array.end.twig\"}},\"match\":\"(?<=[]0-9A-Z_a-z\\\\x7F-ÿ])(?:(\\\\[)('[A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*')(])|(\\\\[)(\\\"[A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*\\\")(])|(\\\\[)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(]))\"}]},\"twig-statement-tag\":{\"begin\":\"\\\\{%-?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"end\":\"-?%}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"name\":\"meta.tag.template.block.twig\",\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-keywords\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-strings\":{\"patterns\":[{\"begin\":\"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.twig\"}},\"end\":\"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.twig\"}},\"name\":\"string.quoted.single.twig\"},{\"begin\":\"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.twig\"}},\"end\":\"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.twig\"}},\"name\":\"string.quoted.double.twig\"}]},\"twig-verbatim\":{\"begin\":\"(\\\\{%-?)\\\\s*(verbatim)\\\\s*(-?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.definition.tag.twig\"}},\"contentName\":\"string.unquoted.verbatim.twig\",\"end\":\"(\\\\{%-?)\\\\s*(endverbatim)\\\\s*(-?%})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.definition.tag.twig\"}},\"name\":\"meta.tag.template.verbatim.twig\"}},\"scopeName\":\"text.html.twig\",\"embeddedLangs\":[\"css\",\"javascript\",\"scss\",\"php\",\"python\",\"ruby\"]}"))
|
|
8
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Twig\",\"fileTypes\":[\"twig\",\"html.twig\"],\"firstLineMatch\":\"<!(?i:DOCTYPE)|<(?i:html)|<\\\\?(?i:php)|\\\\{\\\\{|\\\\{%|\\\\{#\",\"foldingStartMarker\":\"(<(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)\\\\b.*?>|<!--(?!.*--\\\\s*>)|^<!-- #tminclude (?>.*?-->)$|\\\\{%\\\\s+(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))\",\"foldingStopMarker\":\"(</(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)>|^(?!.*?<!--).*?--\\\\s*>|^<!-- end tminclude -->$|\\\\{%\\\\s+end(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))\",\"injections\":{\"L:text.html.twig -meta.tag.template -comment.block.twig -string.unquoted.verbatim.twig\":{\"patterns\":[{\"include\":\"#twig-verbatim\"},{\"include\":\"#twig-embedded-blocks\"},{\"include\":\"#twig-comment-tag\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-injected-statement\"}]}},\"name\":\"twig\",\"patterns\":[{\"include\":\"#twig-verbatim\"},{\"begin\":\"(\\\\{%[-~]?)\\\\s*(js|includejs|javascript)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.section.tag.twig\"}},\"contentName\":\"source.js.embedded.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*end\\\\2\\\\s*([-~]?%})\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.twig\"}},\"patterns\":[{\"include\":\"source.js\"}]},{\"begin\":\"(\\\\{%[-~]?)\\\\s*((?:|include|includehires)css)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.section.tag.twig\"}},\"contentName\":\"source.css.embedded.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*end\\\\2\\\\s*([-~]?%})\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.twig\"}},\"patterns\":[{\"include\":\"source.css\"}]},{\"begin\":\"(\\\\{%[-~]?)\\\\s*((?:|include|includehires)scss)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.section.tag.twig\"}},\"contentName\":\"source.css.scss.embedded.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*end\\\\2\\\\s*([-~]?%})\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.twig\"}},\"patterns\":[{\"include\":\"source.css.scss\"}]},{\"begin\":\"(<)([-.0-:A-Za-z]++)(?=[^>]*></\\\\2>)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.html\"}},\"end\":\"(>(<)/)(\\\\2)(>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"meta.scope.between-tag-pair.html\"},\"3\":{\"name\":\"entity.name.tag.html\"},\"4\":{\"name\":\"punctuation.definition.tag.html\"}},\"name\":\"meta.tag.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(<\\\\?)(xml)\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.xml.html\"}},\"end\":\"(\\\\?>)\",\"name\":\"meta.tag.preprocessor.xml.html\",\"patterns\":[{\"include\":\"#tag-generic-attribute\"},{\"include\":\"#string-double-quoted\"},{\"include\":\"#string-single-quoted\"}]},{\"begin\":\"<!--\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.html\"}},\"end\":\"--\\\\s*>\",\"name\":\"comment.block.html\",\"patterns\":[{\"match\":\"--\",\"name\":\"invalid.illegal.bad-comments-or-CDATA.html\"},{\"include\":\"#embedded-code\"}]},{\"begin\":\"<!\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.tag.html\"}},\"end\":\">\",\"name\":\"meta.tag.sgml.html\",\"patterns\":[{\"begin\":\"(?i:DOCTYPE)\",\"captures\":{\"1\":{\"name\":\"entity.name.tag.doctype.html\"}},\"end\":\"(?=>)\",\"name\":\"meta.tag.sgml.doctype.html\",\"patterns\":[{\"match\":\"\\\"[^\\\">]*\\\"\",\"name\":\"string.quoted.double.doctype.identifiers-and-DTDs.html\"}]},{\"begin\":\"\\\\[CDATA\\\\[\",\"end\":\"]](?=>)\",\"name\":\"constant.other.inline-data.html\"},{\"match\":\"(\\\\s*)(?!--|>)\\\\S(\\\\s*)\",\"name\":\"invalid.illegal.bad-comments-or-CDATA.html\"}]},{\"include\":\"#embedded-code\"},{\"begin\":\"(?:^\\\\s+)?(<)((?i:style))\\\\b(?![^>]*/>)\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.style.html\"},\"3\":{\"name\":\"punctuation.definition.tag.html\"}},\"end\":\"(</)((?i:style))(>)(?:\\\\s*\\\\n)?\",\"name\":\"source.css.embedded.html\",\"patterns\":[{\"include\":\"#tag-stuff\"},{\"begin\":\"(>)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"}},\"end\":\"(?=</(?i:style))\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"source.css\"}]}]},{\"begin\":\"(?:^\\\\s+)?(<)((?i:script))\\\\b(?![^>]*/>)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.script.html\"}},\"end\":\"(?<=</(script|SCRIPT))(>)(?:\\\\s*\\\\n)?\",\"endCaptures\":{\"2\":{\"name\":\"punctuation.definition.tag.html\"}},\"name\":\"source.js.embedded.html\",\"patterns\":[{\"include\":\"#tag-stuff\"},{\"begin\":\"(?<!</(?:script|SCRIPT))(>)\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.script.html\"}},\"end\":\"(</)((?i:script))\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.js\"}},\"match\":\"(//).*?((?=</script)|$\\\\n?)\",\"name\":\"comment.line.double-slash.js\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.js\"}},\"end\":\"\\\\*/|(?=</script)\",\"name\":\"comment.block.js\"},{\"include\":\"#php\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-statement-tag\"},{\"include\":\"#twig-comment-tag\"},{\"include\":\"source.js\"}]}]},{\"begin\":\"(</?)((?i:body|head|html))\\\\b\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.tag.html\"},\"2\":{\"name\":\"entity.name.tag.structure.any.html\"}},\"end\":\"(>)\",\"name\":\"meta.tag.structure.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.begin.html\"},\"2\":{\"name\":\"entity.name.tag.block.any.html\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.end.html\"}},\"name\":\"meta.tag.block.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|[qs]|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.begin.html\"},\"2\":{\"name\":\"entity.name.tag.inline.any.html\"}},\"end\":\"((?: ?/)?>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.end.html\"}},\"name\":\"meta.tag.inline.any.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"begin\":\"(</?)([-.0-:A-Za-z]+)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.begin.html\"},\"2\":{\"name\":\"entity.name.tag.other.html\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.end.html\"}},\"name\":\"meta.tag.other.html\",\"patterns\":[{\"include\":\"#tag-stuff\"}]},{\"include\":\"#entities\"},{\"match\":\"<>\",\"name\":\"invalid.illegal.incomplete.html\"},{\"match\":\"<\",\"name\":\"invalid.illegal.bad-angle-bracket.html\"},{\"include\":\"#twig-verbatim\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-statement-tag\"},{\"include\":\"#twig-comment-tag\"}],\"repository\":{\"embedded-code\":{\"patterns\":[{\"include\":\"#twig-verbatim\"},{\"include\":\"#ruby\"},{\"include\":\"#php\"},{\"include\":\"#twig-print-tag\"},{\"include\":\"#twig-statement-tag\"},{\"include\":\"#twig-comment-tag\"},{\"include\":\"#python\"}]},\"entities\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.entity.html\"},\"3\":{\"name\":\"punctuation.definition.entity.html\"}},\"match\":\"(&)([0-9A-Za-z]+|#[0-9]+|#x\\\\h+)(;)\",\"name\":\"constant.character.entity.html\"},{\"match\":\"&\",\"name\":\"invalid.illegal.bad-ampersand.html\"}]},\"php\":{\"begin\":\"(?=(^\\\\s*)?<\\\\?)\",\"end\":\"(?!(^\\\\s*)?<\\\\?)\",\"patterns\":[{\"include\":\"source.php\"}]},\"python\":{\"begin\":\"^\\\\s*<\\\\?python(?!.*\\\\?>)\",\"end\":\"\\\\?>(?:\\\\s*$\\\\n)?\",\"name\":\"source.python.embedded.html\",\"patterns\":[{\"include\":\"source.python\"}]},\"ruby\":{\"patterns\":[{\"begin\":\"<%+#\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.erb\"}},\"end\":\"%>\",\"name\":\"comment.block.erb\"},{\"begin\":\"<%+(?!>)=?\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.ruby\"}},\"end\":\"-?%>\",\"name\":\"source.ruby.embedded.html\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.ruby\"}},\"match\":\"(#).*?(?=-?%>)\",\"name\":\"comment.line.number-sign.ruby\"},{\"include\":\"source.ruby\"}]},{\"begin\":\"<\\\\?r(?!>)=?\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.ruby.nitro\"}},\"end\":\"-?\\\\?>\",\"name\":\"source.ruby.nitro.embedded.html\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.ruby.nitro\"}},\"match\":\"(#).*?(?=-?\\\\?>)\",\"name\":\"comment.line.number-sign.ruby.nitro\"},{\"include\":\"source.ruby\"}]}]},\"string-double-quoted\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.double.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]},\"string-single-quoted\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.single.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]},\"tag-generic-attribute\":{\"match\":\"\\\\b([-:A-Za-z]+)\",\"name\":\"entity.other.attribute-name.html\"},\"tag-id-attribute\":{\"begin\":\"\\\\b(id)\\\\b\\\\s*(=)\",\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.id.html\"},\"2\":{\"name\":\"punctuation.separator.key-value.html\"}},\"end\":\"(?<=[\\\"'])\",\"name\":\"meta.attribute-with-value.id.html\",\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"contentName\":\"meta.toc-list.id.html\",\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.double.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.html\"}},\"contentName\":\"meta.toc-list.id.html\",\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.html\"}},\"name\":\"string.quoted.single.html\",\"patterns\":[{\"include\":\"#embedded-code\"},{\"include\":\"#entities\"}]}]},\"tag-stuff\":{\"patterns\":[{\"begin\":\"(=)\\\\s*(?=[^\\\"'<=>`\\\\s])\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.key-value.html\"}},\"contentName\":\"string.unquoted.html\",\"end\":\"(?=[>\\\\s])\",\"patterns\":[{\"include\":\"#embedded-code\"}]},{\"include\":\"#tag-id-attribute\"},{\"include\":\"#tag-generic-attribute\"},{\"include\":\"#string-double-quoted\"},{\"include\":\"#string-single-quoted\"},{\"include\":\"#embedded-code\"}]},\"twig-arrays\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.twig\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.twig\"}},\"name\":\"meta.array.twig\",\"patterns\":[{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"},{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"match\":\",\",\"name\":\"punctuation.separator.object.twig\"}]},\"twig-comment-tag\":{\"begin\":\"\\\\{#[-~]?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.begin.twig\"}},\"end\":\"[-~]?#}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.end.twig\"}},\"name\":\"comment.block.twig\"},\"twig-constants\":{\"patterns\":[{\"match\":\"(?i)(?<=[(,:\\\\[{\\\\s])(?:true|false|null|none)(?=[]),}\\\\s])\",\"name\":\"constant.language.twig\"},{\"match\":\"(?<=[(,:\\\\[{\\\\s]|\\\\.\\\\.|\\\\*\\\\*)[0-9]+(?:\\\\.[0-9]+)?(?=[]),}\\\\s]|\\\\.\\\\.|\\\\*\\\\*)\",\"name\":\"constant.numeric.twig\"}]},\"twig-embedded-blocks\":{\"patterns\":[{\"begin\":\"(\\\\{%[-~]?)\\\\s*(js|includejs|javascript)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.section.tag.twig\"}},\"contentName\":\"source.js.embedded.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*end\\\\2\\\\s*([-~]?%})\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.twig\"}},\"patterns\":[{\"include\":\"source.js\"}]},{\"begin\":\"(\\\\{%[-~]?)\\\\s*((?:|include|includehires)css)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.section.tag.twig\"}},\"contentName\":\"source.css.embedded.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*end\\\\2\\\\s*([-~]?%})\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.twig\"}},\"patterns\":[{\"include\":\"source.css\"}]},{\"begin\":\"(\\\\{%[-~]?)\\\\s*((?:|include|includehires)scss)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.section.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.section.tag.twig\"}},\"contentName\":\"source.css.scss.embedded.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*end\\\\2\\\\s*([-~]?%})\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.twig\"}},\"patterns\":[{\"include\":\"source.css.scss\"}]}]},\"twig-filters\":{\"captures\":{\"1\":{\"name\":\"support.function.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)(default|abs|capitalize|e(?:scape)?|first|join|(?:json|url)_encode|keys|last|length|lower|nl2br|number_format|raw|reverse|round|sort|striptags|title|trim|upper)(?=[]),:|}\\\\s]|\\\\.\\\\.|\\\\*\\\\*)\"},\"twig-filters-ud\":{\"captures\":{\"1\":{\"name\":\"meta.function-call.other.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)\"},\"twig-filters-warg\":{\"begin\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)(batch|convert_encoding|date|date_modify|default|e(?:scape)?|format|join|merge|number_format|replace|round|slice|split|trim)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.twig\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-filters-warg-ud\":{\"begin\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ]\\\\||\\\\{%\\\\sfilter\\\\s)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.function-call.other.twig\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-functions\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.twig\"},\"2\":{\"name\":\"support.function.twig\"}},\"match\":\"(?<=is\\\\s)(?:(not)\\\\s+)?(defined|empty|even|iterable|odd|null|same\\\\s+as)\"},\"twig-functions-warg\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])(attribute|block|constant|cycle|date|divisible by|dump|include|max|min|parent|random|range|same as|source|template_from_string)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.twig\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"}]},\"twig-hashes\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.hash.begin.twig\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.hash.end.twig\"}},\"name\":\"meta.hash.twig\",\"patterns\":[{\"include\":\"#twig-hashes\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"match\":\":\",\"name\":\"punctuation.separator.key-value.twig\"},{\"match\":\",\",\"name\":\"punctuation.separator.object.twig\"}]},\"twig-injected-statement\":{\"begin\":\"\\\\{%(?![-~]?\\\\s*end(?:js|javascript|includejs|css|includecss|includehirescss|scss|includescss|includehiresscss)\\\\b)[-~]?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"end\":\"[-~]?%}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"name\":\"meta.tag.template.block.twig\",\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-keywords\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-keywords\":{\"match\":\"\\\\b(?:(?:end)?(?:apply|autoescape|block|cache|deprecated|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim|with)|as|do|else|elseif|extends|flush|from|import|include|only|types|use)\\\\b\",\"name\":\"keyword.control.twig\"},\"twig-macros\":{\"begin\":\"(?<=[(,:\\\\[{\\\\s])([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(?:(\\\\.)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*))?(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.function-call.twig\"},\"2\":{\"name\":\"punctuation.separator.property.twig\"},\"3\":{\"name\":\"variable.other.property.twig\"},\"4\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-objects\":{\"captures\":{\"1\":{\"name\":\"variable.other.twig\"}},\"match\":\"(?<=[(,:\\\\[{\\\\s])([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(?=[](),.:\\\\[|}\\\\s])\"},\"twig-operators\":{\"patterns\":[{\"match\":\"\\\\?\\\\?|\\\\?:|\\\\?\\\\.|<=>|=>|===|!==\",\"name\":\"keyword.operator.twig\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.arithmetic.twig\"}},\"match\":\"(?<=\\\\s)([-+]|//?|%|\\\\*\\\\*?)(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.assignment.twig\"}},\"match\":\"(?<=\\\\s)([=~])(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.bitwise.twig\"}},\"match\":\"(?<=\\\\s)(b-(?:and|or|xor))(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.comparison.twig\"}},\"match\":\"(?<=\\\\s)([!=]=|<=?|>=?|(?:not )?in|is(?: not)?|(?:ends|starts) with|matches)(?=\\\\s)\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.twig\"}},\"match\":\"(?<=\\\\s)([:?]|\\\\?:|\\\\?\\\\?|and|not|or)(?=\\\\s)\"},{\"captures\":{\"0\":{\"name\":\"keyword.operator.other.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z\\\\x7F-ÿ])\\\\.\\\\.(?=[\\\"'0-9A-Z_a-z\\\\x7F-ÿ])\"},{\"captures\":{\"0\":{\"name\":\"keyword.operator.other.twig\"}},\"match\":\"(?<=[]\\\"')0-9A-Z_a-z}\\\\x7F-ÿ])\\\\|(?=[A-Z_a-z\\\\x7F-ÿ])\"}]},\"twig-print-tag\":{\"begin\":\"\\\\{\\\\{[-~]?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"end\":\"[-~]?}}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"name\":\"meta.tag.template.value.twig\",\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-properties\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.property.twig\"},\"2\":{\"name\":\"variable.other.property.twig\"}},\"match\":\"(?<=[0-9A-Z_a-z\\\\x7F-ÿ])(\\\\.)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(?=[]),.:\\\\[|}\\\\s])\"},{\"begin\":\"(?<=[0-9A-Z_a-z\\\\x7F-ÿ])(\\\\.)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.property.twig\"},\"2\":{\"name\":\"variable.other.property.twig\"},\"3\":{\"name\":\"punctuation.definition.parameters.begin.twig\"}},\"contentName\":\"meta.function.arguments.twig\",\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.end.twig\"}},\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.section.array.begin.twig\"},\"2\":{\"name\":\"variable.other.property.twig\"},\"3\":{\"name\":\"punctuation.section.array.end.twig\"},\"4\":{\"name\":\"punctuation.section.array.begin.twig\"},\"5\":{\"name\":\"variable.other.property.twig\"},\"6\":{\"name\":\"punctuation.section.array.end.twig\"},\"7\":{\"name\":\"punctuation.section.array.begin.twig\"},\"8\":{\"name\":\"variable.other.property.twig\"},\"9\":{\"name\":\"punctuation.section.array.end.twig\"}},\"match\":\"(?<=[]0-9A-Z_a-z\\\\x7F-ÿ])(?:(\\\\[)('[A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*')(])|(\\\\[)(\\\"[A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*\\\")(])|(\\\\[)([A-Z_a-z\\\\x7F-ÿ][0-9A-Z_a-z\\\\x7F-ÿ]*)(]))\"}]},\"twig-statement-tag\":{\"begin\":\"\\\\{%[-~]?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"end\":\"[-~]?%}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.tag.twig\"}},\"name\":\"meta.tag.template.block.twig\",\"patterns\":[{\"include\":\"#twig-constants\"},{\"include\":\"#twig-keywords\"},{\"include\":\"#twig-operators\"},{\"include\":\"#twig-functions-warg\"},{\"include\":\"#twig-functions\"},{\"include\":\"#twig-macros\"},{\"include\":\"#twig-filters-warg\"},{\"include\":\"#twig-filters\"},{\"include\":\"#twig-filters-warg-ud\"},{\"include\":\"#twig-filters-ud\"},{\"include\":\"#twig-objects\"},{\"include\":\"#twig-properties\"},{\"include\":\"#twig-strings\"},{\"include\":\"#twig-arrays\"},{\"include\":\"#twig-hashes\"}]},\"twig-strings\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.twig\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.twig\"}},\"name\":\"string.quoted.single.twig\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.twig\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.twig\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.twig\"}},\"name\":\"string.quoted.double.twig\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.twig\"}]}]},\"twig-verbatim\":{\"begin\":\"(\\\\{%[-~]?)\\\\s*(verbatim)\\\\s*([-~]?%})\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.definition.tag.twig\"}},\"contentName\":\"string.unquoted.verbatim.twig\",\"end\":\"(\\\\{%[-~]?)\\\\s*(endverbatim)\\\\s*([-~]?%})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.twig\"},\"2\":{\"name\":\"keyword.control.twig\"},\"3\":{\"name\":\"punctuation.definition.tag.twig\"}},\"name\":\"meta.tag.template.verbatim.twig\"}},\"scopeName\":\"text.html.twig\",\"embeddedLangs\":[\"javascript\",\"css\",\"scss\",\"php\",\"python\",\"ruby\"]}"))
|
|
9
9
|
|
|
10
10
|
export default [
|
|
11
|
-
...css,
|
|
12
11
|
...javascript,
|
|
12
|
+
...css,
|
|
13
13
|
...scss,
|
|
14
14
|
...php,
|
|
15
15
|
...python,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"TypeSpec\",\"fileTypes\":[\"tsp\"],\"name\":\"typespec\",\"patterns\":[{\"include\":\"#statement\"}],\"repository\":{\"alias-id\":{\"begin\":\"(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.alias-id.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"alias-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(alias)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.alias-statement.typespec\",\"patterns\":[{\"include\":\"#alias-id\"},{\"include\":\"#type-parameters\"}]},\"augment-decorator-statement\":{\"begin\":\"((@@)\\\\b[$_[:alpha:]](?:[$_[:alnum:]]|\\\\.[$_[:alpha:]])*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.tag.tsp\"},\"2\":{\"name\":\"entity.name.tag.tsp\"}},\"end\":\"(?=([$_`[:alpha:]]))|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.augment-decorator-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#parenthesized-expression\"}]},\"block-comment\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.tsp\"},\"boolean-literal\":{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.tsp\"},\"callExpression\":{\"begin\":\"\\\\b([$_[:alpha:]](?:[$_[:alnum:]]|\\\\.[$_[:alpha:]])*)\\\\b\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.tsp\"},\"2\":{\"name\":\"punctuation.parenthesis.open.tsp\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.tsp\"}},\"name\":\"meta.callExpression.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"const-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(const)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"variable.name.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.const-statement.typespec\",\"patterns\":[{\"include\":\"#type-annotation\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#expression\"}]},\"decorator\":{\"begin\":\"((@)\\\\b[$_[:alpha:]](?:[$_[:alnum:]]|\\\\.[$_[:alpha:]])*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.tag.tsp\"},\"2\":{\"name\":\"entity.name.tag.tsp\"}},\"end\":\"(?=([$_`[:alpha:]]))|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.decorator.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#parenthesized-expression\"}]},\"decorator-declaration-statement\":{\"begin\":\"(?:(internal)\\\\s+)?(?:(extern)\\\\s+)?\\\\b(dec)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"keyword.other.tsp\"},\"4\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.decorator-declaration-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-parameters\"}]},\"directive\":{\"begin\":\"\\\\s*(#)\\\\b([$_[:alpha:]][$_[:alnum:]]*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.directive.name.tsp\"},\"2\":{\"name\":\"keyword.directive.name.tsp\"}},\"end\":\"$|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.directive.typespec\",\"patterns\":[{\"include\":\"#string-literal\"},{\"include\":\"#identifier-expression\"}]},\"doc-comment\":{\"begin\":\"/\\\\*\\\\*\",\"beginCaptures\":{\"0\":{\"name\":\"comment.block.tsp\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"comment.block.tsp\"}},\"name\":\"comment.block.tsp\",\"patterns\":[{\"include\":\"#doc-comment-block\"}]},\"doc-comment-block\":{\"patterns\":[{\"include\":\"#doc-comment-param\"},{\"include\":\"#doc-comment-return-tag\"},{\"include\":\"#doc-comment-unknown-tag\"}]},\"doc-comment-param\":{\"captures\":{\"1\":{\"name\":\"keyword.tag.tspdoc\"},\"2\":{\"name\":\"keyword.tag.tspdoc\"},\"3\":{\"name\":\"variable.name.tsp\"}},\"match\":\"((@)(?:param|template|prop))\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\b\",\"name\":\"comment.block.tsp\"},\"doc-comment-return-tag\":{\"captures\":{\"1\":{\"name\":\"keyword.tag.tspdoc\"},\"2\":{\"name\":\"keyword.tag.tspdoc\"}},\"match\":\"((@)returns)\\\\b\",\"name\":\"comment.block.tsp\"},\"doc-comment-unknown-tag\":{\"captures\":{\"1\":{\"name\":\"entity.name.tag.tsp\"},\"2\":{\"name\":\"entity.name.tag.tsp\"}},\"match\":\"((@)(?:\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`))\\\\b\",\"name\":\"comment.block.tsp\"},\"enum-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.enum-body.typespec\",\"patterns\":[{\"include\":\"#enum-member\"},{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#punctuation-comma\"}]},\"enum-member\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(:?)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.enum-member.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-annotation\"}]},\"enum-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(enum)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.enum-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#enum-body\"}]},\"escape-character\":{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.tsp\"},\"expression\":{\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#valueof\"},{\"include\":\"#typeof\"},{\"include\":\"#type-arguments\"},{\"include\":\"#object-literal\"},{\"include\":\"#tuple-literal\"},{\"include\":\"#tuple-expression\"},{\"include\":\"#model-expression\"},{\"include\":\"#callExpression\"},{\"include\":\"#identifier-expression\"}]},\"function-declaration-statement\":{\"begin\":\"(?:(internal)\\\\s+)?(?:(extern)\\\\s+)?\\\\b(fn)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"keyword.other.tsp\"},\"4\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.function-declaration-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-parameters\"},{\"include\":\"#type-annotation\"}]},\"identifier-expression\":{\"match\":\"\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`\",\"name\":\"entity.name.type.tsp\"},\"import-statement\":{\"begin\":\"\\\\b(import)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.import-statement.typespec\",\"patterns\":[{\"include\":\"#token\"}]},\"interface-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.interface-body.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#interface-member\"},{\"include\":\"#punctuation-semicolon\"}]},\"interface-heritage\":{\"begin\":\"\\\\b(extends)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?=\\\\{)|(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))\",\"name\":\"meta.interface-heritage.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"interface-member\":{\"begin\":\"(?:\\\\b(op)\\\\b\\\\s+)?(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.interface-member.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-signature\"}]},\"interface-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(interface)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.interface-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#interface-heritage\"},{\"include\":\"#interface-body\"},{\"include\":\"#expression\"}]},\"line-comment\":{\"match\":\"//.*$\",\"name\":\"comment.line.double-slash.tsp\"},\"model-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.model-expression.typespec\",\"patterns\":[{\"include\":\"#model-property\"},{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#spread-operator\"},{\"include\":\"#punctuation-semicolon\"}]},\"model-heritage\":{\"begin\":\"\\\\b(extends|is)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?=\\\\{)|(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))\",\"name\":\"meta.model-heritage.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"model-property\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\"(?:[^\\\"\\\\\\\\]|\\\\\\\\.)*\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"string.quoted.double.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.model-property.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-annotation\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#expression\"}]},\"model-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(model)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.model-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#model-heritage\"},{\"include\":\"#expression\"}]},\"namespace-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.namespace-body.typespec\",\"patterns\":[{\"include\":\"#statement\"}]},\"namespace-name\":{\"begin\":\"(?=([$_`[:alpha:]]))\",\"end\":\"((?=\\\\{)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))\",\"name\":\"meta.namespace-name.typespec\",\"patterns\":[{\"include\":\"#identifier-expression\"},{\"include\":\"#punctuation-accessor\"}]},\"namespace-statement\":{\"begin\":\"\\\\b(namespace)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))\",\"name\":\"meta.namespace-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#namespace-name\"},{\"include\":\"#namespace-body\"}]},\"numeric-literal\":{\"match\":\"\\\\b(?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$)|\\\\b(?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$)|(?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)\",\"name\":\"constant.numeric.tsp\"},\"object-literal\":{\"begin\":\"#\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.hashcurlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.object-literal.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#object-literal-property\"},{\"include\":\"#directive\"},{\"include\":\"#spread-operator\"},{\"include\":\"#punctuation-comma\"}]},\"object-literal-property\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.object-literal-property.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"}]},\"operation-heritage\":{\"begin\":\"\\\\b(is)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.operation-heritage.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"operation-parameters\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.tsp\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.tsp\"}},\"name\":\"meta.operation-parameters.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#decorator\"},{\"include\":\"#model-property\"},{\"include\":\"#spread-operator\"},{\"include\":\"#punctuation-comma\"}]},\"operation-signature\":{\"patterns\":[{\"include\":\"#type-parameters\"},{\"include\":\"#operation-heritage\"},{\"include\":\"#operation-parameters\"},{\"include\":\"#type-annotation\"}]},\"operation-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(op)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.operation-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-signature\"}]},\"operator-assignment\":{\"match\":\"=\",\"name\":\"keyword.operator.assignment.tsp\"},\"parenthesized-expression\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.tsp\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.tsp\"}},\"name\":\"meta.parenthesized-expression.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"punctuation-accessor\":{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.tsp\"},\"punctuation-comma\":{\"match\":\",\",\"name\":\"punctuation.comma.tsp\"},\"punctuation-semicolon\":{\"match\":\";\",\"name\":\"punctuation.terminator.statement.tsp\"},\"scalar-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.scalar-body.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#scalar-constructor\"},{\"include\":\"#punctuation-semicolon\"}]},\"scalar-constructor\":{\"begin\":\"\\\\b(init)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-constructor.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-parameters\"}]},\"scalar-extends\":{\"begin\":\"\\\\b(extends)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-extends.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"scalar-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(scalar)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#scalar-extends\"},{\"include\":\"#scalar-body\"}]},\"spread-operator\":{\"begin\":\"\\\\.\\\\.\\\\.\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.spread.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.spread-operator.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"statement\":{\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#augment-decorator-statement\"},{\"include\":\"#decorator\"},{\"include\":\"#model-statement\"},{\"include\":\"#scalar-statement\"},{\"include\":\"#union-statement\"},{\"include\":\"#interface-statement\"},{\"include\":\"#enum-statement\"},{\"include\":\"#alias-statement\"},{\"include\":\"#const-statement\"},{\"include\":\"#namespace-statement\"},{\"include\":\"#operation-statement\"},{\"include\":\"#import-statement\"},{\"include\":\"#using-statement\"},{\"include\":\"#decorator-declaration-statement\"},{\"include\":\"#function-declaration-statement\"},{\"include\":\"#punctuation-semicolon\"}]},\"string-literal\":{\"begin\":\"\\\"\",\"end\":\"\\\"|$\",\"name\":\"string.quoted.double.tsp\",\"patterns\":[{\"include\":\"#template-expression\"},{\"include\":\"#escape-character\"}]},\"template-expression\":{\"begin\":\"\\\\$\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.template-expression.begin.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.template-expression.end.tsp\"}},\"name\":\"meta.template-expression.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"token\":{\"patterns\":[{\"include\":\"#doc-comment\"},{\"include\":\"#line-comment\"},{\"include\":\"#block-comment\"},{\"include\":\"#triple-quoted-string-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#boolean-literal\"},{\"include\":\"#numeric-literal\"}]},\"triple-quoted-string-literal\":{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.triple.tsp\",\"patterns\":[{\"include\":\"#template-expression\"},{\"include\":\"#escape-character\"}]},\"tuple-expression\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.tsp\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.tsp\"}},\"name\":\"meta.tuple-expression.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"tuple-literal\":{\"begin\":\"#\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.hashsquarebracket.open.tsp\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.tsp\"}},\"name\":\"meta.tuple-literal.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"type-annotation\":{\"begin\":\"\\\\s*(\\\\??)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.optional.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[),;=@}]|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-annotation.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"type-argument\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(=)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.tsp\"},\"2\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"name\":\"meta.type-argument.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"type-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.tsp\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.tsp\"}},\"name\":\"meta.type-arguments.typespec\",\"patterns\":[{\"include\":\"#type-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"type-parameter\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-parameter.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameter-constraint\"},{\"include\":\"#type-parameter-default\"}]},\"type-parameter-constraint\":{\"begin\":\"extends\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-parameter-constraint.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"type-parameter-default\":{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-parameter-default.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"type-parameters\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.tsp\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.tsp\"}},\"name\":\"meta.type-parameters.typespec\",\"patterns\":[{\"include\":\"#type-parameter\"},{\"include\":\"#punctuation-comma\"}]},\"typeof\":{\"begin\":\"\\\\b(typeof)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.typeof.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"union-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.union-body.typespec\",\"patterns\":[{\"include\":\"#union-variant\"},{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"union-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(union)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.union-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#union-body\"}]},\"union-variant\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.union-variant.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"}]},\"using-statement\":{\"begin\":\"\\\\b(using)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.using-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#identifier-expression\"},{\"include\":\"#punctuation-accessor\"}]},\"valueof\":{\"begin\":\"\\\\b(valueof)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)\",\"name\":\"meta.valueof.typespec\",\"patterns\":[{\"include\":\"#expression\"}]}},\"scopeName\":\"source.tsp\",\"aliases\":[\"tsp\"]}"))
|
|
1
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"TypeSpec\",\"fileTypes\":[\"tsp\"],\"name\":\"typespec\",\"patterns\":[{\"include\":\"#statement\"}],\"repository\":{\"alias-id\":{\"begin\":\"(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.alias-id.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"alias-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(alias)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.alias-statement.typespec\",\"patterns\":[{\"include\":\"#alias-id\"},{\"include\":\"#type-parameters\"}]},\"augment-decorator-statement\":{\"begin\":\"((@@)\\\\b[$_[:alpha:]](?:[$_[:alnum:]]|\\\\.[$_[:alpha:]])*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.tag.tsp\"},\"2\":{\"name\":\"entity.name.tag.tsp\"}},\"end\":\"(?=([$_`[:alpha:]]))|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.augment-decorator-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#parenthesized-expression\"}]},\"block-comment\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.tsp\"},\"boolean-literal\":{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.tsp\"},\"callExpression\":{\"begin\":\"\\\\b([$_[:alpha:]](?:[$_[:alnum:]]|\\\\.[$_[:alpha:]])*)\\\\b\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.tsp\"},\"2\":{\"name\":\"punctuation.parenthesis.open.tsp\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.tsp\"}},\"name\":\"meta.callExpression.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"const-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(const)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"variable.name.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.const-statement.typespec\",\"patterns\":[{\"include\":\"#type-annotation\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#expression\"}]},\"decorator\":{\"begin\":\"((@)\\\\b[$_[:alpha:]](?:[$_[:alnum:]]|\\\\.[$_[:alpha:]])*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.tag.tsp\"},\"2\":{\"name\":\"entity.name.tag.tsp\"}},\"end\":\"(?=([$_`[:alpha:]]))|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.decorator.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#parenthesized-expression\"}]},\"decorator-declaration-statement\":{\"begin\":\"(?:(internal)\\\\s+)?(?:(extern)\\\\s+)?\\\\b(dec)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"keyword.other.tsp\"},\"4\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.decorator-declaration-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-parameters\"}]},\"directive\":{\"begin\":\"\\\\s*(#)\\\\b([$_[:alpha:]][$_[:alnum:]]*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.directive.name.tsp\"},\"2\":{\"name\":\"keyword.directive.name.tsp\"}},\"end\":\"$|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.directive.typespec\",\"patterns\":[{\"include\":\"#string-literal\"},{\"include\":\"#identifier-expression\"}]},\"doc-comment\":{\"begin\":\"/\\\\*\\\\*\",\"beginCaptures\":{\"0\":{\"name\":\"comment.block.tsp\"}},\"end\":\"\\\\*/\",\"endCaptures\":{\"0\":{\"name\":\"comment.block.tsp\"}},\"name\":\"comment.block.tsp\",\"patterns\":[{\"include\":\"#doc-comment-block\"}]},\"doc-comment-block\":{\"patterns\":[{\"include\":\"#doc-comment-param\"},{\"include\":\"#doc-comment-return-tag\"},{\"include\":\"#doc-comment-unknown-tag\"}]},\"doc-comment-param\":{\"captures\":{\"1\":{\"name\":\"keyword.tag.tspdoc\"},\"2\":{\"name\":\"keyword.tag.tspdoc\"},\"3\":{\"name\":\"variable.name.tsp\"}},\"match\":\"((@)(?:param|template|prop))\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\b\",\"name\":\"comment.block.tsp\"},\"doc-comment-return-tag\":{\"captures\":{\"1\":{\"name\":\"keyword.tag.tspdoc\"},\"2\":{\"name\":\"keyword.tag.tspdoc\"}},\"match\":\"((@)returns)\\\\b\",\"name\":\"comment.block.tsp\"},\"doc-comment-unknown-tag\":{\"captures\":{\"1\":{\"name\":\"entity.name.tag.tsp\"},\"2\":{\"name\":\"entity.name.tag.tsp\"}},\"match\":\"((@)(?:\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`))\\\\b\",\"name\":\"comment.block.tsp\"},\"enum-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.enum-body.typespec\",\"patterns\":[{\"include\":\"#enum-member\"},{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#punctuation-comma\"}]},\"enum-expression\":{\"begin\":\"\\\\b(enum)\\\\b(?:\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`))?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.enum-expression.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#enum-body\"}]},\"enum-member\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(:?)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.enum-member.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-annotation\"}]},\"enum-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(enum)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.enum-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#enum-body\"}]},\"escape-character\":{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.tsp\"},\"expression\":{\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#valueof\"},{\"include\":\"#typeof\"},{\"include\":\"#type-arguments\"},{\"include\":\"#object-literal\"},{\"include\":\"#tuple-literal\"},{\"include\":\"#tuple-expression\"},{\"include\":\"#model-expression-keyword\"},{\"include\":\"#scalar-expression\"},{\"include\":\"#enum-expression\"},{\"include\":\"#union-expression\"},{\"include\":\"#model-expression\"},{\"include\":\"#callExpression\"},{\"include\":\"#identifier-expression\"}]},\"function-declaration-statement\":{\"begin\":\"(?:(internal)\\\\s+)?(?:(extern)\\\\s+)?\\\\b(fn)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"keyword.other.tsp\"},\"4\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.function-declaration-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-parameters\"},{\"include\":\"#type-annotation\"}]},\"identifier-expression\":{\"match\":\"\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`\",\"name\":\"entity.name.type.tsp\"},\"import-statement\":{\"begin\":\"\\\\b(import)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.import-statement.typespec\",\"patterns\":[{\"include\":\"#token\"}]},\"interface-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.interface-body.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#interface-member\"},{\"include\":\"#punctuation-semicolon\"}]},\"interface-heritage\":{\"begin\":\"\\\\b(extends)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?=\\\\{)|(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b))\",\"name\":\"meta.interface-heritage.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"interface-member\":{\"begin\":\"(?:\\\\b(op)\\\\b\\\\s+)?(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.interface-member.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-signature\"}]},\"interface-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(interface)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.interface-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#interface-heritage\"},{\"include\":\"#interface-body\"},{\"include\":\"#expression\"}]},\"line-comment\":{\"match\":\"//.*$\",\"name\":\"comment.line.double-slash.tsp\"},\"model-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.model-expression.typespec\",\"patterns\":[{\"include\":\"#model-property\"},{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#spread-operator\"},{\"include\":\"#punctuation-semicolon\"}]},\"model-expression-keyword\":{\"begin\":\"\\\\b(model)\\\\b(?:\\\\s+(?!(?:extend|i)s\\\\b)(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`))?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.model-expression-keyword.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#model-heritage\"},{\"include\":\"#expression\"}]},\"model-heritage\":{\"begin\":\"\\\\b(extends|is)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?=\\\\{)|(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b))\",\"name\":\"meta.model-heritage.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"model-property\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\"(?:[^\\\"\\\\\\\\]|\\\\\\\\.)*\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"string.quoted.double.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.model-property.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-annotation\"},{\"include\":\"#operator-assignment\"},{\"include\":\"#expression\"}]},\"model-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(model)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.model-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#model-heritage\"},{\"include\":\"#expression\"}]},\"namespace-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.namespace-body.typespec\",\"patterns\":[{\"include\":\"#statement\"}]},\"namespace-name\":{\"begin\":\"(?=([$_`[:alpha:]]))\",\"end\":\"((?=\\\\{)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b))\",\"name\":\"meta.namespace-name.typespec\",\"patterns\":[{\"include\":\"#identifier-expression\"},{\"include\":\"#punctuation-accessor\"}]},\"namespace-statement\":{\"begin\":\"\\\\b(namespace)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b))\",\"name\":\"meta.namespace-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#namespace-name\"},{\"include\":\"#namespace-body\"}]},\"numeric-literal\":{\"match\":\"\\\\b(?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$)|\\\\b(?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$)|(?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)\",\"name\":\"constant.numeric.tsp\"},\"object-literal\":{\"begin\":\"#\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.hashcurlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.object-literal.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#object-literal-property\"},{\"include\":\"#directive\"},{\"include\":\"#spread-operator\"},{\"include\":\"#punctuation-comma\"}]},\"object-literal-property\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.object-literal-property.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"}]},\"operation-heritage\":{\"begin\":\"\\\\b(is)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.operation-heritage.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"operation-parameters\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.tsp\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.tsp\"}},\"name\":\"meta.operation-parameters.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#decorator\"},{\"include\":\"#model-property\"},{\"include\":\"#spread-operator\"},{\"include\":\"#punctuation-comma\"}]},\"operation-signature\":{\"patterns\":[{\"include\":\"#type-parameters\"},{\"include\":\"#operation-heritage\"},{\"include\":\"#operation-parameters\"},{\"include\":\"#type-annotation\"}]},\"operation-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(op)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.operation-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-signature\"}]},\"operator-assignment\":{\"match\":\"=\",\"name\":\"keyword.operator.assignment.tsp\"},\"parenthesized-expression\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.tsp\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.tsp\"}},\"name\":\"meta.parenthesized-expression.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"punctuation-accessor\":{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.tsp\"},\"punctuation-comma\":{\"match\":\",\",\"name\":\"punctuation.comma.tsp\"},\"punctuation-semicolon\":{\"match\":\";\",\"name\":\"punctuation.terminator.statement.tsp\"},\"scalar-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.scalar-body.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#scalar-constructor\"},{\"include\":\"#punctuation-semicolon\"}]},\"scalar-constructor\":{\"begin\":\"\\\\b(init)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.function.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-constructor.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#operation-parameters\"}]},\"scalar-expression\":{\"begin\":\"\\\\b(scalar)\\\\b(?:\\\\s+(?!extends\\\\b)(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`))?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-expression.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#scalar-extends\"},{\"include\":\"#scalar-body\"}]},\"scalar-extends\":{\"begin\":\"\\\\b(extends)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-extends.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"scalar-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(scalar)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.scalar-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#scalar-extends\"},{\"include\":\"#scalar-body\"}]},\"spread-operator\":{\"begin\":\"\\\\.\\\\.\\\\.\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.spread.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.spread-operator.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"statement\":{\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#augment-decorator-statement\"},{\"include\":\"#decorator\"},{\"include\":\"#model-statement\"},{\"include\":\"#scalar-statement\"},{\"include\":\"#union-statement\"},{\"include\":\"#interface-statement\"},{\"include\":\"#enum-statement\"},{\"include\":\"#alias-statement\"},{\"include\":\"#const-statement\"},{\"include\":\"#namespace-statement\"},{\"include\":\"#operation-statement\"},{\"include\":\"#import-statement\"},{\"include\":\"#using-statement\"},{\"include\":\"#decorator-declaration-statement\"},{\"include\":\"#function-declaration-statement\"},{\"include\":\"#punctuation-semicolon\"}]},\"string-literal\":{\"begin\":\"\\\"\",\"end\":\"\\\"|$\",\"name\":\"string.quoted.double.tsp\",\"patterns\":[{\"include\":\"#template-expression\"},{\"include\":\"#escape-character\"}]},\"template-expression\":{\"begin\":\"\\\\$\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.template-expression.begin.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.template-expression.end.tsp\"}},\"name\":\"meta.template-expression.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"token\":{\"patterns\":[{\"include\":\"#doc-comment\"},{\"include\":\"#line-comment\"},{\"include\":\"#block-comment\"},{\"include\":\"#triple-quoted-string-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#boolean-literal\"},{\"include\":\"#numeric-literal\"}]},\"triple-quoted-string-literal\":{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.triple.tsp\",\"patterns\":[{\"include\":\"#template-expression\"},{\"include\":\"#escape-character\"}]},\"tuple-expression\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.tsp\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.tsp\"}},\"name\":\"meta.tuple-expression.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"tuple-literal\":{\"begin\":\"#\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.hashsquarebracket.open.tsp\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.tsp\"}},\"name\":\"meta.tuple-literal.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"type-annotation\":{\"begin\":\"\\\\s*(\\\\??)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.optional.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[),;=@}]|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-annotation.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"type-argument\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(=)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.tsp\"},\"2\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"name\":\"meta.type-argument.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"type-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.tsp\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.tsp\"}},\"name\":\"meta.type-arguments.typespec\",\"patterns\":[{\"include\":\"#type-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"type-parameter\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-parameter.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameter-constraint\"},{\"include\":\"#type-parameter-default\"}]},\"type-parameter-constraint\":{\"begin\":\"extends\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-parameter-constraint.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"type-parameter-default\":{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.type-parameter-default.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"type-parameters\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.tsp\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.tsp\"}},\"name\":\"meta.type-parameters.typespec\",\"patterns\":[{\"include\":\"#type-parameter\"},{\"include\":\"#punctuation-comma\"}]},\"typeof\":{\"begin\":\"\\\\b(typeof)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.typeof.typespec\",\"patterns\":[{\"include\":\"#expression\"}]},\"union-body\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.tsp\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.tsp\"}},\"name\":\"meta.union-body.typespec\",\"patterns\":[{\"include\":\"#union-variant\"},{\"include\":\"#token\"},{\"include\":\"#directive\"},{\"include\":\"#decorator\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"union-expression\":{\"begin\":\"\\\\b(union)\\\\b(?:\\\\s+(?!extends\\\\b)(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`))?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"},\"2\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.union-expression.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#union-extends\"},{\"include\":\"#union-body\"}]},\"union-extends\":{\"begin\":\"\\\\b(extends)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"((?=\\\\{)|(?=[);@}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b))\",\"name\":\"meta.union-extends.typespec\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"union-statement\":{\"begin\":\"(?:(internal)\\\\s+)?\\\\b(union)\\\\b\\\\s+(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.tsp\"},\"2\":{\"name\":\"keyword.other.tsp\"},\"3\":{\"name\":\"entity.name.type.tsp\"}},\"end\":\"(?<=})|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.union-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#type-parameters\"},{\"include\":\"#union-extends\"},{\"include\":\"#union-body\"}]},\"union-variant\":{\"begin\":\"(\\\\b[$_[:alpha:]][$_[:alnum:]]*\\\\b|`(?:[^\\\\\\\\`]|\\\\\\\\.)*`)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.name.tsp\"},\"2\":{\"name\":\"keyword.operator.type.annotation.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.union-variant.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#expression\"}]},\"using-statement\":{\"begin\":\"\\\\b(using)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.using-statement.typespec\",\"patterns\":[{\"include\":\"#token\"},{\"include\":\"#identifier-expression\"},{\"include\":\"#punctuation-accessor\"}]},\"valueof\":{\"begin\":\"\\\\b(valueof)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.tsp\"}},\"end\":\"(?=>)|(?=[,;@]|#[a-z]|[)}]|\\\\b(?:extern|internal)\\\\b|\\\\b(?:namespace|op|using|import|alias|interface|dec|fn)\\\\b)\",\"name\":\"meta.valueof.typespec\",\"patterns\":[{\"include\":\"#expression\"}]}},\"scopeName\":\"source.tsp\",\"aliases\":[\"tsp\"]}"))
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shikijs/langs",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.5.0",
|
|
5
5
|
"description": "TextMate grammars for Shiki in ESM",
|
|
6
6
|
"author": "Anthony Fu <anthonyfu117@hotmail.com>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -390,10 +390,10 @@
|
|
|
390
390
|
"node": ">=20"
|
|
391
391
|
},
|
|
392
392
|
"dependencies": {
|
|
393
|
-
"@shikijs/types": "4.
|
|
393
|
+
"@shikijs/types": "4.5.0"
|
|
394
394
|
},
|
|
395
395
|
"devDependencies": {
|
|
396
|
-
"tm-grammars": "^1.32.
|
|
396
|
+
"tm-grammars": "^1.32.22"
|
|
397
397
|
},
|
|
398
398
|
"scripts": {
|
|
399
399
|
"build": "pnpm prepare"
|
|
@@ -6,11 +6,11 @@ export * from "@shikijs/types";
|
|
|
6
6
|
/**
|
|
7
7
|
* Get the minimal shiki primitive instance.
|
|
8
8
|
*/
|
|
9
|
-
declare function createShikiPrimitiveAsync(options: HighlighterCoreOptions): Promise<ShikiPrimitive>;
|
|
9
|
+
export declare function createShikiPrimitiveAsync(options: HighlighterCoreOptions): Promise<ShikiPrimitive>;
|
|
10
10
|
/**
|
|
11
11
|
* @deprecated Use `createShikiPrimitiveAsync` instead.
|
|
12
12
|
*/
|
|
13
|
-
declare const createShikiInternal: typeof createShikiPrimitiveAsync;
|
|
13
|
+
export declare const createShikiInternal: typeof createShikiPrimitiveAsync;
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/constructors/primitive.d.ts
|
|
16
16
|
/**
|
|
@@ -18,26 +18,26 @@ declare const createShikiInternal: typeof createShikiPrimitiveAsync;
|
|
|
18
18
|
*
|
|
19
19
|
* Requires to provide the engine and all themes and languages upfront.
|
|
20
20
|
*/
|
|
21
|
-
declare function createShikiPrimitive(options: HighlighterCoreOptions<true>): ShikiPrimitive;
|
|
21
|
+
export declare function createShikiPrimitive(options: HighlighterCoreOptions<true>): ShikiPrimitive;
|
|
22
22
|
/**
|
|
23
23
|
* @deprecated Use `createShikiPrimitive` instead.
|
|
24
24
|
*/
|
|
25
|
-
declare const createShikiInternalSync: typeof createShikiPrimitive;
|
|
25
|
+
export declare const createShikiInternalSync: typeof createShikiPrimitive;
|
|
26
26
|
//#endregion
|
|
27
27
|
//#region src/highlight/code-to-tokens-base.d.ts
|
|
28
28
|
/**
|
|
29
29
|
* Code to tokens, with a simple theme.
|
|
30
30
|
*/
|
|
31
|
-
declare function codeToTokensBase(primitive: ShikiPrimitive, code: string, options?: CodeToTokensBaseOptions): ThemedToken[][];
|
|
32
|
-
declare function getLastGrammarState(primitive: ShikiPrimitive, element: ThemedToken[][] | Root): GrammarState$1 | undefined;
|
|
33
|
-
declare function getLastGrammarState(primitive: ShikiPrimitive, code: string, options?: CodeToTokensBaseOptions): GrammarState$1;
|
|
34
|
-
declare function tokenizeWithTheme(code: string, grammar: Grammar, theme: ThemeRegistrationResolved, colorMap: string[], options: TokenizeWithThemeOptions): ThemedToken[][];
|
|
31
|
+
export declare function codeToTokensBase(primitive: ShikiPrimitive, code: string, options?: CodeToTokensBaseOptions): ThemedToken[][];
|
|
32
|
+
export declare function getLastGrammarState(primitive: ShikiPrimitive, element: ThemedToken[][] | Root): GrammarState$1 | undefined;
|
|
33
|
+
export declare function getLastGrammarState(primitive: ShikiPrimitive, code: string, options?: CodeToTokensBaseOptions): GrammarState$1;
|
|
34
|
+
export declare function tokenizeWithTheme(code: string, grammar: Grammar, theme: ThemeRegistrationResolved, colorMap: string[], options: TokenizeWithThemeOptions): ThemedToken[][];
|
|
35
35
|
//#endregion
|
|
36
36
|
//#region src/highlight/code-to-tokens-themes.d.ts
|
|
37
37
|
/**
|
|
38
38
|
* Get tokens with multiple themes
|
|
39
39
|
*/
|
|
40
|
-
declare function codeToTokensWithThemes(primitive: ShikiPrimitive, code: string, options: CodeToTokensWithThemesOptions, codeToTokensBaseFn?: typeof codeToTokensBase): ThemedTokenWithVariants[][];
|
|
40
|
+
export declare function codeToTokensWithThemes(primitive: ShikiPrimitive, code: string, options: CodeToTokensWithThemesOptions, codeToTokensBaseFn?: typeof codeToTokensBase): ThemedTokenWithVariants[][];
|
|
41
41
|
/**
|
|
42
42
|
* Break tokens from multiple themes into same tokenization.
|
|
43
43
|
*
|
|
@@ -51,24 +51,24 @@ declare function codeToTokensWithThemes(primitive: ShikiPrimitive, code: string,
|
|
|
51
51
|
* - `console . log ( " hello " )` (8 tokens)
|
|
52
52
|
* - `console . log ( " hello " )` (8 tokens)
|
|
53
53
|
*/
|
|
54
|
-
declare function alignThemesTokenization(...themes: ThemedToken[][][]): ThemedToken[][][];
|
|
54
|
+
export declare function alignThemesTokenization(...themes: ThemedToken[][][]): ThemedToken[][][];
|
|
55
55
|
//#endregion
|
|
56
56
|
//#region src/textmate/getters-resolve.d.ts
|
|
57
57
|
/**
|
|
58
58
|
* Resolve
|
|
59
59
|
*/
|
|
60
|
-
declare function resolveLangs(langs: (LanguageInput | SpecialLanguage)[]): Promise<LanguageRegistration[]>;
|
|
61
|
-
declare function resolveThemes(themes: (ThemeInput | SpecialTheme)[]): Promise<ThemeRegistrationResolved[]>;
|
|
60
|
+
export declare function resolveLangs(langs: (LanguageInput | SpecialLanguage)[]): Promise<LanguageRegistration[]>;
|
|
61
|
+
export declare function resolveThemes(themes: (ThemeInput | SpecialTheme)[]): Promise<ThemeRegistrationResolved[]>;
|
|
62
62
|
//#endregion
|
|
63
63
|
//#region src/textmate/grammar-state.d.ts
|
|
64
|
-
declare function setLastGrammarStateToMap(keys: GrammarStateMapKey, state: GrammarState$1): void;
|
|
65
|
-
declare function getLastGrammarStateFromMap(keys: GrammarStateMapKey): GrammarState$1 | undefined;
|
|
64
|
+
export declare function setLastGrammarStateToMap(keys: GrammarStateMapKey, state: GrammarState$1): void;
|
|
65
|
+
export declare function getLastGrammarStateFromMap(keys: GrammarStateMapKey): GrammarState$1 | undefined;
|
|
66
66
|
/**
|
|
67
67
|
* GrammarState is a special reference object that holds the state of a grammar.
|
|
68
68
|
*
|
|
69
69
|
* It's used to highlight code snippets that are part of the target language.
|
|
70
70
|
*/
|
|
71
|
-
declare class GrammarState implements GrammarState$1 {
|
|
71
|
+
export declare class GrammarState implements GrammarState$1 {
|
|
72
72
|
/**
|
|
73
73
|
* Theme to Stack mapping
|
|
74
74
|
*/
|
|
@@ -96,16 +96,16 @@ declare class GrammarState implements GrammarState$1 {
|
|
|
96
96
|
scopes: string[];
|
|
97
97
|
};
|
|
98
98
|
}
|
|
99
|
-
declare function getGrammarStack(state: GrammarState | GrammarState$1, theme?: string): StateStack | undefined;
|
|
99
|
+
export declare function getGrammarStack(state: GrammarState | GrammarState$1, theme?: string): StateStack | undefined;
|
|
100
100
|
//#endregion
|
|
101
101
|
//#region src/textmate/normalize-theme.d.ts
|
|
102
102
|
/**
|
|
103
103
|
* Normalize a textmate theme to shiki theme
|
|
104
104
|
*/
|
|
105
|
-
declare function normalizeTheme(rawTheme: ThemeRegistrationAny): ThemeRegistrationResolved;
|
|
105
|
+
export declare function normalizeTheme(rawTheme: ThemeRegistrationAny): ThemeRegistrationResolved;
|
|
106
106
|
//#endregion
|
|
107
107
|
//#region src/textmate/resolver.d.ts
|
|
108
|
-
declare class Resolver implements RegistryOptions {
|
|
108
|
+
export declare class Resolver implements RegistryOptions {
|
|
109
109
|
private readonly _langs;
|
|
110
110
|
private readonly _scopeToLang;
|
|
111
111
|
private readonly _injections;
|
|
@@ -119,7 +119,7 @@ declare class Resolver implements RegistryOptions {
|
|
|
119
119
|
}
|
|
120
120
|
//#endregion
|
|
121
121
|
//#region src/textmate/registry.d.ts
|
|
122
|
-
declare class Registry extends Registry$1 {
|
|
122
|
+
export declare class Registry extends Registry$1 {
|
|
123
123
|
private _resolver;
|
|
124
124
|
private _themes;
|
|
125
125
|
private _langs;
|
|
@@ -145,45 +145,44 @@ declare class Registry extends Registry$1 {
|
|
|
145
145
|
}
|
|
146
146
|
//#endregion
|
|
147
147
|
//#region src/utils/colors.d.ts
|
|
148
|
-
declare function resolveColorReplacements(theme: ThemeRegistrationAny | string, options?: TokenizeWithThemeOptions): Record<string, string | undefined>;
|
|
149
|
-
declare function applyColorReplacements(color: string, replacements?: Record<string, string | undefined>): string;
|
|
150
|
-
declare function applyColorReplacements(color?: string | undefined, replacements?: Record<string, string | undefined>): string | undefined;
|
|
148
|
+
export declare function resolveColorReplacements(theme: ThemeRegistrationAny | string, options?: TokenizeWithThemeOptions): Record<string, string | undefined>;
|
|
149
|
+
export declare function applyColorReplacements(color: string, replacements?: Record<string, string | undefined>): string;
|
|
150
|
+
export declare function applyColorReplacements(color?: string | undefined, replacements?: Record<string, string | undefined>): string | undefined;
|
|
151
151
|
//#endregion
|
|
152
152
|
//#region src/utils/general.d.ts
|
|
153
|
-
declare function toArray<T>(x: MaybeArray<T>): T[];
|
|
153
|
+
export declare function toArray<T>(x: MaybeArray<T>): T[];
|
|
154
154
|
/**
|
|
155
155
|
* Normalize a getter to a promise.
|
|
156
156
|
*/
|
|
157
|
-
declare function normalizeGetter<T>(p: MaybeGetter<T>): Promise<T>;
|
|
157
|
+
export declare function normalizeGetter<T>(p: MaybeGetter<T>): Promise<T>;
|
|
158
158
|
/**
|
|
159
159
|
* Check if the language is plaintext that is ignored by Shiki.
|
|
160
160
|
*
|
|
161
161
|
* Hard-coded plain text languages: `plaintext`, `txt`, `text`, `plain`.
|
|
162
162
|
*/
|
|
163
|
-
declare function isPlainLang(lang: string | null | undefined): lang is PlainTextLanguage;
|
|
163
|
+
export declare function isPlainLang(lang: string | null | undefined): lang is PlainTextLanguage;
|
|
164
164
|
/**
|
|
165
165
|
* Check if the language is specially handled or bypassed by Shiki.
|
|
166
166
|
*
|
|
167
167
|
* Hard-coded languages: `ansi` and plaintexts like `plaintext`, `txt`, `text`, `plain`.
|
|
168
168
|
*/
|
|
169
|
-
declare function isSpecialLang(lang: any): lang is SpecialLanguage;
|
|
169
|
+
export declare function isSpecialLang(lang: any): lang is SpecialLanguage;
|
|
170
170
|
/**
|
|
171
171
|
* Check if the theme is specially handled or bypassed by Shiki.
|
|
172
172
|
*
|
|
173
173
|
* Hard-coded themes: `none`.
|
|
174
174
|
*/
|
|
175
|
-
declare function isNoneTheme(theme: string | ThemeInput | null | undefined): theme is 'none';
|
|
175
|
+
export declare function isNoneTheme(theme: string | ThemeInput | null | undefined): theme is 'none';
|
|
176
176
|
/**
|
|
177
177
|
* Check if the theme is specially handled or bypassed by Shiki.
|
|
178
178
|
*
|
|
179
179
|
* Hard-coded themes: `none`.
|
|
180
180
|
*/
|
|
181
|
-
declare function isSpecialTheme(theme: string | ThemeInput | null | undefined): theme is SpecialTheme;
|
|
181
|
+
export declare function isSpecialTheme(theme: string | ThemeInput | null | undefined): theme is SpecialTheme;
|
|
182
182
|
//#endregion
|
|
183
183
|
//#region src/utils/strings.d.ts
|
|
184
|
-
declare function splitLines(code: string, preserveEnding?: boolean): [string, number][];
|
|
184
|
+
export declare function splitLines(code: string, preserveEnding?: boolean): [string, number][];
|
|
185
185
|
//#endregion
|
|
186
186
|
//#region src/utils/alias.d.ts
|
|
187
|
-
declare function resolveLangAlias(name: string, alias?: Record<string, string>): string;
|
|
188
|
-
//#endregion
|
|
189
|
-
export { GrammarState, Registry, Resolver, alignThemesTokenization, applyColorReplacements, codeToTokensBase, codeToTokensWithThemes, createShikiInternal, createShikiInternalSync, createShikiPrimitive, createShikiPrimitiveAsync, getGrammarStack, getLastGrammarState, getLastGrammarStateFromMap, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, normalizeGetter, normalizeTheme, resolveColorReplacements, resolveLangAlias, resolveLangs, resolveThemes, setLastGrammarStateToMap, splitLines, toArray, tokenizeWithTheme };
|
|
187
|
+
export declare function resolveLangAlias(name: string, alias?: Record<string, string>): string;
|
|
188
|
+
//#endregion
|
|
@@ -287,6 +287,7 @@ var Registry = class extends Registry$1 {
|
|
|
287
287
|
});
|
|
288
288
|
this._loadedLanguagesCache = null;
|
|
289
289
|
if (embeddedLazilyBy.size) for (const e of embeddedLazilyBy) {
|
|
290
|
+
this._syncRegistry?._grammars?.get(e.scopeName)?.dispose();
|
|
290
291
|
this._resolvedGrammars.delete(e.name);
|
|
291
292
|
this._loadedLanguagesCache = null;
|
|
292
293
|
this._syncRegistry?._injectionGrammars?.delete(e.scopeName);
|
|
@@ -358,7 +359,7 @@ var Resolver = class {
|
|
|
358
359
|
this._scopeToLang.set(l.scopeName, l);
|
|
359
360
|
if (l.injectTo) l.injectTo.forEach((i) => {
|
|
360
361
|
if (!this._injections.get(i)) this._injections.set(i, []);
|
|
361
|
-
this._injections.get(i).push(l.scopeName);
|
|
362
|
+
if (!this._injections.get(i).includes(l.scopeName)) this._injections.get(i).push(l.scopeName);
|
|
362
363
|
});
|
|
363
364
|
}
|
|
364
365
|
getInjections(scopeName) {
|