github-linguist 7.6.1 → 7.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +5 -5
  2. data/bin/github-linguist +17 -4
  3. data/grammars/annotation.liquidhaskell.haskell.json +11 -11
  4. data/grammars/etc.json +212 -3
  5. data/grammars/hidden.manref.json +29 -0
  6. data/grammars/hint.haskell.json +11 -11
  7. data/grammars/hint.message.haskell.json +11 -11
  8. data/grammars/hint.type.haskell.json +11 -11
  9. data/grammars/injections.etc.json +601 -1
  10. data/grammars/source.abap.json +7 -7
  11. data/grammars/source.abnf.json +23 -1
  12. data/grammars/source.ahk.json +3 -3
  13. data/grammars/source.angelscript.json +1 -1
  14. data/grammars/source.ballerina.json +54 -18
  15. data/grammars/source.csound.json +1 -1
  16. data/grammars/source.css.json +2 -2
  17. data/grammars/source.css.scss.json +164 -15
  18. data/grammars/source.curlrc.json +869 -65
  19. data/grammars/source.dart.json +1 -1
  20. data/grammars/source.dircolors.json +39 -0
  21. data/grammars/source.direct-x.json +135 -0
  22. data/grammars/source.ebnf.json +67 -39
  23. data/grammars/source.elixir.json +43 -0
  24. data/grammars/source.gfm.json +1 -1
  25. data/grammars/source.gitconfig.json +1 -1
  26. data/grammars/source.hack.json +196 -80
  27. data/grammars/source.haskell.json +11 -11
  28. data/grammars/source.hosts.json +40 -0
  29. data/grammars/source.hsig.json +11 -11
  30. data/grammars/source.igor.json +2 -2
  31. data/grammars/source.ini.npmrc.json +311 -0
  32. data/grammars/source.inno.json +133 -0
  33. data/grammars/source.inputrc.json +500 -0
  34. data/grammars/source.js.json +4 -4
  35. data/grammars/source.julia.json +45 -3
  36. data/grammars/source.kotlin.json +1 -1
  37. data/grammars/source.lex.json +4 -4
  38. data/grammars/source.m4.json +141 -99
  39. data/grammars/source.man-conf.json +46 -34
  40. data/grammars/source.matlab.json +225 -35
  41. data/grammars/source.mcfunction-snapshot.json +21388 -561
  42. data/grammars/source.mcfunction.json +55 -5
  43. data/grammars/source.mlir.json +37 -317
  44. data/grammars/source.mrc.json +858 -0
  45. data/grammars/source.opts.json +12 -2
  46. data/grammars/source.p4.json +21 -5
  47. data/grammars/source.prisma.json +428 -0
  48. data/grammars/source.python.json +2 -0
  49. data/grammars/source.reason.json +28 -16
  50. data/grammars/source.rego.json +124 -0
  51. data/grammars/source.sass.json +158 -3
  52. data/grammars/source.scala.json +26 -15
  53. data/grammars/source.ssh-config.json +1 -14
  54. data/grammars/source.swift.json +162 -2
  55. data/grammars/source.ts.json +74 -25
  56. data/grammars/source.tsx.json +75 -26
  57. data/grammars/source.v.json +58 -16
  58. data/grammars/source.vim-snippet.json +645 -0
  59. data/grammars/source.viml.json +5 -5
  60. data/grammars/source.wgetrc.json +1640 -0
  61. data/grammars/source.zig.json +169 -304
  62. data/grammars/text.html.php.blade.json +1 -1
  63. data/grammars/text.html.riot.json +788 -0
  64. data/grammars/text.muse.json +1471 -0
  65. data/grammars/text.tex.latex.haskell.json +11 -11
  66. data/grammars/text.vim-help.json +383 -0
  67. data/grammars/version +1 -1
  68. data/lib/linguist/VERSION +1 -1
  69. data/lib/linguist/blob_helper.rb +4 -2
  70. data/lib/linguist/generated.rb +39 -12
  71. data/lib/linguist/heuristics.yml +16 -1
  72. data/lib/linguist/languages.json +1 -1
  73. data/lib/linguist/languages.yml +183 -14
  74. data/lib/linguist/linguist.bundle +0 -0
  75. data/lib/linguist/samples.json +6910 -536
  76. data/lib/linguist/vendor.yml +6 -0
  77. metadata +18 -5
  78. data/grammars/source.jlex.json +0 -322
@@ -253,15 +253,15 @@
253
253
  ]
254
254
  },
255
255
  "arithmetic_operator": {
256
- "name": "keyword.operator.arithmetic.abap",
257
- "match": "(?\u003c=\\s)(\\+|\\-|\\*|\\*\\*|/|%)(?=\\s)"
256
+ "name": "keyword.operator.abap",
257
+ "match": "(?i)(?\u003c=\\s)(\\+|\\-|\\*|\\*\\*|/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\s)"
258
258
  },
259
259
  "builtin_functions": {
260
260
  "name": "entity.name.function.builtin.abap",
261
261
  "match": "(?ix)(?\u003c=\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\()"
262
262
  },
263
263
  "comparison_operator": {
264
- "name": "keyword.operator.comparison.abap",
264
+ "name": "keyword.operator.abap",
265
265
  "match": "(?i)(?\u003c=\\s)(\u003c|\u003e|\u003c\\=|\u003e\\=|\\=|\u003c\u003e|eq|ne|lt|le|gt|ge|cs|cp)(?=\\s)"
266
266
  },
267
267
  "control_keywords": {
@@ -296,12 +296,12 @@
296
296
  }
297
297
  },
298
298
  "logical_operator": {
299
- "name": "keyword.operator.arithmetic.abap",
299
+ "name": "keyword.operator.abap",
300
300
  "match": "(?i)(?\u003c=\\s)(not|or|and)(?=\\s)"
301
301
  },
302
302
  "main_keywords": {
303
303
  "name": "keyword.control.simple.abap",
304
- "match": "(?ix)(?\u003c=^|\\s)(\n\t abstract|add|add-corresponding|adjacent|alias|aliases|all|append|appending|ascending|as|assert|assign|assigned|assigning|association|authority-check|\n\t back|begin|binary|block|bound|break-point|by|byte|\n\t call|cast|changing|check|class-data|class-method|class-methods|clear|close|cnt|collect|commit|cond|character|\n\t corresponding|communication|component|compute|concatenate|condense|constants|conv|count|\n\t controls|convert|create|currency|\n\t data|descending|default|define|deferred|delete|describe|detail|display|divide|divide-corresponding|display-mode|duplicates|\n\t deleting|\n\t editor-call|end|endexec|endfunction|ending|endmodule|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|exit-command|\n\t endprovide|endselect|endtry|endwhile|enum|event|events|exec|exit|export|\n\t exporting|extract|exception|exceptions|\n\t field-symbols|field-groups|field|first|fetch|fields|format|frame|free|from|function|find|for|found|function-pool|\n\t generate|get|\n\t handle|hide|hashed|\n\t include|import|importing|index|infotypes|initial|initialization|\n\t id|is|in|interface|interfaces|input|insert|instance|into|\n\t\t\tkey|\n\t left-justified|leave|like|line|line-count|line-size|load|local|log-point|length|left|leading|lower|\n\t matchcode|method|mesh|message|message-id|methods|modify|module|move|move-corresponding|multiply|multiply-corresponding|match|\n\t\t\tnew|new-line|new-page|new-section|no|no-gap|no-gaps|no-sign|no-zero|non-unique|number|\n\t occurrence|object|obligatory|of|output|overlay|optional|others|occurrences|occurs|offset|options|\n\t pack|parameters|perform|places|position|print-control|private|program|protected|provide|public|put|\n\t radiobutton|raising|ranges|receive|receiving|redefinition|reference|refresh|regex|reject|results|requested|\n\t ref|replace|report|reserve|restore|result|return|returning|right-justified|rollback|read|read-only|rp-provide-from-last|run|\n\t scan|screen|scroll|search|select|select-options|selection-screen|stamp|source|subkey|\n\t separated|set|shift|single|skip|sort|sorted|split|standard|stamp|starting|start-of-selection|sum|subtract-corresponding|statics|step|stop|structure|submatches|submit|subtract|summary|supplied|suppress|section|syntax-check|syntax-trace|system-call|switch|\n\t tables|table|task|testing|test-seam|test-injection|then|time|times|title|titlebar|to|top-of-page|trailing|transfer|transformation|translate|transporting|types|type|type-pool|type-pools|\n\t unassign|unique|uline|unpack|update|upper|using|\n\t value|\n\t when|while|window|write|where|with|work|\n\t\txml)(?=\\s|\\.|:|,)"
304
+ "match": "(?ix)(?\u003c=^|\\s)(\n\t abstract|add|add-corresponding|adjacent|alias|aliases|all|append|appending|ascending|as|assert|assign|assigned|assigning|association|authority-check|\n\t back|begin|binary|block|bound|break-point|by|byte|\n\t call|cast|changing|check|class-data|class-method|class-methods|class-pool|clear|close|cnt|collect|commit|cond|character|\n\t corresponding|communication|component|compute|concatenate|condense|constants|conv|count|\n\t controls|convert|create|currency|\n\t data|descending|default|define|deferred|delete|describe|destination|detail|display|divide|divide-corresponding|display-mode|duplicates|\n\t deleting|\n\t editor-call|empty|end|endexec|endfunction|ending|endmodule|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|exit-command|\n\t endprovide|endselect|endtry|endwhile|enum|event|events|exec|exit|export|\n\t exporting|extract|exception|exceptions|\n\t field-symbols|field-groups|field|first|fetch|fields|format|frame|free|from|function|find|for|found|function-pool|\n\t generate|get|\n\t handle|hide|hashed|header|\n\t include|import|importing|index|infotypes|initial|initialization|\n\t id|implemented|is|in|interface|interfaces|interface-pool|init|input|insert|instance|into|\n\t\t\tkey|\n\t left-justified|leave|like|line|line-count|line-size|load|local|log-point|length|left|leading|lower|\n\t matchcode|method|mesh|message|message-id|methods|modify|module|move|move-corresponding|multiply|multiply-corresponding|match|\n\t\t\tnew|new-line|new-page|new-section|next|no|no-gap|no-gaps|no-sign|no-zero|non-unique|number|\n\t occurrence|object|obligatory|of|output|overlay|optional|others|occurrences|occurs|offset|options|\n\t pack|parameters|partially|perform|places|position|print-control|private|program|protected|provide|public|put|\n\t radiobutton|raising|range|ranges|receive|receiving|redefinition|reduce|reference|refresh|regex|reject|results|requested|\n\t ref|replace|report|reserve|restore|result|return|returning|right-justified|rollback|read|read-only|rp-provide-from-last|run|\n\t scan|screen|scroll|search|select|select-options|selection-screen|stamp|source|subkey|\n\t separated|set|shift|single|skip|sort|sorted|split|standard|stamp|starting|start-of-selection|sum|subtract-corresponding|statics|step|stop|structure|submatches|submit|subtract|summary|supplied|suppress|section|syntax-check|syntax-trace|system-call|switch|\n\t tables|table|task|testing|test-seam|test-injection|then|time|times|title|titlebar|to|top-of-page|trailing|transfer|transformation|translate|transporting|types|type|type-pool|type-pools|\n\t unassign|unique|uline|unpack|update|upper|using|\n\t value|\n\t when|while|window|write|where|with|work|\n\t\txml)(?=\\s|\\.|:|,)"
305
305
  },
