@shikijs/langs-precompiled 3.2.2 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abap.mjs +1 -1
- package/dist/actionscript-3.mjs +1 -1
- package/dist/ada.mjs +1 -1
- package/dist/angular-expression.mjs +1 -1
- package/dist/angular-html.mjs +1 -1
- package/dist/angular-inline-style.mjs +1 -1
- package/dist/angular-inline-template.mjs +1 -1
- package/dist/angular-let-declaration.mjs +1 -1
- package/dist/angular-template-blocks.mjs +1 -1
- package/dist/angular-ts.mjs +1 -1
- package/dist/apache.mjs +1 -1
- package/dist/apex.mjs +1 -1
- package/dist/apl.mjs +1 -1
- package/dist/applescript.mjs +1 -1
- package/dist/ara.mjs +1 -1
- package/dist/asciidoc.mjs +1 -1
- package/dist/asm.mjs +1 -1
- package/dist/astro.mjs +1 -1
- package/dist/awk.mjs +1 -1
- package/dist/ballerina.mjs +1 -1
- package/dist/bat.mjs +1 -1
- package/dist/beancount.mjs +1 -1
- package/dist/berry.mjs +1 -1
- package/dist/bibtex.mjs +1 -1
- package/dist/bicep.mjs +1 -1
- package/dist/blade.mjs +1 -1
- package/dist/bsl.mjs +1 -1
- package/dist/c.mjs +1 -1
- package/dist/cadence.mjs +1 -1
- package/dist/cairo.mjs +1 -1
- package/dist/clarity.mjs +1 -1
- package/dist/clojure.mjs +1 -1
- package/dist/cobol.mjs +1 -1
- package/dist/codeql.mjs +1 -1
- package/dist/coffee.mjs +1 -1
- package/dist/common-lisp.mjs +1 -1
- package/dist/coq.mjs +1 -1
- package/dist/cpp-macro.mjs +1 -1
- package/dist/cpp.mjs +1 -1
- package/dist/crystal.mjs +1 -1
- package/dist/csharp.mjs +1 -1
- package/dist/css.mjs +1 -1
- package/dist/cue.mjs +1 -1
- package/dist/cypher.mjs +1 -1
- package/dist/d.mjs +1 -1
- package/dist/dart.mjs +1 -1
- package/dist/dax.mjs +1 -1
- package/dist/desktop.mjs +1 -1
- package/dist/diff.mjs +1 -1
- package/dist/dotenv.mjs +1 -1
- package/dist/dream-maker.mjs +1 -1
- package/dist/edge.mjs +1 -1
- package/dist/elixir.mjs +1 -1
- package/dist/elm.mjs +1 -1
- package/dist/emacs-lisp.mjs +1 -1
- package/dist/erb.mjs +1 -1
- package/dist/erlang.mjs +1 -1
- package/dist/es-tag-css.mjs +1 -1
- package/dist/es-tag-glsl.mjs +1 -1
- package/dist/es-tag-html.mjs +1 -1
- package/dist/es-tag-sql.mjs +1 -1
- package/dist/es-tag-xml.mjs +1 -1
- package/dist/fennel.mjs +1 -1
- package/dist/fish.mjs +1 -1
- package/dist/fluent.mjs +1 -1
- package/dist/fortran-fixed-form.mjs +1 -1
- package/dist/fortran-free-form.mjs +1 -1
- package/dist/fsharp.mjs +1 -1
- package/dist/gdresource.mjs +1 -1
- package/dist/gdscript.mjs +1 -1
- package/dist/gdshader.mjs +1 -1
- package/dist/genie.mjs +1 -1
- package/dist/gherkin.mjs +1 -1
- package/dist/gleam.mjs +1 -1
- package/dist/glimmer-js.mjs +1 -1
- package/dist/glimmer-ts.mjs +1 -1
- package/dist/glsl.mjs +1 -1
- package/dist/gnuplot.mjs +1 -1
- package/dist/go.mjs +1 -1
- package/dist/graphql.mjs +1 -1
- package/dist/groovy.mjs +1 -1
- package/dist/hack.mjs +1 -1
- package/dist/haml.mjs +1 -1
- package/dist/handlebars.mjs +1 -1
- package/dist/haskell.mjs +1 -1
- package/dist/haxe.mjs +1 -1
- package/dist/hcl.mjs +1 -1
- package/dist/hjson.mjs +1 -1
- package/dist/hlsl.mjs +1 -1
- package/dist/html-derivative.mjs +1 -1
- package/dist/html.mjs +1 -1
- package/dist/http.mjs +1 -1
- package/dist/hxml.mjs +1 -1
- package/dist/hy.mjs +1 -1
- package/dist/imba.mjs +1 -1
- package/dist/ini.mjs +1 -1
- package/dist/java.mjs +1 -1
- package/dist/javascript.mjs +1 -1
- package/dist/jinja.mjs +1 -1
- package/dist/jison.mjs +1 -1
- package/dist/json.mjs +1 -1
- package/dist/json5.mjs +1 -1
- package/dist/jsonc.mjs +1 -1
- package/dist/jsonl.mjs +1 -1
- package/dist/jsonnet.mjs +1 -1
- package/dist/jssm.mjs +1 -1
- package/dist/jsx.mjs +1 -1
- package/dist/julia.mjs +1 -1
- package/dist/kotlin.mjs +1 -1
- package/dist/kusto.mjs +1 -1
- package/dist/latex.mjs +1 -1
- package/dist/lean.mjs +1 -1
- package/dist/less.mjs +1 -1
- package/dist/liquid.mjs +1 -1
- package/dist/llvm.mjs +1 -1
- package/dist/log.mjs +1 -1
- package/dist/logo.mjs +1 -1
- package/dist/lua.mjs +1 -1
- package/dist/luau.mjs +1 -1
- package/dist/make.mjs +1 -1
- package/dist/markdown-vue.mjs +1 -1
- package/dist/markdown.mjs +1 -1
- package/dist/marko.mjs +1 -1
- package/dist/matlab.mjs +1 -1
- package/dist/mdc.mjs +1 -1
- package/dist/mdx.mjs +1 -1
- package/dist/mermaid.mjs +1 -1
- package/dist/mipsasm.mjs +1 -1
- package/dist/mojo.mjs +1 -1
- package/dist/move.mjs +1 -1
- package/dist/narrat.mjs +1 -1
- package/dist/nextflow.mjs +1 -1
- package/dist/nginx.mjs +1 -1
- package/dist/nim.mjs +1 -1
- package/dist/nix.mjs +1 -1
- package/dist/nushell.mjs +1 -1
- package/dist/objective-c.mjs +1 -1
- package/dist/objective-cpp.mjs +1 -1
- package/dist/ocaml.mjs +1 -1
- package/dist/pascal.mjs +1 -1
- package/dist/perl.mjs +1 -1
- package/dist/php.mjs +1 -1
- package/dist/plsql.mjs +1 -1
- package/dist/po.mjs +1 -1
- package/dist/polar.mjs +1 -1
- package/dist/postcss.mjs +1 -1
- package/dist/powerquery.mjs +1 -1
- package/dist/powershell.mjs +1 -1
- package/dist/prisma.mjs +1 -1
- package/dist/prolog.mjs +1 -1
- package/dist/proto.mjs +1 -1
- package/dist/pug.mjs +1 -1
- package/dist/puppet.mjs +1 -1
- package/dist/purescript.mjs +1 -1
- package/dist/python.mjs +1 -1
- package/dist/qml.mjs +1 -1
- package/dist/qss.mjs +1 -1
- package/dist/r.mjs +1 -1
- package/dist/racket.mjs +1 -1
- package/dist/raku.mjs +1 -1
- package/dist/razor.mjs +1 -1
- package/dist/reg.mjs +1 -1
- package/dist/regexp.mjs +1 -1
- package/dist/rel.mjs +1 -1
- package/dist/riscv.mjs +1 -1
- package/dist/rst.mjs +1 -1
- package/dist/ruby.mjs +1 -1
- package/dist/rust.mjs +1 -1
- package/dist/sas.mjs +1 -1
- package/dist/sass.mjs +1 -1
- package/dist/scala.mjs +1 -1
- package/dist/scheme.mjs +1 -1
- package/dist/scss.mjs +1 -1
- package/dist/sdbl.mjs +1 -1
- package/dist/shaderlab.mjs +1 -1
- package/dist/shellscript.mjs +1 -1
- package/dist/shellsession.mjs +1 -1
- package/dist/smalltalk.mjs +1 -1
- package/dist/solidity.mjs +1 -1
- package/dist/soy.mjs +1 -1
- package/dist/sparql.mjs +1 -1
- package/dist/splunk.mjs +1 -1
- package/dist/sql.mjs +1 -1
- package/dist/ssh-config.mjs +1 -1
- package/dist/stata.mjs +1 -1
- package/dist/stylus.mjs +1 -1
- package/dist/svelte.mjs +1 -1
- package/dist/system-verilog.mjs +1 -1
- package/dist/systemd.mjs +1 -1
- package/dist/talonscript.mjs +1 -1
- package/dist/tasl.mjs +1 -1
- package/dist/tcl.mjs +1 -1
- package/dist/templ.mjs +1 -1
- package/dist/terraform.mjs +1 -1
- package/dist/tex.mjs +1 -1
- package/dist/toml.mjs +1 -1
- package/dist/tsx.mjs +1 -1
- package/dist/turtle.mjs +1 -1
- package/dist/twig.mjs +1 -1
- package/dist/typescript.mjs +1 -1
- package/dist/typespec.mjs +1 -1
- package/dist/typst.mjs +1 -1
- package/dist/v.mjs +1 -1
- package/dist/vala.mjs +1 -1
- package/dist/vb.mjs +1 -1
- package/dist/verilog.mjs +1 -1
- package/dist/vhdl.mjs +1 -1
- package/dist/viml.mjs +1 -1
- package/dist/vue-html.mjs +1 -1
- package/dist/vue-sfc-style-variable-injection.mjs +1 -1
- package/dist/vue.mjs +3 -3
- package/dist/vyper.mjs +1 -1
- package/dist/wasm.mjs +1 -1
- package/dist/wenyan.mjs +1 -1
- package/dist/wgsl.mjs +1 -1
- package/dist/wikitext.mjs +1 -1
- package/dist/wit.mjs +1 -1
- package/dist/wolfram.mjs +1 -1
- package/dist/xml.mjs +1 -1
- package/dist/xsl.mjs +1 -1
- package/dist/yaml.mjs +1 -1
- package/dist/zenscript.mjs +1 -1
- package/dist/zig.mjs +1 -1
- package/package.json +4 -4
package/dist/stylus.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EmulatedRegExp } from 'oniguruma-to-es'
|
|
2
2
|
|
|
3
|
-
const lang = Object.freeze({displayName:"Stylus",fileTypes:["styl","stylus","css.styl","css.stylus"],name:"stylus",patterns:[{include:"#comment"},{include:"#at_rule"},{include:"#language_keywords"},{include:"#language_constants"},{include:"#variable_declaration"},{include:"#function"},{include:"#selector"},{include:"#declaration"},{captures:{"1":{name:"punctuation.section.property-list.begin.css"},"2":{name:"punctuation.section.property-list.end.css"}},match:/(\{)(\})/dgv,name:"meta.brace.curly.css"},{match:/[\{\}]/dgv,name:"meta.brace.curly.css"},{include:"#numeric"},{include:"#string"},{include:"#operator"}],repository:{at_rule:{patterns:[{begin:/\p{space}*((@)(import|require))\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.import.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},end:/\p{space}*((?=;|(?=\n?$)|\n))/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},name:"meta.at-rule.import.css",patterns:[{include:"#string"}]},{begin:/\p{space}*((@)(extends?)\b)\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.extend.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},end:/\p{space}*((?=;|(?=\n?$)|\n))/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},name:"meta.at-rule.extend.css",patterns:[{include:"#selector"}]},{captures:{"1":{name:"keyword.control.at-rule.fontface.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},match:/^\p{space}*((@)font-face)\b/dgv,name:"meta.at-rule.fontface.stylus"},{captures:{"1":{name:"keyword.control.at-rule.css.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},match:/^\p{space}*((@)css)\b/dgv,name:"meta.at-rule.css.stylus"},{begin:/\p{space}*((@)charset)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.charset.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},end:/\p{space}*((?=;|(?=\n?$)|\n))/dgv,name:"meta.at-rule.charset.stylus",patterns:[{include:"#string"}]},{begin:/\p{space}*((@)keyframes)\b\p{space}+([a-zA-Z_\-][a-zA-Z0-9_\-]*)/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.keyframes.stylus"},"2":{name:"punctuation.definition.keyword.stylus"},"3":{name:"entity.name.function.keyframe.stylus"}},end:/\p{space}*((?=\{|(?=\n?$)|\n))/dgv,name:"meta.at-rule.keyframes.stylus"},{begin:/(?=(\b(\p{Nd}+%|from\b|to\b)))/dgv,end:/(?=([\{\n]))/dgv,name:"meta.at-rule.keyframes.stylus",patterns:[{match:/(\b(\p{Nd}+%|from\b|to\b))/dgv,name:"entity.other.attribute-name.stylus"}]},{captures:{"1":{name:"keyword.control.at-rule.media.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},match:/^\p{space}*((@)media)\b/dgv,name:"meta.at-rule.media.stylus"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(width|scan|resolution|orientation|monochrome|min-width|min-resolution|min-monochrome|min-height|min-device-width|min-device-height|min-device-aspect-ratio|min-color-index|min-color|min-aspect-ratio|max-width|max-resolution|max-monochrome|max-height|max-device-width|max-device-height|max-device-aspect-ratio|max-color-index|max-color|max-aspect-ratio|height|grid|device-width|device-height|device-aspect-ratio|color-index|color|aspect-ratio)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.type.property-name.media-feature.media.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(tv|tty|screen|projection|print|handheld|embossed|braille|aural|all)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.constant.media-type.media.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(portrait|landscape)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.constant.property-value.media-property.media.css"}]},char_escape:{match:/\\([^\n])/dgv,name:"constant.character.escape.stylus"},color:{patterns:[{begin:/\b(rgb|rgba|hsl|hsla)(\()/dgv,beginCaptures:{"1":{name:"support.function.color.css"},"2":{name:"punctuation.section.function.css"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.section.function.css"}},name:"meta.function.color.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{include:"#property_variable"}]},{captures:{"1":{name:"punctuation.definition.constant.css"}},match:/(#)(\p{AHex}{3}|\p{AHex}{6})\b/dgv,name:"constant.other.color.rgb-value.css"},{match:/\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\b/dgv,name:"support.constant.color.w3c-standard-color-name.css"},{match:/\b(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\b/dgv,name:"support.constant.color.w3c-extended-color-name.css"}]},comment:{patterns:[{include:"#comment_block"},{include:"#comment_line"}]},comment_block:{begin:/\/\*/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.begin.css"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.end.css"}},name:"comment.block.css"},comment_line:{begin:/(^[ \t]+)?(?=\/\/)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.stylus"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.stylus"}},end:/(?=\n)/dgv,name:"comment.line.double-slash.stylus"}]},declaration:{begin:/((?<=^)[^\P{space}\n]+)|((?<=;)[^\P{space}\n]*)|((?<=\{)[^\P{space}\n]*)/dgv,end:/(?=\n)|(;)|(?=\})|(\n)/dgv,endCaptures:{"2":{name:"punctuation.terminator.rule.css"}},name:"meta.property-list.css",patterns:[{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])--[\-a-zA-Z_[^\x00-\x7F]](?:[\-a-zA-Z0-9_[^\x00-\x7F]]|\\(?:\p{AHex}{1,6}|[^\n]))*/dgv,name:"variable.css"},{include:"#language_keywords"},{include:"#language_constants"},{match:/(?<=^)[^\P{space}\n]+(\n)/dgv},{captures:{"1":{name:"support.type.property-name.css"},"2":{name:"punctuation.separator.key-value.css"},"3":{name:"variable.section.css"}},match:/\p{space}*(counter-(?:reset|increment))(?:(:)|[^\P{space}\n])[^\P{space}\n]*([a-zA-Z_\-][a-zA-Z0-9_\-]*)/dgvy,name:"meta.property.counter.css"},{begin:/\p{space}*(filter)(?:(:)|[^\P{space}\n])[^\P{space}\n]*/dgvy,beginCaptures:{"1":{name:"support.type.property-name.css"},"2":{name:"punctuation.separator.key-value.css"}},end:/(?=[\n\;\}]|(?=\n?$))/dgv,name:"meta.property.filter.css",patterns:[{include:"#function"},{include:"#property_values"}]},{include:"#property"},{include:"#interpolation"},{include:"$self"}]},font_name:{match:/(\b(?:arial|century|comic|courier|cursive|fantasy|futura|garamond|georgia|helvetica|impact|lucida|monospace|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif)\b)/dgiv,name:"support.constant.font-name.css"},function:{begin:/(?=[a-zA-Z_\-][a-zA-Z0-9_\-]*\()/dgv,end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.section.function.css"}},patterns:[{begin:/(format|url|local)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.css",patterns:[{match:/(?<=\()[^\)\p{space}]*(?=\))/dgv,name:"string.css"},{include:"#string"},{include:"#variable"},{include:"#operator"},{match:/\p{space}*/dgv}]},{captures:{"1":{name:"support.function.misc.counter.css"},"2":{name:"punctuation.section.function.css"},"3":{name:"variable.section.css"}},match:/(counter)(\()([a-zA-Z_\-][a-zA-Z0-9_\-]*)(?=\))/dgv,name:"meta.function.misc.counter.css"},{begin:/(counters)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.counters.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.counters.css",patterns:[{match:/[a-zA-Z_\-][a-zA-Z0-9_\-]*/dgvy,name:"variable.section.css"},{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#string"},{include:"#interpolation"}]},{begin:/(attr)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.attr.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.attr.css",patterns:[{match:/[a-zA-Z_\-][a-zA-Z0-9_\-]*/dgvy,name:"entity.other.attribute-name.attribute.css"},{match:/(?<=[a-zA-Z0-9_\-])\p{space}*\b(string|color|url|integer|number|length|em|ex|px|rem|vw|vh|vmin|vmax|mm|cm|in|pt|pc|angle|deg|grad|rad|time|s|ms|frequency|Hz|kHz|%)\b/dgv,name:"support.type.attr.css"},{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#string"},{include:"#interpolation"}]},{begin:/(calc)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.calc.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.calc.css",patterns:[{include:"#property_values"}]},{begin:/(cubic-bezier)(\()/dgv,beginCaptures:{"1":{name:"support.function.timing.cubic-bezier.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.timing.cubic-bezier.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{include:"#interpolation"}]},{begin:/(steps)(\()/dgv,beginCaptures:{"1":{name:"support.function.timing.steps.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.timing.steps.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{match:/\b(start|end)\b/dgv,name:"support.constant.timing.steps.direction.css"},{include:"#interpolation"}]},{begin:/(linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient)(\()/dgv,beginCaptures:{"1":{name:"support.function.gradient.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.gradient.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{include:"#color"},{match:/\b(to|bottom|right|left|top|circle|ellipse|center|closest-side|closest-corner|farthest-side|farthest-corner|at)\b/dgv,name:"support.constant.gradient.css"},{include:"#interpolation"}]},{begin:/(blur|brightness|contrast|grayscale|hue-rotate|invert|opacity|saturate|sepia)(\()/dgv,beginCaptures:{"1":{name:"support.function.filter.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.filter.css",patterns:[{include:"#numeric"},{include:"#property_variable"},{include:"#interpolation"}]},{begin:/(drop-shadow)(\()/dgv,beginCaptures:{"1":{name:"support.function.filter.drop-shadow.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.filter.drop-shadow.css",patterns:[{include:"#numeric"},{include:"#color"},{include:"#property_variable"},{include:"#interpolation"}]},{begin:/(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[yY]|rotate[zZ]|scale|scale3d|scale[xX]|scale[yY]|scale[zZ]|skew|skew[xX]|skew[yY]|translate|translate3d|translate[xX]|translate[yY]|translate[zZ])(\()/dgv,beginCaptures:{"1":{name:"support.function.transform.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.transform.css",patterns:[{include:"#numeric"},{include:"#property_variable"},{include:"#interpolation"}]},{match:/(url|local|format|counter|counters|attr|calc)(?=\()/dgv,name:"support.function.misc.css"},{match:/(cubic-bezier|steps)(?=\()/dgv,name:"support.function.timing.css"},{match:/(linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient)(?=\()/dgv,name:"support.function.gradient.css"},{match:/(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)(?=\()/dgv,name:"support.function.filter.css"},{match:/(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[yY]|rotate[zZ]|scale|scale3d|scale[xX]|scale[yY]|scale[zZ]|skew|skew[xX]|skew[yY]|translate|translate3d|translate[xX]|translate[yY]|translate[zZ])(?=\()/dgv,name:"support.function.transform.css"},{begin:/([a-zA-Z_\-][a-zA-Z0-9_\-]*)(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.stylus"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.stylus",patterns:[{match:/--[\-a-zA-Z_[^\x00-\x7F]](?:[\-a-zA-Z0-9_[^\x00-\x7F]]|\\(?:\p{AHex}{1,6}|[^\n]))*/dgv,name:"variable.argument.stylus"},{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#interpolation"},{include:"#property_values"}]},{match:/\(/dgv,name:"punctuation.section.function.css"}]},interpolation:{begin:/(\{)[^\P{space}\n]*(?=[^\;\=]*[^\P{space}\n]*\})/dgv,beginCaptures:{"1":{name:"meta.brace.curly"}},end:/[^\P{space}\n]*(\})|\n|(?=\n?$)/dgv,endCaptures:{"1":{name:"meta.brace.curly"}},name:"meta.interpolation.stylus",patterns:[{include:"#variable"},{include:"#numeric"},{include:"#string"},{include:"#operator"}]},language_constants:{match:/\b(true|false|null)\b/dgv,name:"constant.language.stylus"},language_keywords:{patterns:[{match:/(\b|\p{space})(return|else|for|unless|if|else)\b/dgv,name:"keyword.control.stylus"},{match:/(\b|\p{space})(!important|in|is defined|is a)\b/dgv,name:"keyword.other.stylus"},{match:/\barguments\b/dgv,name:"variable.language.stylus"}]},numeric:{patterns:[{captures:{"1":{name:"keyword.other.unit.css"}},match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(?:[\-\+]?[0-9]+(?:\.[0-9]+)?|\.[0-9]+)((?:px|pt|ch|cm|mm|in|r?em|ex|pc|deg|g?rad|dpi|dpcm|dppx|fr|ms|s|turn|vh|vmax|vmin|vw)\b|%)?/dgv,name:"constant.numeric.css"}]},operator:{patterns:[{match:/((?:[\?\:\!\~\+]|(\p{space}-\p{space})|\*?\*|[\/\%]|(\.)?\.\.|[\<\>]|[\=\:\?\+\-\*\/\%\<\>]?=|!=)|\b(?:in|is(?:nt)?|(?<!:)not|or|and)\b)/dgv,name:"keyword.operator.stylus"},{include:"#char_escape"}]},property:{begin:/*@__PURE__*/ new EmulatedRegExp("\\p{space}*(?:(-webkit-[\\-A-Za-z]+|-moz-[\\-A-Za-z]+|-o-[\\-A-Za-z]+|-ms-[\\-A-Za-z]+|-khtml-[\\-A-Za-z]+|zoom|z-index|[yx]|wrap|word-wrap|word-spacing|word-break|word|width|widows|white-space-collapse|white-space|white|weight|volume|voice-volume|voice-stress|voice-rate|voice-pitch-range|voice-pitch|voice-family|voice-duration|voice-balance|voice|visibility|vertical-align|variant|user-select|up|unicode-bidi|unicode-range|unicode|trim|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform|touch-action|top-width|top-style|top-right-radius|top-left-radius|top-color|top|timing-function|text-wrap|text-transform|text-shadow|text-replace|text-rendering|text-overflow|text-outline|text-justify|text-indent|text-height|text-emphasis|text-decoration|text-align-last|text-align|text|target-position|target-new|target-name|target|table-layout|tab-size|style-type|style-position|style-image|style|string-set|stretch|stress|stacking-strategy|stacking-shift|stacking-ruby|stacking|src|speed|speech-rate|speech|speak-punctuation|speak-numeral|speak-header|speak|span|spacing|space-collapse|space|sizing|size-adjust|size|shadow|respond-to|rule-width|rule-style|rule-color|rule|ruby-span|ruby-position|ruby-overhang|ruby-align|ruby|rows|rotation-point|rotation|role|right-width|right-style|right-color|right|richness|rest-before|rest-after|rest|resource|resize|reset|replace|repeat|rendering-intent|rate|radius|quotes|punctuation-trim|punctuation|property|profile|presentation-level|presentation|position|pointer-events|point|play-state|play-during|play-count|pitch-range|pitch|phonemes|pause-before|pause-after|pause|page-policy|page-break-inside|page-break-before|page-break-after|page|padding-top|padding-right|padding-left|padding-bottom|padding|pack|overhang|overflow-y|overflow-x|overflow-style|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|origin|orientation|orient|ordinal-group|order|opacity|offset|numeral|new|nav-up|nav-right|nav-left|nav-index|nav-down|nav|name|move-to|model|mix-blend-mode|min-width|min-height|min|max-width|max-height|max|marquee-style|marquee-speed|marquee-play-count|marquee-direction|marquee|marks|mark-before|mark-after|mark|margin-top|margin-right|margin-left|margin-bottom|margin|mask-image|list-style-type|list-style-position|list-style-image|list-style|list|lines|line-stacking-strategy|line-stacking-shift|line-stacking-ruby|line-stacking|line-height|line-break|level|letter-spacing|length|left-width|left-style|left-color|left|label|justify-content|justify|iteration-count|inline-box-align|initial-value|initial-size|initial-before-align|initial-before-adjust|initial-after-align|initial-after-adjust|index|indent|increment|image-resolution|image-orientation|image|icon|hyphens|hyphenate-resource|hyphenate-lines|hyphenate-character|hyphenate-before|hyphenate-after|hyphenate|height|header|hanging-punctuation|gap|grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-start|grid-row|grid-row-end|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows|row-gap|gap|font-kerning|font-language-override|font-weight|font-variant-caps|font-variant|font-style|font-synthesis|font-stretch|font-size-adjust|font-size|font-family|font|float-offset|float|flex-wrap|flex-shrink|flex-grow|flex-group|flex-flow|flex-direction|flex-basis|flex|fit-position|fit|fill|filter|family|empty-cells|emphasis|elevation|duration|drop-initial-value|drop-initial-size|drop-initial-before-align|drop-initial-before-adjust|drop-initial-after-align|drop-initial-after-adjust|drop|down|dominant-baseline|display-role|display-model|display|direction|delay|decoration-break|decoration|cursor|cue-before|cue-after|cue|crop|counter-reset|counter-increment|counter|count|content|columns|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|column-break-before|column-break-after|column|color-profile|color|collapse|clip|clear|character|caption-side|break-inside|break-before|break-after|break|box-sizing|box-shadow|box-pack|box-orient|box-ordinal-group|box-lines|box-flex-group|box-flex|box-direction|box-decoration-break|box-align|box|bottom-width|bottom-style|bottom-right-radius|bottom-left-radius|bottom-color|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-length|border-left-width|border-left-style|border-left-color|border-left|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|bookmark-target|bookmark-level|bookmark-label|bookmark|binding|bidi|before|baseline-shift|baseline|balance|background-blend-mode|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-break|background-attachment|background|azimuth|attachment|appearance|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-duration|animation-direction|animation-delay|animation-fill-mode|animation|alignment-baseline|alignment-adjust|alignment|align-self|align-last|align-items|align-content|align|after|adjust|will-change)|(writing-mode|text-anchor|stroke-width|stroke-opacity|stroke-miterlimit|stroke-linejoin|stroke-linecap|stroke-dashoffset|stroke-dasharray|stroke|stop-opacity|stop-color|shape-rendering|marker-start|marker-mid|marker-end|lighting-color|kerning|image-rendering|glyph-orientation-vertical|glyph-orientation-horizontal|flood-opacity|flood-color|fill-rule|fill-opacity|fill|enable-background|color-rendering|color-interpolation-filters|color-interpolation|clip-rule|clip-path)|([a-zA-Z_\\-][a-zA-Z0-9_\\-]*))(?!([^\\P{space}\\n]*&)|([^\\P{space}\\n]*\\{))(?=:|([^\\P{space}\\n]+\\P{space}))","dgvy",{"lazyCompile":true}),beginCaptures:{"1":{name:"support.type.property-name.css"},"2":{name:"support.type.property-name.svg.css"},"3":{name:"support.function.mixin.stylus"}},end:/(;)|(?=[\n\}]|(?=\n?$))/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},patterns:[{include:"#property_value"}]},property_value:{begin:/(?:(:)|(\p{space}))(\p{space}*)(?!&)/dgvy,beginCaptures:{"1":{name:"punctuation.separator.key-value.css"},"2":{name:"punctuation.separator.key-value.css"}},end:/(?=[\n\;\}])/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},name:"meta.property-value.css",patterns:[{include:"#property_values"},{match:/[^\n]+?/dgv}]},property_values:{patterns:[{include:"#function"},{include:"#comment"},{include:"#language_keywords"},{include:"#language_constants"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(wrap-reverse|wrap|whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|unicase|underline|ultra-expanded|ultra-condensed|transparent|transform|top|titling-caps|thin|thick|text-top|text-bottom|text|tb-rl|table-row-group|table-row|table-header-group|table-footer-group|table-column-group|table-column|table-cell|table|sw-resize|super|strict|stretch|step-start|step-end|static|square|space-between|space-around|space|solid|soft-light|small-caps|separate|semi-expanded|semi-condensed|se-resize|scroll|screen|saturation|s-resize|running|rtl|row-reverse|row-resize|row|round|right|ridge|reverse|repeat-y|repeat-x|repeat|relative|progressive|progress|pre-wrap|pre-line|pre|pointer|petite-caps|paused|pan-x|pan-left|pan-right|pan-y|pan-up|pan-down|padding-box|overline|overlay|outside|outset|optimizeSpeed|optimizeLegibility|opacity|oblique|nw-resize|nowrap|not-allowed|normal|none|no-repeat|no-drop|newspaper|ne-resize|n-resize|multiply|move|middle|medium|max-height|manipulation|main-size|luminosity|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|local|list-item|linear(?!-)|line-through|line-edge|line|lighter|lighten|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline-block|inline|inherit|infinite|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|hue|horizontal|hidden|help|hard-light|hand|groove|geometricPrecision|forwards|flex-start|flex-end|flex|fixed|extra-expanded|extra-condensed|expanded|exclusion|ellipsis|ease-out|ease-in-out|ease-in|ease|e-resize|double|dotted|distribute-space|distribute-letter|distribute-all-lines|distribute|disc|disabled|difference|default|decimal|dashed|darken|currentColor|crosshair|cover|content-box|contain|condensed|column-reverse|column|color-dodge|color-burn|color|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|border-box|bolder|bold|block|bidi-override|below|baseline|balance|backwards|auto|antialiased|always|alternate-reverse|alternate|all-small-caps|all-scroll|all-petite-caps|all|absolute)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.constant.property-value.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(start|sRGB|square|round|optimizeSpeed|optimizeQuality|nonzero|miter|middle|linearRGB|geometricPrecision |evenodd |end |crispEdges|butt|bevel)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.constant.property-value.svg.css"},{include:"#font_name"},{include:"#numeric"},{include:"#color"},{include:"#string"},{match:/!\p{space}*important/dgv,name:"keyword.other.important.css"},{include:"#operator"},{include:"#stylus_keywords"},{include:"#property_variable"}]},property_variable:{patterns:[{include:"#variable"},{match:/(?<!^)(@[a-zA-Z_\-][a-zA-Z0-9_\-]*)/dgv,name:"variable.property.stylus"}]},selector:{patterns:[{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(a|abbr|acronym|address|area|article|aside|audio|b|base|bdi|bdo|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|data|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|main|map|mark|math|menu|menuitem|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|rb|rp|rt|rtc|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|svg|table|tbody|td|template|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"entity.name.tag.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(vkern|view|use|tspan|tref|title|textPath|text|symbol|switch|svg|style|stop|set|script|rect|radialGradient|polyline|polygon|pattern|path|mpath|missing-glyph|metadata|mask|marker|linearGradient|line|image|hkern|glyphRef|glyph|g|foreignObject|font-face-uri|font-face-src|font-face-name|font-face-format|font-face|font|filter|feTurbulence|feTile|feSpotLight|feSpecularLighting|fePointLight|feOffset|feMorphology|feMergeNode|feMerge|feImage|feGaussianBlur|feFuncR|feFuncG|feFuncB|feFuncA|feFlood|feDistantLight|feDisplacementMap|feDiffuseLighting|feConvolveMatrix|feComposite|feComponentTransfer|feColorMatrix|feBlend|ellipse|desc|defs|cursor|color-profile|clipPath|circle|animateTransform|animateMotion|animateColor|animate|altGlyphItem|altGlyphDef|altGlyph|a)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"entity.name.tag.svg.css"},{match:/\p{space}*(,)\p{space}*/dgv,name:"meta.selector.stylus"},{match:/\*/dgv,name:"meta.selector.stylus"},{captures:{"2":{name:"entity.other.attribute-name.parent-selector-suffix.stylus"}},match:/\p{space}*(&)([a-zA-Z0-9_\-]+)\p{space}*/dgv,name:"meta.selector.stylus"},{match:/\p{space}*(&)\p{space}*/dgv,name:"meta.selector.stylus"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(\.)[a-zA-Z0-9_\-]+/dgv,name:"entity.other.attribute-name.class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(#)[a-zA-Z][a-zA-Z0-9_\-]*/dgv,name:"entity.other.attribute-name.id.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:+)(after|before|content|first-letter|first-line|host|(-(moz|webkit|ms)-)?selection)\b/dgv,name:"entity.other.attribute-name.pseudo-element.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:)((first|last)-child|(first|last|only)-of-type|empty|root|target|first|left|right)\b/dgv,name:"entity.other.attribute-name.pseudo-class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:)(checked|enabled|default|disabled|indeterminate|invalid|optional|required|valid)\b/dgv,name:"entity.other.attribute-name.pseudo-class.ui-state.css"},{begin:/((:)not)(\()/dgv,beginCaptures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"punctuation.definition.entity.css"},"3":{name:"punctuation.section.function.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.css"}},patterns:[{include:"#selector"}]},{captures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"punctuation.definition.entity.css"},"3":{name:"punctuation.section.function.css"},"4":{name:"constant.numeric.css"},"5":{name:"punctuation.section.function.css"}},match:/((:)nth-(?:(?:last-)?child|(?:last-)?of-type))(\()(-?(?:\p{Nd}+n?|n)(?:\+\p{Nd}+)?|even|odd)(\))/dgv},{captures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"puncutation.definition.entity.css"},"3":{name:"punctuation.section.function.css"},"4":{name:"constant.language.css"},"5":{name:"punctuation.section.function.css"}},match:/((:)dir)\p{space}*(?:(\()(ltr|rtl)?(\)))?/dgv},{captures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"puncutation.definition.entity.css"},"3":{name:"punctuation.section.function.css"},"4":{name:"constant.language.css"},"6":{name:"punctuation.section.function.css"}},match:/((:)lang)\p{space}*(?:(\()([\p{L}\p{M}\p{N}\p{Pc}]+(-[\p{L}\p{M}\p{N}\p{Pc}]+)?)?(\)))?/dgv},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:)(active|hover|link|visited|focus)\b/dgv,name:"entity.other.attribute-name.pseudo-class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(::)(shadow)\b/dgv,name:"entity.other.attribute-name.pseudo-class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"},"2":{name:"entity.other.attribute-name.attribute.css"},"3":{name:"punctuation.separator.operator.css"},"4":{name:"string.unquoted.attribute-value.css"},"5":{name:"string.quoted.double.attribute-value.css"},"6":{name:"punctuation.definition.string.begin.css"},"7":{name:"punctuation.definition.string.end.css"},"8":{name:"punctuation.definition.entity.css"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\[)\\p{space}*(-?[_a-z\\\\\\P{ASCII}][_a-z0-9\\-\\\\\\P{ASCII}]*)(?:\\p{space}*([\\~\\|\\^\\$\\*]?=)\\p{space}*(?:(-?[_a-z\\\\\\P{ASCII}][_a-z0-9\\-\\\\\\P{ASCII}]*)|((?:(?=((['\"])(?:[^\\\\]|\\\\[^\\n])*?(\\7)))\\6))))?\\p{space}*(\\])","dgiv",{"hiddenCaptures":[6]}),name:"meta.attribute-selector.css"},{include:"#interpolation"},{include:"#variable"}]},string:{patterns:[{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.css"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.css"}},name:"string.quoted.double.css",patterns:[{match:/\\(\p{AHex}{1,6}|[^\n])/dgv,name:"constant.character.escape.css"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.css"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.css"}},name:"string.quoted.single.css",patterns:[{match:/\\(\p{AHex}{1,6}|[^\n])/dgv,name:"constant.character.escape.css"}]}]},variable:{match:/(\$[a-zA-Z_\-][a-zA-Z0-9_\-]*)/dgv,name:"variable.stylus"},variable_declaration:{begin:/^[^\P{space}\n]*(\$?[a-zA-Z_\-][a-zA-Z0-9_\-]*)[^\P{space}\n]*(=|\?=|:=)/dgv,beginCaptures:{"1":{name:"variable.stylus"},"2":{name:"keyword.operator.stylus"}},end:/(\n)|(;)|(?=\})/dgv,endCaptures:{"2":{name:"punctuation.terminator.rule.css"}},patterns:[{include:"#property_values"}]}},scopeName:"source.stylus",embeddedLangs:undefined,aliases:["styl"]})
|
|
3
|
+
const lang = Object.freeze({displayName:"Stylus",fileTypes:["styl","stylus","css.styl","css.stylus"],name:"stylus",patterns:[{include:"#comment"},{include:"#at_rule"},{include:"#language_keywords"},{include:"#language_constants"},{include:"#variable_declaration"},{include:"#function"},{include:"#selector"},{include:"#declaration"},{captures:{"1":{name:"punctuation.section.property-list.begin.css"},"2":{name:"punctuation.section.property-list.end.css"}},match:/(\{)(\})/dgv,name:"meta.brace.curly.css"},{match:/[\{\}]/dgv,name:"meta.brace.curly.css"},{include:"#numeric"},{include:"#string"},{include:"#operator"}],repository:{at_rule:{patterns:[{begin:/\p{space}*((@)(import|require))\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.import.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},end:/\p{space}*((?=;|(?=\n?$)|\n))/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},name:"meta.at-rule.import.css",patterns:[{include:"#string"}]},{begin:/\p{space}*((@)(extends?))\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.extend.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},end:/\p{space}*((?=;|(?=\n?$)|\n))/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},name:"meta.at-rule.extend.css",patterns:[{include:"#selector"}]},{captures:{"1":{name:"keyword.control.at-rule.fontface.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},match:/^\p{space}*((@)font-face)\b/dgv,name:"meta.at-rule.fontface.stylus"},{captures:{"1":{name:"keyword.control.at-rule.css.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},match:/^\p{space}*((@)css)\b/dgv,name:"meta.at-rule.css.stylus"},{begin:/\p{space}*((@)charset)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.charset.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},end:/\p{space}*((?=;|(?=\n?$)|\n))/dgv,name:"meta.at-rule.charset.stylus",patterns:[{include:"#string"}]},{begin:/\p{space}*((@)keyframes)\b\p{space}+([\-A-Z_a-z][\-0-9A-Z_a-z]*)/dgv,beginCaptures:{"1":{name:"keyword.control.at-rule.keyframes.stylus"},"2":{name:"punctuation.definition.keyword.stylus"},"3":{name:"entity.name.function.keyframe.stylus"}},end:/\p{space}*((?=\{|(?=\n?$)|\n))/dgv,name:"meta.at-rule.keyframes.stylus"},{begin:/(?=\b((\p{Nd}+%|from\b|to\b)))/dgv,end:/(?=([\n\{]))/dgv,name:"meta.at-rule.keyframes.stylus",patterns:[{match:/\b((\p{Nd}+%|from\b|to\b))/dgv,name:"entity.other.attribute-name.stylus"}]},{captures:{"1":{name:"keyword.control.at-rule.media.stylus"},"2":{name:"punctuation.definition.keyword.stylus"}},match:/^\p{space}*((@)media)\b/dgv,name:"meta.at-rule.media.stylus"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(width|scan|resolution|orientation|monochrome|min-width|min-resolution|min-monochrome|min-height|min-device-width|min-device-height|min-device-aspect-ratio|min-color-index|min-color|min-aspect-ratio|max-width|max-resolution|max-monochrome|max-height|max-device-width|max-device-height|max-device-aspect-ratio|max-color-index|max-color|max-aspect-ratio|height|grid|device-width|device-height|device-aspect-ratio|color-index|color|aspect-ratio)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.type.property-name.media-feature.media.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(tv|tty|screen|projection|print|handheld|embossed|braille|aural|all)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.constant.media-type.media.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(portrait|landscape)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.constant.property-value.media-property.media.css"}]},char_escape:{match:/\\([^\n])/dgv,name:"constant.character.escape.stylus"},color:{patterns:[{begin:/\b(rgb|rgba|hsl|hsla)(\()/dgv,beginCaptures:{"1":{name:"support.function.color.css"},"2":{name:"punctuation.section.function.css"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.section.function.css"}},name:"meta.function.color.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{include:"#property_variable"}]},{captures:{"1":{name:"punctuation.definition.constant.css"}},match:/(#)(\p{AHex}{3}|\p{AHex}{6})\b/dgv,name:"constant.other.color.rgb-value.css"},{match:/\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\b/dgv,name:"support.constant.color.w3c-standard-color-name.css"},{match:/\b(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\b/dgv,name:"support.constant.color.w3c-extended-color-name.css"}]},comment:{patterns:[{include:"#comment_block"},{include:"#comment_line"}]},comment_block:{begin:/\/\*/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.begin.css"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.end.css"}},name:"comment.block.css"},comment_line:{begin:/(^[\t ]+)?(?=\/\/)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.stylus"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.stylus"}},end:/(?=\n)/dgv,name:"comment.line.double-slash.stylus"}]},declaration:{begin:/((?<=^)[^\n\P{space}]+)|((?<=;)[^\n\P{space}]*)|((?<=\{)[^\n\P{space}]*)/dgv,end:/(?=\n)|(;)|(?=\})|(\n)/dgv,endCaptures:{"2":{name:"punctuation.terminator.rule.css"}},name:"meta.property-list.css",patterns:[{match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])--[\-A-Z_a-z[^\x00-\x7F]](?:[\-0-9A-Z_a-z[^\x00-\x7F]]|\\(?:\p{AHex}{1,6}|[^\n]))*/dgv,name:"variable.css"},{include:"#language_keywords"},{include:"#language_constants"},{match:/(?<=^)[^\n\P{space}]+(\n)/dgv},{captures:{"1":{name:"support.type.property-name.css"},"2":{name:"punctuation.separator.key-value.css"},"3":{name:"variable.section.css"}},match:/\p{space}*(counter-(?:reset|increment))(?:(:)|[^\n\P{space}])[^\n\P{space}]*([\-A-Z_a-z][\-0-9A-Z_a-z]*)/dgvy,name:"meta.property.counter.css"},{begin:/\p{space}*(filter)(?:(:)|[^\n\P{space}])[^\n\P{space}]*/dgvy,beginCaptures:{"1":{name:"support.type.property-name.css"},"2":{name:"punctuation.separator.key-value.css"}},end:/(?=[\n\;\}]|(?=\n?$))/dgv,name:"meta.property.filter.css",patterns:[{include:"#function"},{include:"#property_values"}]},{include:"#property"},{include:"#interpolation"},{include:"$self"}]},font_name:{match:/\b((?:arial|century|comic|courier|cursive|fantasy|futura|garamond|georgia|helvetica|impact|lucida|monospace|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif))\b/dgiv,name:"support.constant.font-name.css"},function:{begin:/(?=[\-A-Z_a-z][\-0-9A-Z_a-z]*\()/dgv,end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.section.function.css"}},patterns:[{begin:/(format|url|local)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.css",patterns:[{match:/(?<=\()[^\)\p{space}]*(?=\))/dgv,name:"string.css"},{include:"#string"},{include:"#variable"},{include:"#operator"},{match:/\p{space}*/dgv}]},{captures:{"1":{name:"support.function.misc.counter.css"},"2":{name:"punctuation.section.function.css"},"3":{name:"variable.section.css"}},match:/(counter)(\()([\-A-Z_a-z][\-0-9A-Z_a-z]*)(?=\))/dgv,name:"meta.function.misc.counter.css"},{begin:/(counters)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.counters.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.counters.css",patterns:[{match:/[\-A-Z_a-z][\-0-9A-Z_a-z]*/dgvy,name:"variable.section.css"},{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#string"},{include:"#interpolation"}]},{begin:/(attr)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.attr.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.attr.css",patterns:[{match:/[\-A-Z_a-z][\-0-9A-Z_a-z]*/dgvy,name:"entity.other.attribute-name.attribute.css"},{match:/(?<=[\-0-9A-Z_a-z])\p{space}*\b(string|color|url|integer|number|length|em|ex|px|rem|vw|vh|vmin|vmax|mm|cm|in|pt|pc|angle|deg|grad|rad|time|s|ms|frequency|Hz|kHz|%)\b/dgv,name:"support.type.attr.css"},{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#string"},{include:"#interpolation"}]},{begin:/(calc)(\()/dgv,beginCaptures:{"1":{name:"support.function.misc.calc.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.misc.calc.css",patterns:[{include:"#property_values"}]},{begin:/(cubic-bezier)(\()/dgv,beginCaptures:{"1":{name:"support.function.timing.cubic-bezier.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.timing.cubic-bezier.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{include:"#interpolation"}]},{begin:/(steps)(\()/dgv,beginCaptures:{"1":{name:"support.function.timing.steps.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.timing.steps.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{match:/\b(start|end)\b/dgv,name:"support.constant.timing.steps.direction.css"},{include:"#interpolation"}]},{begin:/((?:linear|radial|repeating-linear|repeating-radial)-gradient)(\()/dgv,beginCaptures:{"1":{name:"support.function.gradient.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.gradient.css",patterns:[{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#numeric"},{include:"#color"},{match:/\b(to|bottom|right|left|top|circle|ellipse|center|closest-side|closest-corner|farthest-side|farthest-corner|at)\b/dgv,name:"support.constant.gradient.css"},{include:"#interpolation"}]},{begin:/(blur|brightness|contrast|grayscale|hue-rotate|invert|opacity|saturate|sepia)(\()/dgv,beginCaptures:{"1":{name:"support.function.filter.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.filter.css",patterns:[{include:"#numeric"},{include:"#property_variable"},{include:"#interpolation"}]},{begin:/(drop-shadow)(\()/dgv,beginCaptures:{"1":{name:"support.function.filter.drop-shadow.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.filter.drop-shadow.css",patterns:[{include:"#numeric"},{include:"#color"},{include:"#property_variable"},{include:"#interpolation"}]},{begin:/(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[Yy]|rotate[Zz]|scale|scale3d|scale[Xx]|scale[Yy]|scale[Zz]|skew|skew[Xx]|skew[Yy]|translate|translate3d|translate[Xx]|translate[Yy]|translate[Zz])(\()/dgv,beginCaptures:{"1":{name:"support.function.transform.css"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.transform.css",patterns:[{include:"#numeric"},{include:"#property_variable"},{include:"#interpolation"}]},{match:/(url|local|format|counter|counters|attr|calc)(?=\()/dgv,name:"support.function.misc.css"},{match:/(cubic-bezier|steps)(?=\()/dgv,name:"support.function.timing.css"},{match:/((?:linear|radial|repeating-linear|repeating-radial)-gradient)(?=\()/dgv,name:"support.function.gradient.css"},{match:/(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)(?=\()/dgv,name:"support.function.filter.css"},{match:/(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[Yy]|rotate[Zz]|scale|scale3d|scale[Xx]|scale[Yy]|scale[Zz]|skew|skew[Xx]|skew[Yy]|translate|translate3d|translate[Xx]|translate[Yy]|translate[Zz])(?=\()/dgv,name:"support.function.transform.css"},{begin:/([\-A-Z_a-z][\-0-9A-Z_a-z]*)(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.stylus"},"2":{name:"punctuation.section.function.css"}},end:/(?=\))/dgv,name:"meta.function.stylus",patterns:[{match:/--[\-A-Z_a-z[^\x00-\x7F]](?:[\-0-9A-Z_a-z[^\x00-\x7F]]|\\(?:\p{AHex}{1,6}|[^\n]))*/dgv,name:"variable.argument.stylus"},{match:/\p{space}*(,)\p{space}*/dgv,name:"punctuation.separator.parameter.css"},{include:"#interpolation"},{include:"#property_values"}]},{match:/\(/dgv,name:"punctuation.section.function.css"}]},interpolation:{begin:/(\{)[^\n\P{space}]*(?=[^\;\=]*[^\n\P{space}]*\})/dgv,beginCaptures:{"1":{name:"meta.brace.curly"}},end:/[^\n\P{space}]*(\})|\n|(?=\n?$)/dgv,endCaptures:{"1":{name:"meta.brace.curly"}},name:"meta.interpolation.stylus",patterns:[{include:"#variable"},{include:"#numeric"},{include:"#string"},{include:"#operator"}]},language_constants:{match:/\b(true|false|null)\b/dgv,name:"constant.language.stylus"},language_keywords:{patterns:[{match:/(\b|\p{space})(return|else|for|unless|if|else)\b/dgv,name:"keyword.control.stylus"},{match:/(\b|\p{space})(!important|in|is defined|is a)\b/dgv,name:"keyword.other.stylus"},{match:/\barguments\b/dgv,name:"variable.language.stylus"}]},numeric:{patterns:[{captures:{"1":{name:"keyword.other.unit.css"}},match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(?:[\-\+]?[0-9]+(?:\.[0-9]+)?|\.[0-9]+)((?:px|pt|ch|cm|mm|in|r?em|ex|pc|deg|g?rad|dpi|dpcm|dppx|fr|ms|s|turn|vh|vmax|vmin|vw)\b|%)?/dgv,name:"constant.numeric.css"}]},operator:{patterns:[{match:/((?:[\!\+\:\?\~]|(\p{space}-\p{space})|\*?\*|[\%\/]|(\.)?\.\.|[\<\>]|[\-\%\*\+\/\:\<-\?]?=|!=)|\b(?:in|is(?:nt)?|(?<!:)not|or|and)\b)/dgv,name:"keyword.operator.stylus"},{include:"#char_escape"}]},property:{begin:/*@__PURE__*/ new EmulatedRegExp("\\p{space}*(?:(-webkit-[\\-A-Za-z]+|-moz-[\\-A-Za-z]+|-o-[\\-A-Za-z]+|-ms-[\\-A-Za-z]+|-khtml-[\\-A-Za-z]+|zoom|z-index|[xy]|wrap|word-wrap|word-spacing|word-break|word|width|widows|white-space-collapse|white-space|white|weight|volume|voice-volume|voice-stress|voice-rate|voice-pitch-range|voice-pitch|voice-family|voice-duration|voice-balance|voice|visibility|vertical-align|variant|user-select|up|unicode-bidi|unicode-range|unicode|trim|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform|touch-action|top-width|top-style|top-right-radius|top-left-radius|top-color|top|timing-function|text-wrap|text-transform|text-shadow|text-replace|text-rendering|text-overflow|text-outline|text-justify|text-indent|text-height|text-emphasis|text-decoration|text-align-last|text-align|text|target-position|target-new|target-name|target|table-layout|tab-size|style-type|style-position|style-image|style|string-set|stretch|stress|stacking-strategy|stacking-shift|stacking-ruby|stacking|src|speed|speech-rate|speech|speak-punctuation|speak-numeral|speak-header|speak|span|spacing|space-collapse|space|sizing|size-adjust|size|shadow|respond-to|rule-width|rule-style|rule-color|rule|ruby-span|ruby-position|ruby-overhang|ruby-align|ruby|rows|rotation-point|rotation|role|right-width|right-style|right-color|right|richness|rest-before|rest-after|rest|resource|resize|reset|replace|repeat|rendering-intent|rate|radius|quotes|punctuation-trim|punctuation|property|profile|presentation-level|presentation|position|pointer-events|point|play-state|play-during|play-count|pitch-range|pitch|phonemes|pause-before|pause-after|pause|page-policy|page-break-inside|page-break-before|page-break-after|page|padding-top|padding-right|padding-left|padding-bottom|padding|pack|overhang|overflow-y|overflow-x|overflow-style|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|origin|orientation|orient|ordinal-group|order|opacity|offset|numeral|new|nav-up|nav-right|nav-left|nav-index|nav-down|nav|name|move-to|model|mix-blend-mode|min-width|min-height|min|max-width|max-height|max|marquee-style|marquee-speed|marquee-play-count|marquee-direction|marquee|marks|mark-before|mark-after|mark|margin-top|margin-right|margin-left|margin-bottom|margin|mask-image|list-style-type|list-style-position|list-style-image|list-style|list|lines|line-stacking-strategy|line-stacking-shift|line-stacking-ruby|line-stacking|line-height|line-break|level|letter-spacing|length|left-width|left-style|left-color|left|label|justify-content|justify|iteration-count|inline-box-align|initial-value|initial-size|initial-before-align|initial-before-adjust|initial-after-align|initial-after-adjust|index|indent|increment|image-resolution|image-orientation|image|icon|hyphens|hyphenate-resource|hyphenate-lines|hyphenate-character|hyphenate-before|hyphenate-after|hyphenate|height|header|hanging-punctuation|gap|grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-start|grid-row|grid-row-end|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows|row-gap|gap|font-kerning|font-language-override|font-weight|font-variant-caps|font-variant|font-style|font-synthesis|font-stretch|font-size-adjust|font-size|font-family|font|float-offset|float|flex-wrap|flex-shrink|flex-grow|flex-group|flex-flow|flex-direction|flex-basis|flex|fit-position|fit|fill|filter|family|empty-cells|emphasis|elevation|duration|drop-initial-value|drop-initial-size|drop-initial-before-align|drop-initial-before-adjust|drop-initial-after-align|drop-initial-after-adjust|drop|down|dominant-baseline|display-role|display-model|display|direction|delay|decoration-break|decoration|cursor|cue-before|cue-after|cue|crop|counter-reset|counter-increment|counter|count|content|columns|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|column-break-before|column-break-after|column|color-profile|color|collapse|clip|clear|character|caption-side|break-inside|break-before|break-after|break|box-sizing|box-shadow|box-pack|box-orient|box-ordinal-group|box-lines|box-flex-group|box-flex|box-direction|box-decoration-break|box-align|box|bottom-width|bottom-style|bottom-right-radius|bottom-left-radius|bottom-color|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-length|border-left-width|border-left-style|border-left-color|border-left|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|bookmark-target|bookmark-level|bookmark-label|bookmark|binding|bidi|before|baseline-shift|baseline|balance|background-blend-mode|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-break|background-attachment|background|azimuth|attachment|appearance|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-duration|animation-direction|animation-delay|animation-fill-mode|animation|alignment-baseline|alignment-adjust|alignment|align-self|align-last|align-items|align-content|align|after|adjust|will-change)|(writing-mode|text-anchor|stroke-width|stroke-opacity|stroke-miterlimit|stroke-linejoin|stroke-linecap|stroke-dashoffset|stroke-dasharray|stroke|stop-opacity|stop-color|shape-rendering|marker-start|marker-mid|marker-end|lighting-color|kerning|image-rendering|glyph-orientation-vertical|glyph-orientation-horizontal|flood-opacity|flood-color|fill-rule|fill-opacity|fill|enable-background|color-rendering|color-interpolation-filters|color-interpolation|clip-rule|clip-path)|([\\-A-Z_a-z][\\-0-9A-Z_a-z]*))(?!([^\\n\\P{space}]*&)|([^\\n\\P{space}]*\\{))(?=:|([^\\n\\P{space}]+\\P{space}))","dgvy",{"lazyCompile":true}),beginCaptures:{"1":{name:"support.type.property-name.css"},"2":{name:"support.type.property-name.svg.css"},"3":{name:"support.function.mixin.stylus"}},end:/(;)|(?=[\n\}]|(?=\n?$))/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},patterns:[{include:"#property_value"}]},property_value:{begin:/(?:(:)|(\p{space}))(\p{space}*)(?!&)/dgvy,beginCaptures:{"1":{name:"punctuation.separator.key-value.css"},"2":{name:"punctuation.separator.key-value.css"}},end:/(?=[\n\;\}])/dgv,endCaptures:{"1":{name:"punctuation.terminator.rule.css"}},name:"meta.property-value.css",patterns:[{include:"#property_values"},{match:/[^\n]+?/dgv}]},property_values:{patterns:[{include:"#function"},{include:"#comment"},{include:"#language_keywords"},{include:"#language_constants"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(wrap-reverse|wrap|whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|unicase|underline|ultra-expanded|ultra-condensed|transparent|transform|top|titling-caps|thin|thick|text-top|text-bottom|text|tb-rl|table-row-group|table-row|table-header-group|table-footer-group|table-column-group|table-column|table-cell|table|sw-resize|super|strict|stretch|step-start|step-end|static|square|space-between|space-around|space|solid|soft-light|small-caps|separate|semi-expanded|semi-condensed|se-resize|scroll|screen|saturation|s-resize|running|rtl|row-reverse|row-resize|row|round|right|ridge|reverse|repeat-y|repeat-x|repeat|relative|progressive|progress|pre-wrap|pre-line|pre|pointer|petite-caps|paused|pan-x|pan-left|pan-right|pan-y|pan-up|pan-down|padding-box|overline|overlay|outside|outset|optimizeSpeed|optimizeLegibility|opacity|oblique|nw-resize|nowrap|not-allowed|normal|none|no-repeat|no-drop|newspaper|ne-resize|n-resize|multiply|move|middle|medium|max-height|manipulation|main-size|luminosity|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|local|list-item|linear(?!-)|line-through|line-edge|line|lighter|lighten|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline-block|inline|inherit|infinite|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|hue|horizontal|hidden|help|hard-light|hand|groove|geometricPrecision|forwards|flex-start|flex-end|flex|fixed|extra-expanded|extra-condensed|expanded|exclusion|ellipsis|ease-out|ease-in-out|ease-in|ease|e-resize|double|dotted|distribute-space|distribute-letter|distribute-all-lines|distribute|disc|disabled|difference|default|decimal|dashed|darken|currentColor|crosshair|cover|content-box|contain|condensed|column-reverse|column|color-dodge|color-burn|color|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|border-box|bolder|bold|block|bidi-override|below|baseline|balance|backwards|auto|antialiased|always|alternate-reverse|alternate|all-small-caps|all-scroll|all-petite-caps|all|absolute)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.constant.property-value.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(start|sRGB|square|round|optimizeSpeed|optimizeQuality|nonzero|miter|middle|linearRGB|geometricPrecision |evenodd |end |crispEdges|butt|bevel)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.constant.property-value.svg.css"},{include:"#font_name"},{include:"#numeric"},{include:"#color"},{include:"#string"},{match:/!\p{space}*important/dgv,name:"keyword.other.important.css"},{include:"#operator"},{include:"#stylus_keywords"},{include:"#property_variable"}]},property_variable:{patterns:[{include:"#variable"},{match:/(?<!^)(@[\-A-Z_a-z][\-0-9A-Z_a-z]*)/dgv,name:"variable.property.stylus"}]},selector:{patterns:[{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(a|abbr|acronym|address|area|article|aside|audio|b|base|bdi|bdo|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|data|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|main|map|mark|math|menu|menuitem|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|rb|rp|rt|rtc|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|svg|table|tbody|td|template|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"entity.name.tag.css"},{match:/(?=[\p{L}\p{M}\p{N}\p{Pc}])(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(vkern|view|use|tspan|tref|title|textPath|text|symbol|switch|svg|style|stop|set|script|rect|radialGradient|polyline|polygon|pattern|path|mpath|missing-glyph|metadata|mask|marker|linearGradient|line|image|hkern|glyphRef|glyph|g|foreignObject|font-face-uri|font-face-src|font-face-name|font-face-format|font-face|font|filter|feTurbulence|feTile|feSpotLight|feSpecularLighting|fePointLight|feOffset|feMorphology|feMergeNode|feMerge|feImage|feGaussianBlur|feFuncR|feFuncG|feFuncB|feFuncA|feFlood|feDistantLight|feDisplacementMap|feDiffuseLighting|feConvolveMatrix|feComposite|feComponentTransfer|feColorMatrix|feBlend|ellipse|desc|defs|cursor|color-profile|clipPath|circle|animateTransform|animateMotion|animateColor|animate|altGlyphItem|altGlyphDef|altGlyph|a)(?<=[\p{L}\p{M}\p{N}\p{Pc}])(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"entity.name.tag.svg.css"},{match:/\p{space}*(,)\p{space}*/dgv,name:"meta.selector.stylus"},{match:/\*/dgv,name:"meta.selector.stylus"},{captures:{"2":{name:"entity.other.attribute-name.parent-selector-suffix.stylus"}},match:/\p{space}*(&)([\-0-9A-Z_a-z]+)\p{space}*/dgv,name:"meta.selector.stylus"},{match:/\p{space}*(&)\p{space}*/dgv,name:"meta.selector.stylus"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(\.)[\-0-9A-Z_a-z]+/dgv,name:"entity.other.attribute-name.class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(#)[A-Za-z][\-0-9A-Z_a-z]*/dgv,name:"entity.other.attribute-name.id.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:+)(after|before|content|first-letter|first-line|host|(-(moz|webkit|ms)-)?selection)\b/dgv,name:"entity.other.attribute-name.pseudo-element.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:)((first|last)-child|(first|last|only)-of-type|empty|root|target|first|left|right)\b/dgv,name:"entity.other.attribute-name.pseudo-class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:)(checked|enabled|default|disabled|indeterminate|invalid|optional|required|valid)\b/dgv,name:"entity.other.attribute-name.pseudo-class.ui-state.css"},{begin:/((:)not)(\()/dgv,beginCaptures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"punctuation.definition.entity.css"},"3":{name:"punctuation.section.function.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.css"}},patterns:[{include:"#selector"}]},{captures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"punctuation.definition.entity.css"},"3":{name:"punctuation.section.function.css"},"4":{name:"constant.numeric.css"},"5":{name:"punctuation.section.function.css"}},match:/((:)nth-(?:(?:last-)?child|(?:last-)?of-type))(\()(-?(?:\p{Nd}+n?|n)(?:\+\p{Nd}+)?|even|odd)(\))/dgv},{captures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"puncutation.definition.entity.css"},"3":{name:"punctuation.section.function.css"},"4":{name:"constant.language.css"},"5":{name:"punctuation.section.function.css"}},match:/((:)dir)\p{space}*(?:(\()(ltr|rtl)?(\)))?/dgv},{captures:{"1":{name:"entity.other.attribute-name.pseudo-class.css"},"2":{name:"puncutation.definition.entity.css"},"3":{name:"punctuation.section.function.css"},"4":{name:"constant.language.css"},"6":{name:"punctuation.section.function.css"}},match:/((:)lang)\p{space}*(?:(\()([\p{L}\p{M}\p{N}\p{Pc}]+(-[\p{L}\p{M}\p{N}\p{Pc}]+)?)?(\)))?/dgv},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(:)(active|hover|link|visited|focus)\b/dgv,name:"entity.other.attribute-name.pseudo-class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"}},match:/(::)(shadow)\b/dgv,name:"entity.other.attribute-name.pseudo-class.css"},{captures:{"1":{name:"punctuation.definition.entity.css"},"2":{name:"entity.other.attribute-name.attribute.css"},"3":{name:"punctuation.separator.operator.css"},"4":{name:"string.unquoted.attribute-value.css"},"5":{name:"string.quoted.double.attribute-value.css"},"6":{name:"punctuation.definition.string.begin.css"},"7":{name:"punctuation.definition.string.end.css"},"8":{name:"punctuation.definition.entity.css"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\[)\\p{space}*(-?[\\\\_a-z\\P{ASCII}][\\-0-9\\\\_a-z\\P{ASCII}]*)(?:\\p{space}*([\\$\\*\\^\\|\\~]?=)\\p{space}*(?:(-?[\\\\_a-z\\P{ASCII}][\\-0-9\\\\_a-z\\P{ASCII}]*)|((?:(?=(([\"'])(?:[^\\\\]|\\\\[^\\n])*?(\\7)))\\6))))?\\p{space}*(\\])","dgiv",{"hiddenCaptures":[6]}),name:"meta.attribute-selector.css"},{include:"#interpolation"},{include:"#variable"}]},string:{patterns:[{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.css"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.css"}},name:"string.quoted.double.css",patterns:[{match:/\\(\p{AHex}{1,6}|[^\n])/dgv,name:"constant.character.escape.css"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.css"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.css"}},name:"string.quoted.single.css",patterns:[{match:/\\(\p{AHex}{1,6}|[^\n])/dgv,name:"constant.character.escape.css"}]}]},variable:{match:/(\$[\-A-Z_a-z][\-0-9A-Z_a-z]*)/dgv,name:"variable.stylus"},variable_declaration:{begin:/^[^\n\P{space}]*(\$?[\-A-Z_a-z][\-0-9A-Z_a-z]*)[^\n\P{space}]*((?:|[\:\?])=)/dgv,beginCaptures:{"1":{name:"variable.stylus"},"2":{name:"keyword.operator.stylus"}},end:/(\n)|(;)|(?=\})/dgv,endCaptures:{"2":{name:"punctuation.terminator.rule.css"}},patterns:[{include:"#property_values"}]}},scopeName:"source.stylus",embeddedLangs:undefined,aliases:["styl"]})
|
|
4
4
|
|
|
5
5
|
export default [
|
|
6
6
|
lang
|
package/dist/svelte.mjs
CHANGED
|
@@ -4,7 +4,7 @@ import typescript from './typescript.mjs'
|
|
|
4
4
|
import css from './css.mjs'
|
|
5
5
|
import postcss from './postcss.mjs'
|
|
6
6
|
|
|
7
|
-
const lang = Object.freeze({displayName:"Svelte",fileTypes:["svelte"],injections:{"L:(meta.script.svelte | meta.style.svelte) (meta.lang.js | meta.lang.javascript) - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.js",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.js"}]}]},"L:(meta.script.svelte | meta.style.svelte) (meta.lang.ts | meta.lang.typescript) - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.ts",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.ts"}]}]},"L:(meta.script.svelte | meta.style.svelte) meta.lang.coffee - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.coffee",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.coffee"}]}]},"L:(source.ts, source.js, source.coffee)":{patterns:[{match:/(?<![_\$\.\/'"\p{Alpha}\p{Nd}])\$(?=[_\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)/dgv,name:"punctuation.definition.variable.svelte"},{match:/(?<![_\$\.\/'"\p{Alpha}\p{Nd}])(\$\$)(?=props|restProps|slots)/dgv,name:"punctuation.definition.variable.svelte"}]},"L:meta.script.svelte - meta.lang - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.js",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.js"}]}]},"L:meta.style.svelte - meta.lang - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css"}]}]},"L:meta.style.svelte meta.lang.css - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css"}]}]},"L:meta.style.svelte meta.lang.less - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css.less",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css.less"}]}]},"L:meta.style.svelte meta.lang.postcss - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css.postcss",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css.postcss"}]}]},"L:meta.style.svelte meta.lang.sass - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.sass",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.sass"}]}]},"L:meta.style.svelte meta.lang.scss - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css.scss",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css.scss"}]}]},"L:meta.style.svelte meta.lang.stylus - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.stylus",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.stylus"}]}]},"L:meta.template.svelte - meta.lang - (meta source)":{patterns:[{begin:/(?<=>)\p{space}/dgv,end:/(?=<\/template)/dgv,patterns:[{include:"#scope"}]}]},"L:meta.template.svelte meta.lang.pug - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"text.pug",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"text.pug"}]}]}},name:"svelte",patterns:[{include:"#scope"}],repository:{attributes:{patterns:[{include:"#attributes-directives"},{include:"#attributes-keyvalue"},{include:"#attributes-interpolated"}]},"attributes-directives":{begin:/(?<!<)(on|use|bind|transition|in|out|animate|let|class|style)(:)(?:((?:--)?[_\$\p{Alpha}][_\-\$\p{Alpha}\p{Nd}]*(?=\p{space}*=))|((?:--)?[_\$\p{Alpha}][_\-\$\p{Alpha}\p{Nd}]*))((\|[\p{L}\p{M}\p{N}\p{Pc}]+)*)/dgv,beginCaptures:{"1":{patterns:[{include:"#attributes-directives-keywords"}]},"2":{name:"punctuation.definition.keyword.svelte"},"3":{patterns:[{include:"#attributes-directives-types-assigned"}]},"4":{patterns:[{include:"#attributes-directives-types"}]},"5":{patterns:[{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.function.svelte"},{match:/\|/dgv,name:"punctuation.separator.svelte"}]}},end:/*@__PURE__*/ new EmulatedRegExp("(?=(?:(?=(\\p{space}*))\\1)[^\\=\\p{space}])","dgv",{"hiddenCaptures":[1]}),name:"meta.directive.$1.svelte",patterns:[{begin:/=/dgv,beginCaptures:{"0":{name:"punctuation.separator.key-value.svelte"}},end:/(?<=[^\p{space}\=])(?!\p{space}*=)|(?=\/?>)/dgv,patterns:[{include:"#attributes-value"}]}]},"attributes-directives-keywords":{patterns:[{match:/on|use|bind/dgv,name:"keyword.control.svelte"},{match:/transition|in|out|animate/dgv,name:"keyword.other.animation.svelte"},{match:/let/dgv,name:"storage.type.svelte"},{match:/class|style/dgv,name:"entity.other.attribute-name.svelte"}]},"attributes-directives-types":{patterns:[{match:/(?<=(on):)[^\n]*(?=\n?$)/dgv,name:"entity.name.type.svelte"},{match:/(?<=(bind):)[^\n]*(?=\n?$)/dgv,name:"variable.parameter.svelte"},{match:/(?<=(use|transition|in|out|animate):)[^\n]*(?=\n?$)/dgv,name:"variable.function.svelte"},{match:/(?<=(let|class|style):)[^\n]*(?=\n?$)/dgv,name:"variable.parameter.svelte"}]},"attributes-directives-types-assigned":{patterns:[{match:/(?<=(bind):)this(?=\n?$)/dgv,name:"variable.language.svelte"},{match:/(?<=(bind):)[^\n]*(?=\n?$)/dgv,name:"entity.name.type.svelte"},{match:/(?<=(class):)[^\n]*(?=\n?$)/dgv,name:"entity.other.attribute-name.class.svelte"},{match:/(?<=(style):)[^\n]*(?=\n?$)/dgv,name:"support.type.property-name.svelte"},{include:"#attributes-directives-types"}]},"attributes-generics":{begin:/(generics)(=)(["'])/dgv,beginCaptures:{"1":{name:"entity.other.attribute-name.svelte"},"2":{name:"punctuation.separator.key-value.svelte"},"3":{name:"punctuation.definition.string.begin.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/(\3)()()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.svelte"}},patterns:[{include:"#type-parameters"}]},"attributes-interpolated":{begin:/(?<![\:\=])\p{space}*(\{)/dgv,captures:{"1":{name:"entity.other.attribute-name.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/(\})/dgv,patterns:[{include:"source.ts"}]},"attributes-keyvalue":{begin:/((?:--)?[_\$\p{Alpha}][_\-\$\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"0":{patterns:[{match:/--[^\n]*/dgv,name:"support.type.property-name.svelte"},{match:/[^\n]*/dgv,name:"entity.other.attribute-name.svelte"}]}},end:/*@__PURE__*/ new EmulatedRegExp("(?=(?:(?=(\\p{space}*))\\1)[^\\=\\p{space}])","dgv",{"hiddenCaptures":[1]}),name:"meta.attribute.$1.svelte",patterns:[{begin:/=/dgv,beginCaptures:{"0":{name:"punctuation.separator.key-value.svelte"}},end:/(?<=[^\p{space}\=])(?!\p{space}*=)|(?=\/?>)/dgv,patterns:[{include:"#attributes-value"}]}]},"attributes-value":{patterns:[{include:"#interpolation"},{captures:{"1":{name:"punctuation.definition.string.begin.svelte"},"2":{name:"constant.numeric.decimal.svelte"},"3":{name:"punctuation.definition.string.end.svelte"},"4":{name:"constant.numeric.decimal.svelte"}},match:/(['"])([0-9\._]+[\p{L}\p{M}\p{N}\p{Pc}\%]{0,4})(\1)|([0-9\._]+[\p{L}\p{M}\p{N}\p{Pc}\%]{0,4})(?=\p{space}|\/?>)/dgv},{match:/([^\p{space}"'\=\<\>\`\/]|\/(?!>))+/dgv,name:"string.unquoted.svelte",patterns:[{include:"#interpolation"}]},{begin:/(['"])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.svelte"}},end:/\1()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.svelte"}},name:"string.quoted.svelte",patterns:[{include:"#interpolation"}]}]},comments:{begin:/<!--/dgv,captures:{"0":{name:"punctuation.definition.comment.svelte"}},end:/-->/dgv,name:"comment.block.svelte",patterns:[{begin:/(@)(component)/dgv,beginCaptures:{"1":{name:"punctuation.definition.keyword.svelte"},"2":{name:"storage.type.class.component.svelte keyword.declaration.class.component.svelte"}},contentName:"comment.block.documentation.svelte",end:/(?=-->)/dgv,patterns:[{captures:{"0":{patterns:[{include:"text.html.markdown"}]}},match:/[^\n]*?(?=-->)/dgv},{include:"text.html.markdown"}]},{match:/*@__PURE__*/ new EmulatedRegExp("^-?>|<!--(?!>)|<!-(?=-->)|--!>","dgv",{"strategy":"clip_search"}),name:"invalid.illegal.characters-not-allowed-here.svelte"}]},destructuring:{patterns:[{begin:/(?=\{)/dgv,end:/(?<=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#object-binding-pattern"}]},{begin:/(?=\[)/dgv,end:/(?<=\])/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#array-binding-pattern"}]}]},"destructuring-const":{patterns:[{begin:/(?=\{)/dgv,end:/(?<=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#object-binding-pattern-const"}]},{begin:/(?=\[)/dgv,end:/(?<=\])/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#array-binding-pattern-const"}]}]},interpolation:{patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.svelte"}},patterns:[{begin:/\p{space}*(?=\{)/dgvy,end:/(?<=\})/dgv,patterns:[{include:"source.ts#object-literal"}]},{include:"source.ts"}]}]},scope:{patterns:[{include:"#comments"},{include:"#special-tags"},{include:"#tags"},{include:"#interpolation"},{begin:/(?<=[\>\}])/dgv,end:/(?=[\<\{])/dgv,name:"text.svelte"}]},"special-tags":{patterns:[{include:"#special-tags-void"},{include:"#special-tags-block-begin"},{include:"#special-tags-block-end"}]},"special-tags-block-begin":{begin:/(\{)\p{space}*(#([a-z]*))/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.svelte"},"2":{patterns:[{include:"#special-tags-keywords"}]}},end:/(\})/dgv,endCaptures:{"0":{name:"punctuation.definition.block.end.svelte"}},name:"meta.special.$3.svelte meta.special.start.svelte",patterns:[{include:"#special-tags-modes"}]},"special-tags-block-end":{begin:/(\{)\p{space}*(\/([a-z]*))/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.svelte"},"2":{patterns:[{include:"#special-tags-keywords"}]}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.svelte"}},name:"meta.special.$3.svelte meta.special.end.svelte"},"special-tags-keywords":{captures:{"1":{name:"punctuation.definition.keyword.svelte"},"2":{patterns:[{match:/if|else\p{space}+if|else/dgv,name:"keyword.control.conditional.svelte"},{match:/each|key/dgv,name:"keyword.control.svelte"},{match:/await|then|catch/dgv,name:"keyword.control.flow.svelte"},{match:/snippet/dgv,name:"keyword.control.svelte"},{match:/html/dgv,name:"keyword.other.svelte"},{match:/render/dgv,name:"keyword.other.svelte"},{match:/debug/dgv,name:"keyword.other.debugger.svelte"},{match:/const/dgv,name:"storage.type.svelte"}]}},match:/([\#\@\/\:])(else\p{space}+if|[a-z]*)/dgv},"special-tags-modes":{patterns:[{begin:/(?<=(if|key|then|catch|snippet|html|render)[^\n]*?)/dgvy,end:/(?=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]},{begin:/(?<=const[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{include:"#destructuring-const"},{begin:/\p{space}*([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]+)\p{space}*/dgvy,beginCaptures:{"1":{name:"variable.other.constant.svelte"}},end:/(?=[\:\=])/dgv},{begin:/(?=:)/dgv,end:/(?==)/dgv,name:"meta.type.annotation.svelte",patterns:[{include:"source.ts"}]},{begin:/(?==)/dgv,end:/(?=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]}]},{begin:/(?<=each[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{begin:/\p{space}*?(?=\P{space})/dgvy,contentName:"meta.embedded.expression.svelte source.ts",end:/(?=(?:^\p{space}*|\p{space}+)(as)|\p{space}*([\}\,]))/dgv,patterns:[{include:"source.ts"}]},{begin:/(as)|(?=[\}\,])/dgv,beginCaptures:{"1":{name:"keyword.control.as.svelte"}},end:/(?=\})/dgv,patterns:[{include:"#destructuring"},{begin:/\(/dgv,captures:{"0":{name:"meta.brace.round.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/\)|(?=\})/dgv,patterns:[{include:"source.ts"}]},{captures:{"1":{name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]}},match:/(\p{space}*([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*)\p{space}*)/dgv},{match:/,/dgv,name:"punctuation.separator.svelte"}]}]},{begin:/(?<=await[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{begin:/\p{space}*?(?=\P{space})/dgvy,contentName:"meta.embedded.expression.svelte source.ts",end:/\p{space}+(then)|(?=\})/dgv,endCaptures:{"1":{name:"keyword.control.flow.svelte"}},patterns:[{include:"source.ts"}]},{begin:/(?<=then\b)/dgv,contentName:"meta.embedded.expression.svelte source.ts",end:/(?=\})/dgv,patterns:[{include:"source.ts"}]}]},{begin:/(?<=debug[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{captures:{"0":{name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]}},match:/[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*/dgv},{match:/,/dgv,name:"punctuation.separator.svelte"}]}]},"special-tags-void":{begin:/(\{)\p{space}*([\@\:](else\p{space}+if|[a-z]*))/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.svelte"},"2":{patterns:[{include:"#special-tags-keywords"}]}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.block.end.svelte"}},name:"meta.special.$3.svelte",patterns:[{include:"#special-tags-modes"}]},tags:{patterns:[{include:"#tags-lang"},{include:"#tags-void"},{include:"#tags-general-end"},{include:"#tags-general-start"}]},"tags-end-node":{captures:{"1":{name:"meta.tag.end.svelte punctuation.definition.tag.begin.svelte"},"2":{name:"meta.tag.end.svelte",patterns:[{include:"#tags-name"}]},"3":{name:"meta.tag.end.svelte punctuation.definition.tag.end.svelte"},"4":{name:"meta.tag.start.svelte punctuation.definition.tag.end.svelte"}},match:/(<\/)([^\n]*?)\p{space}*(>)|(\/>)/dgv},"tags-general-end":{begin:/(<\/)([^\/\p{space}\>]*)/dgv,beginCaptures:{"1":{name:"meta.tag.end.svelte punctuation.definition.tag.begin.svelte"},"2":{name:"meta.tag.end.svelte",patterns:[{include:"#tags-name"}]}},end:/(>)/dgv,endCaptures:{"1":{name:"meta.tag.end.svelte punctuation.definition.tag.end.svelte"}},name:"meta.scope.tag.$2.svelte"},"tags-general-start":{begin:/(<)([^\/\p{space}\>]*)/dgv,beginCaptures:{"0":{patterns:[{include:"#tags-start-node"}]}},end:/(\/?>)/dgv,endCaptures:{"1":{name:"meta.tag.start.svelte punctuation.definition.tag.end.svelte"}},name:"meta.scope.tag.$2.svelte",patterns:[{include:"#tags-start-attributes"}]},"tags-lang":{begin:/<(script|style|template)/dgv,beginCaptures:{"0":{patterns:[{include:"#tags-start-node"}]}},end:/<\/\1\p{space}*>|\/>()/dgv,endCaptures:{"0":{patterns:[{include:"#tags-end-node"}]}},name:"meta.$1.svelte",patterns:[{begin:/(?=\p{space}*[^\>]*?(type|lang)\p{space}*=\p{space}*(['"]|)(?:text\/)?([\p{L}\p{M}\p{N}\p{Pc}]+)\2)/dgvy,end:/(?=<\/|\/>)/dgv,name:"meta.lang.$3.svelte",patterns:[{include:"#tags-lang-start-attributes"}]},{include:"#tags-lang-start-attributes"}]},"tags-lang-start-attributes":{begin:/(?:)/dgv,end:/(?=\/>)|>/dgv,endCaptures:{"0":{name:"punctuation.definition.tag.end.svelte"}},name:"meta.tag.start.svelte",patterns:[{include:"#attributes-generics"},{include:"#attributes"}]},"tags-name":{patterns:[{captures:{"1":{name:"keyword.control.svelte"},"2":{name:"punctuation.definition.keyword.svelte"},"3":{name:"entity.name.tag.svelte"}},match:/(svelte)(:)([a-z][\p{L}\p{M}\p{N}\p{Pc}\:\-]*)/dgv},{match:/slot/dgv,name:"keyword.control.svelte"},{captures:{"1":{patterns:[{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.class.component.svelte"},{match:/\./dgv,name:"punctuation.definition.keyword.svelte"}]},"2":{name:"support.class.component.svelte"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]+(?:\.[\p{L}\p{M}\p{N}\p{Pc}]+)+)|([A-Z][\p{L}\p{M}\p{N}\p{Pc}]+)/dgv},{match:/[a-z][\p{L}\p{M}\p{N}\p{Pc}0-9\:]*-[\p{L}\p{M}\p{N}\p{Pc}0-9\:\-]*/dgv,name:"meta.tag.custom.svelte entity.name.tag.svelte"},{match:/[a-z][\p{L}\p{M}\p{N}\p{Pc}0-9\:\-]*/dgv,name:"entity.name.tag.svelte"}]},"tags-start-attributes":{begin:/(?:)/dgv,end:/(?=\/?>)/dgv,name:"meta.tag.start.svelte",patterns:[{include:"#attributes"}]},"tags-start-node":{captures:{"1":{name:"punctuation.definition.tag.begin.svelte"},"2":{patterns:[{include:"#tags-name"}]}},match:/(<)([^\/\p{space}\>]*)/dgv,name:"meta.tag.start.svelte"},"tags-void":{begin:/(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\p{space}|\/?>)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.begin.svelte"},"2":{name:"entity.name.tag.svelte"}},end:/\/?>/dgv,endCaptures:{"0":{name:"punctuation.definition.tag.begin.svelte"}},name:"meta.tag.void.svelte",patterns:[{include:"#attributes"}]},"type-parameters":{name:"meta.type.parameters.ts",patterns:[{include:"source.ts#comment"},{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(extends|in|out|const)(?![_\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.modifier.ts"},{include:"source.ts#type"},{include:"source.ts#punctuation-comma"},{match:/(=)(?!>)/dgv,name:"keyword.operator.assignment.ts"}]}},scopeName:"source.svelte",embeddedLangs:["javascript","typescript","css","postcss"],aliases:undefined,embeddedLangsLazy:["coffee","stylus","sass","scss","less","pug","markdown"]})
|
|
7
|
+
const lang = Object.freeze({displayName:"Svelte",fileTypes:["svelte"],injections:{"L:(meta.script.svelte | meta.style.svelte) (meta.lang.js | meta.lang.javascript) - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.js",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.js"}]}]},"L:(meta.script.svelte | meta.style.svelte) (meta.lang.ts | meta.lang.typescript) - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.ts",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.ts"}]}]},"L:(meta.script.svelte | meta.style.svelte) meta.lang.coffee - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.coffee",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.coffee"}]}]},"L:(source.ts, source.js, source.coffee)":{patterns:[{match:/(?<!["\$'\.\/_\p{Alpha}\p{Nd}])\$(?=[_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*)/dgv,name:"punctuation.definition.variable.svelte"},{match:/(?<!["\$'\.\/_\p{Alpha}\p{Nd}])(\$\$)(?=props|restProps|slots)/dgv,name:"punctuation.definition.variable.svelte"}]},"L:meta.script.svelte - meta.lang - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.js",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.js"}]}]},"L:meta.style.svelte - meta.lang - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css"}]}]},"L:meta.style.svelte meta.lang.css - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css"}]}]},"L:meta.style.svelte meta.lang.less - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css.less",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css.less"}]}]},"L:meta.style.svelte meta.lang.postcss - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css.postcss",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css.postcss"}]}]},"L:meta.style.svelte meta.lang.sass - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.sass",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.sass"}]}]},"L:meta.style.svelte meta.lang.scss - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.css.scss",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.css.scss"}]}]},"L:meta.style.svelte meta.lang.stylus - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"source.stylus",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"source.stylus"}]}]},"L:meta.template.svelte - meta.lang - (meta source)":{patterns:[{begin:/(?<=>)\p{space}/dgv,end:/(?=<\/template)/dgv,patterns:[{include:"#scope"}]}]},"L:meta.template.svelte meta.lang.pug - (meta source)":{patterns:[{begin:/(?<=>)(?!<\/)/dgv,contentName:"text.pug",end:/(?=<\/)/dgv,name:"meta.embedded.block.svelte",patterns:[{include:"text.pug"}]}]}},name:"svelte",patterns:[{include:"#scope"}],repository:{attributes:{patterns:[{include:"#attributes-directives"},{include:"#attributes-keyvalue"},{include:"#attributes-interpolated"}]},"attributes-directives":{begin:/(?<!<)(on|use|bind|transition|in|out|animate|let|class|style)(:)(?:((?:--)?[\$_\p{Alpha}][\-\$_\p{Alpha}\p{Nd}]*(?=\p{space}*=))|((?:--)?[\$_\p{Alpha}][\-\$_\p{Alpha}\p{Nd}]*))((\|[\p{L}\p{M}\p{N}\p{Pc}]+)*)/dgv,beginCaptures:{"1":{patterns:[{include:"#attributes-directives-keywords"}]},"2":{name:"punctuation.definition.keyword.svelte"},"3":{patterns:[{include:"#attributes-directives-types-assigned"}]},"4":{patterns:[{include:"#attributes-directives-types"}]},"5":{patterns:[{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.function.svelte"},{match:/\|/dgv,name:"punctuation.separator.svelte"}]}},end:/*@__PURE__*/ new EmulatedRegExp("(?=(?:(?=(\\p{space}*))\\1)[^\\=\\p{space}])","dgv",{"hiddenCaptures":[1]}),name:"meta.directive.$1.svelte",patterns:[{begin:/=/dgv,beginCaptures:{"0":{name:"punctuation.separator.key-value.svelte"}},end:/(?<=[^\=\p{space}])(?!\p{space}*=)|(?=\/?>)/dgv,patterns:[{include:"#attributes-value"}]}]},"attributes-directives-keywords":{patterns:[{match:/on|use|bind/dgv,name:"keyword.control.svelte"},{match:/transition|in|out|animate/dgv,name:"keyword.other.animation.svelte"},{match:/let/dgv,name:"storage.type.svelte"},{match:/class|style/dgv,name:"entity.other.attribute-name.svelte"}]},"attributes-directives-types":{patterns:[{match:/(?<=(on):)[^\n]*(?=\n?$)/dgv,name:"entity.name.type.svelte"},{match:/(?<=(bind):)[^\n]*(?=\n?$)/dgv,name:"variable.parameter.svelte"},{match:/(?<=(use|transition|in|out|animate):)[^\n]*(?=\n?$)/dgv,name:"variable.function.svelte"},{match:/(?<=(let|class|style):)[^\n]*(?=\n?$)/dgv,name:"variable.parameter.svelte"}]},"attributes-directives-types-assigned":{patterns:[{match:/(?<=(bind):)this(?=\n?$)/dgv,name:"variable.language.svelte"},{match:/(?<=(bind):)[^\n]*(?=\n?$)/dgv,name:"entity.name.type.svelte"},{match:/(?<=(class):)[^\n]*(?=\n?$)/dgv,name:"entity.other.attribute-name.class.svelte"},{match:/(?<=(style):)[^\n]*(?=\n?$)/dgv,name:"support.type.property-name.svelte"},{include:"#attributes-directives-types"}]},"attributes-generics":{begin:/(generics)(=)(["'])/dgv,beginCaptures:{"1":{name:"entity.other.attribute-name.svelte"},"2":{name:"punctuation.separator.key-value.svelte"},"3":{name:"punctuation.definition.string.begin.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/(\3)()()/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.svelte"}},patterns:[{include:"#type-parameters"}]},"attributes-interpolated":{begin:/(?<![\:\=])\p{space}*(\{)/dgv,captures:{"1":{name:"entity.other.attribute-name.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/(\})/dgv,patterns:[{include:"source.ts"}]},"attributes-keyvalue":{begin:/((?:--)?[\$_\p{Alpha}][\-\$_\p{Alpha}\p{Nd}]*)/dgv,beginCaptures:{"0":{patterns:[{match:/--[^\n]*/dgv,name:"support.type.property-name.svelte"},{match:/[^\n]*/dgv,name:"entity.other.attribute-name.svelte"}]}},end:/*@__PURE__*/ new EmulatedRegExp("(?=(?:(?=(\\p{space}*))\\1)[^\\=\\p{space}])","dgv",{"hiddenCaptures":[1]}),name:"meta.attribute.$1.svelte",patterns:[{begin:/=/dgv,beginCaptures:{"0":{name:"punctuation.separator.key-value.svelte"}},end:/(?<=[^\=\p{space}])(?!\p{space}*=)|(?=\/?>)/dgv,patterns:[{include:"#attributes-value"}]}]},"attributes-value":{patterns:[{include:"#interpolation"},{captures:{"1":{name:"punctuation.definition.string.begin.svelte"},"2":{name:"constant.numeric.decimal.svelte"},"3":{name:"punctuation.definition.string.end.svelte"},"4":{name:"constant.numeric.decimal.svelte"}},match:/(["'])([\.0-9_]+[\%\p{L}\p{M}\p{N}\p{Pc}]{0,4})(\1)|([\.0-9_]+[\%\p{L}\p{M}\p{N}\p{Pc}]{0,4})(?=\p{space}|\/?>)/dgv},{match:/([^"'\/\<\=\>\`\p{space}]|\/(?!>))+/dgv,name:"string.unquoted.svelte",patterns:[{include:"#interpolation"}]},{begin:/(["'])/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.svelte"}},end:/\1()/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.svelte"}},name:"string.quoted.svelte",patterns:[{include:"#interpolation"}]}]},comments:{begin:/<!--/dgv,captures:{"0":{name:"punctuation.definition.comment.svelte"}},end:/-->/dgv,name:"comment.block.svelte",patterns:[{begin:/(@)(component)/dgv,beginCaptures:{"1":{name:"punctuation.definition.keyword.svelte"},"2":{name:"storage.type.class.component.svelte keyword.declaration.class.component.svelte"}},contentName:"comment.block.documentation.svelte",end:/(?=-->)/dgv,patterns:[{captures:{"0":{patterns:[{include:"text.html.markdown"}]}},match:/[^\n]*?(?=-->)/dgv},{include:"text.html.markdown"}]},{match:/*@__PURE__*/ new EmulatedRegExp("^-?>|<!--(?!>)|<!-(?=-->)|--!>","dgv",{"strategy":"clip_search"}),name:"invalid.illegal.characters-not-allowed-here.svelte"}]},destructuring:{patterns:[{begin:/(?=\{)/dgv,end:/(?<=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#object-binding-pattern"}]},{begin:/(?=\[)/dgv,end:/(?<=\])/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#array-binding-pattern"}]}]},"destructuring-const":{patterns:[{begin:/(?=\{)/dgv,end:/(?<=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#object-binding-pattern-const"}]},{begin:/(?=\[)/dgv,end:/(?<=\])/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts#array-binding-pattern-const"}]}]},interpolation:{patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.svelte"}},patterns:[{begin:/\p{space}*(?=\{)/dgvy,end:/(?<=\})/dgv,patterns:[{include:"source.ts#object-literal"}]},{include:"source.ts"}]}]},scope:{patterns:[{include:"#comments"},{include:"#special-tags"},{include:"#tags"},{include:"#interpolation"},{begin:/(?<=[\>\}])/dgv,end:/(?=[\<\{])/dgv,name:"text.svelte"}]},"special-tags":{patterns:[{include:"#special-tags-void"},{include:"#special-tags-block-begin"},{include:"#special-tags-block-end"}]},"special-tags-block-begin":{begin:/(\{)\p{space}*(#([a-z]*))/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.svelte"},"2":{patterns:[{include:"#special-tags-keywords"}]}},end:/(\})/dgv,endCaptures:{"0":{name:"punctuation.definition.block.end.svelte"}},name:"meta.special.$3.svelte meta.special.start.svelte",patterns:[{include:"#special-tags-modes"}]},"special-tags-block-end":{begin:/(\{)\p{space}*(\/([a-z]*))/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.svelte"},"2":{patterns:[{include:"#special-tags-keywords"}]}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.svelte"}},name:"meta.special.$3.svelte meta.special.end.svelte"},"special-tags-keywords":{captures:{"1":{name:"punctuation.definition.keyword.svelte"},"2":{patterns:[{match:/if|else\p{space}+if|else/dgv,name:"keyword.control.conditional.svelte"},{match:/each|key/dgv,name:"keyword.control.svelte"},{match:/await|then|catch/dgv,name:"keyword.control.flow.svelte"},{match:/snippet/dgv,name:"keyword.control.svelte"},{match:/html/dgv,name:"keyword.other.svelte"},{match:/render/dgv,name:"keyword.other.svelte"},{match:/debug/dgv,name:"keyword.other.debugger.svelte"},{match:/const/dgv,name:"storage.type.svelte"}]}},match:/([\#\/\:\@])(else\p{space}+if|[a-z]*)/dgv},"special-tags-modes":{patterns:[{begin:/(?<=(if|key|then|catch|snippet|html|render)[^\n]*?)/dgvy,end:/(?=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]},{begin:/(?<=const[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{include:"#destructuring-const"},{begin:/\p{space}*([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]+)\p{space}*/dgvy,beginCaptures:{"1":{name:"variable.other.constant.svelte"}},end:/(?=[\:\=])/dgv},{begin:/(?=:)/dgv,end:/(?==)/dgv,name:"meta.type.annotation.svelte",patterns:[{include:"source.ts"}]},{begin:/(?==)/dgv,end:/(?=\})/dgv,name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]}]},{begin:/(?<=each[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{begin:/\p{space}*?(?=\P{space})/dgvy,contentName:"meta.embedded.expression.svelte source.ts",end:/(?=(?:^\p{space}*|\p{space}+)(as)|\p{space}*([\,\}]))/dgv,patterns:[{include:"source.ts"}]},{begin:/(as)|(?=[\,\}])/dgv,beginCaptures:{"1":{name:"keyword.control.as.svelte"}},end:/(?=\})/dgv,patterns:[{include:"#destructuring"},{begin:/\(/dgv,captures:{"0":{name:"meta.brace.round.svelte"}},contentName:"meta.embedded.expression.svelte source.ts",end:/\)|(?=\})/dgv,patterns:[{include:"source.ts"}]},{captures:{"1":{name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]}},match:/(\p{space}*([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*)\p{space}*)/dgv},{match:/,/dgv,name:"punctuation.separator.svelte"}]}]},{begin:/(?<=await[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{begin:/\p{space}*?(?=\P{space})/dgvy,contentName:"meta.embedded.expression.svelte source.ts",end:/\p{space}+(then)|(?=\})/dgv,endCaptures:{"1":{name:"keyword.control.flow.svelte"}},patterns:[{include:"source.ts"}]},{begin:/(?<=then\b)/dgv,contentName:"meta.embedded.expression.svelte source.ts",end:/(?=\})/dgv,patterns:[{include:"source.ts"}]}]},{begin:/(?<=debug[^\n]*?)/dgvy,end:/(?=\})/dgv,patterns:[{captures:{"0":{name:"meta.embedded.expression.svelte source.ts",patterns:[{include:"source.ts"}]}},match:/[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*/dgv},{match:/,/dgv,name:"punctuation.separator.svelte"}]}]},"special-tags-void":{begin:/(\{)\p{space}*([\:\@](else\p{space}+if|[a-z]*))/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.svelte"},"2":{patterns:[{include:"#special-tags-keywords"}]}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.block.end.svelte"}},name:"meta.special.$3.svelte",patterns:[{include:"#special-tags-modes"}]},tags:{patterns:[{include:"#tags-lang"},{include:"#tags-void"},{include:"#tags-general-end"},{include:"#tags-general-start"}]},"tags-end-node":{captures:{"1":{name:"meta.tag.end.svelte punctuation.definition.tag.begin.svelte"},"2":{name:"meta.tag.end.svelte",patterns:[{include:"#tags-name"}]},"3":{name:"meta.tag.end.svelte punctuation.definition.tag.end.svelte"},"4":{name:"meta.tag.start.svelte punctuation.definition.tag.end.svelte"}},match:/(<\/)([^\n]*?)\p{space}*(>)|(\/>)/dgv},"tags-general-end":{begin:/(<\/)([^\/\>\p{space}]*)/dgv,beginCaptures:{"1":{name:"meta.tag.end.svelte punctuation.definition.tag.begin.svelte"},"2":{name:"meta.tag.end.svelte",patterns:[{include:"#tags-name"}]}},end:/(>)/dgv,endCaptures:{"1":{name:"meta.tag.end.svelte punctuation.definition.tag.end.svelte"}},name:"meta.scope.tag.$2.svelte"},"tags-general-start":{begin:/(<)([^\/\>\p{space}]*)/dgv,beginCaptures:{"0":{patterns:[{include:"#tags-start-node"}]}},end:/(\/?>)/dgv,endCaptures:{"1":{name:"meta.tag.start.svelte punctuation.definition.tag.end.svelte"}},name:"meta.scope.tag.$2.svelte",patterns:[{include:"#tags-start-attributes"}]},"tags-lang":{begin:/<(script|style|template)/dgv,beginCaptures:{"0":{patterns:[{include:"#tags-start-node"}]}},end:/<\/\1\p{space}*>|\/>()/dgv,endCaptures:{"0":{patterns:[{include:"#tags-end-node"}]}},name:"meta.$1.svelte",patterns:[{begin:/(?=\p{space}*[^\>]*?(type|lang)\p{space}*=\p{space}*(["']|)(?:text\/)?([\p{L}\p{M}\p{N}\p{Pc}]+)\2)/dgvy,end:/(?=<\/|\/>)/dgv,name:"meta.lang.$3.svelte",patterns:[{include:"#tags-lang-start-attributes"}]},{include:"#tags-lang-start-attributes"}]},"tags-lang-start-attributes":{begin:/(?:)/dgv,end:/(?=\/>)|>/dgv,endCaptures:{"0":{name:"punctuation.definition.tag.end.svelte"}},name:"meta.tag.start.svelte",patterns:[{include:"#attributes-generics"},{include:"#attributes"}]},"tags-name":{patterns:[{captures:{"1":{name:"keyword.control.svelte"},"2":{name:"punctuation.definition.keyword.svelte"},"3":{name:"entity.name.tag.svelte"}},match:/(svelte)(:)([a-z][\-\:\p{L}\p{M}\p{N}\p{Pc}]*)/dgv},{match:/slot/dgv,name:"keyword.control.svelte"},{captures:{"1":{patterns:[{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.class.component.svelte"},{match:/\./dgv,name:"punctuation.definition.keyword.svelte"}]},"2":{name:"support.class.component.svelte"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]+(?:\.[\p{L}\p{M}\p{N}\p{Pc}]+)+)|([A-Z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv},{match:/[a-z][0-\:\p{L}\p{M}\p{N}\p{Pc}]*-[\-0-\:\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"meta.tag.custom.svelte entity.name.tag.svelte"},{match:/[a-z][\-0-\:\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"entity.name.tag.svelte"}]},"tags-start-attributes":{begin:/(?:)/dgv,end:/(?=\/?>)/dgv,name:"meta.tag.start.svelte",patterns:[{include:"#attributes"}]},"tags-start-node":{captures:{"1":{name:"punctuation.definition.tag.begin.svelte"},"2":{patterns:[{include:"#tags-name"}]}},match:/(<)([^\/\>\p{space}]*)/dgv,name:"meta.tag.start.svelte"},"tags-void":{begin:/(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\p{space}|\/?>)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.begin.svelte"},"2":{name:"entity.name.tag.svelte"}},end:/\/?>/dgv,endCaptures:{"0":{name:"punctuation.definition.tag.begin.svelte"}},name:"meta.tag.void.svelte",patterns:[{include:"#attributes"}]},"type-parameters":{name:"meta.type.parameters.ts",patterns:[{include:"source.ts#comment"},{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(extends|in|out|const)(?![\$_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.modifier.ts"},{include:"source.ts#type"},{include:"source.ts#punctuation-comma"},{match:/(=)(?!>)/dgv,name:"keyword.operator.assignment.ts"}]}},scopeName:"source.svelte",embeddedLangs:["javascript","typescript","css","postcss"],aliases:undefined,embeddedLangsLazy:["coffee","stylus","sass","scss","less","pug","markdown"]})
|
|
8
8
|
|
|
9
9
|
export default [
|
|
10
10
|
...javascript,
|
package/dist/system-verilog.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze({displayName:"SystemVerilog",fileTypes:["v","vh","sv","svh"],name:"system-verilog",patterns:[{include:"#comments"},{include:"#strings"},{include:"#typedef-enum-struct-union"},{include:"#typedef"},{include:"#functions"},{include:"#keywords"},{include:"#tables"},{include:"#function-task"},{include:"#module-declaration"},{include:"#class-declaration"},{include:"#enum-struct-union"},{include:"#sequence"},{include:"#all-types"},{include:"#module-parameters"},{include:"#module-no-parameters"},{include:"#port-net-parameter"},{include:"#system-tf"},{include:"#assertion"},{include:"#bind-directive"},{include:"#cast-operator"},{include:"#storage-scope"},{include:"#attributes"},{include:"#imports"},{include:"#operators"},{include:"#constants"},{include:"#identifiers"},{include:"#selects"}],repository:{"all-types":{patterns:[{include:"#built-ins"},{include:"#modifiers"}]},assertion:{captures:{"1":{name:"entity.name.goto-label.php"},"2":{name:"keyword.operator.systemverilog"},"3":{name:"keyword.sva.systemverilog"}},match:/\b([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]*(:)[ \t\r\n]*(assert|assume|cover|restrict)\b/dgv},attributes:{begin:/(?<!@[ \t\r\n]?)\(\*/dgv,beginCaptures:{"0":{name:"punctuation.attribute.rounds.begin"}},end:/\*\)/dgv,endCaptures:{"0":{name:"punctuation.attribute.rounds.end"}},name:"meta.attribute.systemverilog",patterns:[{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"keyword.operator.assignment.systemverilog"}},match:/([a-zA-Z_][a-zA-Z0-9_\$]*)(?:[ \t\r\n]*(=)[ \t\r\n]*)?/dgv},{include:"#constants"},{include:"#strings"}]},"base-grammar":{patterns:[{include:"#all-types"},{include:"#comments"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{captures:{"1":{name:"storage.type.interface.systemverilog"}},match:/[ \t\r\n]*\b([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]+[a-zA-Z_][a-zA-Z0-9_\,\= \t\n]*/dgv},{include:"#storage-scope"}]},"bind-directive":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.module.systemverilog"}},match:/[ \t\r\n]*\b(bind)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$\.]*)\b/dgv,name:"meta.definition.systemverilog"},"built-ins":{patterns:[{match:/[ \t\r\n]*\b(bit|logic|reg)\b/dgv,name:"storage.type.vector.systemverilog"},{match:/[ \t\r\n]*\b(byte|shortint|int|longint|integer|time|genvar)\b/dgv,name:"storage.type.atom.systemverilog"},{match:/[ \t\r\n]*\b(shortreal|real|realtime)\b/dgv,name:"storage.type.notint.systemverilog"},{match:/[ \t\r\n]*\b(supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\b/dgv,name:"storage.type.net.systemverilog"},{match:/[ \t\r\n]*\b(genvar|var|void|signed|unsigned|string|const|process)\b/dgv,name:"storage.type.built-in.systemverilog"},{match:/[ \t\r\n]*\b(uvm_(?:root|transaction|component|monitor|driver|test|env|object|agent|sequence_base|sequence_item|sequence_state|sequencer|sequencer_base|sequence|component_registry|analysis_imp|analysis_port|analysis_export|config_db|active_passive_enum|phase|verbosity|tlm_analysis_fifo|tlm_fifo|report_server|objection|recorder|domain|reg_field|reg_block|reg|bitstream_t|radix_enum|printer|packer|comparer|scope_stack))\b/dgv,name:"storage.type.uvm.systemverilog"}]},"cast-operator":{captures:{"1":{patterns:[{include:"#built-ins"},{include:"#constants"},{match:/[a-zA-Z_][a-zA-Z0-9_\$]*/dgv,name:"storage.type.user-defined.systemverilog"}]},"2":{name:"keyword.operator.cast.systemverilog"}},match:/[ \t\r\n]*([0-9]+|[a-zA-Z_][a-zA-Z0-9_\$]*)(')(?=\()/dgv,name:"meta.cast.systemverilog"},"class-declaration":{begin:/[ \t\r\n]*\b(virtual[ \t\r\n]+)?(class)(?:[ \t\r\n]+(static|automatic))?[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$\:]*)(?:[ \t\r\n]+(extends|implements)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$\:]*))?/dgv,beginCaptures:{"1":{name:"storage.modifier.systemverilog"},"2":{name:"storage.type.class.systemverilog"},"3":{name:"storage.modifier.systemverilog"},"4":{name:"entity.name.type.class.systemverilog"},"5":{name:"keyword.control.systemverilog"},"6":{name:"entity.name.type.class.systemverilog"}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.class.end.systemverilog"}},name:"meta.class.systemverilog",patterns:[{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.class.systemverilog"},"3":{name:"entity.name.type.class.systemverilog"}},match:/[ \t\r\n]+\b(extends|implements)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$\:]*)(?:[ \t\r\n]*,[ \t\r\n]*([a-zA-Z_][a-zA-Z0-9_\$\:]*))*/dgv},{captures:{"1":{name:"storage.type.userdefined.systemverilog"},"2":{name:"keyword.operator.param.systemverilog"}},match:/[ \t\r\n]+\b([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]*(#)\(/dgv,name:"meta.typedef.class.systemverilog"},{include:"#port-net-parameter"},{include:"#base-grammar"},{include:"#module-binding"},{include:"#identifiers"}]},comments:{patterns:[{begin:/\/\*/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.systemverilog"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.systemverilog"}},name:"comment.block.systemverilog",patterns:[{include:"#fixme-todo"}]},{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.systemverilog"}},end:/(?=\n?$)\n?/dgv,name:"comment.line.double-slash.systemverilog",patterns:[{include:"#fixme-todo"}]}]},"compiler-directives":{name:"meta.preprocessor.systemverilog",patterns:[{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},match:/(`)(else|endif|endcelldefine|celldefine|nounconnected_drive|resetall|undefineall|end_keywords|__FILE__|__LINE__)\b/dgv},{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"},"3":{name:"variable.other.constant.preprocessor.systemverilog"}},match:/(`)(ifdef|ifndef|elsif|define|undef|pragma)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$]*)\b/dgv},{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},match:/(`)(include|timescale|default_nettype|unconnected_drive|line|begin_keywords)\b/dgv},{begin:/(`)(protected)\b/dgv,beginCaptures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},end:/(`)(endprotected)\b/dgv,endCaptures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},name:"meta.crypto.systemverilog"},{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"variable.other.constant.preprocessor.systemverilog"}},match:/(`)([a-zA-Z_][a-zA-Z0-9_\$]*)\b/dgv}]},constants:{patterns:[{match:/(\b[1-9][0-9_]*)?'([sS]?[bB][ \t\r\n]*[0-1xXzZ\?][0-1_xXzZ\?]*|[sS]?[oO][ \t\r\n]*[0-7xXzZ\?][0-7_xXzZ\?]*|[sS]?[dD][ \t\r\n]*[0-9xXzZ\?][0-9_xXzZ\?]*|[sS]?[hH][ \t\r\n]*[xXzZ\?\p{AHex}][_xXzZ\?\p{AHex}]*)(([eE])([\+\-])?[0-9]+)?(?!['\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"constant.numeric.systemverilog"},{match:/'[01xXzZ]/dgv,name:"constant.numeric.bit.systemverilog"},{match:/\b\p{Nd}[\p{Nd}_\.]*(?<!\.)[eE][\+\-]?[0-9]+\b/dgv,name:"constant.numeric.exp.systemverilog"},{match:/\b\p{Nd}[\p{Nd}_\.]*(?!(?:[\p{Nd}\.]|[ \t\r\n]*(?:[eE]|fs|ps|ns|us|ms|s)))\b/dgv,name:"constant.numeric.decimal.systemverilog"},{match:/\b\p{Nd}[\p{Nd}\.]*[ \t\r\n]*(?:fs|ps|ns|us|ms|s)\b/dgv,name:"constant.numeric.time.systemverilog"},{include:"#compiler-directives"},{match:/\b(?:this|super|null)\b/dgv,name:"constant.language.systemverilog"},{match:/\b([A-Z][A-Z0-9_]*)\b/dgv,name:"constant.other.net.systemverilog"},{match:/\b(?<!\.)([A-Z0-9_]+)(?!\.)\b/dgv,name:"constant.numeric.parameter.uppercase.systemverilog"},{match:/\.\*/dgv,name:"keyword.operator.quantifier.regexp"}]},"enum-struct-union":{begin:/[ \t\r\n]*\b(enum|struct|union(?:[ \t\r\n]+tagged)?|class|interface[ \t\r\n]+class)(?:[ \t\r\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_\$]*)?[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?)?(?:[ \t\r\n]+(packed))?(?:[ \t\r\n]+(signed|unsigned))?(?=[ \t\r\n]*(?:\{|(?=\n?$)))/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{patterns:[{include:"#built-ins"}]},"3":{patterns:[{include:"#selects"}]},"4":{name:"storage.modifier.systemverilog"},"5":{name:"storage.modifier.systemverilog"}},end:/(?<=\})[ \t\r\n]*([a-zA-Z_][a-zA-Z0-9_\$]*|(?<=^|[ \t\r\n])\\[\!-\~]+(?=(?=\n?$)|[ \t\r\n]))[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?[ \t\r\n]*[\,\;]/dgv,endCaptures:{"1":{patterns:[{include:"#identifiers"}]},"2":{patterns:[{include:"#selects"}]}},name:"meta.enum-struct-union.systemverilog",patterns:[{include:"#keywords"},{include:"#base-grammar"},{include:"#identifiers"}]},"fixme-todo":{patterns:[{match:/fixme/dgiv,name:"invalid.broken.fixme.systemverilog"},{match:/todo/dgiv,name:"invalid.unimplemented.todo.systemverilog"}]},"function-task":{begin:/[ \t\r\n]*(?:\b(virtual)[ \t\r\n]+)?\b(function|task)\b(?:[ \t\r\n]+\b(static|automatic)\b)?/dgv,beginCaptures:{"1":{name:"storage.modifier.systemverilog"},"2":{name:"storage.type.function.systemverilog"},"3":{name:"storage.modifier.systemverilog"}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.function.end.systemverilog"}},name:"meta.function.systemverilog",patterns:[{captures:{"1":{name:"support.type.scope.systemverilog"},"2":{name:"keyword.operator.scope.systemverilog"},"3":{patterns:[{include:"#built-ins"},{match:/[a-zA-Z_][a-zA-Z0-9_\$]*/dgv,name:"storage.type.user-defined.systemverilog"}]},"4":{patterns:[{include:"#modifiers"}]},"5":{patterns:[{include:"#selects"}]},"6":{name:"entity.name.function.systemverilog"}},match:/[ \t\r\n]*(?:\b([a-zA-Z_][a-zA-Z0-9_\$]*)(::))?([a-zA-Z_][a-zA-Z0-9_\$]*\b[ \t\r\n]+)?(?:\b(signed|unsigned)\b[ \t\r\n]*)?(?:(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])[ \t\r\n]*)?\b([a-zA-Z_][a-zA-Z0-9_\$]*)\b[ \t\r\n]*(?=[\(\;])/dgv},{include:"#keywords"},{include:"#port-net-parameter"},{include:"#base-grammar"},{include:"#identifiers"}]},functions:{match:/[ \t\r\n]*\b(?!while|for|if|iff|else|case|casex|casez)([a-zA-Z_][a-zA-Z0-9_\$]*)(?=[ \t\r\n]*\()/dgv,name:"entity.name.function.systemverilog"},identifiers:{patterns:[{match:/\b[a-zA-Z_][a-zA-Z0-9_\$]*\b/dgv,name:"variable.other.identifier.systemverilog"},{match:/(?<=^|[ \t\r\n])\\[\!-\~]+(?=(?=\n?$)|[ \t\r\n])/dgv,name:"string.regexp.identifier.systemverilog"}]},imports:{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"support.type.scope.systemverilog"},"3":{name:"keyword.operator.scope.systemverilog"},"4":{patterns:[{include:"#operators"},{include:"#identifiers"}]}},match:/[ \t\r\n]*\b(import|export)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$]*|\*)[ \t\r\n]*(::)[ \t\r\n]*([a-zA-Z_][a-zA-Z0-9_\$]*|\*)[ \t\r\n]*([\,\;])/dgv,name:"meta.import.systemverilog"},keywords:{patterns:[{captures:{"1":{name:"keyword.other.systemverilog"}},match:/[ \t\r\n]*\b(edge|negedge|posedge|cell|config|defparam|design|disable|endgenerate|endspecify|event|generate|ifnone|incdir|instance|liblist|library|noshowcancelled|pulsestyle_onevent|pulsestyle_ondetect|scalared|showcancelled|specify|specparam|use|vectored)\b/dgv},{include:"#sv-control"},{include:"#sv-control-begin"},{include:"#sv-control-end"},{include:"#sv-definition"},{include:"#sv-cover-cross"},{include:"#sv-std"},{include:"#sv-option"},{include:"#sv-local"},{include:"#sv-rand"}]},modifiers:{match:/[ \t\r\n]*\b(?:(?:un)?signed|packed|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\b/dgv,name:"storage.modifier.systemverilog"},"module-binding":{begin:/\.([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]*\(/dgv,beginCaptures:{"1":{name:"support.function.port.systemverilog"}},end:/\),?/dgv,name:"meta.port.binding.systemverilog",patterns:[{include:"#constants"},{include:"#comments"},{include:"#operators"},{include:"#strings"},{include:"#constants"},{include:"#storage-scope"},{include:"#cast-operator"},{include:"#system-tf"},{match:/\bvirtual\b/dgv,name:"storage.modifier.systemverilog"},{include:"#identifiers"}]},"module-declaration":{begin:/[ \t\r\n]*\b((?:macro)?module|interface|program|package|modport)[ \t\r\n]+(?:(static|automatic)[ \t\r\n]+)?([a-zA-Z_][a-zA-Z0-9_\$]*)\b/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"storage.modifier.systemverilog"},"3":{name:"entity.name.type.module.systemverilog"}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.module.end.systemverilog"}},name:"meta.module.systemverilog",patterns:[{include:"#parameters"},{include:"#port-net-parameter"},{include:"#imports"},{include:"#base-grammar"},{include:"#system-tf"},{include:"#identifiers"}]},"module-no-parameters":{begin:/[ \t\r\n]*\b(?:(bind|pullup|pulldown)[ \t\r\n]+(?:([a-zA-Z_][a-zA-Z0-9_\$\.]*)[ \t\r\n]+)?)?((?:\b(?:and|nand|or|nor|xor|xnor|buf|not|bufif[01]|notif[01]|r?[npc]mos|r?tran|r?tranif[01])\b|[a-zA-Z_][a-zA-Z0-9_\$]*))[ \t\r\n]+(?!intersect|and|or|throughout|within)([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?[ \t\r\n]*(?=\(|(?=\n?$))(?!;)/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.module.systemverilog"},"3":{name:"entity.name.type.module.systemverilog"},"4":{name:"variable.other.module.systemverilog"},"5":{patterns:[{include:"#selects"}]}},end:/\)(?:[ \t\r\n]*(;))?/dgv,endCaptures:{"1":{name:"punctuation.module.instantiation.end.systemverilog"}},name:"meta.module.no_parameters.systemverilog",patterns:[{include:"#module-binding"},{include:"#comments"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{include:"#port-net-parameter"},{match:/\b([a-zA-Z_][a-zA-Z0-9_\$]*)\b(?=[ \t\r\n]*(\(|(?=\n?$)))/dgv,name:"variable.other.module.systemverilog"},{include:"#identifiers"}]},"module-parameters":{begin:/[ \t\r\n]*\b(?:(bind)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$\.]*)[ \t\r\n]+)?([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]+(?!intersect|and|or|throughout|within)(?=#[^\#])/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.module.systemverilog"},"3":{name:"entity.name.type.module.systemverilog"}},end:/\)(?:[ \t\r\n]*(;))?/dgv,endCaptures:{"1":{name:"punctuation.module.instantiation.end.systemverilog"}},name:"meta.module.parameters.systemverilog",patterns:[{match:/\b([a-zA-Z_][a-zA-Z0-9_\$]*)\b(?=[ \t\r\n]*\()/dgv,name:"variable.other.module.systemverilog"},{include:"#module-binding"},{include:"#parameters"},{include:"#comments"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{include:"#port-net-parameter"},{match:/\b([a-zA-Z_][a-zA-Z0-9_\$]*)\b(?=[ \t\r\n]*(?=\n?$))/dgv,name:"variable.other.module.systemverilog"},{include:"#identifiers"}]},operators:{patterns:[{match:/\b(?:dist|inside|with|intersect|and|or|throughout|within|first_match)\b|:=|:\/|\|->|\|=>|->>|\*>|#-#|#=#|&&&/dgv,name:"keyword.operator.logical.systemverilog"},{match:/@|##|#|->|<->/dgv,name:"keyword.operator.channel.systemverilog"},{match:/\+=|-=|\/=|\*=|%=|&=|\|=|\^=|>>>=|>>=|<<<=|<<=|<=|=/dgv,name:"keyword.operator.assignment.systemverilog"},{match:/\+\+/dgv,name:"keyword.operator.increment.systemverilog"},{match:/--/dgv,name:"keyword.operator.decrement.systemverilog"},{match:/[\+\-]|\*\*|[\*\/\%]/dgv,name:"keyword.operator.arithmetic.systemverilog"},{match:/!|&&|\|\|/dgv,name:"keyword.operator.logical.systemverilog"},{match:/<<<|<<|>>>|>>/dgv,name:"keyword.operator.bitwise.shift.systemverilog"},{match:/~&|~\||~|\^~|~\^|[\&\|\^\{]|'\{|[\}\:\?]/dgv,name:"keyword.operator.bitwise.systemverilog"},{match:/<=|<|>=|>|==\?|!=\?|===|!==|==|!=/dgv,name:"keyword.operator.comparison.systemverilog"}]},parameters:{begin:/[ \t\r\n]*(#)[ \t\r\n]*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.channel.systemverilog"},"2":{name:"punctuation.section.parameters.begin"}},end:/(\))[ \t\r\n]*(?=[\;\(a-zA-Z_\\]|(?=\n?$))/dgv,endCaptures:{"1":{name:"punctuation.section.parameters.end"}},name:"meta.parameters.systemverilog",patterns:[{include:"#port-net-parameter"},{include:"#comments"},{include:"#constants"},{include:"#operators"},{include:"#strings"},{include:"#system-tf"},{include:"#functions"},{match:/\bvirtual\b/dgv,name:"storage.modifier.systemverilog"},{include:"#module-binding"}]},"port-net-parameter":{patterns:[{captures:{"1":{name:"support.type.direction.systemverilog"},"2":{name:"storage.type.net.systemverilog"},"3":{name:"support.type.scope.systemverilog"},"4":{name:"keyword.operator.scope.systemverilog"},"5":{patterns:[{include:"#built-ins"},{match:/[a-zA-Z_][a-zA-Z0-9_\$]*/dgv,name:"storage.type.user-defined.systemverilog"}]},"6":{patterns:[{include:"#modifiers"}]},"7":{patterns:[{include:"#selects"}]},"8":{patterns:[{include:"#constants"},{include:"#identifiers"}]},"9":{patterns:[{include:"#selects"}]}},match:/,?[ \t\r\n]*(?:\b(output|input|inout|ref)\b[ \t\r\n]*)?(?:\b(localparam|parameter|var|supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\b[ \t\r\n]*)?(?:\b([a-zA-Z_][a-zA-Z0-9_\$]*)(::))?(?:([a-zA-Z_][a-zA-Z0-9_\$]*)\b[ \t\r\n]*)?(?:\b(signed|unsigned)\b[ \t\r\n]*)?(?:(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])[ \t\r\n]*)?(?<!(?<!#)[\:\&\|\=\+\-\*\/\%\?\>\<\^\!\~\(][ \t\r\n]*)\b([a-zA-Z_][a-zA-Z0-9_\$]*)\b[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?[ \t\r\n]*(?=[\,\;\=\)\/]|(?=\n?$))/dgv,name:"meta.port-net-parameter.declaration.systemverilog"}]},selects:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.slice.brackets.begin"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.slice.brackets.end"}},name:"meta.brackets.select.systemverilog",patterns:[{match:/\$(?![a-z])/dgv,name:"constant.language.systemverilog"},{include:"#system-tf"},{include:"#constants"},{include:"#operators"},{include:"#cast-operator"},{include:"#storage-scope"},{match:/[a-zA-Z_][a-zA-Z0-9_\$]*/dgv,name:"variable.other.identifier.systemverilog"}]},sequence:{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.function.systemverilog"}},match:/[ \t\r\n]*\b(sequence)[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$]*)\b/dgv,name:"meta.sequence.systemverilog"},"storage-scope":{captures:{"1":{name:"support.type.scope.systemverilog"},"2":{name:"keyword.operator.scope.systemverilog"}},match:/\b([a-zA-Z_][a-zA-Z0-9_\$]*)(::)/dgv,name:"meta.scope.systemverilog"},strings:{patterns:[{begin:/`?"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.systemverilog"}},end:/"`?/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.systemverilog"}},name:"string.quoted.double.systemverilog",patterns:[{match:/\\(?:[nt\\"vfa]|[0-7]{3}|x\p{AHex}{2})/dgv,name:"constant.character.escape.systemverilog"},{match:/%(\p{Nd}+\$)?['\-\+0 \#]*[\,\;\:_]?((-?\p{Nd}+)|\*(-?\p{Nd}+\$)?)?(\.((-?\p{Nd}+)|\*(-?\p{Nd}+\$)?)?)?(hh|h|ll|[ljztL])?[xXhHdDoObBcClLvVmMpPsStTuUzZeEfFgG\%]/dgv,name:"constant.character.format.placeholder.systemverilog"},{match:/%/dgv,name:"invalid.illegal.placeholder.systemverilog"},{include:"#fixme-todo"}]},{begin:/(?<=include)[ \t\r\n]*(<)/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.systemverilog"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.systemverilog"}},name:"string.quoted.other.lt-gt.include.systemverilog"}]},"sv-control":{captures:{"1":{name:"keyword.control.systemverilog"}},match:/[ \t\r\n]*\b(initial|always|always_comb|always_ff|always_latch|final|assign|deassign|force|release|wait|forever|repeat|alias|while|for|if|iff|else|case|casex|casez|default|endcase|return|break|continue|do|foreach|clocking|coverpoint|property|bins|binsof|illegal_bins|ignore_bins|randcase|matches|solve|before|expect|cross|ref|srandom|struct|chandle|tagged|extern|throughout|timeprecision|timeunit|priority|type|union|wait_order|triggered|randsequence|context|pure|wildcard|new|forkjoin|unique|unique0|priority)\b/dgv},"sv-control-begin":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"punctuation.definition.label.systemverilog"},"3":{name:"entity.name.section.systemverilog"}},match:/[ \t\r\n]*\b(begin|fork)\b(?:[ \t\r\n]*(:)[ \t\r\n]*([a-zA-Z_][a-zA-Z0-9_\$]*))?/dgv,name:"meta.item.begin.systemverilog"},"sv-control-end":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"punctuation.definition.label.systemverilog"},"3":{name:"entity.name.section.systemverilog"}},match:/[ \t\r\n]*\b(end|endmodule|endinterface|endprogram|endchecker|endclass|endpackage|endconfig|endfunction|endtask|endproperty|endsequence|endgroup|endprimitive|endclocking|endgenerate|join|join_any|join_none)\b(?:[ \t\r\n]*(:)[ \t\r\n]*([a-zA-Z_][a-zA-Z0-9_\$]*))?/dgv,name:"meta.item.end.systemverilog"},"sv-cover-cross":{captures:{"2":{name:"entity.name.type.class.systemverilog"},"3":{name:"keyword.operator.other.systemverilog"},"4":{name:"keyword.control.systemverilog"}},match:/(([a-zA-Z_][a-zA-Z0-9_\$]*)[ \t\r\n]*(:))?[ \t\r\n]*(c(?:overpoint|ross))[ \t\r\n]+([a-zA-Z_][a-zA-Z0-9_\$]*)/dgv,name:"meta.definition.systemverilog"},"sv-definition":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.class.systemverilog"}},match:/[ \t\r\n]*\b(primitive|package|constraint|interface|covergroup|program)[ \t\r\n]+\b([a-zA-Z_][a-zA-Z0-9_\$]*)\b/dgv,name:"meta.definition.systemverilog"},"sv-local":{captures:{"1":{name:"keyword.other.systemverilog"}},match:/[ \t\r\n]*\b(const|static|protected|virtual|localparam|parameter|local)\b/dgv},"sv-option":{captures:{"1":{name:"keyword.cover.systemverilog"}},match:/[ \t\r\n]*\b(option)\./dgv},"sv-rand":{match:/[ \t\r\n]*\brand(?:|c)\b/dgv,name:"storage.type.rand.systemverilog"},"sv-std":{match:/\b(std)\b::/dgv,name:"support.class.systemverilog"},"system-tf":{match:/\$[a-zA-Z0-9_\$][a-zA-Z0-9_\$]*\b/dgv,name:"support.function.systemverilog"},tables:{begin:/[ \t\r\n]*\b(table)\b/dgv,beginCaptures:{"1":{name:"keyword.table.systemverilog.begin"}},end:/[ \t\r\n]*\b(endtable)\b/dgv,endCaptures:{"1":{name:"keyword.table.systemverilog.end"}},name:"meta.table.systemverilog",patterns:[{include:"#comments"},{match:/\b[01xXbBrRfFpPnN]\b/dgv,name:"constant.language.systemverilog"},{match:/[\-\*\?]/dgv,name:"constant.language.systemverilog"},{captures:{"1":{name:"constant.language.systemverilog"}},match:/\(([01xX\?]{2})\)/dgv},{match:/:/dgv,name:"punctuation.definition.label.systemverilog"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{include:"#identifiers"}]},typedef:{begin:/[ \t\r\n]*\b(typedef)[ \t\r\n]+(?:([a-zA-Z_][a-zA-Z0-9_\$]*)(?:[ \t\r\n]+\b(signed|unsigned)\b)?[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?)?(?=[ \t\r\n]*[a-zA-Z_\\])/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{patterns:[{include:"#built-ins"},{match:/\bvirtual\b/dgv,name:"storage.modifier.systemverilog"}]},"3":{patterns:[{include:"#modifiers"}]},"4":{patterns:[{include:"#selects"}]}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.typedef.end.systemverilog"}},name:"meta.typedef.systemverilog",patterns:[{include:"#identifiers"},{include:"#selects"}]},"typedef-enum-struct-union":{begin:/[ \t\r\n]*\b(typedef)[ \t\r\n]+(enum|struct|union(?:[ \t\r\n]+tagged)?|class|interface[ \t\r\n]+class)(?:[ \t\r\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_\$]*)?[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?)?(?:[ \t\r\n]+(packed))?(?:[ \t\r\n]+(signed|unsigned))?(?=[ \t\r\n]*(?:\{|(?=\n?$)))/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"keyword.control.systemverilog"},"3":{patterns:[{include:"#built-ins"}]},"4":{patterns:[{include:"#selects"}]},"5":{name:"storage.modifier.systemverilog"},"6":{name:"storage.modifier.systemverilog"}},end:/(?<=\})[ \t\r\n]*([a-zA-Z_][a-zA-Z0-9_\$]*|(?<=^|[ \t\r\n])\\[\!-\~]+(?=(?=\n?$)|[ \t\r\n]))[ \t\r\n]*(\[[a-zA-Z0-9_\:\$\.\-\+\*\/\%\`' \t\r\n\[\]\(\)]*\])?[ \t\r\n]*[\,\;]/dgv,endCaptures:{"1":{name:"storage.type.systemverilog"},"2":{patterns:[{include:"#selects"}]}},name:"meta.typedef-enum-struct-union.systemverilog",patterns:[{include:"#port-net-parameter"},{include:"#keywords"},{include:"#base-grammar"},{include:"#identifiers"}]}},scopeName:"source.systemverilog",embeddedLangs:undefined,aliases:undefined})
|
|
1
|
+
const lang = Object.freeze({displayName:"SystemVerilog",fileTypes:["v","vh","sv","svh"],name:"system-verilog",patterns:[{include:"#comments"},{include:"#strings"},{include:"#typedef-enum-struct-union"},{include:"#typedef"},{include:"#functions"},{include:"#keywords"},{include:"#tables"},{include:"#function-task"},{include:"#module-declaration"},{include:"#class-declaration"},{include:"#enum-struct-union"},{include:"#sequence"},{include:"#all-types"},{include:"#module-parameters"},{include:"#module-no-parameters"},{include:"#port-net-parameter"},{include:"#system-tf"},{include:"#assertion"},{include:"#bind-directive"},{include:"#cast-operator"},{include:"#storage-scope"},{include:"#attributes"},{include:"#imports"},{include:"#operators"},{include:"#constants"},{include:"#identifiers"},{include:"#selects"}],repository:{"all-types":{patterns:[{include:"#built-ins"},{include:"#modifiers"}]},assertion:{captures:{"1":{name:"entity.name.goto-label.php"},"2":{name:"keyword.operator.systemverilog"},"3":{name:"keyword.sva.systemverilog"}},match:/\b([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]*(:)[\t\n\r ]*(assert|assume|cover|restrict)\b/dgv},attributes:{begin:/(?<!@[\t\n\r ]?)\(\*/dgv,beginCaptures:{"0":{name:"punctuation.attribute.rounds.begin"}},end:/\*\)/dgv,endCaptures:{"0":{name:"punctuation.attribute.rounds.end"}},name:"meta.attribute.systemverilog",patterns:[{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"keyword.operator.assignment.systemverilog"}},match:/([A-Z_a-z][\$0-9A-Z_a-z]*)(?:[\t\n\r ]*(=)[\t\n\r ]*)?/dgv},{include:"#constants"},{include:"#strings"}]},"base-grammar":{patterns:[{include:"#all-types"},{include:"#comments"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{captures:{"1":{name:"storage.type.interface.systemverilog"}},match:/[\t\n\r ]*\b([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]+[A-Z_a-z][\t\n \,0-9\=A-Z_a-z]*/dgv},{include:"#storage-scope"}]},"bind-directive":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.module.systemverilog"}},match:/[\t\n\r ]*\b(bind)[\t\n\r ]+([A-Z_a-z][\$\.0-9A-Z_a-z]*)\b/dgv,name:"meta.definition.systemverilog"},"built-ins":{patterns:[{match:/[\t\n\r ]*\b(bit|logic|reg)\b/dgv,name:"storage.type.vector.systemverilog"},{match:/[\t\n\r ]*\b(byte|shortint|int|longint|integer|time|genvar)\b/dgv,name:"storage.type.atom.systemverilog"},{match:/[\t\n\r ]*\b(shortreal|real|realtime)\b/dgv,name:"storage.type.notint.systemverilog"},{match:/[\t\n\r ]*\b(supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\b/dgv,name:"storage.type.net.systemverilog"},{match:/[\t\n\r ]*\b(genvar|var|void|signed|unsigned|string|const|process)\b/dgv,name:"storage.type.built-in.systemverilog"},{match:/[\t\n\r ]*\b(uvm_(?:root|transaction|component|monitor|driver|test|env|object|agent|sequence_base|sequence_item|sequence_state|sequencer|sequencer_base|sequence|component_registry|analysis_imp|analysis_port|analysis_export|config_db|active_passive_enum|phase|verbosity|tlm_analysis_fifo|tlm_fifo|report_server|objection|recorder|domain|reg_field|reg_block|reg|bitstream_t|radix_enum|printer|packer|comparer|scope_stack))\b/dgv,name:"storage.type.uvm.systemverilog"}]},"cast-operator":{captures:{"1":{patterns:[{include:"#built-ins"},{include:"#constants"},{match:/[A-Z_a-z][\$0-9A-Z_a-z]*/dgv,name:"storage.type.user-defined.systemverilog"}]},"2":{name:"keyword.operator.cast.systemverilog"}},match:/[\t\n\r ]*([0-9]+|[A-Z_a-z][\$0-9A-Z_a-z]*)(')(?=\()/dgv,name:"meta.cast.systemverilog"},"class-declaration":{begin:/[\t\n\r ]*\b(virtual[\t\n\r ]+)?(class)(?:[\t\n\r ]+((?:st|autom)atic))?[\t\n\r ]+([A-Z_a-z][\$0-\:A-Z_a-z]*)(?:[\t\n\r ]+(extends|implements)[\t\n\r ]+([A-Z_a-z][\$0-\:A-Z_a-z]*))?/dgv,beginCaptures:{"1":{name:"storage.modifier.systemverilog"},"2":{name:"storage.type.class.systemverilog"},"3":{name:"storage.modifier.systemverilog"},"4":{name:"entity.name.type.class.systemverilog"},"5":{name:"keyword.control.systemverilog"},"6":{name:"entity.name.type.class.systemverilog"}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.class.end.systemverilog"}},name:"meta.class.systemverilog",patterns:[{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.class.systemverilog"},"3":{name:"entity.name.type.class.systemverilog"}},match:/[\t\n\r ]+\b(extends|implements)[\t\n\r ]+([A-Z_a-z][\$0-\:A-Z_a-z]*)(?:[\t\n\r ]*,[\t\n\r ]*([A-Z_a-z][\$0-\:A-Z_a-z]*))*/dgv},{captures:{"1":{name:"storage.type.userdefined.systemverilog"},"2":{name:"keyword.operator.param.systemverilog"}},match:/[\t\n\r ]+\b([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]*(#)\(/dgv,name:"meta.typedef.class.systemverilog"},{include:"#port-net-parameter"},{include:"#base-grammar"},{include:"#module-binding"},{include:"#identifiers"}]},comments:{patterns:[{begin:/\/\*/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.systemverilog"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.systemverilog"}},name:"comment.block.systemverilog",patterns:[{include:"#fixme-todo"}]},{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.systemverilog"}},end:/(?=\n?$)\n?/dgv,name:"comment.line.double-slash.systemverilog",patterns:[{include:"#fixme-todo"}]}]},"compiler-directives":{name:"meta.preprocessor.systemverilog",patterns:[{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},match:/(`)(else|endif|endcelldefine|celldefine|nounconnected_drive|resetall|undefineall|end_keywords|__FILE__|__LINE__)\b/dgv},{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"},"3":{name:"variable.other.constant.preprocessor.systemverilog"}},match:/(`)(ifdef|ifndef|elsif|define|undef|pragma)[\t\n\r ]+([A-Z_a-z][\$0-9A-Z_a-z]*)\b/dgv},{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},match:/(`)(include|timescale|default_nettype|unconnected_drive|line|begin_keywords)\b/dgv},{begin:/(`)(protected)\b/dgv,beginCaptures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},end:/(`)(endprotected)\b/dgv,endCaptures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"string.regexp.systemverilog"}},name:"meta.crypto.systemverilog"},{captures:{"1":{name:"punctuation.definition.directive.systemverilog"},"2":{name:"variable.other.constant.preprocessor.systemverilog"}},match:/(`)([A-Z_a-z][\$0-9A-Z_a-z]*)\b/dgv}]},constants:{patterns:[{match:/(\b[1-9][0-9_]*)?'([Ss]?[Bb][\t\n\r ]*[01\?XZxz][01\?XZ_xz]*|[Ss]?[Oo][\t\n\r ]*[0-7\?XZxz][0-7\?XZ_xz]*|[Ss]?[Dd][\t\n\r ]*[0-9\?XZxz][0-9\?XZ_xz]*|[Ss]?[Hh][\t\n\r ]*[\?XZxz\p{AHex}][\?XZ_xz\p{AHex}]*)(([Ee])([\-\+])?[0-9]+)?(?!['\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"constant.numeric.systemverilog"},{match:/'[01XZxz]/dgv,name:"constant.numeric.bit.systemverilog"},{match:/\b\p{Nd}[\._\p{Nd}]*(?<!\.)[Ee][\-\+]?[0-9]+\b/dgv,name:"constant.numeric.exp.systemverilog"},{match:/\b\p{Nd}[\._\p{Nd}]*(?![\.\p{Nd}]|[\t\n\r ]*(?:[Ee]|fs|ps|ns|us|ms|s))\b/dgv,name:"constant.numeric.decimal.systemverilog"},{match:/\b\p{Nd}[\.\p{Nd}]*[\t\n\r ]*(?:[fmnpu]|)s\b/dgv,name:"constant.numeric.time.systemverilog"},{include:"#compiler-directives"},{match:/\b(?:this|super|null)\b/dgv,name:"constant.language.systemverilog"},{match:/\b([A-Z][0-9A-Z_]*)\b/dgv,name:"constant.other.net.systemverilog"},{match:/\b(?<!\.)([0-9A-Z_]+)(?!\.)\b/dgv,name:"constant.numeric.parameter.uppercase.systemverilog"},{match:/\.\*/dgv,name:"keyword.operator.quantifier.regexp"}]},"enum-struct-union":{begin:/[\t\n\r ]*\b(enum|struct|union(?:[\t\n\r ]+tagged)?|class|interface[\t\n\r ]+class)(?:[\t\n\r ]+(?!(?:pack|sign|unsign)ed)([A-Z_a-z][\$0-9A-Z_a-z]*)?[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?)?(?:[\t\n\r ]+(packed))?(?:[\t\n\r ]+((?:|un)signed))?(?=[\t\n\r ]*(?:\{|(?=\n?$)))/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{patterns:[{include:"#built-ins"}]},"3":{patterns:[{include:"#selects"}]},"4":{name:"storage.modifier.systemverilog"},"5":{name:"storage.modifier.systemverilog"}},end:/(?<=\})[\t\n\r ]*([A-Z_a-z][\$0-9A-Z_a-z]*|(?<=^|[\t\n\r ])\\[\!-\~]+(?=(?=\n?$)|[\t\n\r ]))[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?[\t\n\r ]*[\,\;]/dgv,endCaptures:{"1":{patterns:[{include:"#identifiers"}]},"2":{patterns:[{include:"#selects"}]}},name:"meta.enum-struct-union.systemverilog",patterns:[{include:"#keywords"},{include:"#base-grammar"},{include:"#identifiers"}]},"fixme-todo":{patterns:[{match:/fixme/dgiv,name:"invalid.broken.fixme.systemverilog"},{match:/todo/dgiv,name:"invalid.unimplemented.todo.systemverilog"}]},"function-task":{begin:/[\t\n\r ]*(?:\b(virtual)[\t\n\r ]+)?\b(function|task)\b(?:[\t\n\r ]+\b((?:st|autom)atic)\b)?/dgv,beginCaptures:{"1":{name:"storage.modifier.systemverilog"},"2":{name:"storage.type.function.systemverilog"},"3":{name:"storage.modifier.systemverilog"}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.function.end.systemverilog"}},name:"meta.function.systemverilog",patterns:[{captures:{"1":{name:"support.type.scope.systemverilog"},"2":{name:"keyword.operator.scope.systemverilog"},"3":{patterns:[{include:"#built-ins"},{match:/[A-Z_a-z][\$0-9A-Z_a-z]*/dgv,name:"storage.type.user-defined.systemverilog"}]},"4":{patterns:[{include:"#modifiers"}]},"5":{patterns:[{include:"#selects"}]},"6":{name:"entity.name.function.systemverilog"}},match:/[\t\n\r ]*(?:\b([A-Z_a-z][\$0-9A-Z_a-z]*)(::))?([A-Z_a-z][\$0-9A-Z_a-z]*\b[\t\n\r ]+)?(?:\b((?:|un)signed)\b[\t\n\r ]*)?(?:(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])[\t\n\r ]*)?\b([A-Z_a-z][\$0-9A-Z_a-z]*)\b[\t\n\r ]*(?=[\(\;])/dgv},{include:"#keywords"},{include:"#port-net-parameter"},{include:"#base-grammar"},{include:"#identifiers"}]},functions:{match:/[\t\n\r ]*\b(?!while|for|if|iff|else|case|casex|casez)([A-Z_a-z][\$0-9A-Z_a-z]*)(?=[\t\n\r ]*\()/dgv,name:"entity.name.function.systemverilog"},identifiers:{patterns:[{match:/\b[A-Z_a-z][\$0-9A-Z_a-z]*\b/dgv,name:"variable.other.identifier.systemverilog"},{match:/(?<=^|[\t\n\r ])\\[\!-\~]+(?=(?=\n?$)|[\t\n\r ])/dgv,name:"string.regexp.identifier.systemverilog"}]},imports:{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"support.type.scope.systemverilog"},"3":{name:"keyword.operator.scope.systemverilog"},"4":{patterns:[{include:"#operators"},{include:"#identifiers"}]}},match:/[\t\n\r ]*\b((?:im|ex)port)[\t\n\r ]+([A-Z_a-z][\$0-9A-Z_a-z]*|\*)[\t\n\r ]*(::)[\t\n\r ]*([A-Z_a-z][\$0-9A-Z_a-z]*|\*)[\t\n\r ]*([\,\;])/dgv,name:"meta.import.systemverilog"},keywords:{patterns:[{captures:{"1":{name:"keyword.other.systemverilog"}},match:/[\t\n\r ]*\b(edge|negedge|posedge|cell|config|defparam|design|disable|endgenerate|endspecify|event|generate|ifnone|incdir|instance|liblist|library|noshowcancelled|pulsestyle_onevent|pulsestyle_ondetect|scalared|showcancelled|specify|specparam|use|vectored)\b/dgv},{include:"#sv-control"},{include:"#sv-control-begin"},{include:"#sv-control-end"},{include:"#sv-definition"},{include:"#sv-cover-cross"},{include:"#sv-std"},{include:"#sv-option"},{include:"#sv-local"},{include:"#sv-rand"}]},modifiers:{match:/[\t\n\r ]*\b(?:(?:un)?signed|packed|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\b/dgv,name:"storage.modifier.systemverilog"},"module-binding":{begin:/\.([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]*\(/dgv,beginCaptures:{"1":{name:"support.function.port.systemverilog"}},end:/\),?/dgv,name:"meta.port.binding.systemverilog",patterns:[{include:"#constants"},{include:"#comments"},{include:"#operators"},{include:"#strings"},{include:"#constants"},{include:"#storage-scope"},{include:"#cast-operator"},{include:"#system-tf"},{match:/\bvirtual\b/dgv,name:"storage.modifier.systemverilog"},{include:"#identifiers"}]},"module-declaration":{begin:/[\t\n\r ]*\b((?:macro)?module|interface|program|package|modport)[\t\n\r ]+(?:((?:st|autom)atic)[\t\n\r ]+)?([A-Z_a-z][\$0-9A-Z_a-z]*)\b/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"storage.modifier.systemverilog"},"3":{name:"entity.name.type.module.systemverilog"}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.module.end.systemverilog"}},name:"meta.module.systemverilog",patterns:[{include:"#parameters"},{include:"#port-net-parameter"},{include:"#imports"},{include:"#base-grammar"},{include:"#system-tf"},{include:"#identifiers"}]},"module-no-parameters":{begin:/[\t\n\r ]*\b(?:(bind|pullup|pulldown)[\t\n\r ]+(?:([A-Z_a-z][\$\.0-9A-Z_a-z]*)[\t\n\r ]+)?)?(\b(?:and|nand|or|nor|xor|xnor|buf|not|bufif[01]|notif[01]|r?[cnp]mos|r?tran|r?tranif[01])\b|[A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]+(?!intersect|and|or|throughout|within)([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?[\t\n\r ]*(?=\(|(?=\n?$))(?!;)/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.module.systemverilog"},"3":{name:"entity.name.type.module.systemverilog"},"4":{name:"variable.other.module.systemverilog"},"5":{patterns:[{include:"#selects"}]}},end:/\)(?:[\t\n\r ]*(;))?/dgv,endCaptures:{"1":{name:"punctuation.module.instantiation.end.systemverilog"}},name:"meta.module.no_parameters.systemverilog",patterns:[{include:"#module-binding"},{include:"#comments"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{include:"#port-net-parameter"},{match:/\b([A-Z_a-z][\$0-9A-Z_a-z]*)\b(?=[\t\n\r ]*(\(|(?=\n?$)))/dgv,name:"variable.other.module.systemverilog"},{include:"#identifiers"}]},"module-parameters":{begin:/[\t\n\r ]*\b(?:(bind)[\t\n\r ]+([A-Z_a-z][\$\.0-9A-Z_a-z]*)[\t\n\r ]+)?([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]+(?!intersect|and|or|throughout|within)(?=#[^\#])/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.module.systemverilog"},"3":{name:"entity.name.type.module.systemverilog"}},end:/\)(?:[\t\n\r ]*(;))?/dgv,endCaptures:{"1":{name:"punctuation.module.instantiation.end.systemverilog"}},name:"meta.module.parameters.systemverilog",patterns:[{match:/\b([A-Z_a-z][\$0-9A-Z_a-z]*)\b(?=[\t\n\r ]*\()/dgv,name:"variable.other.module.systemverilog"},{include:"#module-binding"},{include:"#parameters"},{include:"#comments"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{include:"#port-net-parameter"},{match:/\b([A-Z_a-z][\$0-9A-Z_a-z]*)\b(?=[\t\n\r ]*(?=\n?$))/dgv,name:"variable.other.module.systemverilog"},{include:"#identifiers"}]},operators:{patterns:[{match:/\b(?:dist|inside|with|intersect|and|or|throughout|within|first_match)\b|:=|:\/|\|->|\|=>|->>|\*>|#-#|#=#|&&&/dgv,name:"keyword.operator.logical.systemverilog"},{match:/@|##|#|->|<->/dgv,name:"keyword.operator.channel.systemverilog"},{match:/(?:[\-\%\&\*\+\/\^\|]|>>>|>>|<<<|<<|<|)=/dgv,name:"keyword.operator.assignment.systemverilog"},{match:/\+\+/dgv,name:"keyword.operator.increment.systemverilog"},{match:/--/dgv,name:"keyword.operator.decrement.systemverilog"},{match:/[\-\+]|\*\*|[\%\*\/]/dgv,name:"keyword.operator.arithmetic.systemverilog"},{match:/!|&&|\|\|/dgv,name:"keyword.operator.logical.systemverilog"},{match:/<<<|<<|>>>|>>/dgv,name:"keyword.operator.bitwise.shift.systemverilog"},{match:/~&|~\||~|\^~|~\^|[\&\^\{\|]|'\{|[\:\?\}]/dgv,name:"keyword.operator.bitwise.systemverilog"},{match:/<=|<|>=|>|==\?|!=\?|===|!==|==|!=/dgv,name:"keyword.operator.comparison.systemverilog"}]},parameters:{begin:/[\t\n\r ]*(#)[\t\n\r ]*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.channel.systemverilog"},"2":{name:"punctuation.section.parameters.begin"}},end:/(\))[\t\n\r ]*(?=[\(\;A-Z\\_a-z]|(?=\n?$))/dgv,endCaptures:{"1":{name:"punctuation.section.parameters.end"}},name:"meta.parameters.systemverilog",patterns:[{include:"#port-net-parameter"},{include:"#comments"},{include:"#constants"},{include:"#operators"},{include:"#strings"},{include:"#system-tf"},{include:"#functions"},{match:/\bvirtual\b/dgv,name:"storage.modifier.systemverilog"},{include:"#module-binding"}]},"port-net-parameter":{patterns:[{captures:{"1":{name:"support.type.direction.systemverilog"},"2":{name:"storage.type.net.systemverilog"},"3":{name:"support.type.scope.systemverilog"},"4":{name:"keyword.operator.scope.systemverilog"},"5":{patterns:[{include:"#built-ins"},{match:/[A-Z_a-z][\$0-9A-Z_a-z]*/dgv,name:"storage.type.user-defined.systemverilog"}]},"6":{patterns:[{include:"#modifiers"}]},"7":{patterns:[{include:"#selects"}]},"8":{patterns:[{include:"#constants"},{include:"#identifiers"}]},"9":{patterns:[{include:"#selects"}]}},match:/,?[\t\n\r ]*(?:\b(output|input|inout|ref)\b[\t\n\r ]*)?(?:\b(localparam|parameter|var|supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\b[\t\n\r ]*)?(?:\b([A-Z_a-z][\$0-9A-Z_a-z]*)(::))?(?:([A-Z_a-z][\$0-9A-Z_a-z]*)\b[\t\n\r ]*)?(?:\b((?:|un)signed)\b[\t\n\r ]*)?(?:(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])[\t\n\r ]*)?(?<!(?<!#)[\-\!\%\&\(\*\+\/\:\<-\?\^\|\~][\t\n\r ]*)\b([A-Z_a-z][\$0-9A-Z_a-z]*)\b[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?[\t\n\r ]*(?=[\)\,\/\;\=]|(?=\n?$))/dgv,name:"meta.port-net-parameter.declaration.systemverilog"}]},selects:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.slice.brackets.begin"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.slice.brackets.end"}},name:"meta.brackets.select.systemverilog",patterns:[{match:/\$(?![a-z])/dgv,name:"constant.language.systemverilog"},{include:"#system-tf"},{include:"#constants"},{include:"#operators"},{include:"#cast-operator"},{include:"#storage-scope"},{match:/[A-Z_a-z][\$0-9A-Z_a-z]*/dgv,name:"variable.other.identifier.systemverilog"}]},sequence:{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.function.systemverilog"}},match:/[\t\n\r ]*\b(sequence)[\t\n\r ]+([A-Z_a-z][\$0-9A-Z_a-z]*)\b/dgv,name:"meta.sequence.systemverilog"},"storage-scope":{captures:{"1":{name:"support.type.scope.systemverilog"},"2":{name:"keyword.operator.scope.systemverilog"}},match:/\b([A-Z_a-z][\$0-9A-Z_a-z]*)(::)/dgv,name:"meta.scope.systemverilog"},strings:{patterns:[{begin:/`?"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.systemverilog"}},end:/"`?/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.systemverilog"}},name:"string.quoted.double.systemverilog",patterns:[{match:/\\(?:["\\afntv]|[0-7]{3}|x\p{AHex}{2})/dgv,name:"constant.character.escape.systemverilog"},{match:/%(\p{Nd}+\$)?[\- \#'\+0]*[\,\:\;_]?((-?\p{Nd}+)|\*(-?\p{Nd}+\$)?)?(\.((-?\p{Nd}+)|\*(-?\p{Nd}+\$)?)?)?(hh|h|ll|[Ljltz])?[\%B-HLMOPS-VXZb-hlmops-vxz]/dgv,name:"constant.character.format.placeholder.systemverilog"},{match:/%/dgv,name:"invalid.illegal.placeholder.systemverilog"},{include:"#fixme-todo"}]},{begin:/(?<=include)[\t\n\r ]*(<)/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.systemverilog"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.systemverilog"}},name:"string.quoted.other.lt-gt.include.systemverilog"}]},"sv-control":{captures:{"1":{name:"keyword.control.systemverilog"}},match:/[\t\n\r ]*\b(initial|always|always_comb|always_ff|always_latch|final|assign|deassign|force|release|wait|forever|repeat|alias|while|for|if|iff|else|case|casex|casez|default|endcase|return|break|continue|do|foreach|clocking|coverpoint|property|bins|binsof|illegal_bins|ignore_bins|randcase|matches|solve|before|expect|cross|ref|srandom|struct|chandle|tagged|extern|throughout|timeprecision|timeunit|priority|type|union|wait_order|triggered|randsequence|context|pure|wildcard|new|forkjoin|unique|unique0|priority)\b/dgv},"sv-control-begin":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"punctuation.definition.label.systemverilog"},"3":{name:"entity.name.section.systemverilog"}},match:/[\t\n\r ]*\b(begin|fork)\b(?:[\t\n\r ]*(:)[\t\n\r ]*([A-Z_a-z][\$0-9A-Z_a-z]*))?/dgv,name:"meta.item.begin.systemverilog"},"sv-control-end":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"punctuation.definition.label.systemverilog"},"3":{name:"entity.name.section.systemverilog"}},match:/[\t\n\r ]*\b(end|endmodule|endinterface|endprogram|endchecker|endclass|endpackage|endconfig|endfunction|endtask|endproperty|endsequence|endgroup|endprimitive|endclocking|endgenerate|join|join_any|join_none)\b(?:[\t\n\r ]*(:)[\t\n\r ]*([A-Z_a-z][\$0-9A-Z_a-z]*))?/dgv,name:"meta.item.end.systemverilog"},"sv-cover-cross":{captures:{"2":{name:"entity.name.type.class.systemverilog"},"3":{name:"keyword.operator.other.systemverilog"},"4":{name:"keyword.control.systemverilog"}},match:/(([A-Z_a-z][\$0-9A-Z_a-z]*)[\t\n\r ]*(:))?[\t\n\r ]*(c(?:overpoint|ross))[\t\n\r ]+([A-Z_a-z][\$0-9A-Z_a-z]*)/dgv,name:"meta.definition.systemverilog"},"sv-definition":{captures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"entity.name.type.class.systemverilog"}},match:/[\t\n\r ]*\b(primitive|package|constraint|interface|covergroup|program)[\t\n\r ]+\b([A-Z_a-z][\$0-9A-Z_a-z]*)\b/dgv,name:"meta.definition.systemverilog"},"sv-local":{captures:{"1":{name:"keyword.other.systemverilog"}},match:/[\t\n\r ]*\b(const|static|protected|virtual|localparam|parameter|local)\b/dgv},"sv-option":{captures:{"1":{name:"keyword.cover.systemverilog"}},match:/[\t\n\r ]*\b(option)\./dgv},"sv-rand":{match:/[\t\n\r ]*\brand(?:|c)\b/dgv,name:"storage.type.rand.systemverilog"},"sv-std":{match:/\b(std)\b::/dgv,name:"support.class.systemverilog"},"system-tf":{match:/\$[\$0-9A-Z_a-z][\$0-9A-Z_a-z]*\b/dgv,name:"support.function.systemverilog"},tables:{begin:/[\t\n\r ]*\b(table)\b/dgv,beginCaptures:{"1":{name:"keyword.table.systemverilog.begin"}},end:/[\t\n\r ]*\b(endtable)\b/dgv,endCaptures:{"1":{name:"keyword.table.systemverilog.end"}},name:"meta.table.systemverilog",patterns:[{include:"#comments"},{match:/\b[01BFNPRXbfnprx]\b/dgv,name:"constant.language.systemverilog"},{match:/[\-\*\?]/dgv,name:"constant.language.systemverilog"},{captures:{"1":{name:"constant.language.systemverilog"}},match:/\(([01\?Xx]{2})\)/dgv},{match:/:/dgv,name:"punctuation.definition.label.systemverilog"},{include:"#operators"},{include:"#constants"},{include:"#strings"},{include:"#identifiers"}]},typedef:{begin:/[\t\n\r ]*\b(typedef)[\t\n\r ]+(?:([A-Z_a-z][\$0-9A-Z_a-z]*)(?:[\t\n\r ]+\b((?:|un)signed)\b)?[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?)?(?=[\t\n\r ]*[A-Z\\_a-z])/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{patterns:[{include:"#built-ins"},{match:/\bvirtual\b/dgv,name:"storage.modifier.systemverilog"}]},"3":{patterns:[{include:"#modifiers"}]},"4":{patterns:[{include:"#selects"}]}},end:/;/dgv,endCaptures:{"0":{name:"punctuation.definition.typedef.end.systemverilog"}},name:"meta.typedef.systemverilog",patterns:[{include:"#identifiers"},{include:"#selects"}]},"typedef-enum-struct-union":{begin:/[\t\n\r ]*\b(typedef)[\t\n\r ]+(enum|struct|union(?:[\t\n\r ]+tagged)?|class|interface[\t\n\r ]+class)(?:[\t\n\r ]+(?!(?:pack|sign|unsign)ed)([A-Z_a-z][\$0-9A-Z_a-z]*)?[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?)?(?:[\t\n\r ]+(packed))?(?:[\t\n\r ]+((?:|un)signed))?(?=[\t\n\r ]*(?:\{|(?=\n?$)))/dgv,beginCaptures:{"1":{name:"keyword.control.systemverilog"},"2":{name:"keyword.control.systemverilog"},"3":{patterns:[{include:"#built-ins"}]},"4":{patterns:[{include:"#selects"}]},"5":{name:"storage.modifier.systemverilog"},"6":{name:"storage.modifier.systemverilog"}},end:/(?<=\})[\t\n\r ]*([A-Z_a-z][\$0-9A-Z_a-z]*|(?<=^|[\t\n\r ])\\[\!-\~]+(?=(?=\n?$)|[\t\n\r ]))[\t\n\r ]*(\[[\]\t\n\r \$\%'-\+\--\:A-\[_-z]*\])?[\t\n\r ]*[\,\;]/dgv,endCaptures:{"1":{name:"storage.type.systemverilog"},"2":{patterns:[{include:"#selects"}]}},name:"meta.typedef-enum-struct-union.systemverilog",patterns:[{include:"#port-net-parameter"},{include:"#keywords"},{include:"#base-grammar"},{include:"#identifiers"}]}},scopeName:"source.systemverilog",embeddedLangs:undefined,aliases:undefined})
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/systemd.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EmulatedRegExp } from 'oniguruma-to-es'
|
|
2
2
|
|
|
3
|
-
const lang = Object.freeze({displayName:"Systemd Units",name:"systemd",patterns:[{include:"#comments"},{begin:/^\p{space}*(InaccessableDirectories|InaccessibleDirectories|ReadOnlyDirectories|ReadWriteDirectories|Capabilities|TableId|UseDomainName|IPv6AcceptRouterAdvertisements|SysVStartPriority|StartLimitInterval|RequiresOverridable|RequisiteOverridable|PropagateReloadTo|PropagateReloadFrom|OnFailureIsolate|BindTo)\p{space}*(=)[
|
|
3
|
+
const lang = Object.freeze({displayName:"Systemd Units",name:"systemd",patterns:[{include:"#comments"},{begin:/^\p{space}*(InaccessableDirectories|InaccessibleDirectories|ReadOnlyDirectories|ReadWriteDirectories|Capabilities|TableId|UseDomainName|IPv6AcceptRouterAdvertisements|SysVStartPriority|StartLimitInterval|RequiresOverridable|RequisiteOverridable|PropagateReloadTo|PropagateReloadFrom|OnFailureIsolate|BindTo)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"invalid.deprecated"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,patterns:[{include:"#comments"},{include:"#variables"},{include:"#quotedString"},{include:"#booleans"},{include:"#timeSpans"},{include:"#sizes"},{include:"#numbers"}]},{begin:/^\p{space}*(Environment)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{captures:{"1":{name:"variable.parameter"},"2":{name:"keyword.operator.assignment"}},match:/*@__PURE__*/ new EmulatedRegExp("(?<=^|[\"'\\p{space}])([0-9A-Z_a-z]+)(=)(?=[^\"'\\p{space}])","dgv",{"strategy":"clip_search"})},{include:"#variables"},{include:"#booleans"},{include:"#numbers"}]},{begin:/^\p{space}*(OnCalendar)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{include:"#variables"},{include:"#calendarShorthands"},{include:"#numbers"}]},{begin:/^\p{space}*(CapabilityBoundingSet|AmbientCapabilities|AddCapability|DropCapability)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{include:"#capabilities"}]},{begin:/^\p{space}*(Restart)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{include:"#variables"},{include:"#restartOptions"}]},{begin:/^\p{space}*(Type)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{include:"#variables"},{include:"#typeOptions"}]},{begin:/^\p{space}*(Exec(?:Start(?:P(?:re|ost))?|Reload|Stop(?:Post)?))\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{include:"#executablePrefixes"},{include:"#variables"},{include:"#quotedString"},{include:"#booleans"},{include:"#numbers"}]},{begin:/^\p{space}*([\-\.\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(=)[\t ]*/dgv,beginCaptures:{"1":{name:"entity.name.tag"},"2":{name:"keyword.operator.assignment"}},end:/(?<!\\)\n/dgv,name:"meta.config-entry.systemd",patterns:[{include:"#comments"},{include:"#variables"},{include:"#quotedString"},{include:"#booleans"},{include:"#timeSpans"},{include:"#sizes"},{include:"#numbers"}]},{include:"#sections"}],repository:{booleans:{patterns:[{match:/\b(?<![\-\.\/])(true|false|on|off|yes|no)(?![\-\.\/])\b/dgv,name:"constant.language"}]},calendarShorthands:{patterns:[{match:/\b(?:minute|hour|dai|month|week|quarter|semiannual)ly\b/dgv,name:"constant.language"}]},capabilities:{patterns:[{match:/\bCAP_(?:AUDIT_CONTROL|AUDIT_READ|AUDIT_WRITE|BLOCK_SUSPEND|BPF|CHECKPOINT_RESTORE|CHOWN|DAC_OVERRIDE|DAC_READ_SEARCH|FOWNER|FSETID|IPC_LOCK|IPC_OWNER|KILL|LEASE|LINUX_IMMUTABLE|MAC_ADMIN|MAC_OVERRIDE|MKNOD|NET_ADMIN|NET_BIND_SERVICE|NET_BROADCAST|NET_RAW|PERFMON|SETFCAP|SETGID|SETPCAP|SETUID|SYS_ADMIN|SYS_BOOT|SYS_CHROOT|SYS_MODULE|SYS_NICE|SYS_PACCT|SYS_PTRACE|SYS_RAWIO|SYS_RESOURCE|SYS_TIME|SYS_TTY_CONFIG|SYSLOG|WAKE_ALARM)\b/dgv,name:"constant.other.systemd"}]},comments:{patterns:[{match:/^\p{space}*[\#\;][^\n]*\n/dgv,name:"comment.line.number-sign"}]},executablePrefixes:{patterns:[{match:/([\-\:\@]+(?:\+|!!?)?|(?:\+|!!?)[\-\:\@]*)/dgvy,name:"keyword.operator.prefix.systemd"}]},numbers:{patterns:[{match:/(?<=[\=\p{space}])\p{Nd}+(?:\.\p{Nd}+)?(?=[\:\p{space}]|(?=\n?$))/dgv,name:"constant.numeric"}]},quotedString:{patterns:[{begin:/*@__PURE__*/ new EmulatedRegExp("(?<=^|\\p{space})'","dgv",{"strategy":"clip_search"}),end:/[\n']/dgv,name:"string.quoted.single",patterns:[{match:/\\(?:[\n"'\\abfnrstv]|x\p{AHex}{2}|[0-8]{3}|u\p{AHex}{4}|U\p{AHex}{8})/dgv,name:"constant.character.escape"}]},{begin:/*@__PURE__*/ new EmulatedRegExp("(?<=^|\\p{space})\"","dgv",{"strategy":"clip_search"}),end:/[\n"]/dgv,name:"string.quoted.double",patterns:[{match:/\\(?:[\n"'\\abfnrstv]|x\p{AHex}{2}|[0-8]{3}|u\p{AHex}{4}|U\p{AHex}{8})/dgv,name:"constant.character.escape"}]}]},restartOptions:{patterns:[{match:/\b(no|always|on-(?:success|failure|abnormal|abort|watchdog))\b/dgv,name:"constant.language"}]},sections:{patterns:[{match:/^\p{space}*\[(Address|Automount|BFIFO|BandMultiQueueing|BareUDP|BatmanAdvanced|Bond|Bridge|BridgeFDB|BridgeMDB|BridgeVLAN|CAKE|CAN|ClassfulMultiQueueing|Container|Content|ControlledDelay|Coredump|D-BUS Service|DHCP|DHCPPrefixDelegation|DHCPServer|DHCPServerStaticLease|DHCPv4|DHCPv6|DHCPv6PrefixDelegation|DeficitRoundRobinScheduler|DeficitRoundRobinSchedulerClass|Distribution|EnhancedTransmissionSelection|Exec|FairQueueing|FairQueueingControlledDelay|Feature|Files|FlowQueuePIE|FooOverUDP|GENEVE|GenericRandomEarlyDetection|HeavyHitterFilter|HierarchyTokenBucket|HierarchyTokenBucketClass|Home|IOCost|IPVLAN|IPVTAP|IPoIB|IPv6AcceptRA|IPv6AddressLabel|IPv6PREF64Prefix|IPv6Prefix|IPv6PrefixDelegation|IPv6RoutePrefix|IPv6SendRA|Image|Install|Journal|Kube|L2TP|L2TPSession|LLDP|Link|Login|MACVLAN|MACVTAP|MACsec|MACsecReceiveAssociation|MACsecReceiveChannel|MACsecTransmitAssociation|Manager|Match|Mount|Neighbor|NetDev|Network|NetworkEmulator|NextHop|OOM|Output|PFIFO|PFIFOFast|PFIFOHeadDrop|PIE|PStore|Packages|Partition|Path|Peer|Pod|QDisc|Quadlet|QuickFairQueueing|QuickFairQueueingClass|Remote|Resolve|Route|RoutingPolicyRule|SR-IOV|Scope|Service|Sleep|Socket|Source|StochasticFairBlue|StochasticFairnessQueueing|Swap|Tap|Target|Time|Timer|TokenBucketFilter|TrafficControlQueueingDiscipline|Transfer|TrivialLinkEqualizer|Tun|Tunnel|UKI|Unit|Upload|VLAN|VRF|VXCAN|VXLAN|Volume|WLAN|WireGuard|WireGuardPeer|Xfrm)\]/dgv,name:"entity.name.section"},{match:/\p{space}*\[[\-\p{L}\p{M}\p{N}\p{Pc}]+\]/dgv,name:"entity.name.unknown-section"}]},sizes:{patterns:[{match:/(?<=[\=\p{space}])\p{Nd}+(?:\.\p{Nd}+)?[GKMT](?=[\:\p{space}]|(?=\n?$))/dgv,name:"constant.numeric"},{match:/(?<==)infinity(?=[\:\p{space}]|(?=\n?$))/dgv,name:"constant.numeric"}]},timeSpans:{patterns:[{match:/\b(?:\p{Nd}+(?:[uμ]s(?:ec)?|ms(?:ec)?|s(?:ec(?:|onds?))?|m(?:in(?:|utes?))?|h(?:r|ours?)?|d(?:ays?)?|w(?:eeks)?|M|months?|y(?:ears?)?))+\b/dgv,name:"constant.numeric"}]},typeOptions:{patterns:[{match:/\b(?:simple|exec|forking|oneshot|dbus|notify(?:-reload)?|idle|unicast|local|broadcast|anycast|multicast|blackhole|unreachable|prohibit|throw|nat|xresolve|blackhole|unreachable|prohibit|ad-hoc|station|ap(?:-vlan)?|wds|monitor|mesh-point|p2p-(?:client|go|device)|ocb|nan)\b/dgv,name:"constant.language"}]},variables:{patterns:[{captures:{"1":{name:"punctuation.definition.variable.systemd"},"2":{name:"variable.other"}},match:/(\$)([0-9A-Z_a-z]+)\b/dgv},{captures:{"1":{name:"punctuation.definition.variable.systemd"},"2":{name:"variable.other"},"3":{name:"punctuation.definition.variable.systemd"}},match:/(\$\{)([0-9A-Z_a-z]+)(\})/dgv},{match:/%%/dgv,name:"constant.other.placeholder"},{match:/%[ABCEG-JLMNPS-Wabf-jl-ps-w]\b/dgv,name:"constant.other.placeholder"}]}},scopeName:"source.systemd",embeddedLangs:undefined,aliases:undefined})
|
|
4
4
|
|
|
5
5
|
export default [
|
|
6
6
|
lang
|
package/dist/talonscript.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze({displayName:"TalonScript",name:"talonscript",patterns:[{include:"#body-header"},{include:"#header"},{include:"#body-noheader"},{include:"#comment"},{include:"#settings"}],repository:{action:{begin:/([
|
|
1
|
+
const lang = Object.freeze({displayName:"TalonScript",name:"talonscript",patterns:[{include:"#body-header"},{include:"#header"},{include:"#body-noheader"},{include:"#comment"},{include:"#settings"}],repository:{action:{begin:/([\.0-9A-Z_a-z]+)(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.talon",patterns:[{match:/\./dgv,name:"punctuation.separator.talon"}]},"2":{name:"punctuation.definition.parameters.begin.talon"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.talon"}},name:"variable.parameter.talon",patterns:[{include:"#action"},{include:"#qstring-long"},{include:"#qstring"},{include:"#argsep"},{include:"#number"},{include:"#operator"},{include:"#varname"}]},"action-gamepad":{captures:{"2":{name:"punctuation.definition.parameters.begin.talon"},"3":{name:"variable.parameter.talon",patterns:[{include:"#key-mods"}]},"4":{name:"punctuation.definition.parameters.key.talon"}},match:/(deck|gamepad|action|face|parrot)(\()([^\n]*)(\))/dgv,name:"entity.name.function.talon"},"action-key":{captures:{"1":{name:"punctuation.definition.parameters.begin.talon"},"2":{name:"variable.parameter.talon",patterns:[{include:"#key-prefixes"},{include:"#key-mods"},{include:"#keystring"}]},"3":{name:"punctuation.definition.parameters.key.talon"}},match:/key(\()([^\n]*)(\))/dgv,name:"entity.name.function.talon"},argsep:{match:/,/dgv,name:"punctuation.separator.talon"},assignment:{begin:/(\P{space}*)(\p{space}?=\p{space}?)/dgv,beginCaptures:{"1":{name:"variable.other.talon"},"2":{name:"keyword.operator.talon"}},end:/\n/dgv,patterns:[{include:"#comment"},{include:"#expression"}]},"body-header":{begin:/^-(?=\n?$)/dgv,end:/(?=not)possible/dgv,patterns:[{include:"#body-noheader"}]},"body-noheader":{patterns:[{include:"#comment"},{include:"#other-rule-definition"},{include:"#speech-rule-definition"}]},capture:{match:/(<[\.0-9A-Z_a-z]+>)/dgv,name:"variable.parameter.talon"},comment:{match:/(\p{space}*#[^\n]*)(?=\n?$)/dgv,name:"comment.line.number-sign.talon"},context:{captures:{"1":{name:"entity.name.tag.talon",patterns:[{match:/(and |or )/dgv,name:"keyword.operator.talon"}]},"2":{name:"entity.name.type.talon",patterns:[{include:"#comment"},{include:"#regexp"}]}},match:/([^\n]*): ([^\n]*)/dgv},expression:{patterns:[{include:"#qstring-long"},{include:"#action-key"},{include:"#action"},{include:"#operator"},{include:"#number"},{include:"#qstring"},{include:"#varname"}]},fstring:{captures:{"1":{patterns:[{include:"#action"},{include:"#operator"},{include:"#number"},{include:"#varname"},{include:"#qstring"}]}},match:/\{([^\n]+?)\}/dgv,name:"constant.character.format.placeholder.talon"},header:{begin:/(?=(?:^app|title|os|tag|list|language):)/dgv,end:/(?=^-(?=\n?$))/dgv,patterns:[{include:"#comment"},{include:"#context"}]},"key-mods":{captures:{"1":{name:"keyword.operator.talon"},"2":{name:"keyword.control.talon"}},match:/(:)(up|down|change|repeat|start|stop|\p{Nd}+)/dgv,name:"keyword.operator.talon"},"key-prefixes":{captures:{"1":{name:"keyword.control.talon"},"2":{name:"keyword.operator.talon"}},match:/(ctrl|shift|cmd|alt|win|super)(-)/dgv},keystring:{begin:/(["'])/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.talon"}},end:/((?!))|(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.talon"}},name:"string.quoted.double.talon",patterns:[{include:"#string-body"},{include:"#key-mods"},{include:"#key-prefixes"}]},list:{match:/(\{[\.0-9A-Z_a-z]+?\})/dgv,name:"string.interpolated.talon"},number:{match:/(?<=\b)\p{Nd}+(\.\p{Nd}+)?/dgv,name:"constant.numeric.talon"},operator:{match:/\p{space}([\-\*\+\/]|or)\p{space}/dgv,name:"keyword.operator.talon"},"other-rule-definition":{begin:/^([a-z]+\([^\n]*[^\-]\)|[a-z]+\([^\n]*--\)|[a-z]+\(-\)|[a-z]+\(\)):/dgv,beginCaptures:{"1":{name:"entity.name.tag.talon",patterns:[{include:"#action-key"},{include:"#action-gamepad"},{include:"#rule-specials"}]}},end:/(?=^[^\#\p{space}])/dgv,patterns:[{include:"#statement"}]},qstring:{begin:/(["'])/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.talon"}},end:/((?!))|(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.talon"}},name:"string.quoted.double.talon",patterns:[{include:"#string-body"}]},"qstring-long":{begin:/("""|''')/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.talon"}},end:/((?!))/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.talon"}},name:"string.quoted.triple.talon",patterns:[{include:"#string-body"}]},regexp:{begin:/(\/)/dgv,end:/(\/)/dgv,name:"string.regexp.talon",patterns:[{match:/\./dgv,name:"support.other.match.any.regexp"},{match:/\$/dgv,name:"support.other.match.end.regexp"},{match:/\^/dgv,name:"support.other.match.begin.regexp"},{match:/\\[\$\*\+\.\?\^]/dgv,name:"constant.character.escape.talon"},{match:/\[(\\\]|[^\]])*\]/dgv,name:"constant.other.set.regexp"},{match:/[\*\+\?]/dgv,name:"keyword.operator.quantifier.regexp"}]},"rule-specials":{captures:{"1":{name:"entity.name.function.talon"},"2":{name:"punctuation.definition.parameters.begin.talon"},"3":{name:"punctuation.definition.parameters.end.talon"}},match:/(settings|tag)(\()(\))/dgv},"speech-rule-definition":{begin:/^([^\n]*?):/dgv,beginCaptures:{"1":{name:"entity.name.tag.talon",patterns:[{match:/^\^/dgv,name:"string.regexp.talon"},{match:/\$(?=\n?$)/dgv,name:"string.regexp.talon"},{match:/\(/dgv,name:"punctuation.definition.parameters.begin.talon"},{match:/\)/dgv,name:"punctuation.definition.parameters.end.talon"},{match:/\|/dgv,name:"punctuation.separator.talon"},{include:"#capture"},{include:"#list"}]}},end:/(?=^[^\#\p{space}])/dgv,patterns:[{include:"#statement"}]},statement:{patterns:[{include:"#comment"},{include:"#qstring-long"},{include:"#action-key"},{include:"#action"},{include:"#qstring"},{include:"#assignment"}]},"string-body":{patterns:[{match:/\{\{|\}\}/dgv,name:"string.quoted.double.talon"},{match:/\\["'\\nrt]/dgv,name:"constant.character.escape.python"},{include:"#fstring"}]},varname:{captures:{"2":{name:"constant.numeric.talon",patterns:[{match:/_/dgv,name:"keyword.operator.talon"}]}},match:/([\.0-9A-Z_a-z])(_(list|\p{Nd}+))?/dgv,name:"variable.parameter.talon"}},scopeName:"source.talon",embeddedLangs:undefined,aliases:["talon"]})
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/tasl.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze({displayName:"Tasl",fileTypes:["tasl"],name:"tasl",patterns:[{include:"#comment"},{include:"#namespace"},{include:"#type"},{include:"#class"},{include:"#edge"}],repository:{class:{begin:/^\p{space}*(class)\b/dgv,beginCaptures:{"1":{name:"keyword.control.tasl.class"}},end:/(?=\n?$)/dgv,patterns:[{include:"#key"},{include:"#export"},{include:"#expression"}]},comment:{captures:{"1":{name:"punctuation.definition.comment.tasl"}},match:/(#)[^\n]*(?=\n?$)/dgv,name:"comment.line.number-sign.tasl"},component:{begin:/->/dgv,beginCaptures:{"0":{name:"punctuation.separator.tasl.component"}},end:/(?=\n?$)/dgv,patterns:[{include:"#expression"}]},coproduct:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.tasl.coproduct"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.block.tasl.coproduct"}},patterns:[{include:"#comment"},{include:"#term"},{include:"#option"}]},datatype:{match:/[
|
|
1
|
+
const lang = Object.freeze({displayName:"Tasl",fileTypes:["tasl"],name:"tasl",patterns:[{include:"#comment"},{include:"#namespace"},{include:"#type"},{include:"#class"},{include:"#edge"}],repository:{class:{begin:/^\p{space}*(class)\b/dgv,beginCaptures:{"1":{name:"keyword.control.tasl.class"}},end:/(?=\n?$)/dgv,patterns:[{include:"#key"},{include:"#export"},{include:"#expression"}]},comment:{captures:{"1":{name:"punctuation.definition.comment.tasl"}},match:/(#)[^\n]*(?=\n?$)/dgv,name:"comment.line.number-sign.tasl"},component:{begin:/->/dgv,beginCaptures:{"0":{name:"punctuation.separator.tasl.component"}},end:/(?=\n?$)/dgv,patterns:[{include:"#expression"}]},coproduct:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.tasl.coproduct"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.block.tasl.coproduct"}},patterns:[{include:"#comment"},{include:"#term"},{include:"#option"}]},datatype:{match:/[A-Za-z][0-9A-Za-z]*:(?:[\!\$\&-\;\=\?-Z_a-z\~]|%\p{AHex}{2})+/dgv,name:"string.regexp"},edge:{begin:/^\p{space}*(edge)\b/dgv,beginCaptures:{"1":{name:"keyword.control.tasl.edge"}},end:/(?=\n?$)/dgv,patterns:[{include:"#key"},{include:"#export"},{match:/=\//dgv,name:"punctuation.separator.tasl.edge.source"},{match:/\/=>/dgv,name:"punctuation.separator.tasl.edge.target"},{match:/=>/dgv,name:"punctuation.separator.tasl.edge"},{include:"#expression"}]},export:{match:/::/dgv,name:"keyword.operator.tasl.export"},expression:{patterns:[{include:"#literal"},{include:"#uri"},{include:"#product"},{include:"#coproduct"},{include:"#reference"},{include:"#optional"},{include:"#identifier"}]},identifier:{captures:{"1":{name:"variable"}},match:/([A-Za-z][0-9A-Za-z]*)\b/dgv},key:{match:/[A-Za-z][0-9A-Za-z]*:(?:[\!\$\&-\;\=\?-Z_a-z\~]|%\p{AHex}{2})+/dgv,name:"markup.bold entity.name.class"},literal:{patterns:[{include:"#datatype"}]},namespace:{captures:{"1":{name:"keyword.control.tasl.namespace"},"2":{patterns:[{include:"#namespaceURI"},{match:/[A-Za-z][0-9A-Za-z]*\b/dgv,name:"entity.name"}]}},match:/^\p{space}*(namespace)\b([^\n]*)/dgv},namespaceURI:{match:/[a-z]+:[\]\!\#-\;\=\?-\[_a-z\~]+/dgv,name:"markup.underline.link"},option:{begin:/<-/dgv,beginCaptures:{"0":{name:"punctuation.separator.tasl.option"}},end:/(?=\n?$)/dgv,patterns:[{include:"#expression"}]},optional:{begin:/\?/dgv,beginCaptures:{"0":{name:"keyword.operator"}},end:/(?=\n?$)/dgv,patterns:[{include:"#expression"}]},product:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.tasl.product"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.block.tasl.product"}},patterns:[{include:"#comment"},{include:"#term"},{include:"#component"}]},reference:{captures:{"1":{name:"markup.bold keyword.operator"},"2":{patterns:[{include:"#key"}]}},match:/(\*)\p{space}*([^\n]*)/dgv},term:{match:/[A-Za-z][0-9A-Za-z]*:(?:[\!\$\&-\;\=\?-Z_a-z\~]|%\p{AHex}{2})+/dgv,name:"entity.other.tasl.key"},type:{begin:/^\p{space}*(type)\b/dgv,beginCaptures:{"1":{name:"keyword.control.tasl.type"}},end:/(?=\n?$)/dgv,patterns:[{include:"#expression"}]},uri:{match:/<>/dgv,name:"variable.other.constant"}},scopeName:"source.tasl",embeddedLangs:undefined,aliases:undefined})
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/tcl.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze({displayName:"Tcl",fileTypes:["tcl"],foldingStartMarker:/\{\p{space}*(?=\n?$)/dgv,foldingStopMarker:/^\p{space}*\}/dgv,name:"tcl",patterns:[{begin:/(?<=^|;)\p{space}*((#))/dgv,beginCaptures:{"1":{name:"comment.line.number-sign.tcl"},"2":{name:"punctuation.definition.comment.tcl"}},contentName:"comment.line.number-sign.tcl",end:/\n/dgv,patterns:[{match:/(\\[
|
|
1
|
+
const lang = Object.freeze({displayName:"Tcl",fileTypes:["tcl"],foldingStartMarker:/\{\p{space}*(?=\n?$)/dgv,foldingStopMarker:/^\p{space}*\}/dgv,name:"tcl",patterns:[{begin:/(?<=^|;)\p{space}*((#))/dgv,beginCaptures:{"1":{name:"comment.line.number-sign.tcl"},"2":{name:"punctuation.definition.comment.tcl"}},contentName:"comment.line.number-sign.tcl",end:/\n/dgv,patterns:[{match:/(\\[\n\\])/dgv}]},{captures:{"1":{name:"keyword.control.tcl"}},match:/(?<=^|[\;\[\{])\p{space}*(if|while|for|catch|default|return|break|continue|switch|exit|foreach|try|throw)\b/dgv},{captures:{"1":{name:"keyword.control.tcl"}},match:/(?<=^|\})\p{space}*(then|elseif|else)\b/dgv},{captures:{"1":{name:"keyword.other.tcl"},"2":{name:"entity.name.function.tcl"}},match:/(?<=^|\{)\p{space}*(proc)\p{space}+(\P{space}+)/dgv},{captures:{"1":{name:"keyword.other.tcl"}},match:/(?<=^|[\;\[\{])\p{space}*(after|append|array|auto_execok|auto_import|auto_load|auto_mkindex|auto_mkindex_old|auto_qualify|auto_reset|bgerror|binary|cd|clock|close|concat|dde|encoding|eof|error|eval|exec|expr|fblocked|fconfigure|fcopy|file|fileevent|filename|flush|format|gets|glob|global|history|http|incr|info|interp|join|lappend|library|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|memory|msgcat|namespace|open|package|parray|pid|pkg::create|pkg_mkIndex|proc|puts|pwd|re_syntax|read|registry|rename|resource|scan|seek|set|socket|SafeBase|source|split|string|subst|Tcl|tcl_endOfWord|tcl_findLibrary|tcl_startOfNextWord|tcl_startOfPreviousWord|tcl_wordBreakAfter|tcl_wordBreakBefore|tcltest|tclvars|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait)\b/dgv},{begin:/(?<=^|[\;\[\{])\p{space}*(reg(?:exp|sub))\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.other.tcl"}},end:/[\]\n\;]/dgv,patterns:[{match:/\\(?:[^\n]|\n)/dgv,name:"constant.character.escape.tcl"},{match:/-[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*/dgv},{applyEndPatternLast:1,begin:/--\p{space}*/dgv,end:"",patterns:[{include:"#regexp"}]},{include:"#regexp"}]},{include:"#escape"},{include:"#variable"},{include:"#operator"},{include:"#numeric"},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.tcl"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.tcl"}},name:"string.quoted.double.tcl",patterns:[{include:"#escape"},{include:"#variable"},{include:"#embedded"}]}],repository:{"bare-string":{begin:/(?:^|(?<=\p{space}))"/dgv,end:/"([^\]\p{space}]*)/dgv,endCaptures:{"1":{name:"invalid.illegal.tcl"}},patterns:[{include:"#escape"},{include:"#variable"}]},braces:{begin:/(?:^|(?<=\p{space}))\{/dgv,end:/\}([^\]\p{space}]*)/dgv,endCaptures:{"1":{name:"invalid.illegal.tcl"}},patterns:[{match:/\\[\n\{\}]/dgv,name:"constant.character.escape.tcl"},{include:"#inner-braces"}]},embedded:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.section.embedded.begin.tcl"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.section.embedded.end.tcl"}},name:"source.tcl.embedded",patterns:[{include:"source.tcl"}]},escape:{match:/\\(\p{Nd}{1,3}|x\p{AHex}+|u\p{AHex}{1,4}|[^\n]|\n)/dgv,name:"constant.character.escape.tcl"},"inner-braces":{begin:/\{/dgv,end:/\}/dgv,patterns:[{match:/\\[\n\{\}]/dgv,name:"constant.character.escape.tcl"},{include:"#inner-braces"}]},numeric:{match:/(?<![A-Za-z])([\-\+]?([0-9]*\.)?[0-9]+f?)(?![\.A-Za-z])/dgv,name:"constant.numeric.tcl"},operator:{match:/(?<=[ \p{Nd}])([\-\+\~]|&{1,2}|\|{1,2}|<{1,2}|>{1,2}|\*{1,2}|[\!\%\/]|<=|>=|={1,2}|!=|\^)(?=[ \p{Nd}])/dgv,name:"keyword.operator.tcl"},regexp:{begin:/(?=\P{space})(?![\]\n\;])/dgv,end:/(?=[\]\n\;])/dgv,patterns:[{begin:/(?=[^\t\n \;])/dgv,end:/(?=[\t\n \;])/dgv,name:"string.regexp.tcl",patterns:[{include:"#braces"},{include:"#bare-string"},{include:"#escape"},{include:"#variable"}]},{begin:/[\t ]/dgv,end:/(?=[\]\n\;])/dgv,patterns:[{include:"#variable"},{include:"#embedded"},{include:"#escape"},{include:"#braces"},{include:"#string"}]}]},string:{applyEndPatternLast:1,begin:/(?:^|(?<=\p{space}))(?=")/dgv,end:"",name:"string.quoted.double.tcl",patterns:[{include:"#bare-string"}]},variable:{captures:{"1":{name:"punctuation.definition.variable.tcl"}},match:/(\$)((?:[0-9A-Z_a-z]|::)+(\([^\)]+\))?|\{[^\}]*\})/dgv,name:"support.function.tcl"}},scopeName:"source.tcl",embeddedLangs:undefined,aliases:undefined})
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|