306
306
  "operators": {
307
307
  "patterns": [
@@ -320,8 +320,8 @@
320
320
  ]
321
321
  },
322
322
  "other_operator": {
323
- "name": "keyword.operator.other.abap",
324
- "match": "\\s(\u0026\u0026|\\?\\=)\\s"
323
+ "name": "keyword.operator.abap",
324
+ "match": "(?\u003c=\\s)(\u0026\u0026|\\?=|\\+=|-=|\\/=|\\*=|\u0026\u0026=)(?=\\s)"
325
325
  },
326
326
  "reserved_names": {
327
327
  "name": "constant.language.abap",
@@ -13,6 +13,10 @@
13
13
  "name": "keyword.operator.assignment.increment.abnf",
14
14
  "match": "=/"
15
15
  },
16
+ {
17
+ "name": "keyword.operator.assignment.colon.non-standard.abnf",
18
+ "match": ":+="
19
+ },
16
20
  {
17
21
  "name": "keyword.operator.assignment.abnf",
18
22
  "match": "="
@@ -31,7 +35,7 @@
31
35
  },
32
36
  "core-rules": {
33
37
  "name": "support.constant.reference.core-rule.abnf",
34
- "match": "(?x)\n\\b\n(ALPHA|BIT|CHAR|CRLF|CR|CTL|DIGIT|DQUOTE\n|HEXDIG|HTAB|LF|LWSP|OCTET|SP|VCHAR|WSP)\n\\b"
38
+ "match": "(?x)\n\\b (?\u003c!-)\n(ALPHA|BIT|CHAR|CRLF|CR|CTL|DIGIT|DQUOTE\n|HEXDIG|HTAB|LF|LWSP|OCTET|SP|VCHAR|WSP)\n\\b (?!-)"
35
39
  },
36
40
  "group": {
37
41
  "name": "meta.group.abnf",
@@ -83,6 +87,21 @@
83
87
  }
84
88
  }
85
89
  },
90
+ "prose": {
91
+ "name": "string.other.prose.abnf",
92
+ "begin": "\u003c",
93
+ "end": "\u003e",
94
+ "beginCaptures": {
95
+ "0": {
96
+ "name": "punctuation.definition.string.begin.abnf"
97
+ }
98
+ },
99
+ "endCaptures": {
100
+ "0": {
101
+ "name": "punctuation.definition.string.end.abnf"
102
+ }
103
+ }
104
+ },
86
105
  "quantifier": {
87
106
  "name": "meta.quantifier.abnf",
88
107
  "match": "([0-9]*)(\\*)",
@@ -128,6 +147,9 @@
128
147
  {
129
148
  "include": "#reference"
130
149
  },
150
+ {
151
+ "include": "#prose"
152
+ },
131
153
  {
132
154
  "name": "keyword.operator.logical.or.alternation.pipe.abnf",
133
155
  "match": "/"
@@ -16,8 +16,8 @@
16
16
  },
17
17
  {
18
18
  "name": "comment.block.ahk",
19
- "begin": "^/\\*",
20
- "end": "^\\*/"
19
+ "begin": "^\\s*/\\*",
20
+ "end": "^\\s*\\*/"
21
21
  },
22
22
  {
23
23
  "name": "functionline.ahk",
@@ -60,7 +60,7 @@
60
60
  },
61
61
  {
62
62
  "name": "hotkeyline.ahk",
63
- "match": "^\\s*(.+)(::)",
63
+ "match": "^\\s*(\\S+(?:\\s+\u0026\\s+\\S+)*)(::)",
64
64
  "captures": {
65
65
  "1": {
66
66
  "name": "entity.name.function.label.ahk"
@@ -100,7 +100,7 @@
100
100
  },
101
101
  {
102
102
  "name": "storage.modifier.angelscript",
103
- "match": "\\b(get|in|inout|out|override|explicit|set|private|public|protected|const|default|final|shared|external|mixin|abstract)\\b"
103
+ "match": "\\b(get|in|inout|out|override|explicit|set|private|public|protected|const|default|final|shared|external|mixin|abstract|property)\\b"
104
104
  },
105
105
  {
106
106
  "name": "storage.type.angelscript",
@@ -207,6 +207,9 @@
207
207
  {
208
208
  "include": "#comment"
209
209
  },
210
+ {
211
+ "include": "#annotationAttachment"
212
+ },
210
213
  {
211
214
  "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
212
215
  },
@@ -384,7 +387,7 @@
384
387
  "patterns": [
385
388
  {
386
389
  "begin": "\\bfunction\\b",
387
- "end": "\\}|(?=;)",
390
+ "end": "\\}|(?=;|=)",
388
391
  "patterns": [
389
392
  {
390
393
  "include": "#functionParameters"
@@ -473,7 +476,7 @@
473
476
  "patterns": [
474
477
  {
475
478
  "begin": "\\breturns\\b",
476
- "end": "(?=\\{|;|,)",
479
+ "end": "(?=\\{|;|,|=)",
477
480
  "patterns": [
478
481
  {
479
482
  "include": "#record"
@@ -481,6 +484,9 @@
481
484
  {
482
485
  "include": "#objectDec"
483
486
  },
487
+ {
488
+ "include": "#tupleType"
489
+ },
484
490
  {
485
491
  "name": "storage.type.ballerina",
486
492
  "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
@@ -581,10 +587,10 @@
581
587
  "patterns": [
582
588
  {
583
589
  "begin": "\\breturns\\b",
584
- "end": "(?=\\,)",
590
+ "end": "(?=\\,)|(?:\\|)|(?=\\])|(?=\\))",
585
591
  "patterns": [
586
592
  {
587
- "include": "#parameter"
593
+ "include": "#functionTypeReturnsParameter"
588
594
  },
589
595
  {
590
596
  "include": "#comment"
@@ -598,11 +604,51 @@
598
604
  }
599
605
  ]
600
606
  },
607
+ "functionTypeReturnsParameter": {
608
+ "patterns": [
609
+ {
610
+ "begin": "((?=record|object|function)|(?:(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)))",
611
+ "end": "(?=\\,)|(?:\\|)|(?:\\:)|(?==\u003e)|(?=\\))|(?=\\])",
612
+ "patterns": [
613
+ {
614
+ "include": "#record"
615
+ },
616
+ {
617
+ "include": "#objectDec"
618
+ },
619
+ {
620
+ "include": "#functionType"
621
+ },
622
+ {
623
+ "include": "#constrainType"
624
+ },
625
+ {
626
+ "include": "#defaultValue"
627
+ },
628
+ {
629
+ "include": "#comment"
630
+ },
631
+ {
632
+ "include": "#parameterTuple"
633
+ },
634
+ {
635
+ "name": "variable.parameter.ballerina",
636
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
637
+ }
638
+ ],
639
+ "beginCaptures": {
640
+ "0": {
641
+ "name": "storage.type.ballerina"
642
+ }
643
+ }
644
+ }
645
+ ]
646
+ },
601
647
  "functionTypeType": {
602
648
  "patterns": [
603
649
  {
604
650
  "begin": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)",
605
- "end": "(?:\\,)|(?:\\|)|(?=\\])|(?=\\))",
651
+ "end": "(?=\\,)|(?:\\|)|(?=\\])|(?=\\))",
606
652
  "beginCaptures": {
607
653
  "0": {
608
654
  "name": "storage.type.ballerina"
@@ -619,7 +665,7 @@
619
665
  },
620
666
  {
621
667
  "name": "keyword.other.ballerina",
622
- "match": "\\b(import|version|public|private|attach|as|native|handle|documentation|lock|new|record|limit|ascending|descending|check|checkpanic|panic|trap|start|done|untainted|tainted|onretry|oncommit|onabort|scope|compensate|compensation|primarykey|channel|abstract|extern|final|listener|remote|client|is|__init)\\b"
668
+ "match": "\\b(import|version|public|private|attach|as|native|handle|documentation|lock|new|record|limit|ascending|descending|check|checkpanic|panic|trap|start|flush|done|untainted|tainted|onretry|committed|aborted|scope|compensate|compensation|primarykey|channel|abstract|extern|final|listener|remote|client|is|__init)\\b"
623
669
  },
624
670
  {
625
671
  "name": "keyword.other.siddhi.ballerina",
@@ -635,7 +681,7 @@
635
681
  },
636
682
  {
637
683
  "name": "keyword.operator.ballerina",
638
- "match": "(!|%|\\+|\\-|~=|==|=|!=|\u003c|\u003e|\u0026\u0026|\\|\\||\\?:|\\.\\.\\.)"
684
+ "match": "(!|%|\\+|\\-|~=|==|=|!=|\u003c|\u003e|\u0026|\\||\\?:|\\.\\.\\.)"
639
685
  },
640
686
  {
641
687
  "include": "#types"
@@ -667,17 +713,7 @@
667
713
  {
668
714
  "include": "#code"
669
715
  }
670
- ],
671
- "beginCaptures": {
672
- "0": {
673
- "name": "punctuation.definition.string.begin.ballerina"
674
- }
675
- },
676
- "endCaptures": {
677
- "0": {
678
- "name": "punctuation.definition.string.end.ballerina"
679
- }
680
- }
716
+ ]
681
717
  }
682
718
  ]
683
719
  },
@@ -602,7 +602,7 @@
602
602
  "match": "\\bp\\d+\\b"
603
603
  },
604
604
  {
605
- "match": "(?:\\b(ATS(?:add(?:(?:nz)?)|bufread|cross|in(?:fo|terpread)|partialtap|read(?:(?:nz)?)|sinnoi)|FL(?:b(?:ox|ut(?:Bank|ton))|c(?:loseButton|o(?:lor(?:(?:2)?)|unt))|execButton|g(?:etsnap|roup(?:(?:(?:E|_e)nd)?))|h(?:ide|vsBox(?:(?:SetValue)?))|joy|k(?:eyIn|nob)|l(?:abel|oadsnap)|mouse|p(?:a(?:ck(?:(?:(?:E|_e)nd)?)|nel(?:(?:(?:E|_e)nd)?))|rintk(?:(?:2)?))|r(?:oller|un)|s(?:avesnap|croll(?:(?:(?:E|_e)nd)?)|et(?:Align|Box|Color(?:(?:2)?)|Font|Position|S(?:ize|napGroup)|Text(?:(?:Color|(?:Siz|Typ)e)?)|Val(?:(?:(?:(?:_)?)i)?)|snap)|how|lid(?:Bnk(?:(?:2(?:(?:Set(?:(?:k)?))?)|GetHandle|Set(?:(?:k)?))?)|er))|t(?:abs(?:(?:(?:E|_e)nd)?)|ext)|update|v(?:alue|keybd|slidBnk(?:(?:2)?))|xyin)|Jacko(?:Audio(?:In(?:(?:Connect)?)|Out(?:(?:Connect)?))|Freewheel|In(?:fo|it)|Midi(?:(?:InConnec|Ou(?:(?:tConnec)?))t)|NoteOut|On|Transport)|K35_(?:(?:[hl])pf)|Mixer(?:Clear|GetLevel|Receive|Se(?:nd|tLevel(?:(?:_i)?)))|OSC(?:bundle|count|init(?:(?:M)?)|listen|raw|send(?:(?:_lo)?))|STK(?:B(?:andedWG|eeThree|low(?:Botl|Hole)|owed|rass)|Clarinet|Drummer|F(?:MVoices|lute)|HevyMetl|M(?:andolin|o(?:dalBar|og))|P(?:ercFlut|lucked)|R(?:esonate|hodey)|S(?:axofony|hakers|i(?:mple|tar)|tifKarp)|TubeBell|VoicForm|W(?:histle|urley))|a(?:bs|ctive|ds(?:r|yn(?:(?:t(?:(?:2)?))?))|ftouch|l(?:pass|wayson)|mp(?:db(?:(?:fs)?)|midi(?:(?:d)?))|reson(?:(?:k)?)|tone(?:(?:[kx])?))|b(?:a(?:bo|lance(?:(?:2)?)|mboo|rmodel)|bcut(?:[ms])|e(?:adsynt|osc|(?:tara|xpr)nd)|form(?:(?:de|en)c1)|i(?:nit|quad(?:(?:a)?)|rnd)|pf(?:(?:cos)?)|qrez|u(?:t(?:b(?:[pr])|hp|lp|t(?:er(?:b(?:[pr])|(?:[hl])p)|on))|zz))|c(?:2r|a(?:basa|uchy(?:(?:i)?))|brt|e(?:il|ll|nt(?:(?:roid)?)|ps(?:(?:inv)?))|h(?:an(?:ctrl|ged(?:(?:2)?)|[io])|e(?:byshevpoly|ckbox)|n(?:_(?:[Sak])|clear|export|get(?:(?:ks)?)|mix|params|set(?:(?:ks)?))|uap)|l(?:ear|filt|ip|ocko(?:ff|n))|mp(?:(?:lxprod)?)|o(?:m(?:b(?:(?:inv)?)|p(?:ile(?:csd|orc|str)|ress(?:(?:2)?)))|n(?:nect|trol|v(?:(?:l|olv)e))|py(?:a2ftab|f2array)|s(?:(?:h|inv|seg(?:(?:[br])?))?))|p(?:s(?:2pch|midi(?:(?:b|nn)?)|oct|pch|t(?:mid|un(?:(?:i)?))|xpch)|u(?:meter|prc))|r(?:oss(?:2|fm(?:(?:i|pm(?:(?:i)?))?)|pm(?:(?:i)?))|unch)|t(?:lchn|rl(?:14|21|7|init))|userrnd)|d(?:a(?:m|te(?:(?:s)?))|b(?:(?:(?:(?:fs)?)amp)?)|c(?:block(?:(?:2)?)|onv|t(?:(?:inv)?))|e(?:interleave|l(?:ay(?:(?:[1krw])?)|tap(?:(?:xw|[3inx])?))|norm)|i(?:ff|ode_ladder|rectory|s(?:k(?:grain|in(?:(?:2)?))|p(?:fft|lay)|tort(?:(?:1)?))|vz)|o(?:ppler|t|wnsamp)|ripwater|ssi(?:a(?:ctivate|udio)|ctls|(?:ini|lis)t)|u(?:mpk(?:(?:[234])?)|s(?:errnd|t(?:(?:2)?))))|e(?:nvlpx(?:(?:r)?)|phasor|qfil|v(?:alstr|ent(?:(?:_i)?))|x(?:citer|itnow|p(?:(?:curve|on|rand(?:(?:i)?)|seg(?:(?:ba|[abr])?))?)))|f(?:a(?:reylen(?:(?:i)?)|ust(?:audio|c(?:ompile|tl)|dsp|gen|play))|ft(?:(?:inv)?)|i(?:close|l(?:e(?:bit|len|nchnls|peak|s(?:cal|r)|valid)|larray|ter2)|n(?:(?:[ik])?)|open)|l(?:a(?:nger|shtxt)|oo(?:per(?:(?:2)?)|r))|m(?:a(?:nal|x)|b(?:3|ell)|in|metal|od|percfl|(?:rhod|voic|wurli)e)|o(?:f(?:2|ilter)|l(?:d|low(?:(?:2)?))|scil(?:(?:i)?)|ut(?:(?:ir|[ik])?)|[fg])|print(?:(?:(?:k)?)s)|r(?:a(?:c(?:(?:talnoise)?)|mebuffer)|eeverb)|t(?:audio|c(?:hnls|onv|ps)|free|gen(?:(?:once|tmp)?)|l(?:en|oad(?:(?:k)?)|ptim)|morf|om|print|resize(?:(?:i)?)|s(?:a(?:mplebank|ve(?:(?:k)?))|lice|r)))|g(?:a(?:in(?:(?:slider)?)|uss(?:(?:i|trig)?))|buzz|e(?:n(?:array(?:(?:_i)?)|dy(?:(?:[cx])?))|t(?:c(?:fg|ol)|ftargs|row(?:(?:lin)?)|seed))|ogobel|ra(?:in(?:(?:[23])?)|nule)|uiro)|h(?:armon(?:(?:[234])?)|df5(?:read|write)|ilbert(?:(?:2)?)|rtf(?:early|move(?:(?:2)?)|reverb|stat)|sboscil|vs(?:[123])|ypot)|i(?:hold|mage(?:create|free|getpixel|load|s(?:ave|etpixel|ize))|n(?:(?:32|ch|it(?:(?:c(?:14|21|7))?)|let(?:kid|[afkv])|rg|s(?:global|remot)|te(?:g|r(?:leave|p))|value|[hoqstxz])?))|j(?:acktransport|itter(?:(?:2)?)|oystick|spline)|l(?:a_(?:i_(?:a(?:dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|t|v(?:[cr])))|conjugate_(?:m(?:[cr])|v(?:[cr]))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_(?:create|set)|r_(?:create|set)|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|print_(?:m(?:[cr])|v(?:[cr]))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|s(?:ize_(?:m(?:[cr])|v(?:[cr]))|ubtract_(?:m(?:[cr])|v(?:[cr])))|t(?:_assign|ra(?:ce_m(?:[cr])|nspose_m(?:[cr])))|upper_solve_m(?:[cr])|v(?:c_(?:create|set)|r_(?:create|set)))|k_(?:a(?:_assign|dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|v(?:[cr])|[aft]))|c(?:onjugate_(?:m(?:[cr])|v(?:[cr]))|urrent_(?:f|vr))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|f_assign|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_set|r_set|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|subtract_(?:m(?:[cr])|v(?:[cr]))|t(?:_assign|race_m(?:[cr]))|upper_solve_m(?:[cr])|v(?:(?:[cr])_set)))|enarray|fo|i(?:mit(?:(?:1)?)|n(?:cos|e(?:(?:n(?:(?:r)?)|to)?)|k_(?:beat_(?:force|(?:ge|reques)t)|create|enable|is_enabled|metro|peers|tempo_(?:(?:[gs])et))|lin|rand|seg(?:(?:[br])?))|veconv)|o(?:cs(?:end|ig)|g(?:(?:10|2|btwo|curve)?)|op(?:seg(?:(?:p)?)|(?:[tx])seg)|renz|scil(?:(?:(?:(?:3)?)phs|[3x])?)|w(?:pass2|res(?:(?:x)?)))|p(?:f(?:18|orm|reson)|hasor|interp|oscil(?:(?:sa(?:(?:2)?)|[3a])?)|re(?:ad|son)|s(?:hold(?:(?:p)?)|lot))|ua_(?:exec|i(?:aopcall(?:(?:_off)?)|kopcall(?:(?:_off)?)|opcall(?:(?:_off)?))|opdef))|m(?:a(?:ca|dsr|gs|nd(?:(?:[eo])l)|parray(?:(?:_i)?)|rimba|ssign|x(?:_k|a(?:bs(?:(?:accum)?)|ccum|lloc|rray))|[cx])|clock|delay|e(?:dian(?:(?:k)?)|tro)|fb|i(?:d(?:global|i(?:arp|c(?:14|21|7|h(?:annelaftertouch|n)|ontrolchange|trl)|default|filestatus|in|noteo(?:ff|n(?:cps|key|oct|pch))|o(?:n(?:(?:2)?)|ut(?:(?:_i)?))|p(?:gm|itchbend|olyaftertouch|rogramchange)|tempo)|remot)|n(?:(?:a(?:bs(?:(?:accum)?)|ccum|rray)|cer)?)|rror)|o(?:d(?:e|matrix)|nitor|og(?:(?:ladder(?:(?:2)?)|vcf(?:(?:2)?))?)|scil)|p(?:3(?:bitrate|in|len|nchnls|s(?:cal|r))|ulse)|rtmsg|to(?:[fn])|u(?:ltitap|te)|vc(?:hpf|lpf(?:[1234]))|xadsr)|n(?:chnls_hw|estedap|l(?:alp|filt(?:(?:2)?))|o(?:ise|t(?:eo(?:ff|n(?:(?:dur(?:(?:2)?))?))|num))|r(?:everb|pn)|s(?:amp|t(?:ance|rnum))|t(?:om|rpol)|xtpow2)|o(?:ct(?:ave|cps|midi(?:(?:b|nn)?)|pch)|labuffer|sc(?:bnk|il(?:(?:1i|ikt(?:(?:[ps])?)|[13insx])?))|ut(?:(?:32|ch|i(?:at|c(?:(?:14)?)|p(?:at|[bc]))|k(?:at|c(?:(?:14)?)|p(?:at|[bc]))|let(?:kid|[afkv])|q(?:[1234])|rg|s(?:[12])|value|[choqsxz])?))|p(?:5g(?:connect|data)|a(?:n(?:(?:2)?)|r(?:eq|t(?:2txt|i(?:als|kkel(?:(?:get|s(?:et|ync))?))))|ssign|ulstretch)|c(?:auchy|h(?:bend|midi(?:(?:b|nn)?)|oct|tom)|o(?:nvolve|unt))|d(?:clip|half(?:(?:y)?))|eak|gm(?:(?:assig|ch)n)|h(?:as(?:er(?:[12])|or(?:(?:bnk)?))|s)|i(?:n(?:dex|k(?:er|ish))|tch(?:(?:a(?:c|mdf))?))|l(?:a(?:net|terev)|(?:ltra|u)ck)|o(?:isson|l(?:2rect|y(?:aft|nomial))|rt(?:(?:k)?)|scil(?:(?:3)?)|w(?:(?:ershape|oftwo|s)?))|r(?:e(?:alloc|piano)|int(?:(?:_type|array|f_i|k(?:s2|[2s])|[fks])?)|oduct)|set|t(?:able(?:(?:iw|[3iw])?)|rack)|uts|v(?:add|bufread|cross|interp|oc|read|s(?:2(?:array|tab)|a(?:dsyn|nal|rp)|b(?:and(?:[pr])|in|lur|uf(?:fer|read(?:(?:2)?)))|c(?:ale|e(?:nt|ps)|ross)|d(?:emix|is(?:kin|p))|envftw|f(?:ilter|r(?:e(?:ad|eze)|omarray)|t(?:[rw])|write)|gain|hift|i(?:fd|n(?:(?:fo|it)?))|lock|m(?:aska|ix|o(?:(?:ot|rp)h))|o(?:sc|ut)|pitch|t(?:anal|encil|race)|voc|warp|ynth))|wd|y(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|init|l(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|run(?:(?:[it])?))|run(?:(?:[it])?)))|q(?:inf|nan)|r(?:2c|and(?:(?:om(?:(?:[hi])?)|[hi])?)|bjeq|e(?:ad(?:clock|fi|k(?:[234s])|sc(?:ore|ratch)|[fk])|ct2pol|lease|mo(?:teport|ve)|pluck|s(?:hapearray|on(?:(?:xk|[krxyz])?)|yn)|verb(?:(?:2|sc)?)|windscore|zzy)|fft|ifft|ms|nd(?:(?:31)?)|ound|spline|tclock)|s(?:16b14|32b14|a(?:mphold|ndpaper)|c(?:_(?:lag(?:(?:ud)?)|phasor|trig)|a(?:le(?:(?:array)?)|n(?:hammer|table|[su]))|hed(?:kwhen(?:(?:named)?)|ule|when)|oreline(?:(?:_i)?))|e(?:ed|kere|lect|mitone|nse(?:(?:key)?)|qtime(?:(?:2)?)|rial(?:Begin|End|Flush|Print|Read|Write(?:(?:_i)?))|t(?:c(?:(?:o|tr)l)|ksmps|row|scorepos))|f(?:i(?:list|nstr(?:(?:3m|[3m])?))|lo(?:ad|oper)|p(?:assign|l(?:ay(?:(?:3m|[3m])?)|ist)|reset))|h(?:aker|ift(?:in|out))|i(?:gnum|n(?:(?:h|inv|syn)?))|l(?:eighbells|i(?:cearray(?:(?:_i)?)|der(?:16(?:(?:f|table(?:(?:f)?))?)|32(?:(?:f|table(?:(?:f)?))?)|64(?:(?:f|table(?:(?:f)?))?)|8(?:(?:f|table(?:(?:f)?))?)|Kawai)))|nd(?:loop|warp(?:(?:st)?))|o(?:ck(?:recv(?:(?:s)?)|send(?:(?:s)?))|rt(?:[ad])|undin)|p(?:a(?:ce|t3d(?:(?:[it])?))|dist|litrig|rintf(?:(?:k)?)|send)|q(?:rt|uinewave)|t(?:atevar|ix|r(?:c(?:at(?:(?:k)?)|har(?:(?:k)?)|mp(?:(?:k)?)|py(?:(?:k)?))|e(?:cv|son)|fromurl|get|index(?:(?:k)?)|l(?:en(?:(?:k)?)|ower(?:(?:k)?))|rindex(?:(?:k)?)|s(?:et|ub(?:(?:k)?))|to(?:(?:[dl])k|[dl])|upper(?:(?:k)?))|send)|u(?:binstr(?:(?:init)?)|m(?:(?:array)?))|vfilter|y(?:nc(?:grain|loop|phasor)|stem(?:(?:_i)?)))|t(?:a(?:b(?:2(?:array|pvs)|_i|ifd|le(?:(?:3kt|copy|filter(?:(?:i)?)|gpw|i(?:copy|gpw|kt|mix|w)|kt|mix|ng|ra|s(?:eg|huffle(?:(?:i)?))|w(?:a|kt)|x(?:kt|seg)|[3iw])?)|morph(?:(?:ak|[ai])?)|play|r(?:ec|owlin)|sum|w(?:(?:_i)?))|mbourine|n(?:h|inv(?:(?:2)?))|[bn])|bvcf|emp(?:est|o(?:(?:(?:sc|v)al)?))|i(?:me(?:dseq|inst(?:[ks])|[ks])|val)|lineto|one(?:(?:[kx])?)|r(?:a(?:dsyn|n(?:dom|seg(?:(?:[br])?)))|cross|filter|highest|i(?:g(?:ger|seq)|m(?:(?:_i)?)|rand)|lowest|mix|s(?:cale|(?:hif|pli)t))|urno(?:ff(?:(?:2)?)|n)|vconv)|u(?:n(?:irand|wrap)|psamp|r(?:andom|d))|v(?:a(?:ctrol|dd(?:(?:_i|v(?:(?:_i)?))?)|get|lpass|set)|bap(?:(?:gmove|lsinit|(?:(?:z)?)move|[gz])?)|c(?:ella|o(?:(?:2(?:(?:(?:f|i(?:f|ni))t)?)|mb|py(?:(?:_i)?))?))|d(?:el(?:_k|ay(?:(?:x(?:w(?:[qs])|[qsw])|[3kx])?))|ivv(?:(?:_i)?))|e(?:cdelay|loc|xp(?:(?:_i|seg|v(?:(?:_i)?))?))|i(?:b(?:es|r(?:(?:ato)?))|ncr)|l(?:i(?:mit|nseg)|owres)|m(?:ap|irror|ult(?:(?:_i|v(?:(?:_i)?))?))|o(?:ice|sim)|p(?:haseseg|o(?:rt|w(?:(?:_i|v(?:(?:_i)?))?))|voc)|rand(?:[hi])|subv(?:(?:_i)?)|tab(?:le(?:1k|w(?:[aik])|[aik])|w(?:[aik])|[aik])|wrap)|w(?:aveset|e(?:bsocket|ibull)|g(?:b(?:ow(?:(?:edbar)?)|rass)|clar|flute|pluck(?:(?:2)?)|uide(?:[12]))|i(?:i(?:connect|data|range|send)|ndow)|r(?:ap|itescratch)|terrain)|x(?:adsr|in|out|scan(?:map|smap|[su])|tratim|yscale)|z(?:a(?:cl|kinit|mod|rg|wm|[rw])|df_(?:1pole(?:(?:_mode)?)|2pole(?:(?:_mode)?)|ladder)|filter2|i(?:wm|[rw])|k(?:cl|mod|wm|[rw]))|[Saikp])\\b|\\b(array|bform(?:(?:de|en)c)|copy2(?:(?:[ft])tab)|hrtfer|ktableseg|lentab|m(?:(?:ax|in)tab)|p(?:op(?:(?:_f)?)|ush(?:(?:_f)?))|s(?:calet|ndload|oundout(?:(?:s)?)|pec(?:addm|di(?:ff|sp)|filt|hist|ptrk|s(?:cal|um)|trum)|tack|umtab)|t(?:ab(?:gen|map(?:(?:_i)?)|slice)|b(?:0_init|1(?:(?:(?:[012345])?)_init|[012345])|(?:[23456789])_init|[0123456789]))|vbap(?:16|(?:[48])move|[48])|xyin)\\b)(?:(\\:)([A-Za-z]))?",
605
+ "match": "(?:\\b(ATS(?:add(?:(?:nz)?)|bufread|cross|in(?:fo|terpread)|partialtap|read(?:(?:nz)?)|sinnoi)|FL(?:b(?:ox|ut(?:Bank|ton))|c(?:loseButton|o(?:lor(?:(?:2)?)|unt))|execButton|g(?:etsnap|roup(?:(?:(?:E|_e)nd)?))|h(?:ide|vsBox(?:(?:SetValue)?))|joy|k(?:eyIn|nob)|l(?:abel|oadsnap)|mouse|p(?:a(?:ck(?:(?:(?:E|_e)nd)?)|nel(?:(?:(?:E|_e)nd)?))|rintk(?:(?:2)?))|r(?:oller|un)|s(?:avesnap|croll(?:(?:(?:E|_e)nd)?)|et(?:Align|Box|Color(?:(?:2)?)|Font|Position|S(?:ize|napGroup)|Text(?:(?:Color|(?:Siz|Typ)e)?)|Val(?:(?:(?:(?:_)?)i)?)|snap)|how|lid(?:Bnk(?:(?:2(?:(?:Set(?:(?:k)?))?)|GetHandle|Set(?:(?:k)?))?)|er))|t(?:abs(?:(?:(?:E|_e)nd)?)|ext)|update|v(?:alue|keybd|slidBnk(?:(?:2)?))|xyin)|Jacko(?:Audio(?:In(?:(?:Connect)?)|Out(?:(?:Connect)?))|Freewheel|In(?:fo|it)|Midi(?:(?:InConnec|Ou(?:(?:tConnec)?))t)|NoteOut|On|Transport)|K35_(?:(?:[hl])pf)|Mixer(?:Clear|GetLevel|Receive|Se(?:nd|tLevel(?:(?:_i)?)))|OSC(?:bundle|count|init(?:(?:M)?)|listen|raw|send(?:(?:_lo)?))|STK(?:B(?:andedWG|eeThree|low(?:Botl|Hole)|owed|rass)|Clarinet|Drummer|F(?:MVoices|lute)|HevyMetl|M(?:andolin|o(?:dalBar|og))|P(?:ercFlut|lucked)|R(?:esonate|hodey)|S(?:axofony|hakers|i(?:mple|tar)|tifKarp)|TubeBell|VoicForm|W(?:histle|urley))|a(?:bs|ctive|ds(?:r|yn(?:(?:t(?:(?:2)?))?))|ftouch|l(?:pass|wayson)|mp(?:db(?:(?:fs)?)|midi(?:(?:curve|d)?))|reson(?:(?:k)?)|tone(?:(?:[kx])?))|b(?:a(?:bo|lance(?:(?:2)?)|mboo|rmodel)|bcut(?:[ms])|e(?:adsynt|osc|(?:tara|xpr)nd)|form(?:(?:de|en)c1)|i(?:nit|quad(?:(?:a)?)|rnd)|pf(?:(?:cos)?)|qrez|u(?:t(?:b(?:[pr])|hp|lp|t(?:er(?:b(?:[pr])|(?:[hl])p)|on))|zz))|c(?:2r|a(?:basa|uchy(?:(?:i)?))|brt|e(?:il|ll|nt(?:(?:roid)?)|ps(?:(?:inv)?))|h(?:an(?:ctrl|ged2|[io])|e(?:byshevpoly|ckbox)|n(?:_(?:[Sak])|clear|export|get(?:(?:ks)?)|mix|params|set(?:(?:ks)?))|uap)|l(?:ear|filt|ip|ocko(?:ff|n))|mp(?:(?:lxprod)?)|o(?:m(?:b(?:(?:inv)?)|p(?:ile(?:csd|orc|str)|ress(?:(?:2)?)))|n(?:nect|trol|v(?:(?:l|olv)e))|py(?:a2ftab|f2array)|s(?:(?:h|inv|seg(?:(?:[br])?))?))|p(?:s(?:2pch|midi(?:(?:b|nn)?)|oct|pch|t(?:mid|un(?:(?:i)?))|xpch)|u(?:meter|prc))|r(?:oss(?:2|fm(?:(?:i|pm(?:(?:i)?))?)|pm(?:(?:i)?))|unch)|t(?:lchn|rl(?:14|21|7|init))|userrnd)|d(?:a(?:m|te(?:(?:s)?))|b(?:(?:(?:(?:fs)?)amp)?)|c(?:block(?:(?:2)?)|onv|t(?:(?:inv)?))|e(?:interleave|l(?:ay(?:(?:[1krw])?)|tap(?:(?:xw|[3inx])?))|norm)|i(?:ff|ode_ladder|rectory|s(?:k(?:grain|in(?:(?:2)?))|p(?:fft|lay)|tort(?:(?:1)?))|vz)|o(?:ppler|t|wnsamp)|ripwater|ssi(?:a(?:ctivate|udio)|ctls|(?:ini|lis)t)|u(?:mpk(?:(?:[234])?)|s(?:errnd|t(?:(?:2)?))))|e(?:nvlpx(?:(?:r)?)|phasor|qfil|v(?:alstr|ent(?:(?:_i)?))|x(?:citer|itnow|p(?:(?:curve|on|rand(?:(?:i)?)|seg(?:(?:ba|[abr])?))?)))|f(?:a(?:reylen(?:(?:i)?)|ust(?:audio|c(?:ompile|tl)|dsp|gen|play))|ft(?:(?:inv)?)|i(?:close|l(?:e(?:bit|len|nchnls|peak|s(?:cal|r)|valid)|larray|ter2)|n(?:(?:[ik])?)|open)|l(?:a(?:nger|shtxt)|oo(?:per(?:(?:2)?)|r)|uid(?:AllOut|C(?:C(?:[ik])|ontrol)|Engine|Info|Load|Note|Out|ProgramSelect|SetInterpMethod))|m(?:a(?:nal|x)|b(?:3|ell)|in|metal|od|percfl|(?:rhod|voic|wurli)e)|o(?:f(?:2|ilter)|l(?:d|low(?:(?:2)?))|scil(?:(?:i)?)|ut(?:(?:ir|[ik])?)|[fg])|print(?:(?:(?:k)?)s)|r(?:a(?:c(?:(?:talnoise)?)|mebuffer)|eeverb)|t(?:audio|c(?:hnls|onv|ps)|free|gen(?:(?:once|tmp)?)|l(?:en|oad(?:(?:k)?)|ptim)|morf|om|print|resize(?:(?:i)?)|s(?:a(?:mplebank|ve(?:(?:k)?))|lice|r)))|g(?:a(?:in(?:(?:slider)?)|uss(?:(?:i|trig)?))|buzz|e(?:n(?:array(?:(?:_i)?)|dy(?:(?:[cx])?))|t(?:c(?:fg|ol)|ftargs|row(?:(?:lin)?)|seed))|ogobel|ra(?:in(?:(?:[23])?)|nule)|tf|uiro)|h(?:armon(?:(?:[234])?)|df5(?:read|write)|ilbert(?:(?:2)?)|rtf(?:early|move(?:(?:2)?)|reverb|stat)|sboscil|vs(?:[123])|ypot)|i(?:hold|mage(?:create|free|getpixel|load|s(?:ave|etpixel|ize))|n(?:(?:32|ch|it(?:(?:c(?:14|21|7))?)|let(?:kid|[afkv])|rg|s(?:global|remot)|te(?:g|r(?:leave|p))|value|[hoqstxz])?))|j(?:acktransport|itter(?:(?:2)?)|oystick|spline)|l(?:a_(?:i_(?:a(?:dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|t|v(?:[cr])))|conjugate_(?:m(?:[cr])|v(?:[cr]))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_(?:create|set)|r_(?:create|set)|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|print_(?:m(?:[cr])|v(?:[cr]))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|s(?:ize_(?:m(?:[cr])|v(?:[cr]))|ubtract_(?:m(?:[cr])|v(?:[cr])))|t(?:_assign|ra(?:ce_m(?:[cr])|nspose_m(?:[cr])))|upper_solve_m(?:[cr])|v(?:c_(?:create|set)|r_(?:create|set)))|k_(?:a(?:_assign|dd_(?:m(?:[cr])|v(?:[cr]))|ssign_(?:m(?:[cr])|v(?:[cr])|[aft]))|c(?:onjugate_(?:m(?:[cr])|v(?:[cr]))|urrent_(?:f|vr))|d(?:i(?:stance_v(?:[cr])|vide_(?:m(?:[cr])|v(?:[cr])))|ot_(?:m(?:c_vc|r_vr|[cr])|v(?:[cr])))|f_assign|get_(?:m(?:[cr])|v(?:[cr]))|invert_m(?:[cr])|l(?:ower_solve_m(?:[cr])|u_(?:det_m(?:[cr])|factor_m(?:[cr])|solve_m(?:[cr])))|m(?:c_set|r_set|ultiply_(?:m(?:[cr])|v(?:[cr])))|norm(?:1_(?:m(?:[cr])|v(?:[cr]))|_(?:euclid_(?:m(?:[cr])|v(?:[cr]))|inf_(?:m(?:[cr])|v(?:[cr]))|max_m(?:[cr])))|qr_(?:eigen_m(?:[cr])|factor_m(?:[cr])|sym_eigen_m(?:[cr]))|random_(?:m(?:[cr])|v(?:[cr]))|subtract_(?:m(?:[cr])|v(?:[cr]))|t(?:_assign|race_m(?:[cr]))|upper_solve_m(?:[cr])|v(?:(?:[cr])_set)))|enarray|fo|i(?:mit(?:(?:1)?)|n(?:cos|e(?:(?:n(?:(?:r)?)|to)?)|k_(?:beat_(?:force|(?:ge|reques)t)|create|enable|is_enabled|metro|peers|tempo_(?:(?:[gs])et))|lin|rand|seg(?:(?:[br])?))|veconv)|o(?:cs(?:end|ig)|g(?:(?:10|2|btwo|curve)?)|op(?:seg(?:(?:p)?)|(?:[tx])seg)|renz|scil(?:(?:(?:(?:3)?)phs|[3x])?)|w(?:pass2|res(?:(?:x)?)))|p(?:f(?:18|orm|reson)|hasor|interp|oscil(?:(?:sa(?:(?:2)?)|[3a])?)|re(?:ad|son)|s(?:hold(?:(?:p)?)|lot))|ua_(?:exec|i(?:aopcall(?:(?:_off)?)|kopcall(?:(?:_off)?)|opcall(?:(?:_off)?))|opdef))|m(?:a(?:ca|dsr|gs|nd(?:(?:[eo])l)|parray(?:(?:_i)?)|rimba|ssign|x(?:_k|a(?:bs(?:(?:accum)?)|ccum|lloc|rray))|[cx])|clock|delay|e(?:dian(?:(?:k)?)|tro)|fb|i(?:d(?:global|i(?:arp|c(?:14|21|7|h(?:annelaftertouch|n)|ontrolchange|trl)|default|filestatus|in|noteo(?:ff|n(?:cps|key|oct|pch))|o(?:n(?:(?:2)?)|ut(?:(?:_i)?))|p(?:gm|itchbend|olyaftertouch|rogramchange)|tempo)|remot)|n(?:(?:a(?:bs(?:(?:accum)?)|ccum|rray)|cer)?)|rror)|o(?:d(?:e|matrix)|nitor|og(?:(?:ladder(?:(?:2)?)|vcf(?:(?:2)?))?)|scil)|p(?:3(?:bitrate|in|len|nchnls|s(?:cal|r))|ulse)|rtmsg|to(?:[fn])|u(?:ltitap|te)|vc(?:hpf|lpf(?:[1234]))|xadsr)|n(?:chnls_hw|estedap|l(?:alp|filt(?:(?:2)?))|o(?:ise|t(?:eo(?:ff|n(?:(?:dur(?:(?:2)?))?))|num))|r(?:everb|pn)|s(?:amp|t(?:ance|r(?:num|str)))|t(?:o(?:[fm])|rpol)|xtpow2)|o(?:ct(?:ave|cps|midi(?:(?:b|nn)?)|pch)|labuffer|sc(?:bnk|il(?:(?:1i|ikt(?:(?:[ps])?)|[13insx])?))|ut(?:(?:32|ch|i(?:at|c(?:(?:14)?)|p(?:at|[bc]))|k(?:at|c(?:(?:14)?)|p(?:at|[bc]))|let(?:kid|[afkv])|q(?:[1234])|rg|s(?:[12])|value|[choqsxz])?))|p(?:5g(?:connect|data)|a(?:n(?:(?:2)?)|r(?:eq|t(?:2txt|i(?:als|kkel(?:(?:get|s(?:et|ync))?))))|ssign|ulstretch)|c(?:auchy|h(?:bend|midi(?:(?:b|nn)?)|oct|tom)|o(?:nvolve|unt))|d(?:clip|half(?:(?:y)?))|eak|gm(?:(?:assig|ch)n)|h(?:as(?:er(?:[12])|or(?:(?:bnk)?))|s)|i(?:n(?:dex|k(?:er|ish))|tch(?:(?:a(?:c|mdf))?))|l(?:a(?:net|terev)|(?:ltra|u)ck)|o(?:isson|l(?:2rect|y(?:aft|nomial))|rt(?:(?:k)?)|scil(?:(?:3)?)|w(?:(?:ershape|oftwo|s)?))|r(?:e(?:alloc|piano)|int(?:(?:_type|array|f_i|k(?:s2|[2s])|[fks])?)|oduct)|set|t(?:able(?:(?:[3iw])?)|rack)|uts|v(?:add|bufread|cross|interp|oc|read|s(?:2(?:array|tab)|a(?:dsyn|nal|rp)|b(?:and(?:[pr])|in|lur|uf(?:fer|read(?:(?:2)?)))|c(?:ale|e(?:nt|ps)|ross)|d(?:emix|is(?:kin|p))|envftw|f(?:ilter|r(?:e(?:ad|eze)|omarray)|t(?:[rw])|write)|gain|hift|i(?:fd|n(?:(?:fo|it)?))|lock|m(?:aska|ix|o(?:(?:ot|rp)h))|o(?:sc|ut)|pitch|t(?:anal|encil|race)|voc|warp|ynth))|wd|y(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|init|l(?:assign(?:(?:[it])?)|call(?:(?:1(?:[it])|2(?:[it])|3(?:[it])|4(?:[it])|5(?:[it])|6(?:[it])|7(?:[it])|8(?:[it])|ni|[12345678int])?)|e(?:val(?:(?:[it])?)|xec(?:(?:[it])?))|run(?:(?:[it])?))|run(?:(?:[it])?)))|q(?:inf|nan)|r(?:2c|and(?:(?:om(?:(?:[hi])?)|[hi])?)|bjeq|e(?:ad(?:clock|fi|k(?:[234s])|sc(?:ore|ratch)|[fk])|ct2pol|lease|mo(?:teport|ve)|pluck|s(?:hapearray|on(?:(?:xk|[krxyz])?)|yn)|verb(?:(?:2|sc)?)|windscore|zzy)|fft|ifft|ms|nd(?:(?:31)?)|ound|spline|tclock)|s(?:16b14|32b14|a(?:mphold|ndpaper)|c(?:_(?:lag(?:(?:ud)?)|phasor|trig)|a(?:le(?:(?:array)?)|n(?:hammer|table|[su]))|hed(?:kwhen(?:(?:named)?)|ule|when)|oreline(?:(?:_i)?))|e(?:ed|kere|lect|mitone|nse(?:(?:key)?)|qtime(?:(?:2)?)|rial(?:Begin|End|Flush|Print|Read|Write(?:(?:_i)?))|t(?:c(?:(?:o|tr)l)|ksmps|row|scorepos))|f(?:i(?:list|nstr(?:(?:3m|[3m])?))|lo(?:ad|oper)|p(?:assign|l(?:ay(?:(?:3m|[3m])?)|ist)|reset))|h(?:aker|ift(?:in|out))|i(?:gnum|n(?:(?:h|inv|syn)?))|l(?:eighbells|i(?:cearray(?:(?:_i)?)|der(?:16(?:(?:f|table(?:(?:f)?))?)|32(?:(?:f|table(?:(?:f)?))?)|64(?:(?:f|table(?:(?:f)?))?)|8(?:(?:f|table(?:(?:f)?))?)|Kawai)))|nd(?:loop|warp(?:(?:st)?))|o(?:ck(?:recv(?:(?:s)?)|send(?:(?:s)?))|rt(?:[ad])|undin)|p(?:a(?:ce|t3d(?:(?:[it])?))|dist|litrig|rintf(?:(?:k)?)|send)|q(?:rt|uinewave)|t(?:atevar|ix|r(?:c(?:at(?:(?:k)?)|har(?:(?:k)?)|mp(?:(?:k)?)|py(?:(?:k)?))|e(?:cv|son)|fromurl|get|in(?:dex(?:(?:k)?)|g2array)|l(?:en(?:(?:k)?)|ower(?:(?:k)?))|rindex(?:(?:k)?)|s(?:et|ub(?:(?:k)?))|to(?:(?:[dl])k|[dl])|upper(?:(?:k)?))|send)|u(?:binstr(?:(?:init)?)|m(?:(?:array)?))|vfilter|y(?:nc(?:grain|loop|phasor)|stem(?:(?:_i)?)))|t(?:a(?:b(?:2(?:array|pvs)|_i|ifd|le(?:(?:3kt|copy|filter(?:(?:i)?)|gpw|i(?:copy|gpw|kt|mix)|kt|mix|ng|ra|s(?:eg|huffle(?:(?:i)?))|w(?:a|kt)|x(?:kt|seg)|[3iw])?)|morph(?:(?:ak|[ai])?)|play|r(?:ec|owlin)|sum|w(?:(?:_i)?))|mbourine|n(?:h|inv(?:(?:2)?))|[bn])|bvcf|emp(?:est|o(?:(?:(?:sc|v)al)?))|i(?:me(?:dseq|inst(?:[ks])|[ks])|val)|lineto|one(?:(?:[kx])?)|r(?:a(?:dsyn|n(?:dom|seg(?:(?:[br])?)))|cross|filter|highest|i(?:g(?:ger|seq)|m(?:(?:_i)?)|rand)|lowest|mix|s(?:cale|(?:hif|pli)t))|urno(?:ff(?:(?:2)?)|n)|vconv)|u(?:n(?:irand|wrap)|psamp|r(?:andom|d))|v(?:a(?:ctrol|dd(?:(?:_i|v(?:(?:_i)?))?)|get|lpass|set)|bap(?:(?:gmove|lsinit|(?:(?:z)?)move|[gz])?)|c(?:ella|o(?:(?:2(?:(?:(?:f|i(?:f|ni))t)?)|mb|py(?:(?:_i)?))?))|d(?:el(?:_k|ay(?:(?:x(?:w(?:[qs])|[qsw])|[3kx])?))|ivv(?:(?:_i)?))|e(?:cdelay|loc|xp(?:(?:_i|seg|v(?:(?:_i)?))?))|i(?:b(?:es|r(?:(?:ato)?))|ncr)|l(?:i(?:mit|nseg)|owres)|m(?:ap|irror|ult(?:(?:_i|v(?:(?:_i)?))?))|o(?:ice|sim)|p(?:haseseg|o(?:rt|w(?:(?:_i|v(?:(?:_i)?))?))|voc)|rand(?:[hi])|subv(?:(?:_i)?)|tab(?:le(?:1k|w(?:[aik])|[aik])|w(?:[aik])|[aik])|wrap)|w(?:aveset|e(?:bsocket|ibull)|g(?:b(?:ow(?:(?:edbar)?)|rass)|clar|flute|pluck(?:(?:2)?)|uide(?:[12]))|i(?:i(?:connect|data|range|send)|ndow)|r(?:ap|itescratch)|terrain)|x(?:adsr|in|out|scan(?:map|smap|[su])|tratim|yscale)|z(?:a(?:cl|kinit|mod|rg|wm|[rw])|df_(?:1pole(?:(?:_mode)?)|2pole(?:(?:_mode)?)|ladder)|filter2|i(?:wm|[rw])|k(?:cl|mod|wm|[rw]))|[Saikp])\\b|\\b(array|bform(?:(?:de|en)c)|c(?:hanged|opy2(?:(?:[ft])tab))|hrtfer|ktableseg|lentab|m(?:(?:ax|in)tab)|p(?:op(?:(?:_f)?)|tableiw|ush(?:(?:_f)?))|s(?:calet|ndload|oundout(?:(?:s)?)|pec(?:addm|di(?:ff|sp)|filt|hist|ptrk|s(?:cal|um)|trum)|tack|umtab)|t(?:ab(?:gen|leiw|map(?:(?:_i)?)|slice)|b(?:0_init|1(?:(?:(?:[012345])?)_init|[012345])|(?:[23456789])_init|[0123456789]))|vbap(?:16|(?:[48])move|[48])|xyin)\\b)(?:(\\:)([A-Za-z]))?",
606
606
  "captures": {
607
607
  "1": {
608
608
  "name": "support.function.csound"
@@ -1259,7 +1259,7 @@
1259
1259
  "name": "support.type.property-name.media.css"
1260
1260
  },
1261
1261
  "2": {
1262
- "name": "invalid.deprecated.media.css"
1262
+ "name": "support.type.property-name.media.css"
1263
1263
  },
1264
1264
  "3": {
1265
1265
  "name": "support.type.vendored.property-name.media.css"
@@ -1416,7 +1416,7 @@
1416
1416
  "patterns": [
1417
1417
  {
1418
1418
  "name": "support.type.property-name.css",
1419
- "match": "(?xi) (?\u003c![\\w-])\n(?:\n # Standard CSS\n additive-symbols|align-content|align-items|align-self|all|animation|animation-delay|animation-direction\n | animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state\n | animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode\n | background-clip|background-color|background-image|background-origin|background-position|background-position-[xy]\n | background-repeat|background-size|block-size|border|border-block-end|border-block-end-color|border-block-end-style\n | border-block-end-width|border-block-start|border-block-start-color|border-block-start-style\n | border-block-start-width|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius\n | border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset\n | border-image-repeat|border-image-slice|border-image-source|border-image-width|border-inline-end\n | border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-start\n | border-inline-start-color|border-inline-start-style|border-inline-start-width|border-left|border-left-color\n | border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style\n | border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius\n | border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-decoration-break\n | box-shadow|box-sizing|break-after|break-before|break-inside|caption-side|clear|clip|clip-path|color\n | column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width\n | column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display\n | empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float\n | font|font-display|font-family|font-feature-settings|font-kerning|font-language-override|font-size|font-size-adjust\n | font-stretch|font-style|font-synthesis|font-variant|font-variant-alternates|font-variant-caps\n | font-variant-east-asian|font-variant-ligatures|font-variant-numeric|font-variant-position|font-weight\n | grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-gap\n | grid-column-start|grid-gap|grid-row|grid-row-end|grid-row-gap|grid-row-start|grid-template|grid-template-areas\n | grid-template-columns|grid-template-rows|height|hyphens|image-orientation|image-rendering|image-resolution\n | ime-mode|inline-size|isolation|justify-content|left|letter-spacing|line-break|line-height|list-style\n | list-style-image|list-style-position|list-style-type|margin|margin-block-end|margin-block-start|margin-bottom\n | margin-inline-end|margin-inline-start|margin-left|margin-right|margin-top|mask|mask-clip|mask-composite\n | mask-image|mask-mode|mask-origin|mask-position|mask-repeat|mask-size|mask-type|max-block-size|max-height\n | max-inline-size|max-width|max-zoom|min-block-size|min-height|min-inline-size|min-width|min-zoom|mix-blend-mode\n | negative|object-fit|object-position|offset-block-end|offset-block-start|offset-inline-end|offset-inline-start\n | opacity|order|orientation|orphans|outline|outline-color|outline-offset|outline-style|outline-width|overflow\n | overflow-wrap|overflow-[xy]|pad|padding|padding-block-end|padding-block-start|padding-bottom|padding-inline-end\n | padding-inline-start|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside\n | perspective|perspective-origin|pointer-events|position|prefix|quotes|range|resize|right|ruby-align|ruby-merge\n | ruby-position|scroll-behavior|scroll-snap-coordinate|scroll-snap-destination|scroll-snap-type|shape-image-threshold\n | shape-margin|shape-outside|speak-as|src|suffix|symbols|system|tab-size|table-layout|text-align|text-align-last\n | text-combine-upright|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-emphasis\n | text-emphasis-color|text-emphasis-position|text-emphasis-style|text-indent|text-orientation|text-overflow\n | text-rendering|text-shadow|text-transform|text-underline-position|top|touch-action|transform|transform-box\n | transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property\n | transition-timing-function|unicode-bidi|unicode-range|user-zoom|vertical-align|visibility|white-space|widows\n | width|will-change|word-break|word-spacing|word-wrap|writing-mode|z-index|zoom\n\n # SVG attributes\n | alignment-baseline|baseline-shift|clip-rule|color-interpolation|color-interpolation-filters|color-profile\n | color-rendering|cx|cy|dominant-baseline|enable-background|fill|fill-opacity|fill-rule|flood-color|flood-opacity\n | glyph-orientation-horizontal|glyph-orientation-vertical|height|kerning|lighting-color|marker-end|marker-mid\n | marker-start|r|rx|ry|shape-rendering|stop-color|stop-opacity|stroke|stroke-dasharray|stroke-dashoffset|stroke-linecap\n | stroke-linejoin|stroke-miterlimit|stroke-opacity|stroke-width|text-anchor|width|x|y\n\n # Not listed on MDN; presumably deprecated\n | adjust|after|align|align-last|alignment|alignment-adjust|appearance|attachment|azimuth|background-break\n | balance|baseline|before|bidi|binding|bookmark|bookmark-label|bookmark-level|bookmark-target|border-length\n | bottom-color|bottom-left-radius|bottom-right-radius|bottom-style|bottom-width|box|box-align|box-direction\n | box-flex|box-flex-group|box-lines|box-ordinal-group|box-orient|box-pack|break|character|collapse|column\n | column-break-after|column-break-before|count|counter|crop|cue|cue-after|cue-before|decoration|decoration-break\n | delay|display-model|display-role|down|drop|drop-initial-after-adjust|drop-initial-after-align|drop-initial-before-adjust\n | drop-initial-before-align|drop-initial-size|drop-initial-value|duration|elevation|emphasis|family|fit|fit-position\n | flex-group|float-offset|gap|grid-columns|grid-rows|hanging-punctuation|header|hyphenate|hyphenate-after|hyphenate-before\n | hyphenate-character|hyphenate-lines|hyphenate-resource|icon|image|increment|indent|index|initial-after-adjust\n | initial-after-align|initial-before-adjust|initial-before-align|initial-size|initial-value|inline-box-align|iteration-count\n | justify|label|left-color|left-style|left-width|length|level|line|line-stacking|line-stacking-ruby|line-stacking-shift\n | line-stacking-strategy|lines|list|mark|mark-after|mark-before|marks|marquee|marquee-direction|marquee-play-count|marquee-speed\n | marquee-style|max|min|model|move-to|name|nav|nav-down|nav-index|nav-left|nav-right|nav-up|new|numeral|offset|ordinal-group\n | orient|origin|overflow-style|overhang|pack|page|page-policy|pause|pause-after|pause-before|phonemes|pitch|pitch-range\n | play-count|play-during|play-state|point|presentation|presentation-level|profile|property|punctuation|punctuation-trim\n | radius|rate|rendering-intent|repeat|replace|reset|resolution|resource|respond-to|rest|rest-after|rest-before|richness\n | right-color|right-style|right-width|role|rotation|rotation-point|rows|ruby|ruby-overhang|ruby-span|rule|rule-color\n | rule-style|rule-width|shadow|size|size-adjust|sizing|space|space-collapse|spacing|span|speak|speak-header|speak-numeral\n | speak-punctuation|speech|speech-rate|speed|stacking|stacking-ruby|stacking-shift|stacking-strategy|stress|stretch\n | string-set|style|style-image|style-position|style-type|target|target-name|target-new|target-position|text|text-height\n | text-justify|text-outline|text-replace|text-wrap|timing-function|top-color|top-left-radius|top-right-radius|top-style\n | top-width|trim|unicode|up|user-select|variant|voice|voice-balance|voice-duration|voice-family|voice-pitch|voice-pitch-range\n | voice-rate|voice-stress|voice-volume|volume|weight|white|white-space-collapse|word|wrap\n)\n(?![\\w-])"
1419
+ "match": "(?xi) (?\u003c![\\w-])\n(?:\n # Standard CSS\n additive-symbols|align-content|align-items|align-self|all|animation|animation-delay|animation-direction\n | animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state\n | animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode\n | background-clip|background-color|background-image|background-origin|background-position|background-position-[xy]\n | background-repeat|background-size|block-size|border|border-block-end|border-block-end-color|border-block-end-style\n | border-block-end-width|border-block-start|border-block-start-color|border-block-start-style\n | border-block-start-width|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius\n | border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset\n | border-image-repeat|border-image-slice|border-image-source|border-image-width|border-inline-end\n | border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-start\n | border-inline-start-color|border-inline-start-style|border-inline-start-width|border-left|border-left-color\n | border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style\n | border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius\n | border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-decoration-break\n | box-shadow|box-sizing|break-after|break-before|break-inside|caption-side|clear|clip|clip-path|color\n | column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width\n | column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display\n | empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float\n | font|font-display|font-family|font-feature-settings|font-kerning|font-language-override|font-size|font-size-adjust\n | font-stretch|font-style|font-synthesis|font-variant|font-variant-alternates|font-variant-caps\n | font-variant-east-asian|font-variant-ligatures|font-variant-numeric|font-variant-position|font-weight\n | grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-gap\n | grid-column-start|grid-gap|grid-row|grid-row-end|grid-row-gap|grid-row-start|grid-template|grid-template-areas\n | grid-template-columns|grid-template-rows|height|hyphens|image-orientation|image-rendering|image-resolution\n | ime-mode|inline-size|isolation|justify-content|left|letter-spacing|line-break|line-height|list-style\n | list-style-image|list-style-position|list-style-type|margin|margin-block-end|margin-block-start|margin-bottom\n | margin-inline-end|margin-inline-start|margin-left|margin-right|margin-top|mask|mask-clip|mask-composite\n | mask-image|mask-mode|mask-origin|mask-position|mask-repeat|mask-size|mask-type|max-block-size|max-height\n | max-inline-size|max-width|max-zoom|min-block-size|min-height|min-inline-size|min-width|min-zoom|mix-blend-mode\n | negative|object-fit|object-position|offset-block-end|offset-block-start|offset-inline-end|offset-inline-start\n | opacity|order|orientation|orphans|outline|outline-color|outline-offset|outline-style|outline-width|overflow\n | overflow-wrap|overflow-[xy]|pad|padding|padding-block-end|padding-block-start|padding-bottom|padding-inline-end\n | padding-inline-start|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside\n | perspective|perspective-origin|place-content|place-items|place-self|pointer-events|position|prefix|quotes|range\n | resize|right|row-gap|ruby-align|ruby-merge|ruby-position|scroll-behavior|scroll-snap-coordinate\n | scroll-snap-destination|scroll-snap-type|shape-image-threshold|shape-margin|shape-outside|speak-as|src|suffix\n | symbols|system|tab-size|table-layout|text-align|text-align-last|text-combine-upright|text-decoration\n | text-decoration-color|text-decoration-line|text-decoration-style|text-emphasis|text-emphasis-color\n | text-emphasis-position|text-emphasis-style|text-indent|text-orientation|text-overflow|text-rendering\n | text-shadow|text-transform|text-underline-position|top|touch-action|transform|transform-box\n | transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property\n | transition-timing-function|unicode-bidi|unicode-range|user-zoom|vertical-align|visibility|white-space|widows\n | width|will-change|word-break|word-spacing|word-wrap|writing-mode|z-index|zoom\n\n # SVG attributes\n | alignment-baseline|baseline-shift|clip-rule|color-interpolation|color-interpolation-filters|color-profile\n | color-rendering|cx|cy|dominant-baseline|enable-background|fill|fill-opacity|fill-rule|flood-color|flood-opacity\n | glyph-orientation-horizontal|glyph-orientation-vertical|height|kerning|lighting-color|marker-end|marker-mid\n | marker-start|r|rx|ry|shape-rendering|stop-color|stop-opacity|stroke|stroke-dasharray|stroke-dashoffset|stroke-linecap\n | stroke-linejoin|stroke-miterlimit|stroke-opacity|stroke-width|text-anchor|width|x|y\n\n # Not listed on MDN; presumably deprecated\n | adjust|after|align|align-last|alignment|alignment-adjust|appearance|attachment|azimuth|background-break\n | balance|baseline|before|bidi|binding|bookmark|bookmark-label|bookmark-level|bookmark-target|border-length\n | bottom-color|bottom-left-radius|bottom-right-radius|bottom-style|bottom-width|box|box-align|box-direction\n | box-flex|box-flex-group|box-lines|box-ordinal-group|box-orient|box-pack|break|character|collapse|column\n | column-break-after|column-break-before|count|counter|crop|cue|cue-after|cue-before|decoration|decoration-break\n | delay|display-model|display-role|down|drop|drop-initial-after-adjust|drop-initial-after-align|drop-initial-before-adjust\n | drop-initial-before-align|drop-initial-size|drop-initial-value|duration|elevation|emphasis|family|fit|fit-position\n | flex-group|float-offset|gap|grid-columns|grid-rows|hanging-punctuation|header|hyphenate|hyphenate-after|hyphenate-before\n | hyphenate-character|hyphenate-lines|hyphenate-resource|icon|image|increment|indent|index|initial-after-adjust\n | initial-after-align|initial-before-adjust|initial-before-align|initial-size|initial-value|inline-box-align|iteration-count\n | justify|label|left-color|left-style|left-width|length|level|line|line-stacking|line-stacking-ruby|line-stacking-shift\n | line-stacking-strategy|lines|list|mark|mark-after|mark-before|marks|marquee|marquee-direction|marquee-play-count|marquee-speed\n | marquee-style|max|min|model|move-to|name|nav|nav-down|nav-index|nav-left|nav-right|nav-up|new|numeral|offset|ordinal-group\n | orient|origin|overflow-style|overhang|pack|page|page-policy|pause|pause-after|pause-before|phonemes|pitch|pitch-range\n | play-count|play-during|play-state|point|presentation|presentation-level|profile|property|punctuation|punctuation-trim\n | radius|rate|rendering-intent|repeat|replace|reset|resolution|resource|respond-to|rest|rest-after|rest-before|richness\n | right-color|right-style|right-width|role|rotation|rotation-point|rows|ruby|ruby-overhang|ruby-span|rule|rule-color\n | rule-style|rule-width|shadow|size|size-adjust|sizing|space|space-collapse|spacing|span|speak|speak-header|speak-numeral\n | speak-punctuation|speech|speech-rate|speed|stacking|stacking-ruby|stacking-shift|stacking-strategy|stress|stretch\n | string-set|style|style-image|style-position|style-type|target|target-name|target-new|target-position|text|text-height\n | text-justify|text-outline|text-replace|text-wrap|timing-function|top-color|top-left-radius|top-right-radius|top-style\n | top-width|trim|unicode|up|user-select|variant|voice|voice-balance|voice-duration|voice-family|voice-pitch|voice-pitch-range\n | voice-rate|voice-stress|voice-volume|volume|weight|white|white-space-collapse|word|wrap\n)\n(?![\\w-])"
1420
1420
  },
1421
1421
  {
1422
1422
  "name": "support.type.vendored.property-name.css",
@@ -5,6 +5,12 @@
5
5
  {
6
6
  "include": "#variable_setting"
7
7
  },
8
+ {
9
+ "include": "#at_rule_forward"
10
+ },
11
+ {
12
+ "include": "#at_rule_use"
13
+ },
8
14
  {
9
15
  "include": "#at_rule_include"
10
16
  },
@@ -257,6 +263,55 @@
257
263
  }
258
264
  }
259
265
  },
266
+ "at_rule_forward": {
267
+ "name": "meta.at-rule.forward.scss",
268
+ "begin": "\\s*((@)forward\\b)\\s*",
269
+ "end": "\\s*(?=;)",
270
+ "patterns": [
271
+ {
272
+ "name": "keyword.control.operator",
273
+ "match": "\\b(as|hide|show)\\b"
274
+ },
275
+ {
276
+ "match": "\\b([\\w-]+)(\\*)",
277
+ "captures": {
278
+ "1": {
279
+ "name": "entity.other.attribute-name.module.scss"
280
+ },
281
+ "2": {
282
+ "name": "punctuation.definition.wildcard.scss"
283
+ }
284
+ }
285
+ },
286
+ {
287
+ "name": "entity.name.function.scss",
288
+ "match": "\\b[\\w-]+\\b"
289
+ },
290
+ {
291
+ "include": "#variable"
292
+ },
293
+ {
294
+ "include": "#string_single"
295
+ },
296
+ {
297
+ "include": "#string_double"
298
+ },
299
+ {
300
+ "include": "#comment_line"
301
+ },
302
+ {
303
+ "include": "#comment_block"
304
+ }
305
+ ],
306
+ "captures": {
307
+ "1": {
308
+ "name": "keyword.control.at-rule.forward.scss"
309
+ },
310
+ "2": {
311
+ "name": "punctuation.definition.keyword.scss"
312
+ }
313
+ }
314
+ },
260
315
  "at_rule_function": {
261
316
  "patterns": [
262
317
  {
@@ -355,7 +410,7 @@
355
410
  "patterns": [
356
411
  {
357
412
  "name": "meta.at-rule.include.scss",
358
- "begin": "(?\u003c=@include)\\s+([\\w-]+)\\s*(\\()",
413
+ "begin": "(?\u003c=@include)\\s+(?:([\\w-]+)\\s*(\\.))?([\\w-]+)\\s*(\\()",
359
414
  "end": "\\)",
360
415
  "patterns": [
361
416
  {
@@ -364,9 +419,15 @@
364
419
  ],
365
420
  "beginCaptures": {
366
421
  "1": {
367
- "name": "entity.name.function.scss"
422
+ "name": "variable.scss"
368
423
  },
369
424
  "2": {
425
+ "name": "punctuation.access.module.scss"
426
+ },
427
+ "3": {
428
+ "name": "entity.name.function.scss"
429
+ },
430
+ "4": {
370
431
  "name": "punctuation.definition.parameters.begin.bracket.round.scss"
371
432
  }
372
433
  },
@@ -377,12 +438,18 @@
377
438
  }
378
439
  },
379
440
  {
380
- "match": "(?\u003c=@include)\\s+([\\w-]+)",
441
+ "match": "(?\u003c=@include)\\s+(?:([\\w-]+)\\s*(\\.))?([\\w-]+)",
381
442
  "captures": {
382
443
  "0": {
383
444
  "name": "meta.at-rule.include.scss"
384
445
  },
385
446
  "1": {
447
+ "name": "variable.scss"
448
+ },
449
+ "2": {
450
+ "name": "punctuation.access.module.scss"
451
+ },
452
+ "3": {
386
453
  "name": "entity.name.function.scss"
387
454
  }
388
455
  }
@@ -788,6 +855,64 @@
788
855
  }
789
856
  }
790
857
  },
858
+ "at_rule_use": {
859
+ "name": "meta.at-rule.use.scss",
860
+ "begin": "\\s*((@)use\\b)\\s*",
861
+ "end": "\\s*(?=;)",
862
+ "patterns": [
863
+ {
864
+ "name": "keyword.control.operator",
865
+ "match": "\\b(as|with)\\b"
866
+ },
867
+ {
868
+ "name": "variable.scss",
869
+ "match": "\\b[\\w-]+\\b"
870
+ },
871
+ {
872
+ "name": "variable.language.expanded-namespace.scss",
873
+ "match": "\\*"
874
+ },
875
+ {
876
+ "include": "#string_single"
877
+ },
878
+ {
879
+ "include": "#string_double"
880
+ },
881
+ {
882
+ "include": "#comment_line"
883
+ },
884
+ {
885
+ "include": "#comment_block"
886
+ },
887
+ {
888
+ "begin": "\\(",
889
+ "end": "\\)",
890
+ "patterns": [
891
+ {
892
+ "include": "#function_attributes"
893
+ }
894
+ ],
895
+ "beginCaptures": {
896
+ "0": {
897
+ "name": "punctuation.definition.parameters.begin.bracket.round.scss"
898
+ }
899
+ },
900
+ "endCaptures": {
901
+ "0": {
902
+ "name": "punctuation.definition.parameters.end.bracket.round.scss"
903
+ }
904
+ }
905
+ }
906
+ ],
907
+ "captures": {
908
+ "1": {
909
+ "name": "keyword.control.at-rule.use.scss"
910
+ },
911
+ "2": {
912
+ "name": "punctuation.definition.keyword.scss"
913
+ }
914
+ }
915
+ },
791
916
  "at_rule_warn": {
792
917
  "name": "meta.at-rule.warn.scss",
793
918
  "begin": "\\s*((@)(warn|debug|error)\\b)\\s*",
@@ -898,7 +1023,7 @@
898
1023
  "match": "!default"
899
1024
  },
900
1025
  "constant_functions": {
901
- "begin": "([\\w-]+)(\\()",
1026
+ "begin": "(?:([\\w-]+)(\\.))?([\\w-]+)(\\()",
902
1027
  "end": "(\\))",
903
1028
  "patterns": [
904
1029
  {
@@ -907,9 +1032,15 @@
907
1032
  ],
908
1033
  "beginCaptures": {
909
1034
  "1": {
910
- "name": "support.function.misc.scss"
1035
+ "name": "variable.scss"
911
1036
  },
912
1037
  "2": {
1038
+ "name": "punctuation.access.module.scss"
1039
+ },
1040
+ "3": {
1041
+ "name": "support.function.misc.scss"
1042
+ },
1043
+ "4": {
913
1044
  "name": "punctuation.section.function.scss"
914
1045
  }
915
1046
  },
@@ -1048,10 +1179,10 @@
1048
1179
  "end": "}",
1049
1180
  "patterns": [
1050
1181
  {
1051
- "include": "#property_values"
1182
+ "include": "#variable"
1052
1183
  },
1053
1184
  {
1054
- "include": "#variable"
1185
+ "include": "#property_values"
1055
1186
  }
1056
1187
  ],
1057
1188
  "beginCaptures": {
@@ -1102,10 +1233,10 @@
1102
1233
  "include": "#map"
1103
1234
  },
1104
1235
  {
1105
- "include": "#property_values"
1236
+ "include": "#variable"
1106
1237
  },
1107
1238
  {
1108
- "include": "#variable"
1239
+ "include": "#property_values"
1109
1240
  }
1110
1241
  ],
1111
1242
  "beginCaptures": {
@@ -1345,7 +1476,7 @@
1345
1476
  },
1346
1477
  "selector_attribute": {
1347
1478
  "name": "meta.attribute-selector.scss",
1348
- "match": "(?xi)\n(\\[)\n\\s*\n(\n (?:\n [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+?\n)\n(?:\n \\s*([~|^$*]?=)\\s*\n (?:\n (\n (?:\n [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n )\n |\n ((\")(.*?)(\"))\n |\n ((')(.*?)('))\n )\n)?\n\\s*\n(\\])",
1479
+ "match": "(?xi)\n(\\[)\n\\s*\n(\n (?:\n [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.?\\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+?\n)\n(?:\n \\s*([~|^$*]?=)\\s*\n (?:\n (\n (?:\n [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.?\\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n )\n |\n ((\")(.*?)(\"))\n |\n ((')(.*?)('))\n )\n)?\n\\s*\n(\\])",
1349
1480
  "captures": {
1350
1481
  "1": {
1351
1482
  "name": "punctuation.definition.attribute-selector.begin.bracket.square.scss"
@@ -1440,7 +1571,7 @@
1440
1571
  },
1441
1572
  "selector_class": {
1442
1573
  "name": "entity.other.attribute-name.class.css",
1443
- "match": "(?x)\n(\\.) # Valid class-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= $ # - End of the line\n | [\\s,.\\#)\\[:{\u003e+~|] # - Another selector\n | /\\* # - A block comment\n)",
1574
+ "match": "(?x)\n(\\.) # Valid class-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.?\\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= $ # - End of the line\n | [\\s,\\#)\\[:{\u003e+~|] # - Another selector\n | \\.[^$] # - Class selector, negating module variable\n | /\\* # - A block comment\n | ; # - A semicolon\n)",
1444
1575
  "captures": {
1445
1576
  "1": {
1446
1577
  "name": "punctuation.definition.entity.css"
@@ -1468,7 +1599,7 @@
1468
1599
  },
1469
1600
  "selector_id": {
1470
1601
  "name": "entity.other.attribute-name.id.css",
1471
- "match": "(?x)\n(\\#) # Valid id-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= $ # - End of the line\n | [\\s,.\\#)\\[:{\u003e+~|] # - Another selector\n | /\\* # - A block comment\n)",
1602
+ "match": "(?x)\n(\\#) # Valid id-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.?\\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= $ # - End of the line\n | [\\s,\\#)\\[:{\u003e+~|] # - Another selector\n | \\.[^$] # - Class selector, negating module variable\n | /\\* # - A block comment\n)",
1472
1603
  "captures": {
1473
1604
  "1": {
1474
1605
  "name": "punctuation.definition.entity.css"
@@ -1492,7 +1623,7 @@
1492
1623
  },
1493
1624
  "selector_placeholder": {
1494
1625
  "name": "entity.other.attribute-name.placeholder.css",
1495
- "match": "(?x)\n(%) # Valid placeholder-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= ; # - End of statement\n | $ # - End of the line\n | [\\s,.\\#)\\[:{\u003e+~|] # - Another selector\n | /\\* # - A block comment\n)",
1626
+ "match": "(?x)\n(%) # Valid placeholder-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.\\$ # Possible start of interpolation module scope variable\n | \\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n) # Followed by either:\n(?= ; # - End of statement\n | $ # - End of the line\n | [\\s,\\#)\\[:{\u003e+~|] # - Another selector\n | \\.[^$] # - Class selector, negating module variable\n | /\\* # - A block comment\n)",
1496
1627
  "captures": {
1497
1628
  "1": {
1498
1629
  "name": "punctuation.definition.entity.css"
@@ -1717,8 +1848,26 @@
1717
1848
  }
1718
1849
  },
1719
1850
  "variables": {
1720
- "name": "variable.scss",
1721
- "match": "(\\$|\\-\\-)[A-Za-z0-9_-]+\\b"
1851
+ "patterns": [
1852
+ {
1853
+ "match": "\\b([\\w-]+)(\\.)(\\$[\\w-]+)\\b",
1854
+ "captures": {
1855
+ "1": {
1856
+ "name": "variable.scss"
1857
+ },
1858
+ "2": {
1859
+ "name": "punctuation.access.module.scss"
1860
+ },
1861
+ "3": {
1862
+ "name": "variable.scss"
1863
+ }
1864
+ }
1865
+ },
1866
+ {
1867
+ "name": "variable.scss",
1868
+ "match": "(\\$|\\-\\-)[A-Za-z0-9_-]+\\b"
1869
+ }
1870
+ ]
1722
1871
  }
1723
1872
  }
1724
1873
  }