Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/less/syntaxes/less.tmLanguage.json
4772 views
1
{
2
"information_for_contributors": [
3
"This file has been converted from https://github.com/radium-v/Better-Less/blob/master/Syntaxes/Better%20Less.tmLanguage",
4
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
5
"Once accepted there, we are happy to receive an update request."
6
],
7
"version": "https://github.com/radium-v/Better-Less/commit/63c0cba9792e49e255cce0f6dd03250fb30591e6",
8
"name": "Less",
9
"scopeName": "source.css.less",
10
"patterns": [
11
{
12
"include": "#comment-block"
13
},
14
{
15
"include": "#less-namespace-accessors"
16
},
17
{
18
"include": "#less-extend"
19
},
20
{
21
"include": "#at-rules"
22
},
23
{
24
"include": "#less-variable-assignment"
25
},
26
{
27
"include": "#property-list"
28
},
29
{
30
"include": "#selector"
31
}
32
],
33
"repository": {
34
"angle-type": {
35
"captures": {
36
"1": {
37
"name": "keyword.other.unit.less"
38
}
39
},
40
"match": "(?i:[-+]?(?:(?:\\d*\\.\\d+(?:[eE](?:[-+]?\\d+))*)|(?:[-+]?\\d+))(deg|grad|rad|turn))\\b",
41
"name": "constant.numeric.less"
42
},
43
"arbitrary-repetition": {
44
"captures": {
45
"1": {
46
"name": "punctuation.definition.arbitrary-repetition.less"
47
}
48
},
49
"match": "\\s*(?:(,))"
50
},
51
"at-charset": {
52
"begin": "\\s*((@)charset\\b)\\s*",
53
"beginCaptures": {
54
"1": {
55
"name": "keyword.control.at-rule.charset.less"
56
},
57
"2": {
58
"name": "punctuation.definition.keyword.less"
59
}
60
},
61
"end": "\\s*((?=;|$))",
62
"name": "meta.at-rule.charset.less",
63
"patterns": [
64
{
65
"include": "#literal-string"
66
}
67
]
68
},
69
"at-container": {
70
"begin": "(?=\\s*@container)",
71
"end": "\\s*(\\})",
72
"endCaptures": {
73
"1": {
74
"name": "punctuation.definition.block.end.less"
75
}
76
},
77
"patterns": [
78
{
79
"begin": "((@)container)",
80
"beginCaptures": {
81
"1": {
82
"name": "keyword.control.at-rule.container.less"
83
},
84
"2": {
85
"name": "punctuation.definition.keyword.less"
86
},
87
"3": {
88
"name": "support.constant.container.less"
89
}
90
},
91
"end": "(?=\\{)",
92
"name": "meta.at-rule.container.less",
93
"patterns": [
94
{
95
"begin": "\\s*(?=[^{;])",
96
"end": "\\s*(?=[{;])",
97
"patterns": [
98
{
99
"match": "\\b(not|and|or)\\b",
100
"name": "keyword.operator.comparison.less"
101
},
102
{
103
"begin": "\\(",
104
"beginCaptures": {
105
"0": {
106
"name": "punctuation.definition.group.begin.less"
107
}
108
},
109
"end": "\\)",
110
"endCaptures": {
111
"0": {
112
"name": "punctuation.definition.group.end.less"
113
}
114
},
115
"name": "meta.at-rule.container-query.less",
116
"patterns": [
117
{
118
"captures": {
119
"1": {
120
"name": "support.type.property-name.less"
121
}
122
},
123
"match": "\\b(aspect-ratio|block-size|height|inline-size|orientation|width)\\b",
124
"name": "support.constant.size-feature.less"
125
},
126
{
127
"match": "((<|>)=?)|=|\\/",
128
"name": "keyword.operator.comparison.less"
129
},
130
{
131
"match": ":",
132
"name": "punctuation.separator.key-value.less"
133
},
134
{
135
"match": "portrait|landscape",
136
"name": "support.constant.property-value.less"
137
},
138
{
139
"include": "#numeric-values"
140
},
141
{
142
"match": "\\/",
143
"name": "keyword.operator.arithmetic.less"
144
},
145
{
146
"include": "#var-function"
147
},
148
{
149
"include": "#less-variables"
150
},
151
{
152
"include": "#less-variable-interpolation"
153
}
154
]
155
},
156
{
157
"include": "#style-function"
158
},
159
{
160
"match": "--|(?:-?(?:(?:[a-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R]))))(?:(?:[-\\da-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))*",
161
"name": "variable.parameter.container-name.css"
162
},
163
{
164
"include": "#arbitrary-repetition"
165
},
166
{
167
"include": "#less-variables"
168
}
169
]
170
}
171
]
172
},
173
{
174
"begin": "\\s*(\\{)",
175
"beginCaptures": {
176
"1": {
177
"name": "punctuation.definition.block.begin.less"
178
}
179
},
180
"end": "(?=\\})",
181
"patterns": [
182
{
183
"include": "#rule-list-body"
184
},
185
{
186
"include": "$self"
187
}
188
]
189
}
190
]
191
},
192
"at-counter-style": {
193
"begin": "\\s*((@)counter-style\\b)\\s+(?:(?i:\\b(decimal|none)\\b)|(-?(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*))\\s*(?=\\{|$)",
194
"beginCaptures": {
195
"1": {
196
"name": "keyword.control.at-rule.counter-style.less"
197
},
198
"2": {
199
"name": "punctuation.definition.keyword.less"
200
},
201
"3": {
202
"name": "invalid.illegal.counter-style-name.less"
203
},
204
"4": {
205
"name": "entity.other.counter-style-name.css"
206
}
207
},
208
"end": "\\s*(\\})",
209
"endCaptures": {
210
"1": {
211
"name": "punctuation.definition.block.begin.less"
212
}
213
},
214
"name": "meta.at-rule.counter-style.less",
215
"patterns": [
216
{
217
"include": "#comment-block"
218
},
219
{
220
"include": "#rule-list"
221
}
222
]
223
},
224
"at-custom-media": {
225
"begin": "(?=\\s*@custom-media\\b)",
226
"end": "\\s*(?=;)",
227
"name": "meta.at-rule.custom-media.less",
228
"patterns": [
229
{
230
"captures": {
231
"0": {
232
"name": "punctuation.section.property-list.less"
233
}
234
},
235
"match": "\\s*;"
236
},
237
{
238
"captures": {
239
"1": {
240
"name": "keyword.control.at-rule.custom-media.less"
241
},
242
"2": {
243
"name": "punctuation.definition.keyword.less"
244
},
245
"3": {
246
"name": "support.constant.custom-media.less"
247
}
248
},
249
"match": "\\s*((@)custom-media)(?=.*?)"
250
},
251
{
252
"include": "#media-query-list"
253
}
254
]
255
},
256
"at-font-face": {
257
"begin": "\\s*((@)font-face)\\s*(?=\\{|$)",
258
"beginCaptures": {
259
"1": {
260
"name": "keyword.control.at-rule.font-face.less"
261
},
262
"2": {
263
"name": "punctuation.definition.keyword.less"
264
}
265
},
266
"end": "\\s*(\\})",
267
"endCaptures": {
268
"1": {
269
"name": "punctuation.definition.block.end.less"
270
}
271
},
272
"name": "meta.at-rule.font-face.less",
273
"patterns": [
274
{
275
"include": "#comment-block"
276
},
277
{
278
"include": "#rule-list"
279
}
280
]
281
},
282
"at-import": {
283
"begin": "\\s*((@)import\\b)\\s*",
284
"beginCaptures": {
285
"1": {
286
"name": "keyword.control.at-rule.import.less"
287
},
288
"2": {
289
"name": "punctuation.definition.keyword.less"
290
}
291
},
292
"end": "\\;",
293
"endCaptures": {
294
"0": {
295
"name": "punctuation.terminator.rule.less"
296
}
297
},
298
"name": "meta.at-rule.import.less",
299
"patterns": [
300
{
301
"include": "#url-function"
302
},
303
{
304
"include": "#less-variables"
305
},
306
{
307
"begin": "(?<=([\"'])|([\"']\\)))\\s*",
308
"end": "\\s*(?=\\;)",
309
"patterns": [
310
{
311
"include": "#media-query"
312
}
313
]
314
},
315
{
316
"begin": "\\(",
317
"beginCaptures": {
318
"0": {
319
"name": "punctuation.definition.group.begin.less"
320
}
321
},
322
"end": "\\)",
323
"endCaptures": {
324
"0": {
325
"name": "punctuation.definition.group.end.less"
326
}
327
},
328
"name": "meta.group.less",
329
"patterns": [
330
{
331
"match": "reference|inline|less|css|once|multiple|optional",
332
"name": "constant.language.import-directive.less"
333
},
334
{
335
"include": "#comma-delimiter"
336
}
337
]
338
},
339
{
340
"include": "#literal-string"
341
}
342
]
343
},
344
"at-keyframes": {
345
"begin": "\\s*((@)keyframes)(?=.*?\\{)",
346
"beginCaptures": {
347
"1": {
348
"name": "keyword.control.at-rule.keyframe.less"
349
},
350
"2": {
351
"name": "punctuation.definition.keyword.less"
352
},
353
"4": {
354
"name": "support.constant.keyframe.less"
355
}
356
},
357
"end": "\\s*(\\})",
358
"endCaptures": {
359
"1": {
360
"name": "punctuation.definition.block.end.less"
361
}
362
},
363
"patterns": [
364
{
365
"begin": "\\s*(\\{)",
366
"beginCaptures": {
367
"1": {
368
"name": "punctuation.definition.block.begin.less"
369
}
370
},
371
"end": "(?=\\})",
372
"patterns": [
373
{
374
"captures": {
375
"1": {
376
"name": "keyword.other.keyframe-selector.less"
377
},
378
"2": {
379
"name": "constant.numeric.less"
380
},
381
"3": {
382
"name": "keyword.other.unit.less"
383
}
384
},
385
"match": "\\s*(?:(from|to)|((?:\\.[0-9]+|[0-9]+(?:\\.[0-9]*)?)(%)))\\s*,?\\s*"
386
},
387
{
388
"include": "$self"
389
}
390
]
391
},
392
{
393
"begin": "\\s*(?=[^{;])",
394
"end": "\\s*(?=\\{)",
395
"name": "meta.at-rule.keyframe.less",
396
"patterns": [
397
{
398
"include": "#keyframe-name"
399
},
400
{
401
"include": "#arbitrary-repetition"
402
}
403
]
404
}
405
]
406
},
407
"at-media": {
408
"begin": "(?=\\s*@media\\b)",
409
"end": "\\s*(\\})",
410
"endCaptures": {
411
"1": {
412
"name": "punctuation.definition.block.end.less"
413
}
414
},
415
"patterns": [
416
{
417
"begin": "\\s*((@)media)",
418
"beginCaptures": {
419
"1": {
420
"name": "keyword.control.at-rule.media.less"
421
},
422
"2": {
423
"name": "punctuation.definition.keyword.less"
424
},
425
"3": {
426
"name": "support.constant.media.less"
427
}
428
},
429
"end": "\\s*(?=\\{)",
430
"name": "meta.at-rule.media.less",
431
"patterns": [
432
{
433
"include": "#media-query-list"
434
}
435
]
436
},
437
{
438
"begin": "\\s*(\\{)",
439
"beginCaptures": {
440
"1": {
441
"name": "punctuation.definition.block.begin.less"
442
}
443
},
444
"end": "(?=\\})",
445
"patterns": [
446
{
447
"include": "#rule-list-body"
448
},
449
{
450
"include": "$self"
451
}
452
]
453
}
454
]
455
},
456
"at-namespace": {
457
"begin": "\\s*((@)namespace)\\s+",
458
"beginCaptures": {
459
"1": {
460
"name": "keyword.control.at-rule.namespace.less"
461
},
462
"2": {
463
"name": "punctuation.definition.keyword.less"
464
}
465
},
466
"end": "\\;",
467
"endCaptures": {
468
"0": {
469
"name": "punctuation.terminator.rule.less"
470
}
471
},
472
"name": "meta.at-rule.namespace.less",
473
"patterns": [
474
{
475
"include": "#url-function"
476
},
477
{
478
"include": "#literal-string"
479
},
480
{
481
"match": "(-?(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
482
"name": "entity.name.constant.namespace-prefix.less"
483
}
484
]
485
},
486
"at-page": {
487
"captures": {
488
"1": {
489
"name": "keyword.control.at-rule.page.less"
490
},
491
"2": {
492
"name": "punctuation.definition.keyword.less"
493
},
494
"3": {
495
"name": "punctuation.definition.entity.less"
496
},
497
"4": {
498
"name": "entity.other.attribute-name.pseudo-class.less"
499
}
500
},
501
"match": "\\s*((@)page)\\s*(?:(:)(first|left|right))?\\s*(?=\\{|$)",
502
"name": "meta.at-rule.page.less",
503
"patterns": [
504
{
505
"include": "#comment-block"
506
},
507
{
508
"include": "#rule-list"
509
}
510
]
511
},
512
"at-rules": {
513
"patterns": [
514
{
515
"include": "#at-charset"
516
},
517
{
518
"include": "#at-container"
519
},
520
{
521
"include": "#at-counter-style"
522
},
523
{
524
"include": "#at-custom-media"
525
},
526
{
527
"include": "#at-font-face"
528
},
529
{
530
"include": "#at-media"
531
},
532
{
533
"include": "#at-import"
534
},
535
{
536
"include": "#at-keyframes"
537
},
538
{
539
"include": "#at-namespace"
540
},
541
{
542
"include": "#at-page"
543
},
544
{
545
"include": "#at-supports"
546
},
547
{
548
"include": "#at-viewport"
549
}
550
]
551
},
552
"at-supports": {
553
"begin": "(?=\\s*@supports\\b)",
554
"end": "(?=\\s*)(\\})",
555
"endCaptures": {
556
"1": {
557
"name": "punctuation.definition.block.end.less"
558
}
559
},
560
"patterns": [
561
{
562
"begin": "\\s*((@)supports)",
563
"beginCaptures": {
564
"1": {
565
"name": "keyword.control.at-rule.supports.less"
566
},
567
"2": {
568
"name": "punctuation.definition.keyword.less"
569
},
570
"3": {
571
"name": "support.constant.supports.less"
572
}
573
},
574
"end": "\\s*(?=\\{)",
575
"name": "meta.at-rule.supports.less",
576
"patterns": [
577
{
578
"include": "#at-supports-operators"
579
},
580
{
581
"include": "#at-supports-parens"
582
}
583
]
584
},
585
{
586
"begin": "\\s*(\\{)",
587
"beginCaptures": {
588
"1": {
589
"name": "punctuation.section.property-list.begin.less"
590
}
591
},
592
"end": "(?=\\})",
593
"patterns": [
594
{
595
"include": "#rule-list-body"
596
},
597
{
598
"include": "$self"
599
}
600
]
601
}
602
]
603
},
604
"at-supports-operators": {
605
"match": "\\b(?:and|or|not)\\b",
606
"name": "keyword.operator.logic.less"
607
},
608
"at-supports-parens": {
609
"begin": "\\(",
610
"beginCaptures": {
611
"0": {
612
"name": "punctuation.definition.group.begin.less"
613
}
614
},
615
"end": "\\)",
616
"endCaptures": {
617
"0": {
618
"name": "punctuation.definition.group.end.less"
619
}
620
},
621
"name": "meta.group.less",
622
"patterns": [
623
{
624
"include": "#at-supports-operators"
625
},
626
{
627
"include": "#at-supports-parens"
628
},
629
{
630
"include": "#rule-list-body"
631
}
632
]
633
},
634
"attr-function": {
635
"begin": "\\b(attr)(?=\\()",
636
"beginCaptures": {
637
"1": {
638
"name": "support.function.filter.less"
639
}
640
},
641
"end": "\\)",
642
"endCaptures": {
643
"0": {
644
"name": "punctuation.definition.group.end.less"
645
}
646
},
647
"name": "meta.function-call.less",
648
"patterns": [
649
{
650
"begin": "\\(",
651
"beginCaptures": {
652
"0": {
653
"name": "punctuation.definition.group.begin.less"
654
}
655
},
656
"end": "(?=\\))",
657
"patterns": [
658
{
659
"include": "#qualified-name"
660
},
661
{
662
"include": "#literal-string"
663
},
664
{
665
"begin": "(-?(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
666
"end": "(?=\\))",
667
"name": "entity.other.attribute-name.less",
668
"patterns": [
669
{
670
"match": "(?x)\\b((?i:em|ex|ch|rem)|(?i:vw|vh|vmin|vmax)|(?i:cm|mm|q|in|pt|pc|px|fr)|(?i:deg|grad|rad|turn)|(?i:s|ms)|(?i:Hz|kHz)|(?i:dpi|dpcm|dppx))\\b",
671
"name": "keyword.other.unit.less"
672
},
673
{
674
"include": "#comma-delimiter"
675
},
676
{
677
"include": "#property-value-constants"
678
},
679
{
680
"include": "#numeric-values"
681
}
682
]
683
},
684
{
685
"include": "#color-values"
686
}
687
]
688
}
689
]
690
},
691
"builtin-functions": {
692
"patterns": [
693
{
694
"include": "#attr-function"
695
},
696
{
697
"include": "#calc-function"
698
},
699
{
700
"include": "#color-functions"
701
},
702
{
703
"include": "#counter-functions"
704
},
705
{
706
"include": "#cross-fade-function"
707
},
708
{
709
"include": "#cubic-bezier-function"
710
},
711
{
712
"include": "#filter-function"
713
},
714
{
715
"include": "#fit-content-function"
716
},
717
{
718
"include": "#format-function"
719
},
720
{
721
"include": "#gradient-functions"
722
},
723
{
724
"include": "#grid-repeat-function"
725
},
726
{
727
"include": "#image-function"
728
},
729
{
730
"include": "#less-functions"
731
},
732
{
733
"include": "#local-function"
734
},
735
{
736
"include": "#minmax-function"
737
},
738
{
739
"include": "#regexp-function"
740
},
741
{
742
"include": "#shape-functions"
743
},
744
{
745
"include": "#steps-function"
746
},
747
{
748
"include": "#symbols-function"
749
},
750
{
751
"include": "#transform-functions"
752
},
753
{
754
"include": "#url-function"
755
},
756
{
757
"include": "#var-function"
758
}
759
]
760
},
761
"calc-function": {
762
"begin": "\\b(calc)(?=\\()",
763
"beginCaptures": {
764
"1": {
765
"name": "support.function.calc.less"
766
}
767
},
768
"end": "\\)",
769
"endCaptures": {
770
"0": {
771
"name": "punctuation.definition.group.end.less"
772
}
773
},
774
"name": "meta.function-call.less",
775
"patterns": [
776
{
777
"begin": "\\(",
778
"beginCaptures": {
779
"0": {
780
"name": "punctuation.definition.group.begin.less"
781
}
782
},
783
"end": "(?=\\))",
784
"patterns": [
785
{
786
"include": "#less-strings"
787
},
788
{
789
"include": "#var-function"
790
},
791
{
792
"include": "#calc-function"
793
},
794
{
795
"include": "#attr-function"
796
},
797
{
798
"include": "#less-math"
799
},
800
{
801
"include": "#relative-color"
802
}
803
]
804
}
805
]
806
},
807
"color-adjuster-operators": {
808
"match": "[\\-\\+*](?=\\s+)",
809
"name": "keyword.operator.less"
810
},
811
"color-functions": {
812
"patterns": [
813
{
814
"begin": "\\b(rgba?)(?=\\()",
815
"beginCaptures": {
816
"1": {
817
"name": "support.function.color.less"
818
}
819
},
820
"comment": "rgb(), rgba()",
821
"end": "\\)",
822
"endCaptures": {
823
"0": {
824
"name": "punctuation.definition.group.end.less"
825
}
826
},
827
"name": "meta.function-call.less",
828
"patterns": [
829
{
830
"begin": "\\(",
831
"beginCaptures": {
832
"0": {
833
"name": "punctuation.definition.group.begin.less"
834
}
835
},
836
"end": "(?=\\))",
837
"patterns": [
838
{
839
"include": "#less-strings"
840
},
841
{
842
"include": "#less-variables"
843
},
844
{
845
"include": "#var-function"
846
},
847
{
848
"include": "#comma-delimiter"
849
},
850
{
851
"include": "#value-separator"
852
},
853
{
854
"include": "#percentage-type"
855
},
856
{
857
"include": "#number-type"
858
}
859
]
860
}
861
]
862
},
863
{
864
"begin": "\\b(hsla|hsl|hwb|oklab|oklch|lab|lch)(?=\\()",
865
"beginCaptures": {
866
"1": {
867
"name": "support.function.color.less"
868
}
869
},
870
"comment": "hsla, hsl, hwb, oklab, oklch, lab, lch",
871
"end": "\\)",
872
"endCaptures": {
873
"0": {
874
"name": "punctuation.definition.group.end.less"
875
}
876
},
877
"name": "meta.function-call.less",
878
"patterns": [
879
{
880
"begin": "\\(",
881
"beginCaptures": {
882
"0": {
883
"name": "punctuation.definition.group.begin.less"
884
}
885
},
886
"end": "(?=\\))",
887
"patterns": [
888
{
889
"include": "#color-values"
890
},
891
{
892
"include": "#less-strings"
893
},
894
{
895
"include": "#less-variables"
896
},
897
{
898
"include": "#var-function"
899
},
900
{
901
"include": "#comma-delimiter"
902
},
903
{
904
"include": "#angle-type"
905
},
906
{
907
"include": "#percentage-type"
908
},
909
{
910
"include": "#number-type"
911
},
912
{
913
"include": "#calc-function"
914
},
915
{
916
"include": "#value-separator"
917
}
918
]
919
}
920
]
921
},
922
{
923
"begin": "\\b(light-dark)(?=\\()",
924
"beginCaptures": {
925
"1": {
926
"name": "support.function.color.less"
927
}
928
},
929
"comment": "light-dark()",
930
"end": "\\)",
931
"endCaptures": {
932
"0": {
933
"name": "punctuation.definition.group.end.less"
934
}
935
},
936
"name": "meta.function-call.less",
937
"patterns": [
938
{
939
"begin": "\\(",
940
"beginCaptures": {
941
"0": {
942
"name": "punctuation.definition.group.begin.less"
943
}
944
},
945
"end": "(?=\\))",
946
"patterns": [
947
{
948
"include": "#color-values"
949
},
950
{
951
"include": "#comma-delimiter"
952
}
953
]
954
}
955
]
956
},
957
{
958
"include": "#less-color-functions"
959
}
960
]
961
},
962
"color-values": {
963
"patterns": [
964
{
965
"include": "#color-functions"
966
},
967
{
968
"include": "#less-functions"
969
},
970
{
971
"include": "#less-variables"
972
},
973
{
974
"include": "#var-function"
975
},
976
{
977
"match": "\\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\\b",
978
"name": "support.constant.color.w3c-standard-color-name.less"
979
},
980
{
981
"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|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\\b",
982
"name": "support.constant.color.w3c-extended-color-keywords.less"
983
},
984
{
985
"match": "\\b((?i)currentColor|transparent)\\b",
986
"name": "support.constant.color.w3c-special-color-keyword.less"
987
},
988
{
989
"captures": {
990
"1": {
991
"name": "punctuation.definition.constant.less"
992
}
993
},
994
"match": "(#)(\\h{3}|\\h{4}|\\h{6}|\\h{8})\\b",
995
"name": "constant.other.color.rgb-value.less"
996
},
997
{
998
"include": "#relative-color"
999
}
1000
]
1001
},
1002
"comma-delimiter": {
1003
"captures": {
1004
"1": {
1005
"name": "punctuation.separator.less"
1006
}
1007
},
1008
"match": "\\s*(,)\\s*"
1009
},
1010
"comment-block": {
1011
"patterns": [
1012
{
1013
"begin": "/\\*",
1014
"beginCaptures": {
1015
"0": {
1016
"name": "punctuation.definition.comment.less"
1017
}
1018
},
1019
"end": "\\*/",
1020
"endCaptures": {
1021
"0": {
1022
"name": "punctuation.definition.comment.less"
1023
}
1024
},
1025
"name": "comment.block.less"
1026
},
1027
{
1028
"include": "#comment-line"
1029
}
1030
]
1031
},
1032
"comment-line": {
1033
"captures": {
1034
"1": {
1035
"name": "punctuation.definition.comment.less"
1036
}
1037
},
1038
"match": "(//).*$\\n?",
1039
"name": "comment.line.double-slash.less"
1040
},
1041
"counter-functions": {
1042
"patterns": [
1043
{
1044
"begin": "\\b(counter)(?=\\()",
1045
"beginCaptures": {
1046
"1": {
1047
"name": "support.function.filter.less"
1048
}
1049
},
1050
"end": "\\)",
1051
"endCaptures": {
1052
"0": {
1053
"name": "punctuation.definition.group.end.less"
1054
}
1055
},
1056
"name": "meta.function-call.less",
1057
"patterns": [
1058
{
1059
"begin": "\\(",
1060
"beginCaptures": {
1061
"0": {
1062
"name": "punctuation.definition.group.begin.less"
1063
}
1064
},
1065
"end": "(?=\\))",
1066
"patterns": [
1067
{
1068
"include": "#less-strings"
1069
},
1070
{
1071
"include": "#less-variables"
1072
},
1073
{
1074
"include": "#var-function"
1075
},
1076
{
1077
"match": "(?:--(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))+|-?(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
1078
"name": "entity.other.counter-name.less"
1079
},
1080
{
1081
"begin": "(?=,)",
1082
"end": "(?=\\))",
1083
"patterns": [
1084
{
1085
"include": "#comma-delimiter"
1086
},
1087
{
1088
"match": "\\b((?xi:arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)|none)\\b",
1089
"name": "support.constant.property-value.counter-style.less"
1090
}
1091
]
1092
}
1093
]
1094
}
1095
]
1096
},
1097
{
1098
"begin": "\\b(counters)(?=\\()",
1099
"beginCaptures": {
1100
"1": {
1101
"name": "support.function.filter.less"
1102
}
1103
},
1104
"end": "\\)",
1105
"endCaptures": {
1106
"0": {
1107
"name": "punctuation.definition.group.end.less"
1108
}
1109
},
1110
"name": "meta.function-call.less",
1111
"patterns": [
1112
{
1113
"begin": "\\(",
1114
"beginCaptures": {
1115
"0": {
1116
"name": "punctuation.definition.group.begin.less"
1117
}
1118
},
1119
"end": "(?=\\))",
1120
"patterns": [
1121
{
1122
"match": "(-?(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
1123
"name": "entity.other.counter-name.less string.unquoted.less"
1124
},
1125
{
1126
"begin": "(?=,)",
1127
"end": "(?=\\))",
1128
"patterns": [
1129
{
1130
"include": "#less-strings"
1131
},
1132
{
1133
"include": "#less-variables"
1134
},
1135
{
1136
"include": "#var-function"
1137
},
1138
{
1139
"include": "#literal-string"
1140
},
1141
{
1142
"include": "#comma-delimiter"
1143
},
1144
{
1145
"match": "\\b((?xi:arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)|none)\\b",
1146
"name": "support.constant.property-value.counter-style.less"
1147
}
1148
]
1149
}
1150
]
1151
}
1152
]
1153
}
1154
]
1155
},
1156
"cross-fade-function": {
1157
"patterns": [
1158
{
1159
"begin": "\\b(cross-fade)(?=\\()",
1160
"beginCaptures": {
1161
"1": {
1162
"name": "support.function.image.less"
1163
}
1164
},
1165
"end": "\\)",
1166
"endCaptures": {
1167
"0": {
1168
"name": "punctuation.definition.group.end.less"
1169
}
1170
},
1171
"name": "meta.function-call.less",
1172
"patterns": [
1173
{
1174
"begin": "\\(",
1175
"beginCaptures": {
1176
"0": {
1177
"name": "punctuation.definition.group.begin.less"
1178
}
1179
},
1180
"end": "(?=\\))",
1181
"patterns": [
1182
{
1183
"include": "#comma-delimiter"
1184
},
1185
{
1186
"include": "#percentage-type"
1187
},
1188
{
1189
"include": "#color-values"
1190
},
1191
{
1192
"include": "#image-type"
1193
},
1194
{
1195
"include": "#literal-string"
1196
},
1197
{
1198
"include": "#unquoted-string"
1199
}
1200
]
1201
}
1202
]
1203
}
1204
]
1205
},
1206
"cubic-bezier-function": {
1207
"begin": "\\b(cubic-bezier)(\\()",
1208
"beginCaptures": {
1209
"1": {
1210
"name": "support.function.timing.less"
1211
},
1212
"2": {
1213
"name": "punctuation.definition.group.begin.less"
1214
}
1215
},
1216
"contentName": "meta.group.less",
1217
"end": "\\)",
1218
"endCaptures": {
1219
"0": {
1220
"name": "punctuation.definition.group.end.less"
1221
}
1222
},
1223
"name": "meta.function-call.less",
1224
"patterns": [
1225
{
1226
"include": "#less-functions"
1227
},
1228
{
1229
"include": "#calc-function"
1230
},
1231
{
1232
"include": "#less-variables"
1233
},
1234
{
1235
"include": "#var-function"
1236
},
1237
{
1238
"include": "#comma-delimiter"
1239
},
1240
{
1241
"include": "#number-type"
1242
}
1243
]
1244
},
1245
"custom-property-name": {
1246
"captures": {
1247
"1": {
1248
"name": "punctuation.definition.custom-property.less"
1249
},
1250
"2": {
1251
"name": "support.type.custom-property.name.less"
1252
}
1253
},
1254
"match": "\\s*(--)((?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))+)",
1255
"name": "support.type.custom-property.less"
1256
},
1257
"dimensions": {
1258
"patterns": [
1259
{
1260
"include": "#angle-type"
1261
},
1262
{
1263
"include": "#frequency-type"
1264
},
1265
{
1266
"include": "#time-type"
1267
},
1268
{
1269
"include": "#percentage-type"
1270
},
1271
{
1272
"include": "#length-type"
1273
}
1274
]
1275
},
1276
"filter-function": {
1277
"begin": "\\b(filter)(?=\\()",
1278
"beginCaptures": {
1279
"1": {
1280
"name": "support.function.filter.less"
1281
}
1282
},
1283
"end": "\\)",
1284
"endCaptures": {
1285
"0": {
1286
"name": "punctuation.definition.group.end.less"
1287
}
1288
},
1289
"name": "meta.function-call.less",
1290
"patterns": [
1291
{
1292
"begin": "\\(",
1293
"beginCaptures": {
1294
"0": {
1295
"name": "punctuation.definition.group.begin.less"
1296
}
1297
},
1298
"end": "(?=\\))",
1299
"name": "meta.group.less",
1300
"patterns": [
1301
{
1302
"include": "#comma-delimiter"
1303
},
1304
{
1305
"include": "#image-type"
1306
},
1307
{
1308
"include": "#literal-string"
1309
},
1310
{
1311
"include": "#filter-functions"
1312
}
1313
]
1314
}
1315
]
1316
},
1317
"filter-functions": {
1318
"patterns": [
1319
{
1320
"include": "#less-functions"
1321
},
1322
{
1323
"begin": "\\b(blur)(?=\\()",
1324
"beginCaptures": {
1325
"1": {
1326
"name": "support.function.filter.less"
1327
}
1328
},
1329
"end": "\\)",
1330
"endCaptures": {
1331
"0": {
1332
"name": "punctuation.definition.group.end.less"
1333
}
1334
},
1335
"name": "meta.function-call.less",
1336
"patterns": [
1337
{
1338
"begin": "\\(",
1339
"beginCaptures": {
1340
"0": {
1341
"name": "punctuation.definition.group.begin.less"
1342
}
1343
},
1344
"end": "(?=\\))",
1345
"patterns": [
1346
{
1347
"include": "#length-type"
1348
}
1349
]
1350
}
1351
]
1352
},
1353
{
1354
"begin": "\\b(brightness|contrast|grayscale|invert|opacity|saturate|sepia)(?=\\()",
1355
"beginCaptures": {
1356
"1": {
1357
"name": "support.function.filter.less"
1358
}
1359
},
1360
"end": "\\)",
1361
"endCaptures": {
1362
"0": {
1363
"name": "punctuation.definition.group.end.less"
1364
}
1365
},
1366
"name": "meta.function-call.less",
1367
"patterns": [
1368
{
1369
"begin": "\\(",
1370
"beginCaptures": {
1371
"0": {
1372
"name": "punctuation.definition.group.begin.less"
1373
}
1374
},
1375
"end": "(?=\\))",
1376
"patterns": [
1377
{
1378
"include": "#percentage-type"
1379
},
1380
{
1381
"include": "#number-type"
1382
},
1383
{
1384
"include": "#less-functions"
1385
}
1386
]
1387
}
1388
]
1389
},
1390
{
1391
"begin": "\\b(drop-shadow)(?=\\()",
1392
"beginCaptures": {
1393
"1": {
1394
"name": "support.function.filter.less"
1395
}
1396
},
1397
"end": "\\)",
1398
"endCaptures": {
1399
"0": {
1400
"name": "punctuation.definition.group.end.less"
1401
}
1402
},
1403
"name": "meta.function-call.less",
1404
"patterns": [
1405
{
1406
"begin": "\\(",
1407
"beginCaptures": {
1408
"0": {
1409
"name": "punctuation.definition.group.begin.less"
1410
}
1411
},
1412
"end": "(?=\\))",
1413
"patterns": [
1414
{
1415
"include": "#length-type"
1416
},
1417
{
1418
"include": "#color-values"
1419
}
1420
]
1421
}
1422
]
1423
},
1424
{
1425
"begin": "\\b(hue-rotate)(?=\\()",
1426
"beginCaptures": {
1427
"1": {
1428
"name": "support.function.filter.less"
1429
}
1430
},
1431
"end": "\\)",
1432
"endCaptures": {
1433
"0": {
1434
"name": "punctuation.definition.group.end.less"
1435
}
1436
},
1437
"name": "meta.function-call.less",
1438
"patterns": [
1439
{
1440
"begin": "\\(",
1441
"beginCaptures": {
1442
"0": {
1443
"name": "punctuation.definition.group.begin.less"
1444
}
1445
},
1446
"end": "(?=\\))",
1447
"patterns": [
1448
{
1449
"include": "#angle-type"
1450
}
1451
]
1452
}
1453
]
1454
}
1455
]
1456
},
1457
"fit-content-function": {
1458
"begin": "\\b(fit-content)(?=\\()",
1459
"beginCaptures": {
1460
"1": {
1461
"name": "support.function.grid.less"
1462
}
1463
},
1464
"end": "\\)",
1465
"endCaptures": {
1466
"0": {
1467
"name": "punctuation.definition.group.end.less"
1468
}
1469
},
1470
"name": "meta.function-call.less",
1471
"patterns": [
1472
{
1473
"begin": "\\(",
1474
"beginCaptures": {
1475
"0": {
1476
"name": "punctuation.definition.group.begin.less"
1477
}
1478
},
1479
"end": "(?=\\))",
1480
"patterns": [
1481
{
1482
"include": "#less-variables"
1483
},
1484
{
1485
"include": "#var-function"
1486
},
1487
{
1488
"include": "#calc-function"
1489
},
1490
{
1491
"include": "#percentage-type"
1492
},
1493
{
1494
"include": "#length-type"
1495
}
1496
]
1497
}
1498
]
1499
},
1500
"format-function": {
1501
"patterns": [
1502
{
1503
"begin": "\\b(format)(?=\\()",
1504
"beginCaptures": {
1505
"0": {
1506
"name": "support.function.format.less"
1507
}
1508
},
1509
"end": "\\)",
1510
"endCaptures": {
1511
"0": {
1512
"name": "punctuation.definition.group.end.less"
1513
}
1514
},
1515
"name": "meta.function-call.less",
1516
"patterns": [
1517
{
1518
"begin": "\\(",
1519
"beginCaptures": {
1520
"0": {
1521
"name": "punctuation.definition.group.begin.less"
1522
}
1523
},
1524
"end": "(?=\\))",
1525
"patterns": [
1526
{
1527
"include": "#literal-string"
1528
}
1529
]
1530
}
1531
]
1532
}
1533
]
1534
},
1535
"frequency-type": {
1536
"captures": {
1537
"1": {
1538
"name": "keyword.other.unit.less"
1539
}
1540
},
1541
"match": "(?i:[-+]?(?:(?:\\d*\\.\\d+(?:[eE](?:[-+]?\\d+))*)|(?:[-+]?\\d+))(Hz|kHz))\\b",
1542
"name": "constant.numeric.less"
1543
},
1544
"global-property-values": {
1545
"match": "\\b(?:initial|inherit|unset|revert-layer|revert)\\b",
1546
"name": "support.constant.property-value.less"
1547
},
1548
"gradient-functions": {
1549
"patterns": [
1550
{
1551
"begin": "\\b((?:repeating-)?linear-gradient)(?=\\()",
1552
"beginCaptures": {
1553
"1": {
1554
"name": "support.function.gradient.less"
1555
}
1556
},
1557
"end": "\\)",
1558
"endCaptures": {
1559
"0": {
1560
"name": "punctuation.definition.group.end.less"
1561
}
1562
},
1563
"name": "meta.function-call.less",
1564
"patterns": [
1565
{
1566
"begin": "\\(",
1567
"beginCaptures": {
1568
"0": {
1569
"name": "punctuation.definition.group.begin.less"
1570
}
1571
},
1572
"end": "(?=\\))",
1573
"patterns": [
1574
{
1575
"include": "#less-variables"
1576
},
1577
{
1578
"include": "#var-function"
1579
},
1580
{
1581
"include": "#angle-type"
1582
},
1583
{
1584
"include": "#color-values"
1585
},
1586
{
1587
"include": "#percentage-type"
1588
},
1589
{
1590
"include": "#length-type"
1591
},
1592
{
1593
"include": "#comma-delimiter"
1594
},
1595
{
1596
"match": "\\bto\\b",
1597
"name": "keyword.other.less"
1598
},
1599
{
1600
"match": "\\b(top|right|bottom|left)\\b",
1601
"name": "support.constant.property-value.less"
1602
}
1603
]
1604
}
1605
]
1606
},
1607
{
1608
"begin": "\\b((?:repeating-)?radial-gradient)(?=\\()",
1609
"beginCaptures": {
1610
"1": {
1611
"name": "support.function.gradient.less"
1612
}
1613
},
1614
"end": "\\)",
1615
"endCaptures": {
1616
"0": {
1617
"name": "punctuation.definition.group.end.less"
1618
}
1619
},
1620
"name": "meta.function-call.less",
1621
"patterns": [
1622
{
1623
"begin": "\\(",
1624
"beginCaptures": {
1625
"0": {
1626
"name": "punctuation.definition.group.begin.less"
1627
}
1628
},
1629
"end": "(?=\\))",
1630
"patterns": [
1631
{
1632
"include": "#less-variables"
1633
},
1634
{
1635
"include": "#var-function"
1636
},
1637
{
1638
"include": "#color-values"
1639
},
1640
{
1641
"include": "#percentage-type"
1642
},
1643
{
1644
"include": "#length-type"
1645
},
1646
{
1647
"include": "#comma-delimiter"
1648
},
1649
{
1650
"match": "\\b(at|circle|ellipse)\\b",
1651
"name": "keyword.other.less"
1652
},
1653
{
1654
"match": "\\b(top|right|bottom|left|center|(farthest|closest)-(corner|side))\\b",
1655
"name": "support.constant.property-value.less"
1656
}
1657
]
1658
}
1659
]
1660
}
1661
]
1662
},
1663
"grid-repeat-function": {
1664
"begin": "\\b(repeat)(?=\\()",
1665
"beginCaptures": {
1666
"1": {
1667
"name": "support.function.grid.less"
1668
}
1669
},
1670
"end": "\\)",
1671
"endCaptures": {
1672
"0": {
1673
"name": "punctuation.definition.group.end.less"
1674
}
1675
},
1676
"name": "meta.function-call.less",
1677
"patterns": [
1678
{
1679
"begin": "\\(",
1680
"beginCaptures": {
1681
"0": {
1682
"name": "punctuation.definition.group.begin.less"
1683
}
1684
},
1685
"end": "(?=\\))",
1686
"patterns": [
1687
{
1688
"include": "#comma-delimiter"
1689
},
1690
{
1691
"include": "#var-function"
1692
},
1693
{
1694
"include": "#length-type"
1695
},
1696
{
1697
"include": "#percentage-type"
1698
},
1699
{
1700
"include": "#minmax-function"
1701
},
1702
{
1703
"include": "#integer-type"
1704
},
1705
{
1706
"match": "\\b(auto-(fill|fit))\\b",
1707
"name": "support.keyword.repetitions.less"
1708
},
1709
{
1710
"match": "\\b(((max|min)-content)|auto)\\b",
1711
"name": "support.constant.property-value.less"
1712
}
1713
]
1714
}
1715
]
1716
},
1717
"image-function": {
1718
"begin": "\\b(image)(?=\\()",
1719
"beginCaptures": {
1720
"1": {
1721
"name": "support.function.image.less"
1722
}
1723
},
1724
"end": "\\)",
1725
"endCaptures": {
1726
"0": {
1727
"name": "punctuation.definition.group.end.less"
1728
}
1729
},
1730
"name": "meta.function-call.less",
1731
"patterns": [
1732
{
1733
"begin": "\\(",
1734
"beginCaptures": {
1735
"0": {
1736
"name": "punctuation.definition.group.begin.less"
1737
}
1738
},
1739
"end": "(?=\\))",
1740
"patterns": [
1741
{
1742
"include": "#image-type"
1743
},
1744
{
1745
"include": "#literal-string"
1746
},
1747
{
1748
"include": "#color-values"
1749
},
1750
{
1751
"include": "#comma-delimiter"
1752
},
1753
{
1754
"include": "#unquoted-string"
1755
}
1756
]
1757
}
1758
]
1759
},
1760
"image-type": {
1761
"patterns": [
1762
{
1763
"include": "#cross-fade-function"
1764
},
1765
{
1766
"include": "#gradient-functions"
1767
},
1768
{
1769
"include": "#image-function"
1770
},
1771
{
1772
"include": "#url-function"
1773
}
1774
]
1775
},
1776
"important": {
1777
"captures": {
1778
"1": {
1779
"name": "punctuation.separator.less"
1780
}
1781
},
1782
"match": "(\\!)\\s*important",
1783
"name": "keyword.other.important.less"
1784
},
1785
"integer-type": {
1786
"match": "(?:[-+]?\\d+)",
1787
"name": "constant.numeric.less"
1788
},
1789
"keyframe-name": {
1790
"begin": "\\s*(-?(?:[_a-z]|[^\\x{00}-\\x{7F}]|(?:(:?\\\\[0-9a-f]{1,6}(\\r\\n|[\\s\\t\\r\\n\\f])?)|\\\\[^\\r\\n\\f0-9a-f]))(?:[_a-z0-9-]|[^\\x{00}-\\x{7F}]|(?:(:?\\\\[0-9a-f]{1,6}(\\r\\n|[\\t\\r\\n\\f])?)|\\\\[^\\r\\n\\f0-9a-f]))*)?",
1791
"beginCaptures": {
1792
"1": {
1793
"name": "variable.other.constant.animation-name.less"
1794
}
1795
},
1796
"end": "\\s*(?:(,)|(?=[{;]))",
1797
"endCaptures": {
1798
"1": {
1799
"name": "punctuation.definition.arbitrary-repetition.less"
1800
}
1801
}
1802
},
1803
"length-type": {
1804
"patterns": [
1805
{
1806
"captures": {
1807
"1": {
1808
"name": "keyword.other.unit.less"
1809
}
1810
},
1811
"match": "(?:[-+]?)(?:\\d+\\.\\d+|\\.?\\d+)(?:[eE][-+]?\\d+)?(em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|m|q|in|pt|pc|px|fr|dpi|dpcm|dppx|x)",
1812
"name": "constant.numeric.less"
1813
},
1814
{
1815
"match": "\\b(?:[-+]?)0\\b",
1816
"name": "constant.numeric.less"
1817
}
1818
]
1819
},
1820
"less-boolean-function": {
1821
"begin": "\\b(boolean)(?=\\()",
1822
"beginCaptures": {
1823
"1": {
1824
"name": "support.function.boolean.less"
1825
}
1826
},
1827
"end": "\\)",
1828
"endCaptures": {
1829
"0": {
1830
"name": "punctuation.definition.group.end.less"
1831
}
1832
},
1833
"name": "meta.function-call.less",
1834
"patterns": [
1835
{
1836
"begin": "\\(",
1837
"beginCaptures": {
1838
"0": {
1839
"name": "punctuation.definition.group.begin.less"
1840
}
1841
},
1842
"end": "(?=\\))",
1843
"patterns": [
1844
{
1845
"include": "#less-logical-comparisons"
1846
}
1847
]
1848
}
1849
]
1850
},
1851
"less-color-blend-functions": {
1852
"patterns": [
1853
{
1854
"begin": "\\b(multiply|screen|overlay|(soft|hard)light|difference|exclusion|negation|average)(?=\\()",
1855
"beginCaptures": {
1856
"1": {
1857
"name": "support.function.color-blend.less"
1858
}
1859
},
1860
"end": "\\)",
1861
"endCaptures": {
1862
"0": {
1863
"name": "punctuation.definition.group.end.less"
1864
}
1865
},
1866
"name": "meta.function-call.less",
1867
"patterns": [
1868
{
1869
"begin": "\\(",
1870
"beginCaptures": {
1871
"0": {
1872
"name": "punctuation.definition.group.begin.less"
1873
}
1874
},
1875
"end": "(?=\\))",
1876
"patterns": [
1877
{
1878
"include": "#less-variables"
1879
},
1880
{
1881
"include": "#var-function"
1882
},
1883
{
1884
"include": "#comma-delimiter"
1885
},
1886
{
1887
"include": "#color-values"
1888
}
1889
]
1890
}
1891
]
1892
}
1893
]
1894
},
1895
"less-color-channel-functions": {
1896
"patterns": [
1897
{
1898
"begin": "\\b(hue|saturation|lightness|hsv(hue|saturation|value)|red|green|blue|alpha|luma|luminance)(?=\\()",
1899
"beginCaptures": {
1900
"1": {
1901
"name": "support.function.color-definition.less"
1902
}
1903
},
1904
"end": "\\)",
1905
"endCaptures": {
1906
"0": {
1907
"name": "punctuation.definition.group.end.less"
1908
}
1909
},
1910
"name": "meta.function-call.less",
1911
"patterns": [
1912
{
1913
"begin": "\\(",
1914
"beginCaptures": {
1915
"0": {
1916
"name": "punctuation.definition.group.begin.less"
1917
}
1918
},
1919
"end": "(?=\\))",
1920
"patterns": [
1921
{
1922
"include": "#color-values"
1923
}
1924
]
1925
}
1926
]
1927
}
1928
]
1929
},
1930
"less-color-definition-functions": {
1931
"patterns": [
1932
{
1933
"begin": "\\b(argb)(?=\\()",
1934
"beginCaptures": {
1935
"1": {
1936
"name": "support.function.color-definition.less"
1937
}
1938
},
1939
"comment": "argb()",
1940
"end": "\\)",
1941
"endCaptures": {
1942
"0": {
1943
"name": "punctuation.definition.group.end.less"
1944
}
1945
},
1946
"name": "meta.function-call.less",
1947
"patterns": [
1948
{
1949
"begin": "\\(",
1950
"beginCaptures": {
1951
"0": {
1952
"name": "punctuation.definition.group.begin.less"
1953
}
1954
},
1955
"end": "(?=\\))",
1956
"patterns": [
1957
{
1958
"include": "#less-variables"
1959
},
1960
{
1961
"include": "#var-function"
1962
},
1963
{
1964
"include": "#color-values"
1965
}
1966
]
1967
}
1968
]
1969
},
1970
{
1971
"begin": "\\b(hsva?)(?=\\()",
1972
"beginCaptures": {
1973
"1": {
1974
"name": "support.function.color.less"
1975
}
1976
},
1977
"comment": "hsva(), hsv()",
1978
"end": "\\)",
1979
"endCaptures": {
1980
"0": {
1981
"name": "punctuation.definition.group.end.less"
1982
}
1983
},
1984
"name": "meta.function-call.less",
1985
"patterns": [
1986
{
1987
"begin": "\\(",
1988
"beginCaptures": {
1989
"0": {
1990
"name": "punctuation.definition.group.begin.less"
1991
}
1992
},
1993
"end": "(?=\\))",
1994
"patterns": [
1995
{
1996
"include": "#integer-type"
1997
},
1998
{
1999
"include": "#percentage-type"
2000
},
2001
{
2002
"include": "#number-type"
2003
},
2004
{
2005
"include": "#less-strings"
2006
},
2007
{
2008
"include": "#less-variables"
2009
},
2010
{
2011
"include": "#var-function"
2012
},
2013
{
2014
"include": "#calc-function"
2015
},
2016
{
2017
"include": "#comma-delimiter"
2018
}
2019
]
2020
}
2021
]
2022
}
2023
]
2024
},
2025
"less-color-functions": {
2026
"patterns": [
2027
{
2028
"include": "#less-color-blend-functions"
2029
},
2030
{
2031
"include": "#less-color-channel-functions"
2032
},
2033
{
2034
"include": "#less-color-definition-functions"
2035
},
2036
{
2037
"include": "#less-color-operation-functions"
2038
}
2039
]
2040
},
2041
"less-color-operation-functions": {
2042
"patterns": [
2043
{
2044
"begin": "\\b(fade|shade|tint)(?=\\()",
2045
"beginCaptures": {
2046
"1": {
2047
"name": "support.function.color-operation.less"
2048
}
2049
},
2050
"end": "\\)",
2051
"endCaptures": {
2052
"0": {
2053
"name": "punctuation.definition.group.end.less"
2054
}
2055
},
2056
"name": "meta.function-call.less",
2057
"patterns": [
2058
{
2059
"begin": "\\(",
2060
"beginCaptures": {
2061
"0": {
2062
"name": "punctuation.definition.group.begin.less"
2063
}
2064
},
2065
"end": "(?=\\))",
2066
"patterns": [
2067
{
2068
"include": "#color-values"
2069
},
2070
{
2071
"include": "#comma-delimiter"
2072
},
2073
{
2074
"include": "#percentage-type"
2075
}
2076
]
2077
}
2078
]
2079
},
2080
{
2081
"begin": "\\b(spin)(?=\\()",
2082
"beginCaptures": {
2083
"1": {
2084
"name": "support.function.color-operation.less"
2085
}
2086
},
2087
"end": "\\)",
2088
"endCaptures": {
2089
"0": {
2090
"name": "punctuation.definition.group.end.less"
2091
}
2092
},
2093
"name": "meta.function-call.less",
2094
"patterns": [
2095
{
2096
"begin": "\\(",
2097
"beginCaptures": {
2098
"0": {
2099
"name": "punctuation.definition.group.begin.less"
2100
}
2101
},
2102
"end": "(?=\\))",
2103
"patterns": [
2104
{
2105
"include": "#color-values"
2106
},
2107
{
2108
"include": "#comma-delimiter"
2109
},
2110
{
2111
"include": "#number-type"
2112
}
2113
]
2114
}
2115
]
2116
},
2117
{
2118
"begin": "\\b(((de)?saturate)|((light|dark)en)|(fade(in|out)))(?=\\()",
2119
"beginCaptures": {
2120
"1": {
2121
"name": "support.function.color-operation.less"
2122
}
2123
},
2124
"end": "\\)",
2125
"endCaptures": {
2126
"0": {
2127
"name": "punctuation.definition.group.end.less"
2128
}
2129
},
2130
"name": "meta.function-call.less",
2131
"patterns": [
2132
{
2133
"begin": "\\(",
2134
"beginCaptures": {
2135
"0": {
2136
"name": "punctuation.definition.group.begin.less"
2137
}
2138
},
2139
"end": "(?=\\))",
2140
"patterns": [
2141
{
2142
"include": "#color-values"
2143
},
2144
{
2145
"include": "#comma-delimiter"
2146
},
2147
{
2148
"include": "#percentage-type"
2149
},
2150
{
2151
"match": "\\brelative\\b",
2152
"name": "constant.language.relative.less"
2153
}
2154
]
2155
}
2156
]
2157
},
2158
{
2159
"begin": "\\b(contrast)(?=\\()",
2160
"beginCaptures": {
2161
"1": {
2162
"name": "support.function.color-operation.less"
2163
}
2164
},
2165
"end": "\\)",
2166
"endCaptures": {
2167
"0": {
2168
"name": "punctuation.definition.group.end.less"
2169
}
2170
},
2171
"name": "meta.function-call.less",
2172
"patterns": [
2173
{
2174
"begin": "\\(",
2175
"beginCaptures": {
2176
"0": {
2177
"name": "punctuation.definition.group.begin.less"
2178
}
2179
},
2180
"end": "(?=\\))",
2181
"patterns": [
2182
{
2183
"include": "#color-values"
2184
},
2185
{
2186
"include": "#comma-delimiter"
2187
},
2188
{
2189
"include": "#percentage-type"
2190
}
2191
]
2192
}
2193
]
2194
},
2195
{
2196
"begin": "\\b(greyscale)(?=\\()",
2197
"beginCaptures": {
2198
"1": {
2199
"name": "support.function.color-operation.less"
2200
}
2201
},
2202
"end": "\\)",
2203
"endCaptures": {
2204
"0": {
2205
"name": "punctuation.definition.group.end.less"
2206
}
2207
},
2208
"name": "meta.function-call.less",
2209
"patterns": [
2210
{
2211
"begin": "\\(",
2212
"beginCaptures": {
2213
"0": {
2214
"name": "punctuation.definition.group.begin.less"
2215
}
2216
},
2217
"end": "(?=\\))",
2218
"patterns": [
2219
{
2220
"include": "#color-values"
2221
}
2222
]
2223
}
2224
]
2225
},
2226
{
2227
"begin": "\\b(mix)(?=\\()",
2228
"beginCaptures": {
2229
"1": {
2230
"name": "support.function.color-operation.less"
2231
}
2232
},
2233
"end": "\\)",
2234
"endCaptures": {
2235
"0": {
2236
"name": "punctuation.definition.group.end.less"
2237
}
2238
},
2239
"name": "meta.function-call.less",
2240
"patterns": [
2241
{
2242
"begin": "\\(",
2243
"beginCaptures": {
2244
"0": {
2245
"name": "punctuation.definition.group.begin.less"
2246
}
2247
},
2248
"end": "(?=\\))",
2249
"patterns": [
2250
{
2251
"include": "#color-values"
2252
},
2253
{
2254
"include": "#comma-delimiter"
2255
},
2256
{
2257
"include": "#less-math"
2258
},
2259
{
2260
"include": "#percentage-type"
2261
}
2262
]
2263
}
2264
]
2265
}
2266
]
2267
},
2268
"less-extend": {
2269
"begin": "(:)(extend)(?=\\()",
2270
"beginCaptures": {
2271
"1": {
2272
"name": "punctuation.definition.entity.less"
2273
},
2274
"2": {
2275
"name": "entity.other.attribute-name.pseudo-class.extend.less"
2276
}
2277
},
2278
"end": "\\)",
2279
"endCaptures": {
2280
"0": {
2281
"name": "punctuation.definition.group.end.less"
2282
}
2283
},
2284
"name": "meta.function-call.less",
2285
"patterns": [
2286
{
2287
"begin": "\\(",
2288
"beginCaptures": {
2289
"0": {
2290
"name": "punctuation.definition.group.begin.less"
2291
}
2292
},
2293
"end": "(?=\\))",
2294
"patterns": [
2295
{
2296
"match": "\\ball\\b",
2297
"name": "constant.language.all.less"
2298
},
2299
{
2300
"include": "#selectors"
2301
}
2302
]
2303
}
2304
]
2305
},
2306
"less-functions": {
2307
"patterns": [
2308
{
2309
"include": "#less-boolean-function"
2310
},
2311
{
2312
"include": "#less-color-functions"
2313
},
2314
{
2315
"include": "#less-if-function"
2316
},
2317
{
2318
"include": "#less-list-functions"
2319
},
2320
{
2321
"include": "#less-math-functions"
2322
},
2323
{
2324
"include": "#less-misc-functions"
2325
},
2326
{
2327
"include": "#less-string-functions"
2328
},
2329
{
2330
"include": "#less-type-functions"
2331
}
2332
]
2333
},
2334
"less-if-function": {
2335
"begin": "\\b(if)(?=\\()",
2336
"beginCaptures": {
2337
"1": {
2338
"name": "support.function.if.less"
2339
}
2340
},
2341
"end": "\\)",
2342
"endCaptures": {
2343
"0": {
2344
"name": "punctuation.definition.group.end.less"
2345
}
2346
},
2347
"name": "meta.function-call.less",
2348
"patterns": [
2349
{
2350
"begin": "\\(",
2351
"beginCaptures": {
2352
"0": {
2353
"name": "punctuation.definition.group.begin.less"
2354
}
2355
},
2356
"end": "(?=\\))",
2357
"patterns": [
2358
{
2359
"include": "#less-mixin-guards"
2360
},
2361
{
2362
"include": "#comma-delimiter"
2363
},
2364
{
2365
"include": "#property-values"
2366
}
2367
]
2368
}
2369
]
2370
},
2371
"less-list-functions": {
2372
"patterns": [
2373
{
2374
"begin": "\\b(length)(?=\\()\\b",
2375
"beginCaptures": {
2376
"1": {
2377
"name": "support.function.length.less"
2378
}
2379
},
2380
"end": "\\)",
2381
"endCaptures": {
2382
"0": {
2383
"name": "punctuation.definition.group.end.less"
2384
}
2385
},
2386
"name": "meta.function-call.less",
2387
"patterns": [
2388
{
2389
"begin": "\\(",
2390
"beginCaptures": {
2391
"0": {
2392
"name": "punctuation.definition.group.begin.less"
2393
}
2394
},
2395
"end": "(?=\\))",
2396
"patterns": [
2397
{
2398
"include": "#property-values"
2399
},
2400
{
2401
"include": "#comma-delimiter"
2402
}
2403
]
2404
}
2405
]
2406
},
2407
{
2408
"begin": "\\b(extract)(?=\\()\\b",
2409
"beginCaptures": {
2410
"1": {
2411
"name": "support.function.extract.less"
2412
}
2413
},
2414
"end": "\\)",
2415
"endCaptures": {
2416
"0": {
2417
"name": "punctuation.definition.group.end.less"
2418
}
2419
},
2420
"name": "meta.function-call.less",
2421
"patterns": [
2422
{
2423
"begin": "\\(",
2424
"beginCaptures": {
2425
"0": {
2426
"name": "punctuation.definition.group.begin.less"
2427
}
2428
},
2429
"end": "(?=\\))",
2430
"patterns": [
2431
{
2432
"include": "#property-values"
2433
},
2434
{
2435
"include": "#comma-delimiter"
2436
},
2437
{
2438
"include": "#integer-type"
2439
}
2440
]
2441
}
2442
]
2443
},
2444
{
2445
"begin": "\\b(range)(?=\\()\\b",
2446
"beginCaptures": {
2447
"1": {
2448
"name": "support.function.range.less"
2449
}
2450
},
2451
"end": "\\)",
2452
"endCaptures": {
2453
"0": {
2454
"name": "punctuation.definition.group.end.less"
2455
}
2456
},
2457
"name": "meta.function-call.less",
2458
"patterns": [
2459
{
2460
"begin": "\\(",
2461
"beginCaptures": {
2462
"0": {
2463
"name": "punctuation.definition.group.begin.less"
2464
}
2465
},
2466
"end": "(?=\\))",
2467
"patterns": [
2468
{
2469
"include": "#property-values"
2470
},
2471
{
2472
"include": "#comma-delimiter"
2473
},
2474
{
2475
"include": "#integer-type"
2476
}
2477
]
2478
}
2479
]
2480
}
2481
]
2482
},
2483
"less-logical-comparisons": {
2484
"patterns": [
2485
{
2486
"captures": {
2487
"1": {
2488
"name": "keyword.operator.logical.less"
2489
}
2490
},
2491
"match": "\\s*(=|((<|>)=?))\\s*"
2492
},
2493
{
2494
"begin": "\\(",
2495
"beginCaptures": {
2496
"0": {
2497
"name": "punctuation.definition.group.begin.less"
2498
}
2499
},
2500
"end": "\\)",
2501
"endCaptures": {
2502
"0": {
2503
"name": "punctuation.definition.group.end.less"
2504
}
2505
},
2506
"name": "meta.group.less",
2507
"patterns": [
2508
{
2509
"include": "#less-logical-comparisons"
2510
}
2511
]
2512
},
2513
{
2514
"match": "\\btrue|false\\b",
2515
"name": "constant.language.less"
2516
},
2517
{
2518
"match": ",",
2519
"name": "punctuation.separator.less"
2520
},
2521
{
2522
"include": "#property-values"
2523
},
2524
{
2525
"include": "#selectors"
2526
},
2527
{
2528
"include": "#unquoted-string"
2529
}
2530
]
2531
},
2532
"less-math": {
2533
"patterns": [
2534
{
2535
"match": "[-\\+\\*\\/]",
2536
"name": "keyword.operator.arithmetic.less"
2537
},
2538
{
2539
"begin": "\\(",
2540
"beginCaptures": {
2541
"0": {
2542
"name": "punctuation.definition.group.begin.less"
2543
}
2544
},
2545
"end": "\\)",
2546
"endCaptures": {
2547
"0": {
2548
"name": "punctuation.definition.group.end.less"
2549
}
2550
},
2551
"name": "meta.group.less",
2552
"patterns": [
2553
{
2554
"include": "#less-math"
2555
}
2556
]
2557
},
2558
{
2559
"include": "#numeric-values"
2560
},
2561
{
2562
"include": "#less-variables"
2563
}
2564
]
2565
},
2566
"less-math-functions": {
2567
"patterns": [
2568
{
2569
"begin": "\\b(ceil|floor|percentage|round|sqrt|abs|a?(sin|cos|tan))(?=\\()",
2570
"beginCaptures": {
2571
"1": {
2572
"name": "support.function.math.less"
2573
}
2574
},
2575
"end": "\\)",
2576
"endCaptures": {
2577
"0": {
2578
"name": "punctuation.definition.group.end.less"
2579
}
2580
},
2581
"name": "meta.function-call.less",
2582
"patterns": [
2583
{
2584
"begin": "\\(",
2585
"beginCaptures": {
2586
"0": {
2587
"name": "punctuation.definition.group.begin.less"
2588
}
2589
},
2590
"end": "(?=\\))",
2591
"patterns": [
2592
{
2593
"include": "#less-variables"
2594
},
2595
{
2596
"include": "#numeric-values"
2597
}
2598
]
2599
}
2600
]
2601
},
2602
{
2603
"captures": {
2604
"2": {
2605
"name": "support.function.math.less"
2606
},
2607
"3": {
2608
"name": "punctuation.definition.group.begin.less"
2609
},
2610
"4": {
2611
"name": "punctuation.definition.group.end.less"
2612
}
2613
},
2614
"match": "((pi)(\\()(\\)))",
2615
"name": "meta.function-call.less"
2616
},
2617
{
2618
"begin": "\\b(pow|m(od|in|ax))(?=\\()",
2619
"beginCaptures": {
2620
"1": {
2621
"name": "support.function.math.less"
2622
}
2623
},
2624
"end": "\\)",
2625
"endCaptures": {
2626
"0": {
2627
"name": "punctuation.definition.group.end.less"
2628
}
2629
},
2630
"name": "meta.function-call.less",
2631
"patterns": [
2632
{
2633
"begin": "\\(",
2634
"beginCaptures": {
2635
"0": {
2636
"name": "punctuation.definition.group.begin.less"
2637
}
2638
},
2639
"end": "(?=\\))",
2640
"patterns": [
2641
{
2642
"include": "#less-variables"
2643
},
2644
{
2645
"include": "#numeric-values"
2646
},
2647
{
2648
"include": "#comma-delimiter"
2649
}
2650
]
2651
}
2652
]
2653
}
2654
]
2655
},
2656
"less-misc-functions": {
2657
"patterns": [
2658
{
2659
"begin": "\\b(color)(?=\\()",
2660
"beginCaptures": {
2661
"1": {
2662
"name": "support.function.color.less"
2663
}
2664
},
2665
"end": "\\)",
2666
"endCaptures": {
2667
"0": {
2668
"name": "punctuation.definition.group.end.less"
2669
}
2670
},
2671
"name": "meta.function-call.less",
2672
"patterns": [
2673
{
2674
"begin": "\\(",
2675
"beginCaptures": {
2676
"0": {
2677
"name": "punctuation.definition.group.begin.less"
2678
}
2679
},
2680
"end": "(?=\\))",
2681
"patterns": [
2682
{
2683
"include": "#literal-string"
2684
}
2685
]
2686
}
2687
]
2688
},
2689
{
2690
"begin": "\\b(image-(size|width|height))(?=\\()",
2691
"beginCaptures": {
2692
"1": {
2693
"name": "support.function.image.less"
2694
}
2695
},
2696
"end": "\\)",
2697
"endCaptures": {
2698
"0": {
2699
"name": "punctuation.definition.group.end.less"
2700
}
2701
},
2702
"name": "meta.function-call.less",
2703
"patterns": [
2704
{
2705
"begin": "\\(",
2706
"beginCaptures": {
2707
"0": {
2708
"name": "punctuation.definition.group.begin.less"
2709
}
2710
},
2711
"end": "(?=\\))",
2712
"patterns": [
2713
{
2714
"include": "#literal-string"
2715
},
2716
{
2717
"include": "#unquoted-string"
2718
}
2719
]
2720
}
2721
]
2722
},
2723
{
2724
"begin": "\\b(convert|unit)(?=\\()",
2725
"beginCaptures": {
2726
"1": {
2727
"name": "support.function.convert.less"
2728
}
2729
},
2730
"end": "\\)",
2731
"endCaptures": {
2732
"0": {
2733
"name": "punctuation.definition.group.end.less"
2734
}
2735
},
2736
"name": "meta.function-call.less",
2737
"patterns": [
2738
{
2739
"begin": "\\(",
2740
"beginCaptures": {
2741
"0": {
2742
"name": "punctuation.definition.group.begin.less"
2743
}
2744
},
2745
"end": "(?=\\))",
2746
"patterns": [
2747
{
2748
"include": "#less-variables"
2749
},
2750
{
2751
"include": "#numeric-values"
2752
},
2753
{
2754
"include": "#literal-string"
2755
},
2756
{
2757
"include": "#comma-delimiter"
2758
},
2759
{
2760
"match": "((c|m)?m|in|p(t|c|x)|m?s|g?rad|deg|turn|%|r?em|ex|ch)",
2761
"name": "keyword.other.unit.less"
2762
}
2763
]
2764
}
2765
]
2766
},
2767
{
2768
"begin": "\\b(data-uri)(?=\\()",
2769
"beginCaptures": {
2770
"1": {
2771
"name": "support.function.data-uri.less"
2772
}
2773
},
2774
"end": "\\)",
2775
"endCaptures": {
2776
"0": {
2777
"name": "punctuation.definition.group.end.less"
2778
}
2779
},
2780
"name": "meta.function-call.less",
2781
"patterns": [
2782
{
2783
"begin": "\\(",
2784
"beginCaptures": {
2785
"0": {
2786
"name": "punctuation.definition.group.begin.less"
2787
}
2788
},
2789
"end": "(?=\\))",
2790
"patterns": [
2791
{
2792
"include": "#less-variables"
2793
},
2794
{
2795
"include": "#literal-string"
2796
},
2797
{
2798
"captures": {
2799
"1": {
2800
"name": "punctuation.separator.less"
2801
}
2802
},
2803
"match": "\\s*(?:(,))"
2804
}
2805
]
2806
}
2807
]
2808
},
2809
{
2810
"captures": {
2811
"2": {
2812
"name": "punctuation.definition.group.begin.less"
2813
},
2814
"3": {
2815
"name": "punctuation.definition.group.end.less"
2816
}
2817
},
2818
"match": "\\b(default(\\()(\\)))\\b",
2819
"name": "support.function.default.less"
2820
},
2821
{
2822
"begin": "\\b(get-unit)(?=\\()",
2823
"beginCaptures": {
2824
"1": {
2825
"name": "support.function.get-unit.less"
2826
}
2827
},
2828
"end": "\\)",
2829
"endCaptures": {
2830
"0": {
2831
"name": "punctuation.definition.group.end.less"
2832
}
2833
},
2834
"name": "meta.function-call.less",
2835
"patterns": [
2836
{
2837
"begin": "\\(",
2838
"beginCaptures": {
2839
"0": {
2840
"name": "punctuation.definition.group.begin.less"
2841
}
2842
},
2843
"end": "(?=\\))",
2844
"patterns": [
2845
{
2846
"include": "#dimensions"
2847
}
2848
]
2849
}
2850
]
2851
},
2852
{
2853
"begin": "\\b(svg-gradient)(?=\\()",
2854
"beginCaptures": {
2855
"1": {
2856
"name": "support.function.svg-gradient.less"
2857
}
2858
},
2859
"end": "\\)",
2860
"endCaptures": {
2861
"0": {
2862
"name": "punctuation.definition.group.end.less"
2863
}
2864
},
2865
"name": "meta.function-call.less",
2866
"patterns": [
2867
{
2868
"begin": "\\(",
2869
"beginCaptures": {
2870
"0": {
2871
"name": "punctuation.definition.group.begin.less"
2872
}
2873
},
2874
"end": "(?=\\))",
2875
"patterns": [
2876
{
2877
"include": "#angle-type"
2878
},
2879
{
2880
"include": "#comma-delimiter"
2881
},
2882
{
2883
"include": "#color-values"
2884
},
2885
{
2886
"include": "#percentage-type"
2887
},
2888
{
2889
"include": "#length-type"
2890
},
2891
{
2892
"match": "\\bto\\b",
2893
"name": "keyword.other.less"
2894
},
2895
{
2896
"match": "\\b(top|right|bottom|left|center)\\b",
2897
"name": "support.constant.property-value.less"
2898
},
2899
{
2900
"match": "\\b(at|circle|ellipse)\\b",
2901
"name": "keyword.other.less"
2902
}
2903
]
2904
}
2905
]
2906
}
2907
]
2908
},
2909
"less-mixin-guards": {
2910
"patterns": [
2911
{
2912
"begin": "\\s*(and|not|or)?\\s*(?=\\()",
2913
"beginCaptures": {
2914
"1": {
2915
"name": "keyword.operator.logical.less"
2916
}
2917
},
2918
"end": "\\)",
2919
"endCaptures": {
2920
"0": {
2921
"name": "punctuation.definition.group.end.less"
2922
}
2923
},
2924
"patterns": [
2925
{
2926
"begin": "\\(",
2927
"beginCaptures": {
2928
"0": {
2929
"name": "punctuation.definition.group.begin.less"
2930
}
2931
},
2932
"end": "(?=\\))",
2933
"name": "meta.group.less",
2934
"patterns": [
2935
{
2936
"include": "#less-variable-comparison"
2937
},
2938
{
2939
"captures": {
2940
"1": {
2941
"name": "meta.group.less"
2942
},
2943
"2": {
2944
"name": "punctuation.definition.group.begin.less"
2945
},
2946
"3": {
2947
"name": "punctuation.definition.group.end.less"
2948
}
2949
},
2950
"match": "default((\\()(\\)))",
2951
"name": "support.function.default.less"
2952
},
2953
{
2954
"include": "#property-values"
2955
},
2956
{
2957
"include": "#less-logical-comparisons"
2958
},
2959
{
2960
"include": "$self"
2961
}
2962
]
2963
}
2964
]
2965
}
2966
]
2967
},
2968
"less-namespace-accessors": {
2969
"patterns": [
2970
{
2971
"begin": "(?=\\s*when\\b)",
2972
"end": "\\s*(?:(,)|(?=[{;]))",
2973
"endCaptures": {
2974
"1": {
2975
"name": "punctuation.definition.block.end.less"
2976
}
2977
},
2978
"name": "meta.conditional.guarded-namespace.less",
2979
"patterns": [
2980
{
2981
"captures": {
2982
"1": {
2983
"name": "keyword.control.conditional.less"
2984
},
2985
"2": {
2986
"name": "punctuation.definition.keyword.less"
2987
}
2988
},
2989
"match": "\\s*(when)(?=.*?)"
2990
},
2991
{
2992
"include": "#less-mixin-guards"
2993
},
2994
{
2995
"include": "#comma-delimiter"
2996
},
2997
{
2998
"begin": "\\s*(\\{)",
2999
"beginCaptures": {
3000
"1": {
3001
"name": "punctuation.section.property-list.begin.less"
3002
}
3003
},
3004
"end": "(?=\\})",
3005
"name": "meta.block.less",
3006
"patterns": [
3007
{
3008
"include": "#rule-list-body"
3009
}
3010
]
3011
},
3012
{
3013
"include": "#selectors"
3014
}
3015
]
3016
},
3017
{
3018
"begin": "(\\()",
3019
"beginCaptures": {
3020
"1": {
3021
"name": "punctuation.definition.group.begin.less"
3022
}
3023
},
3024
"end": "(\\))",
3025
"endCaptures": {
3026
"1": {
3027
"name": "punctuation.definition.group.end.less"
3028
},
3029
"2": {
3030
"name": "punctuation.terminator.rule.less"
3031
}
3032
},
3033
"name": "meta.group.less",
3034
"patterns": [
3035
{
3036
"include": "#less-variable-assignment"
3037
},
3038
{
3039
"include": "#comma-delimiter"
3040
},
3041
{
3042
"include": "#property-values"
3043
},
3044
{
3045
"include": "#rule-list-body"
3046
}
3047
]
3048
},
3049
{
3050
"captures": {
3051
"1": {
3052
"name": "punctuation.terminator.rule.less"
3053
}
3054
},
3055
"match": "(;)|(?=[})])"
3056
}
3057
]
3058
},
3059
"less-string-functions": {
3060
"patterns": [
3061
{
3062
"begin": "\\b(e(scape)?)(?=\\()\\b",
3063
"beginCaptures": {
3064
"1": {
3065
"name": "support.function.escape.less"
3066
}
3067
},
3068
"end": "\\)",
3069
"endCaptures": {
3070
"0": {
3071
"name": "punctuation.definition.group.end.less"
3072
}
3073
},
3074
"name": "meta.function-call.less",
3075
"patterns": [
3076
{
3077
"begin": "\\(",
3078
"beginCaptures": {
3079
"0": {
3080
"name": "punctuation.definition.group.begin.less"
3081
}
3082
},
3083
"end": "(?=\\))",
3084
"patterns": [
3085
{
3086
"include": "#less-variables"
3087
},
3088
{
3089
"include": "#comma-delimiter"
3090
},
3091
{
3092
"include": "#literal-string"
3093
},
3094
{
3095
"include": "#unquoted-string"
3096
}
3097
]
3098
}
3099
]
3100
},
3101
{
3102
"begin": "\\s*(%)(?=\\()\\s*",
3103
"beginCaptures": {
3104
"1": {
3105
"name": "support.function.format.less"
3106
}
3107
},
3108
"end": "\\)",
3109
"endCaptures": {
3110
"0": {
3111
"name": "punctuation.definition.group.end.less"
3112
}
3113
},
3114
"name": "meta.function-call.less",
3115
"patterns": [
3116
{
3117
"begin": "\\(",
3118
"beginCaptures": {
3119
"0": {
3120
"name": "punctuation.definition.group.begin.less"
3121
}
3122
},
3123
"end": "(?=\\))",
3124
"patterns": [
3125
{
3126
"include": "#less-variables"
3127
},
3128
{
3129
"include": "#comma-delimiter"
3130
},
3131
{
3132
"include": "#literal-string"
3133
},
3134
{
3135
"include": "#property-values"
3136
}
3137
]
3138
}
3139
]
3140
},
3141
{
3142
"begin": "\\b(replace)(?=\\()\\b",
3143
"beginCaptures": {
3144
"1": {
3145
"name": "support.function.replace.less"
3146
}
3147
},
3148
"end": "\\)",
3149
"endCaptures": {
3150
"0": {
3151
"name": "punctuation.definition.group.end.less"
3152
}
3153
},
3154
"name": "meta.function-call.less",
3155
"patterns": [
3156
{
3157
"begin": "\\(",
3158
"beginCaptures": {
3159
"0": {
3160
"name": "punctuation.definition.group.begin.less"
3161
}
3162
},
3163
"end": "(?=\\))",
3164
"patterns": [
3165
{
3166
"include": "#less-variables"
3167
},
3168
{
3169
"include": "#comma-delimiter"
3170
},
3171
{
3172
"include": "#literal-string"
3173
},
3174
{
3175
"include": "#property-values"
3176
}
3177
]
3178
}
3179
]
3180
}
3181
]
3182
},
3183
"less-strings": {
3184
"patterns": [
3185
{
3186
"begin": "(~)('|\")",
3187
"beginCaptures": {
3188
"1": {
3189
"name": "constant.character.escape.less"
3190
},
3191
"2": {
3192
"name": "punctuation.definition.string.begin.less"
3193
}
3194
},
3195
"contentName": "markup.raw.inline.less",
3196
"end": "('|\")|(\\n)",
3197
"endCaptures": {
3198
"1": {
3199
"name": "punctuation.definition.string.end.less"
3200
},
3201
"2": {
3202
"name": "invalid.illegal.newline.less"
3203
}
3204
},
3205
"name": "string.quoted.other.less",
3206
"patterns": [
3207
{
3208
"include": "#string-content"
3209
}
3210
]
3211
}
3212
]
3213
},
3214
"less-type-functions": {
3215
"patterns": [
3216
{
3217
"begin": "\\b(is(number|string|color|keyword|url|pixel|em|percentage|ruleset))(?=\\()",
3218
"beginCaptures": {
3219
"1": {
3220
"name": "support.function.type.less"
3221
}
3222
},
3223
"end": "\\)",
3224
"endCaptures": {
3225
"0": {
3226
"name": "punctuation.definition.group.end.less"
3227
}
3228
},
3229
"name": "meta.function-call.less",
3230
"patterns": [
3231
{
3232
"begin": "\\(",
3233
"beginCaptures": {
3234
"0": {
3235
"name": "punctuation.definition.group.begin.less"
3236
}
3237
},
3238
"end": "(?=\\))",
3239
"patterns": [
3240
{
3241
"include": "#property-values"
3242
}
3243
]
3244
}
3245
]
3246
},
3247
{
3248
"begin": "\\b(isunit)(?=\\()",
3249
"beginCaptures": {
3250
"1": {
3251
"name": "support.function.type.less"
3252
}
3253
},
3254
"end": "\\)",
3255
"endCaptures": {
3256
"0": {
3257
"name": "punctuation.definition.group.end.less"
3258
}
3259
},
3260
"name": "meta.function-call.less",
3261
"patterns": [
3262
{
3263
"begin": "\\(",
3264
"beginCaptures": {
3265
"0": {
3266
"name": "punctuation.definition.group.begin.less"
3267
}
3268
},
3269
"end": "(?=\\))",
3270
"patterns": [
3271
{
3272
"include": "#property-values"
3273
},
3274
{
3275
"include": "#comma-delimiter"
3276
},
3277
{
3278
"match": "(?x)\\b((?i:em|ex|ch|rem)|(?i:vw|vh|vmin|vmax)|(?i:cm|mm|q|in|pt|pc|px|fr)|(?i:deg|grad|rad|turn)|(?i:s|ms)|(?i:Hz|kHz)|(?i:dpi|dpcm|dppx))\\b",
3279
"name": "keyword.other.unit.less"
3280
}
3281
]
3282
}
3283
]
3284
},
3285
{
3286
"begin": "\\b(isdefined)(?=\\()",
3287
"beginCaptures": {
3288
"1": {
3289
"name": "support.function.type.less"
3290
}
3291
},
3292
"end": "\\)",
3293
"endCaptures": {
3294
"0": {
3295
"name": "punctuation.definition.group.end.less"
3296
}
3297
},
3298
"name": "meta.function-call.less",
3299
"patterns": [
3300
{
3301
"begin": "\\(",
3302
"beginCaptures": {
3303
"0": {
3304
"name": "punctuation.definition.group.begin.less"
3305
}
3306
},
3307
"end": "(?=\\))",
3308
"patterns": [
3309
{
3310
"include": "#less-variables"
3311
}
3312
]
3313
}
3314
]
3315
}
3316
]
3317
},
3318
"less-variable-assignment": {
3319
"patterns": [
3320
{
3321
"begin": "(@)(-?(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
3322
"beginCaptures": {
3323
"0": {
3324
"name": "variable.other.readwrite.less"
3325
},
3326
"1": {
3327
"name": "punctuation.definition.variable.less"
3328
},
3329
"2": {
3330
"name": "support.other.variable.less"
3331
}
3332
},
3333
"end": "\\s*(;|(\\.{3})|(?=\\)))",
3334
"endCaptures": {
3335
"1": {
3336
"name": "punctuation.terminator.rule.less"
3337
},
3338
"2": {
3339
"name": "keyword.operator.spread.less"
3340
}
3341
},
3342
"name": "meta.property-value.less",
3343
"patterns": [
3344
{
3345
"captures": {
3346
"1": {
3347
"name": "punctuation.separator.key-value.less"
3348
},
3349
"4": {
3350
"name": "meta.property-value.less"
3351
}
3352
},
3353
"match": "(((\\+_?)?):)([\\s\\t]*)"
3354
},
3355
{
3356
"include": "#property-values"
3357
},
3358
{
3359
"include": "#comma-delimiter"
3360
},
3361
{
3362
"include": "#property-list"
3363
},
3364
{
3365
"include": "#unquoted-string"
3366
}
3367
]
3368
}
3369
]
3370
},
3371
"less-variable-comparison": {
3372
"patterns": [
3373
{
3374
"begin": "(@{1,2})([-]?([_a-z]|[^\\x{00}-\\x{7F}]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
3375
"beginCaptures": {
3376
"0": {
3377
"name": "variable.other.readwrite.less"
3378
},
3379
"1": {
3380
"name": "punctuation.definition.variable.less"
3381
},
3382
"2": {
3383
"name": "support.other.variable.less"
3384
}
3385
},
3386
"end": "\\s*(?=\\))",
3387
"endCaptures": {
3388
"1": {
3389
"name": "punctuation.terminator.rule.less"
3390
}
3391
},
3392
"patterns": [
3393
{
3394
"captures": {
3395
"1": {
3396
"name": "keyword.operator.logical.less"
3397
}
3398
},
3399
"match": "\\s*(=|((<|>)=?))\\s*"
3400
},
3401
{
3402
"match": "\\btrue\\b",
3403
"name": "constant.language.less"
3404
},
3405
{
3406
"include": "#property-values"
3407
},
3408
{
3409
"include": "#selectors"
3410
},
3411
{
3412
"include": "#unquoted-string"
3413
},
3414
{
3415
"match": ",",
3416
"name": "punctuation.separator.less"
3417
}
3418
]
3419
}
3420
]
3421
},
3422
"less-variable-interpolation": {
3423
"captures": {
3424
"1": {
3425
"name": "punctuation.definition.variable.less"
3426
},
3427
"2": {
3428
"name": "punctuation.definition.expression.less"
3429
},
3430
"3": {
3431
"name": "support.other.variable.less"
3432
},
3433
"4": {
3434
"name": "punctuation.definition.expression.less"
3435
}
3436
},
3437
"match": "(@)(\\{)([-\\w]+)(\\})",
3438
"name": "variable.other.readwrite.less"
3439
},
3440
"less-variables": {
3441
"patterns": [
3442
{
3443
"captures": {
3444
"1": {
3445
"name": "punctuation.definition.variable.less"
3446
},
3447
"2": {
3448
"name": "support.other.variable.less"
3449
}
3450
},
3451
"match": "\\s*(@@?)([-\\w]+)",
3452
"name": "variable.other.readwrite.less"
3453
},
3454
{
3455
"include": "#less-variable-interpolation"
3456
}
3457
]
3458
},
3459
"literal-string": {
3460
"patterns": [
3461
{
3462
"begin": "'",
3463
"beginCaptures": {
3464
"0": {
3465
"name": "punctuation.definition.string.begin.less"
3466
}
3467
},
3468
"end": "(')|(\\n)",
3469
"endCaptures": {
3470
"1": {
3471
"name": "punctuation.definition.string.end.less"
3472
},
3473
"2": {
3474
"name": "invalid.illegal.newline.less"
3475
}
3476
},
3477
"name": "string.quoted.single.less",
3478
"patterns": [
3479
{
3480
"include": "#string-content"
3481
}
3482
]
3483
},
3484
{
3485
"begin": "\"",
3486
"beginCaptures": {
3487
"0": {
3488
"name": "punctuation.definition.string.begin.less"
3489
}
3490
},
3491
"end": "(\")|(\\n)",
3492
"endCaptures": {
3493
"1": {
3494
"name": "punctuation.definition.string.end.less"
3495
},
3496
"2": {
3497
"name": "invalid.illegal.newline.less"
3498
}
3499
},
3500
"name": "string.quoted.double.less",
3501
"patterns": [
3502
{
3503
"include": "#string-content"
3504
}
3505
]
3506
},
3507
{
3508
"include": "#less-strings"
3509
}
3510
]
3511
},
3512
"local-function": {
3513
"begin": "\\b(local)(?=\\()",
3514
"beginCaptures": {
3515
"0": {
3516
"name": "support.function.font-face.less"
3517
}
3518
},
3519
"end": "\\)",
3520
"endCaptures": {
3521
"0": {
3522
"name": "punctuation.definition.group.end.less"
3523
}
3524
},
3525
"name": "meta.function-call.less",
3526
"patterns": [
3527
{
3528
"begin": "\\(",
3529
"beginCaptures": {
3530
"0": {
3531
"name": "punctuation.definition.group.begin.less"
3532
}
3533
},
3534
"end": "(?=\\))",
3535
"patterns": [
3536
{
3537
"include": "#unquoted-string"
3538
}
3539
]
3540
}
3541
]
3542
},
3543
"media-query": {
3544
"begin": "\\s*(only|not)?\\s*(all|aural|braille|embossed|handheld|print|projection|screen|tty|tv)?",
3545
"beginCaptures": {
3546
"1": {
3547
"name": "keyword.operator.logic.media.less"
3548
},
3549
"2": {
3550
"name": "support.constant.media.less"
3551
}
3552
},
3553
"end": "\\s*(?:(,)|(?=[{;]))",
3554
"endCaptures": {
3555
"1": {
3556
"name": "punctuation.definition.arbitrary-repetition.less"
3557
}
3558
},
3559
"patterns": [
3560
{
3561
"include": "#less-variables"
3562
},
3563
{
3564
"include": "#custom-property-name"
3565
},
3566
{
3567
"begin": "\\s*(and)?\\s*(\\()\\s*",
3568
"beginCaptures": {
3569
"1": {
3570
"name": "keyword.operator.logic.media.less"
3571
},
3572
"2": {
3573
"name": "punctuation.definition.group.begin.less"
3574
}
3575
},
3576
"end": "\\)",
3577
"endCaptures": {
3578
"0": {
3579
"name": "punctuation.definition.group.end.less"
3580
}
3581
},
3582
"name": "meta.group.less",
3583
"patterns": [
3584
{
3585
"begin": "(--|(?:-?(?:(?:[a-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R]))))(?:(?:[-\\da-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))*)\\s*(?=[:)])",
3586
"beginCaptures": {
3587
"0": {
3588
"name": "support.type.property-name.media.less"
3589
}
3590
},
3591
"end": "(((\\+_?)?):)|(?=\\))",
3592
"endCaptures": {
3593
"1": {
3594
"name": "punctuation.separator.key-value.less"
3595
}
3596
}
3597
},
3598
{
3599
"match": "\\b(portrait|landscape|progressive|interlace)",
3600
"name": "support.constant.property-value.less"
3601
},
3602
{
3603
"captures": {
3604
"1": {
3605
"name": "constant.numeric.less"
3606
},
3607
"2": {
3608
"name": "keyword.operator.arithmetic.less"
3609
},
3610
"3": {
3611
"name": "constant.numeric.less"
3612
}
3613
},
3614
"match": "\\s*(\\d+)(/)(\\d+)"
3615
},
3616
{
3617
"include": "#less-math"
3618
}
3619
]
3620
}
3621
]
3622
},
3623
"media-query-list": {
3624
"begin": "\\s*(?=[^{;])",
3625
"end": "\\s*(?=[{;])",
3626
"patterns": [
3627
{
3628
"include": "#media-query"
3629
}
3630
]
3631
},
3632
"minmax-function": {
3633
"begin": "\\b(minmax)(?=\\()",
3634
"beginCaptures": {
3635
"1": {
3636
"name": "support.function.grid.less"
3637
}
3638
},
3639
"end": "\\)",
3640
"endCaptures": {
3641
"0": {
3642
"name": "punctuation.definition.group.end.less"
3643
}
3644
},
3645
"name": "meta.function-call.less",
3646
"patterns": [
3647
{
3648
"begin": "\\(",
3649
"beginCaptures": {
3650
"0": {
3651
"name": "punctuation.definition.group.begin.less"
3652
}
3653
},
3654
"end": "(?=\\))",
3655
"patterns": [
3656
{
3657
"include": "#less-variables"
3658
},
3659
{
3660
"include": "#var-function"
3661
},
3662
{
3663
"include": "#length-type"
3664
},
3665
{
3666
"include": "#comma-delimiter"
3667
},
3668
{
3669
"match": "\\b(max-content|min-content)\\b",
3670
"name": "support.constant.property-value.less"
3671
}
3672
]
3673
}
3674
]
3675
},
3676
"number-type": {
3677
"match": "(?:[-+]?)(?:\\d+\\.\\d+|\\.?\\d+)(?:[eE][-+]?\\d+)?",
3678
"name": "constant.numeric.less"
3679
},
3680
"numeric-values": {
3681
"patterns": [
3682
{
3683
"include": "#dimensions"
3684
},
3685
{
3686
"include": "#percentage-type"
3687
},
3688
{
3689
"include": "#number-type"
3690
}
3691
]
3692
},
3693
"percentage-type": {
3694
"captures": {
3695
"1": {
3696
"name": "keyword.other.unit.less"
3697
}
3698
},
3699
"match": "(?:[-+]?)(?:\\d+\\.\\d+|\\.?\\d+)(?:[eE][-+]?\\d+)?(%)",
3700
"name": "constant.numeric.less"
3701
},
3702
"property-list": {
3703
"patterns": [
3704
{
3705
"begin": "(?=(?=[^;]*)\\{)",
3706
"end": "\\}",
3707
"endCaptures": {
3708
"0": {
3709
"name": "punctuation.definition.block.end.less"
3710
}
3711
},
3712
"patterns": [
3713
{
3714
"include": "#rule-list"
3715
}
3716
]
3717
}
3718
]
3719
},
3720
"property-value-constants": {
3721
"patterns": [
3722
{
3723
"comment": "align-content, align-items, align-self, justify-content, justify-items, justify-self",
3724
"match": "(?x)\\b( flex-start | flex-end | start | end | space-between | space-around | space-evenly | stretch | baseline | safe | unsafe | legacy | anchor-center | first | last | self-start | self-end )\\b",
3725
"name": "support.constant.property-value.less"
3726
},
3727
{
3728
"comment": "alignment-baseline",
3729
"match": "(?x)\\b( text-before-edge | before-edge | middle | central | text-after-edge | after-edge | ideographic | alphabetic | hanging | mathematical | top | center | bottom )\\b",
3730
"name": "support.constant.property-value.less"
3731
},
3732
{
3733
"include": "#global-property-values"
3734
},
3735
{
3736
"include": "#cubic-bezier-function"
3737
},
3738
{
3739
"include": "#steps-function"
3740
},
3741
{
3742
"comment": "animation-composition",
3743
"match": "\\b(?:replace|add|accumulate)\\b",
3744
"name": "support.constant.property-value.less"
3745
},
3746
{
3747
"comment": "animation-direction",
3748
"match": "\\b(?:normal|alternate-reverse|alternate|reverse)\\b",
3749
"name": "support.constant.property-value.less"
3750
},
3751
{
3752
"comment": "animation-fill-mode",
3753
"match": "\\b(?:forwards|backwards|both)\\b",
3754
"name": "support.constant.property-value.less"
3755
},
3756
{
3757
"comment": "animation-iteration-count",
3758
"match": "\\b(?:infinite)\\b",
3759
"name": "support.constant.property-value.less"
3760
},
3761
{
3762
"comment": "animation-play-state",
3763
"match": "\\b(?:running|paused)\\b",
3764
"name": "support.constant.property-value.less"
3765
},
3766
{
3767
"comment": "animation-range, animation-range-start, animation-range-end",
3768
"match": "\\b(?:entry-crossing|exit-crossing|entry|exit)\\b",
3769
"name": "support.constant.property-value.less"
3770
},
3771
{
3772
"comment": "animation-timing-function",
3773
"match": "(?x)\\b(linear | ease-in-out | ease-in | ease-out | ease | step-start | step-end)\\b",
3774
"name": "support.constant.property-value.less"
3775
},
3776
{
3777
"match": "(?x)\\b( absolute | active | add | all-petite-caps | all-small-caps | all-scroll | all | alphabetic | alpha | alternate-reverse | alternate | always | annotation | antialiased | at | autohiding-scrollbar | auto | avoid-column | avoid-page | avoid-region | avoid | background-color | background-image | background-position | background-size | background-repeat | background | backwards | balance | baseline | below | bevel | bicubic | bidi-override | blink | block-line-height | block-start | block-end | block | blur | bolder | bold | border-top-left-radius | border-top-right-radius | border-bottom-left-radius | border-bottom-right-radius | border-end-end-radius | border-end-start-radius | border-start-end-radius | border-start-start-radius | border-block-start-color | border-block-start-style | border-block-start-width | border-block-start | border-block-end-color | border-block-end-style | border-block-end-width | border-block-end | border-block-color | border-block-style | border-block-width | border-block | border-inline-start-color | border-inline-start-style | border-inline-start-width | border-inline-start | border-inline-end-color | border-inline-end-style | border-inline-end-width | border-inline-end | border-inline-color | border-inline-style | border-inline-width | border-inline | border-top-color | border-top-style | border-top-width | border-top | border-right-color | border-right-style | border-right-width | border-right | border-bottom-color | border-bottom-style | border-bottom-width | border-bottom | border-left-color | border-left-style | border-left-width | border-left | border-image-outset | border-image-repeat | border-image-slice | border-image-source | border-image-width | border-image | border-color | border-style | border-width | border-radius | border-collapse | border-spacing | border | both | bottom | box-shadow | box | break-all | break-word | break-spaces | brightness | butt(on)? | capitalize | central | center | char(acter-variant)? | cjk-ideographic | clip | clone | close-quote | closest-corner | closest-side | col-resize | collapse | color-stop | color-burn | color-dodge | color | column-count | column-gap | column-reverse | column-rule-color | column-rule-width | column-rule | column-width | columns | column | common-ligatures | condensed | consider-shifts | contain | content-box | contents? | contextual | contrast | cover | crisp-edges | crispEdges | crop | crosshair | cross | darken | dashed | default | dense | device-width | diagonal-fractions | difference | disabled | discard | discretionary-ligatures | disregard-shifts | distribute-all-lines | distribute-letter | distribute-space | distribute | dotted | double | drop-shadow | [nsew]{1,4}-resize | ease-in-out | ease-in | ease-out | ease | element | ellipsis | embed | end | EndColorStr | evenodd | exclude-ruby | exclusion | expanded | extra-condensed | extra-expanded | farthest-corner | farthest-side | farthest | fill-box | fill-opacity | fill | filter | fit-content | fixed | flat | flex-basis | flex-end | flex-grow | flex-shrink | flex-start | flexbox | flex | flip | flood-color | font-size-adjust | font-size | font-stretch | font-weight | font | forwards | from-image | from | full-width | gap | geometricPrecision | glyphs | gradient | grayscale | grid-column-gap | grid-column | grid-row-gap | grid-row | grid-gap | grid-height | grid | groove | hand | hanging | hard-light | height | help | hidden | hide | historical-forms | historical-ligatures | horizontal-tb | horizontal | hue | ideographic | ideograph-alpha | ideograph-numeric | ideograph-parenthesis | ideograph-space | inactive | include-ruby | infinite | inherit | initial | inline-end | inline-size | inline-start | inline-table | inline-line-height | inline-flexbox | inline-flex | inline-box | inline-block | inline | inset | inside | inter-ideograph | inter-word | intersect | invert | isolate | isolation | italic | jis(04|78|83|90) | justify-all | justify | keep-all | larger | large | last | layout | left | letter-spacing | lighten | lighter | lighting-color | linear-gradient | linearRGB | linear | line-edge | line-height | line-through | line | lining-nums | list-item | local | loose | lowercase | lr-tb | ltr | luminosity | luminance | manual | manipulation | margin-bottom | margin-box | margin-left | margin-right | margin-top | margin | marker(-offset|s)? | match-parent | mathematical | max-(content|height|lines|size|width) | medium | middle | min-(content|height|width) | miter | mixed | move | multiply | newspaper | no-change | no-clip | no-close-quote | no-open-quote | no-common-ligatures | no-discretionary-ligatures | no-historical-ligatures | no-contextual | no-drop | no-repeat | none | nonzero | normal | not-allowed | nowrap | oblique | offset-after | offset-before | offset-end | offset-start | offset | oldstyle-nums | opacity | open-quote | optimize(Legibility|Precision|Quality|Speed) | order | ordinal | ornaments | outline-color | outline-offset | outline-width | outline | outset | outside | overline | over-edge | overlay | padding(-bottom|-box|-left|-right|-top|-box)? | page | paint(ed)? | paused | pan-(x|left|right|y|up|down) | perspective-origin | petite-caps | pixelated | pointer | pinch-zoom | pretty | pre(-line|-wrap)? | preserve-3d | preserve-breaks | preserve-spaces | preserve | progid:DXImageTransform\\.Microsoft\\.(Alpha|Blur|dropshadow|gradient|Shadow) | progress | proportional-nums | proportional-width | radial-gradient | recto | region | relative | repeating-linear-gradient | repeating-radial-gradient | repeat-x | repeat-y | repeat | replaced | reset-size | reverse | revert-layer | revert | ridge | right | round | row-gap | row-resize | row-reverse | row | rtl | ruby | running | saturate | saturation | screen | scrollbar | scroll-position | scroll | separate | sepia | scale-down | semi-condensed | semi-expanded | shape-image-threshold | shape-margin | shape-outside | show | sideways-lr | sideways-rl | sideways | simplified | size | slashed-zero | slice | small-caps | smaller | small | smooth | snap | solid | soft-light | space-around | space-between | space | span | sRGB | stable | stacked-fractions | stack | startColorStr | start | static | step-end | step-start | sticky | stop-color | stop-opacity | stretch | strict | stroke-box | stroke-dasharray | stroke-dashoffset | stroke-miterlimit | stroke-opacity | stroke-width | stroke | styleset | style | stylistic | subgrid | subpixel-antialiased | subtract | super | swash | table-caption | table-cell | table-column-group | table-footer-group | table-header-group | table-row-group | table-column | table-row | table | tabular-nums | tb-rl | text((-bottom|-(decoration|emphasis)-color|-indent|-(over|under)-edge|-shadow|-size(-adjust)?|-top)|field)? | thick |thin | titling-caps | titling-case | top | touch | to | traditional | transform-origin | transform-style | transform | ultra-condensed | ultra-expanded | under-edge | underline | unicase | unset | uppercase | upright | use-glyph-orientation | use-script | verso | vertical(-align|-ideographic|-lr|-rl|-text)? | view-box | viewport-fill-opacity | viewport-fill | visibility | visibleFill | visiblePainted | visibleStroke | visible | wait | wavy | weight | whitespace | width | word-spacing | wrap-reverse | wrap-reverse | wrap | xx?-(large|small) | z-index | zero | zoom-in | zoom-out | zoom | arabic-indic | armenian | bengali | cambodian | circle | cjk-decimal | cjk-earthly-branch | cjk-heavenly-stem | decimal-leading-zero | decimal | devanagari | disclosure-closed | disclosure-open | disc | ethiopic-numeric | georgian | gujarati | gurmukhi | hebrew | hiragana-iroha | hiragana | japanese-formal | japanese-informal | kannada | katakana-iroha | katakana | khmer | korean-hangul-formal | korean-hanja-formal | korean-hanja-informal | lao | lower-alpha | lower-armenian | lower-greek | lower-latin | lower-roman | malayalam | mongolian | myanmar | oriya | persian | simp-chinese-formal | simp-chinese-informal | square | tamil | telugu | thai | tibetan | trad-chinese-formal | trad-chinese-informal | upper-alpha | upper-armenian | upper-latin | upper-roman)\\b",
3778
"name": "support.constant.property-value.less"
3779
},
3780
{
3781
"match": "\\b(sans-serif|serif|monospace|fantasy|cursive)\\b(?=\\s*[;,\\n}])",
3782
"name": "support.constant.font-name.less"
3783
}
3784
]
3785
},
3786
"property-values": {
3787
"patterns": [
3788
{
3789
"include": "#comment-block"
3790
},
3791
{
3792
"include": "#builtin-functions"
3793
},
3794
{
3795
"include": "#color-functions"
3796
},
3797
{
3798
"include": "#less-functions"
3799
},
3800
{
3801
"include": "#less-variables"
3802
},
3803
{
3804
"include": "#unicode-range"
3805
},
3806
{
3807
"include": "#numeric-values"
3808
},
3809
{
3810
"include": "#color-values"
3811
},
3812
{
3813
"include": "#property-value-constants"
3814
},
3815
{
3816
"include": "#less-math"
3817
},
3818
{
3819
"include": "#literal-string"
3820
},
3821
{
3822
"include": "#comma-delimiter"
3823
},
3824
{
3825
"include": "#important"
3826
}
3827
]
3828
},
3829
"pseudo-selectors": {
3830
"patterns": [
3831
{
3832
"begin": "(:)(dir)(?=\\()",
3833
"beginCaptures": {
3834
"1": {
3835
"name": "punctuation.definition.entity.less"
3836
}
3837
},
3838
"end": "\\)",
3839
"endCaptures": {
3840
"0": {
3841
"name": "punctuation.definition.group.end.less"
3842
}
3843
},
3844
"name": "entity.other.attribute-name.pseudo-class.less",
3845
"patterns": [
3846
{
3847
"begin": "\\(",
3848
"beginCaptures": {
3849
"0": {
3850
"name": "punctuation.definition.group.begin.less"
3851
}
3852
},
3853
"end": "(?=\\))",
3854
"patterns": [
3855
{
3856
"match": "ltr|rtl",
3857
"name": "variable.parameter.dir.less"
3858
},
3859
{
3860
"include": "#less-variables"
3861
}
3862
]
3863
}
3864
]
3865
},
3866
{
3867
"begin": "(:)(lang)(?=\\()",
3868
"beginCaptures": {
3869
"1": {
3870
"name": "punctuation.definition.entity.less"
3871
}
3872
},
3873
"end": "\\)",
3874
"endCaptures": {
3875
"0": {
3876
"name": "punctuation.definition.group.end.less"
3877
}
3878
},
3879
"name": "entity.other.attribute-name.pseudo-class.less",
3880
"patterns": [
3881
{
3882
"begin": "\\(",
3883
"beginCaptures": {
3884
"0": {
3885
"name": "punctuation.definition.group.begin.less"
3886
}
3887
},
3888
"end": "(?=\\))",
3889
"patterns": [
3890
{
3891
"include": "#less-variables"
3892
},
3893
{
3894
"include": "#literal-string"
3895
},
3896
{
3897
"include": "#unquoted-string"
3898
}
3899
]
3900
}
3901
]
3902
},
3903
{
3904
"begin": "(:)(not)(?=\\()",
3905
"beginCaptures": {
3906
"1": {
3907
"name": "punctuation.definition.entity.less"
3908
}
3909
},
3910
"end": "\\)",
3911
"endCaptures": {
3912
"0": {
3913
"name": "punctuation.definition.group.end.less"
3914
}
3915
},
3916
"name": "entity.other.attribute-name.pseudo-class.less",
3917
"patterns": [
3918
{
3919
"begin": "\\(",
3920
"beginCaptures": {
3921
"0": {
3922
"name": "punctuation.definition.group.begin.less"
3923
}
3924
},
3925
"end": "(?=\\))",
3926
"patterns": [
3927
{
3928
"include": "#selectors"
3929
}
3930
]
3931
}
3932
]
3933
},
3934
{
3935
"begin": "(:)(nth(-last)?-(child|of-type))(?=\\()",
3936
"beginCaptures": {
3937
"1": {
3938
"name": "punctuation.definition.entity.less"
3939
},
3940
"2": {
3941
"name": "entity.other.attribute-name.pseudo-class.less"
3942
}
3943
},
3944
"contentName": "meta.function-call.less",
3945
"end": "\\)",
3946
"endCaptures": {
3947
"0": {
3948
"name": "punctuation.definition.group.end.less"
3949
}
3950
},
3951
"name": "entity.other.attribute-name.pseudo-class.less",
3952
"patterns": [
3953
{
3954
"begin": "\\(",
3955
"beginCaptures": {
3956
"0": {
3957
"name": "punctuation.definition.group.begin.less"
3958
}
3959
},
3960
"end": "(?=\\))",
3961
"name": "meta.group.less",
3962
"patterns": [
3963
{
3964
"match": "\\b(even|odd)\\b",
3965
"name": "keyword.other.pseudo-class.less"
3966
},
3967
{
3968
"captures": {
3969
"1": {
3970
"name": "keyword.operator.arithmetic.less"
3971
},
3972
"2": {
3973
"name": "keyword.other.unit.less"
3974
},
3975
"4": {
3976
"name": "keyword.operator.arithmetic.less"
3977
}
3978
},
3979
"match": "(?:([-+])?(?:\\d+)?(n)(\\s*([-+])\\s*\\d+)?|[-+]?\\s*\\d+)",
3980
"name": "constant.numeric.less"
3981
},
3982
{
3983
"include": "#less-math"
3984
},
3985
{
3986
"include": "#less-strings"
3987
},
3988
{
3989
"include": "#less-variable-interpolation"
3990
}
3991
]
3992
}
3993
]
3994
},
3995
{
3996
"begin": "(:)(host-context|host|has|is|not|where)(?=\\()",
3997
"beginCaptures": {
3998
"1": {
3999
"name": "punctuation.definition.entity.less"
4000
}
4001
},
4002
"end": "\\)",
4003
"endCaptures": {
4004
"0": {
4005
"name": "punctuation.definition.group.end.less"
4006
}
4007
},
4008
"name": "entity.other.attribute-name.pseudo-class.less",
4009
"patterns": [
4010
{
4011
"begin": "\\(",
4012
"beginCaptures": {
4013
"0": {
4014
"name": "punctuation.definition.group.begin.less"
4015
}
4016
},
4017
"end": "(?=\\))",
4018
"patterns": [
4019
{
4020
"include": "#selectors"
4021
}
4022
]
4023
}
4024
]
4025
},
4026
{
4027
"captures": {
4028
"1": {
4029
"name": "punctuation.definition.entity.less"
4030
},
4031
"2": {
4032
"name": "entity.other.attribute-name.pseudo-class.less"
4033
}
4034
},
4035
"match": "(?x)(:)( active | any-link | autofill | blank | buffering | checked | current | default | defined | disabled | empty | enabled | first-child | first-of-type | first | focus-visible | focus-within | focus | fullscreen | future | host | hover | in-range | indeterminate | invalid | last-child | last-of-type | left | local-link | link | modal | muted | only-child | only-of-type | optional | out-of-range | past | paused | picture-in-picture | placeholder-shown | playing | popover-open | read-only | read-write | required | right | root | scope | seeking | stalled | target-within | target | user-invalid | user-valid | valid | visited | volume-locked )\\b",
4036
"name": "meta.function-call.less"
4037
},
4038
{
4039
"begin": "(::?)(highlight|part|state)(?=\\s*(\\())",
4040
"beginCaptures": {
4041
"1": {
4042
"name": "punctuation.definition.entity.less"
4043
}
4044
},
4045
"comment": "::highlight()",
4046
"end": "\\)",
4047
"endCaptures": {
4048
"0": {
4049
"name": "punctuation.definition.group.end.less"
4050
}
4051
},
4052
"name": "entity.other.attribute-name.pseudo-element.less",
4053
"patterns": [
4054
{
4055
"begin": "\\(",
4056
"beginCaptures": {
4057
"0": {
4058
"name": "punctuation.definition.group.begin.less"
4059
}
4060
},
4061
"end": "(?=\\))",
4062
"patterns": [
4063
{
4064
"match": "--|(?:-?(?:(?:[a-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R]))))(?:(?:[-\\da-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))*",
4065
"name": "variable.parameter.less"
4066
},
4067
{
4068
"include": "#less-variables"
4069
}
4070
]
4071
}
4072
]
4073
},
4074
{
4075
"begin": "(::?)slotted(?=\\s*(\\())",
4076
"beginCaptures": {
4077
"1": {
4078
"name": "punctuation.definition.entity.less"
4079
}
4080
},
4081
"comment": "::slotted()",
4082
"contentName": "meta.function-call.less",
4083
"end": "\\)",
4084
"endCaptures": {
4085
"0": {
4086
"name": "punctuation.definition.group.end.less"
4087
}
4088
},
4089
"name": "entity.other.attribute-name.pseudo-element.less",
4090
"patterns": [
4091
{
4092
"begin": "\\(",
4093
"beginCaptures": {
4094
"0": {
4095
"name": "punctuation.definition.group.begin.less"
4096
}
4097
},
4098
"end": "(?=\\))",
4099
"name": "meta.group.less",
4100
"patterns": [
4101
{
4102
"include": "#selectors"
4103
}
4104
]
4105
}
4106
]
4107
},
4108
{
4109
"captures": {
4110
"1": {
4111
"name": "punctuation.definition.entity.less"
4112
}
4113
},
4114
"comment": "defined pseudo-elements",
4115
"match": "(?x)(::?)(after | backdrop | before | cue | file-selector-button | first-letter | first-line | grammar-error | marker | placeholder | selection | spelling-error | target-text | view-transition-group | view-transition-image-pair | view-transition-new | view-transition-old | view-transition)\\b",
4116
"name": "entity.other.attribute-name.pseudo-element.less"
4117
},
4118
{
4119
"captures": {
4120
"1": {
4121
"name": "punctuation.definition.entity.less"
4122
},
4123
"2": {
4124
"name": "meta.namespace.vendor-prefix.less"
4125
}
4126
},
4127
"comment": "other possible pseudo-elements",
4128
"match": "(?x)(::?)(-\\w+-)(--|(?:-?(?:(?:[a-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R]))))(?:(?:[-\\da-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))*)\\b",
4129
"name": "entity.other.attribute-name.pseudo-element.less"
4130
}
4131
]
4132
},
4133
"qualified-name": {
4134
"captures": {
4135
"1": {
4136
"name": "entity.name.constant.less"
4137
},
4138
"2": {
4139
"name": "entity.name.namespace.wildcard.less"
4140
},
4141
"3": {
4142
"name": "punctuation.separator.namespace.less"
4143
}
4144
},
4145
"match": "(?:(-?(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)|(\\*))?([|])(?!=)"
4146
},
4147
"regexp-function": {
4148
"begin": "\\b(regexp)(?=\\()",
4149
"end": "\\)",
4150
"endCaptures": {
4151
"0": {
4152
"name": "punctuation.definition.group.end.less"
4153
}
4154
},
4155
"name": "support.function.regexp.less",
4156
"patterns": [
4157
{
4158
"begin": "\\(",
4159
"beginCaptures": {
4160
"0": {
4161
"name": "punctuation.definition.group.begin.less"
4162
}
4163
},
4164
"end": "(?=\\))",
4165
"name": "meta.function-call.less",
4166
"patterns": [
4167
{
4168
"include": "#literal-string"
4169
}
4170
]
4171
}
4172
]
4173
},
4174
"relative-color": {
4175
"patterns": [
4176
{
4177
"match": "from",
4178
"name": "keyword.other.less"
4179
},
4180
{
4181
"match": "\\b[hslawbch]\\b",
4182
"name": "keyword.other.less"
4183
}
4184
]
4185
},
4186
"rule-list": {
4187
"patterns": [
4188
{
4189
"begin": "\\{",
4190
"beginCaptures": {
4191
"0": {
4192
"name": "punctuation.definition.block.begin.less"
4193
}
4194
},
4195
"end": "(?=\\s*\\})",
4196
"name": "meta.property-list.less",
4197
"patterns": [
4198
{
4199
"captures": {
4200
"1": {
4201
"name": "punctuation.terminator.rule.less"
4202
}
4203
},
4204
"match": "\\s*(;)|(?=[})])"
4205
},
4206
{
4207
"include": "#rule-list-body"
4208
},
4209
{
4210
"include": "#less-extend"
4211
}
4212
]
4213
}
4214
]
4215
},
4216
"rule-list-body": {
4217
"patterns": [
4218
{
4219
"include": "#comment-block"
4220
},
4221
{
4222
"include": "#comment-line"
4223
},
4224
{
4225
"include": "#at-rules"
4226
},
4227
{
4228
"include": "#less-variable-assignment"
4229
},
4230
{
4231
"begin": "(?=[-\\w]*?@\\{.*\\}[-\\w]*?\\s*:[^;{(]*(?=[;})]))",
4232
"end": "(?=\\s*(;)|(?=[})]))",
4233
"patterns": [
4234
{
4235
"begin": "(?=[^\\s:])",
4236
"end": "(?=(((\\+_?)?):)[\\s\\t]*)",
4237
"name": "support.type.property-name.less",
4238
"patterns": [
4239
{
4240
"include": "#less-variable-interpolation"
4241
}
4242
]
4243
},
4244
{
4245
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4246
"beginCaptures": {
4247
"1": {
4248
"name": "punctuation.separator.key-value.less"
4249
}
4250
},
4251
"contentName": "support.type.property-name.less",
4252
"end": "(?=\\s*(;)|(?=[})]))",
4253
"patterns": [
4254
{
4255
"include": "#property-values"
4256
}
4257
]
4258
}
4259
]
4260
},
4261
{
4262
"begin": "(?=[-a-z])",
4263
"end": "$|(?![-a-z])",
4264
"patterns": [
4265
{
4266
"include": "#custom-property-name"
4267
},
4268
{
4269
"begin": "(-[\\w-]+?-)((?:(?:[a-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))(?:(?:[-\\da-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))*)\\b",
4270
"beginCaptures": {
4271
"0": {
4272
"name": "support.type.property-name.less"
4273
},
4274
"1": {
4275
"name": "meta.namespace.vendor-prefix.less"
4276
}
4277
},
4278
"comment": "vendor-prefixed properties",
4279
"end": "\\s*(;)|(?=[})])",
4280
"endCaptures": {
4281
"1": {
4282
"name": "punctuation.terminator.rule.less"
4283
}
4284
},
4285
"patterns": [
4286
{
4287
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4288
"beginCaptures": {
4289
"1": {
4290
"name": "punctuation.separator.key-value.less"
4291
}
4292
},
4293
"contentName": "meta.property-value.less",
4294
"end": "(?=\\s*(;)|(?=[})]))",
4295
"patterns": [
4296
{
4297
"include": "#property-values"
4298
},
4299
{
4300
"match": "[\\w-]+",
4301
"name": "support.constant.property-value.less"
4302
}
4303
]
4304
}
4305
]
4306
},
4307
{
4308
"include": "#filter-function"
4309
},
4310
{
4311
"begin": "\\b(border((-(bottom|top)-(left|right))|((-(start|end)){2}))?-radius|(border-image(?!-)))\\b",
4312
"beginCaptures": {
4313
"0": {
4314
"name": "support.type.property-name.less"
4315
}
4316
},
4317
"comment": "border-radius and border-image properties utilize a slash as a separator",
4318
"end": "\\s*(;)|(?=[})])",
4319
"endCaptures": {
4320
"1": {
4321
"name": "punctuation.terminator.rule.less"
4322
}
4323
},
4324
"patterns": [
4325
{
4326
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4327
"beginCaptures": {
4328
"1": {
4329
"name": "punctuation.separator.key-value.less"
4330
}
4331
},
4332
"contentName": "meta.property-value.less",
4333
"end": "(?=\\s*(;)|(?=[})]))",
4334
"patterns": [
4335
{
4336
"include": "#value-separator"
4337
},
4338
{
4339
"include": "#property-values"
4340
}
4341
]
4342
}
4343
]
4344
},
4345
{
4346
"captures": {
4347
"1": {
4348
"name": "keyword.other.custom-property.prefix.less"
4349
},
4350
"2": {
4351
"name": "support.type.custom-property.name.less"
4352
}
4353
},
4354
"match": "\\b(var-)(-?(?:[[-\\w][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[_a-zA-Z][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)(?=\\s)",
4355
"name": "invalid.deprecated.custom-property.less"
4356
},
4357
{
4358
"begin": "\\bfont(-family)?(?!-)\\b",
4359
"beginCaptures": {
4360
"0": {
4361
"name": "support.type.property-name.less"
4362
}
4363
},
4364
"end": "\\s*(;)|(?=[})])",
4365
"endCaptures": {
4366
"1": {
4367
"name": "punctuation.terminator.rule.less"
4368
}
4369
},
4370
"name": "meta.property-name.less",
4371
"patterns": [
4372
{
4373
"captures": {
4374
"1": {
4375
"name": "punctuation.separator.key-value.less"
4376
},
4377
"4": {
4378
"name": "meta.property-value.less"
4379
}
4380
},
4381
"match": "(((\\+_?)?):)([\\s\\t]*)"
4382
},
4383
{
4384
"include": "#property-values"
4385
},
4386
{
4387
"match": "-?(?:[[_a-zA-Z][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*(\\s+-?(?:[[_a-zA-Z][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)*",
4388
"name": "string.unquoted.less"
4389
},
4390
{
4391
"match": ",",
4392
"name": "punctuation.separator.less"
4393
}
4394
]
4395
},
4396
{
4397
"begin": "\\banimation-timeline\\b",
4398
"beginCaptures": {
4399
"0": {
4400
"name": "support.type.property-name.less"
4401
}
4402
},
4403
"end": "\\s*(;)|(?=[})])",
4404
"endCaptures": {
4405
"1": {
4406
"name": "punctuation.terminator.rule.less"
4407
}
4408
},
4409
"patterns": [
4410
{
4411
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4412
"beginCaptures": {
4413
"1": {
4414
"name": "punctuation.separator.key-value.less"
4415
}
4416
},
4417
"contentName": "meta.property-value.less",
4418
"end": "(?=\\s*(;)|(?=[})]))",
4419
"patterns": [
4420
{
4421
"include": "#comment-block"
4422
},
4423
{
4424
"include": "#custom-property-name"
4425
},
4426
{
4427
"include": "#scroll-function"
4428
},
4429
{
4430
"include": "#view-function"
4431
},
4432
{
4433
"include": "#property-values"
4434
},
4435
{
4436
"include": "#less-variables"
4437
},
4438
{
4439
"include": "#arbitrary-repetition"
4440
},
4441
{
4442
"include": "#important"
4443
}
4444
]
4445
}
4446
]
4447
},
4448
{
4449
"begin": "\\banimation(?:-name)?(?=(?:\\+_?)?:)\\b",
4450
"beginCaptures": {
4451
"0": {
4452
"name": "support.type.property-name.less"
4453
}
4454
},
4455
"end": "\\s*(;)|(?=[})])",
4456
"endCaptures": {
4457
"1": {
4458
"name": "punctuation.terminator.rule.less"
4459
}
4460
},
4461
"patterns": [
4462
{
4463
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4464
"beginCaptures": {
4465
"1": {
4466
"name": "punctuation.separator.key-value.less"
4467
}
4468
},
4469
"contentName": "meta.property-value.less",
4470
"end": "(?=\\s*(;)|(?=[})]))",
4471
"patterns": [
4472
{
4473
"include": "#comment-block"
4474
},
4475
{
4476
"include": "#builtin-functions"
4477
},
4478
{
4479
"include": "#less-functions"
4480
},
4481
{
4482
"include": "#less-variables"
4483
},
4484
{
4485
"include": "#numeric-values"
4486
},
4487
{
4488
"include": "#property-value-constants"
4489
},
4490
{
4491
"match": "-?(?:[_a-zA-Z]|[^\\x{00}-\\x{7F}]|(?:(:?\\\\[0-9a-f]{1,6}(\\r\\n|[\\s\\t\\r\\n\\f])?)|\\\\[^\\r\\n\\f0-9a-f]))(?:[-_a-zA-Z0-9]|[^\\x{00}-\\x{7F}]|(?:(:?\\\\[0-9a-f]{1,6}(\\r\\n|[\\t\\r\\n\\f])?)|\\\\[^\\r\\n\\f0-9a-f]))*",
4492
"name": "variable.other.constant.animation-name.less string.unquoted.less"
4493
},
4494
{
4495
"include": "#less-math"
4496
},
4497
{
4498
"include": "#arbitrary-repetition"
4499
},
4500
{
4501
"include": "#important"
4502
}
4503
]
4504
}
4505
]
4506
},
4507
{
4508
"begin": "\\b(transition(-(property|duration|delay|timing-function))?)\\b",
4509
"beginCaptures": {
4510
"1": {
4511
"name": "support.type.property-name.less"
4512
}
4513
},
4514
"end": "\\s*(;)|(?=[})])",
4515
"endCaptures": {
4516
"1": {
4517
"name": "punctuation.terminator.rule.less"
4518
}
4519
},
4520
"patterns": [
4521
{
4522
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4523
"beginCaptures": {
4524
"1": {
4525
"name": "punctuation.separator.key-value.less"
4526
}
4527
},
4528
"contentName": "meta.property-value.less",
4529
"end": "(?=\\s*(;)|(?=[})]))",
4530
"patterns": [
4531
{
4532
"include": "#time-type"
4533
},
4534
{
4535
"include": "#property-values"
4536
},
4537
{
4538
"include": "#cubic-bezier-function"
4539
},
4540
{
4541
"include": "#steps-function"
4542
},
4543
{
4544
"include": "#arbitrary-repetition"
4545
}
4546
]
4547
}
4548
]
4549
},
4550
{
4551
"begin": "\\b(?:backdrop-)?filter\\b",
4552
"beginCaptures": {
4553
"0": {
4554
"name": "support.type.property-name.less"
4555
}
4556
},
4557
"end": "\\s*(;)|(?=[})])",
4558
"endCaptures": {
4559
"1": {
4560
"name": "punctuation.terminator.rule.less"
4561
}
4562
},
4563
"name": "meta.property-name.less",
4564
"patterns": [
4565
{
4566
"captures": {
4567
"1": {
4568
"name": "punctuation.separator.key-value.less"
4569
},
4570
"4": {
4571
"name": "meta.property-value.less"
4572
}
4573
},
4574
"match": "(((\\+_?)?):)([\\s\\t]*)"
4575
},
4576
{
4577
"match": "\\b(inherit|initial|unset|none)\\b",
4578
"name": "meta.property-value.less"
4579
},
4580
{
4581
"include": "#filter-functions"
4582
}
4583
]
4584
},
4585
{
4586
"begin": "\\bwill-change\\b",
4587
"beginCaptures": {
4588
"0": {
4589
"name": "support.type.property-name.less"
4590
}
4591
},
4592
"end": "\\s*(;)|(?=[})])",
4593
"endCaptures": {
4594
"1": {
4595
"name": "punctuation.terminator.rule.less"
4596
}
4597
},
4598
"name": "meta.property-name.less",
4599
"patterns": [
4600
{
4601
"captures": {
4602
"1": {
4603
"name": "punctuation.separator.key-value.less"
4604
},
4605
"4": {
4606
"name": "meta.property-value.less"
4607
}
4608
},
4609
"match": "(((\\+_?)?):)([\\s\\t]*)"
4610
},
4611
{
4612
"match": "unset|initial|inherit|will-change|auto|scroll-position|contents",
4613
"name": "invalid.illegal.property-value.less"
4614
},
4615
{
4616
"match": "-?(?:[[-\\w][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[_a-zA-Z][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*",
4617
"name": "support.constant.property-value.less"
4618
},
4619
{
4620
"include": "#arbitrary-repetition"
4621
}
4622
]
4623
},
4624
{
4625
"begin": "\\bcounter-(increment|(re)?set)\\b",
4626
"beginCaptures": {
4627
"0": {
4628
"name": "support.type.property-name.less"
4629
}
4630
},
4631
"end": "\\s*(;)|(?=[})])",
4632
"endCaptures": {
4633
"1": {
4634
"name": "punctuation.terminator.rule.less"
4635
}
4636
},
4637
"name": "meta.property-name.less",
4638
"patterns": [
4639
{
4640
"captures": {
4641
"1": {
4642
"name": "punctuation.separator.key-value.less"
4643
},
4644
"4": {
4645
"name": "meta.property-value.less"
4646
}
4647
},
4648
"match": "(((\\+_?)?):)([\\s\\t]*)"
4649
},
4650
{
4651
"match": "-?(?:[[-\\w][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[_a-zA-Z][^\\x{00}-\\x{9f}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*",
4652
"name": "entity.name.constant.counter-name.less"
4653
},
4654
{
4655
"include": "#integer-type"
4656
},
4657
{
4658
"match": "unset|initial|inherit|auto",
4659
"name": "invalid.illegal.property-value.less"
4660
}
4661
]
4662
},
4663
{
4664
"begin": "\\bcontainer(?:-name)?(?=\\s*?:)",
4665
"end": "\\s*(;)|(?=[})])",
4666
"endCaptures": {
4667
"1": {
4668
"name": "punctuation.terminator.rule.less"
4669
}
4670
},
4671
"name": "support.type.property-name.less",
4672
"patterns": [
4673
{
4674
"begin": "(((\\+_?)?):)(?=[\\s\\t]*)",
4675
"beginCaptures": {
4676
"1": {
4677
"name": "punctuation.separator.key-value.less"
4678
}
4679
},
4680
"contentName": "meta.property-value.less",
4681
"end": "(?=\\s*(;)|(?=[})]))",
4682
"patterns": [
4683
{
4684
"match": "\\bdefault\\b",
4685
"name": "invalid.illegal.property-value.less"
4686
},
4687
{
4688
"include": "#global-property-values"
4689
},
4690
{
4691
"include": "#custom-property-name"
4692
},
4693
{
4694
"contentName": "variable.other.constant.container-name.less",
4695
"match": "--|(?:-?(?:(?:[a-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R]))))(?:(?:[-\\da-zA-Z_]|[\\x{00B7}\\x{00C0}-\\x{00D6}\\x{00D8}-\\x{00F6}\\x{00F8}-\\x{037D}\\x{037F}-\\x{1FFF}\\x{200C}\\x{200D}\\x{203F}\\x{2040}\\x{2070}-\\x{218F}\\x{2C00}-\\x{2FEF}\\x{3001}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFFD}\\x{10000}-\\x{EFFFF}])|(?:\\\\(?:\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\s\\R])))*",
4696
"name": "support.constant.property-value.less"
4697
},
4698
{
4699
"include": "#property-values"
4700
}
4701
]
4702
}
4703
]
4704
},
4705
{
4706
"match": "(?x)\\b( accent-height | align-content | align-items | align-self | alignment-baseline | all | animation-timing-function | animation-range-start | animation-range-end | animation-range | animation-play-state | animation-name | animation-iteration-count | animation-fill-mode | animation-duration | animation-direction | animation-delay | animation-composition | animation | appearance | ascent | aspect-ratio | azimuth | backface-visibility | background-size | background-repeat-y | background-repeat-x | background-repeat | background-position-y | background-position-x | background-position | background-origin | background-image | background-color | background-clip | background-blend-mode | background-attachment | background | baseline-shift | begin | bias | blend-mode | border-top-left-radius | border-top-right-radius | border-bottom-left-radius | border-bottom-right-radius | border-end-end-radius | border-end-start-radius | border-start-end-radius | border-start-start-radius | border-block-start-color | border-block-start-style | border-block-start-width | border-block-start | border-block-end-color | border-block-end-style | border-block-end-width | border-block-end | border-block-color | border-block-style | border-block-width | border-block | border-inline-start-color | border-inline-start-style | border-inline-start-width | border-inline-start | border-inline-end-color | border-inline-end-style | border-inline-end-width | border-inline-end | border-inline-color | border-inline-style | border-inline-width | border-inline | border-top-color | border-top-style | border-top-width | border-top | border-right-color | border-right-style | border-right-width | border-right | border-bottom-color | border-bottom-style | border-bottom-width | border-bottom | border-left-color | border-left-style | border-left-width | border-left | border-image-outset | border-image-repeat | border-image-slice | border-image-source | border-image-width | border-image | border-color | border-style | border-width | border-radius | border-collapse | border-spacing | border | bottom | box-(align|decoration-break|direction|flex|ordinal-group|orient|pack|shadow|sizing) | break-(after|before|inside) | caption-side | clear | clip-path | clip-rule | clip | color(-(interpolation(-filters)?|profile|rendering))? | columns | column-(break-before|count|fill|gap|(rule(-(color|style|width))?)|span|width) | container-name | container-type | container | contain-intrinsic-block-size | contain-intrinsic-inline-size | contain-intrinsic-height | contain-intrinsic-size | contain-intrinsic-width | contain | content | counter-(increment|reset) | cursor | [cdf][xy] | direction | display | divisor | dominant-baseline | dur | elevation | empty-cells | enable-background | end | fallback | fill(-(opacity|rule))? | filter | flex(-(align|basis|direction|flow|grow|item-align|line-pack|negative|order|pack|positive|preferred-size|shrink|wrap))? | float | flood-(color|opacity) | font-display | font-family | font-feature-settings | font-kerning | font-language-override | font-size(-adjust)? | font-smoothing | font-stretch | font-style | font-synthesis | font-variant(-(alternates|caps|east-asian|ligatures|numeric|position))? | font-weight | font | fr | ((column|row)-)?gap | glyph-orientation-(horizontal|vertical) | grid-(area|gap) | grid-auto-(columns|flow|rows) | grid-(column|row)(-(end|gap|start))? | grid-template(-(areas|columns|rows))? | grid | height | hyphens | image-(orientation|rendering|resolution) | inset(-(block|inline))?(-(start|end))? | isolation | justify-content | justify-items | justify-self | kerning | left | letter-spacing | lighting-color | line-(box-contain|break|clamp|height) | list-style(-(image|position|type))? | (margin|padding)(-(bottom|left|right|top)|(-(block|inline)?(-(end|start))?))? | marker(-(end|mid|start))? | mask(-(clip||composite|image|origin|position|repeat|size|type))? | (max|min)-(height|width) | mix-blend-mode | nbsp-mode | negative | object-(fit|position) | opacity | operator | order | orphans | outline(-(color|offset|style|width))? | overflow(-((inline|block)|scrolling|wrap|x|y))? | overscroll-behavior(-block|-(inline|x|y))? | pad(ding(-(bottom|left|right|top))?)? | page(-break-(after|before|inside))? | paint-order | pause(-(after|before))? | perspective(-origin(-(x|y))?)? | pitch(-range)? | place-content | place-self | pointer-events | position | prefix | quotes | range | resize | right | rotate | scale | scroll-behavior | shape-(image-threshold|margin|outside|rendering) | size | speak(-as)? | src | stop-(color|opacity) | stroke(-(dash(array|offset)|line(cap|join)|miterlimit|opacity|width))? | suffix | symbols | system | tab-size | table-layout | tap-highlight-color | text-align(-last)? | text-decoration(-(color|line|style))? | text-emphasis(-(color|position|style))? | text-(anchor|fill-color|height|indent|justify|orientation|overflow|rendering|size-adjust|shadow|transform|underline-position|wrap) | top | touch-action | transform(-origin(-(x|y))?) | transform(-style)? | transition(-(delay|duration|property|timing-function))? | translate | unicode-(bidi|range) | user-(drag|select) | vertical-align | visibility | white-space(-collapse)? | widows | width | will-change | word-(break|spacing|wrap) | writing-mode | z-index | zoom )\\b",
4707
"name": "support.type.property-name.less"
4708
},
4709
{
4710
"match": "(?x)\\b(((contain-intrinsic|max|min)-)?(block|inline)?-size)\\b",
4711
"name": "support.type.property-name.less"
4712
},
4713
{
4714
"include": "$self"
4715
}
4716
]
4717
},
4718
{
4719
"begin": "\\b((?:(?:\\+_?)?):)([\\s\\t]*)",
4720
"beginCaptures": {
4721
"1": {
4722
"name": "punctuation.separator.key-value.less"
4723
},
4724
"2": {
4725
"name": "meta.property-value.less"
4726
}
4727
},
4728
"captures": {
4729
"1": {
4730
"name": "punctuation.separator.key-value.less"
4731
},
4732
"4": {
4733
"name": "meta.property-value.less"
4734
}
4735
},
4736
"contentName": "meta.property-value.less",
4737
"end": "\\s*(;)|(?=[})])",
4738
"endCaptures": {
4739
"1": {
4740
"name": "punctuation.terminator.rule.less"
4741
}
4742
},
4743
"patterns": [
4744
{
4745
"include": "#property-values"
4746
}
4747
]
4748
},
4749
{
4750
"include": "$self"
4751
}
4752
]
4753
},
4754
"scroll-function": {
4755
"begin": "\\b(scroll)(\\()",
4756
"beginCaptures": {
4757
"1": {
4758
"name": "support.function.scroll.less"
4759
},
4760
"2": {
4761
"name": "punctuation.definition.group.begin.less"
4762
}
4763
},
4764
"end": "\\)",
4765
"endCaptures": {
4766
"0": {
4767
"name": "punctuation.definition.group.end.less"
4768
}
4769
},
4770
"name": "meta.function-call.less",
4771
"patterns": [
4772
{
4773
"match": "root|nearest|self",
4774
"name": "support.constant.scroller.less"
4775
},
4776
{
4777
"match": "block|inline|x|y",
4778
"name": "support.constant.axis.less"
4779
},
4780
{
4781
"include": "#less-variables"
4782
},
4783
{
4784
"include": "#var-function"
4785
}
4786
]
4787
},
4788
"selector": {
4789
"patterns": [
4790
{
4791
"begin": "(?=[>~+/\\.*#a-zA-Z\\[&]|(\\:{1,2}[^\\s])|@\\{)",
4792
"contentName": "meta.selector.less",
4793
"end": "(?=@(?!\\{)|[{;])",
4794
"patterns": [
4795
{
4796
"include": "#comment-line"
4797
},
4798
{
4799
"include": "#selectors"
4800
},
4801
{
4802
"include": "#less-namespace-accessors"
4803
},
4804
{
4805
"include": "#less-variable-interpolation"
4806
},
4807
{
4808
"include": "#important"
4809
}
4810
]
4811
}
4812
]
4813
},
4814
"selectors": {
4815
"patterns": [
4816
{
4817
"match": "\\b([a-z](?:(?:[-_a-z0-9\\x{00B7}]|\\\\\\.|[[\\x{00C0}-\\x{00D6}][\\x{00D8}-\\x{00F6}][\\x{00F8}-\\x{02FF}][\\x{0300}-\\x{037D}][\\x{037F}-\\x{1FFF}][\\x{200C}-\\x{200D}][\\x{203F}-\\x{2040}][\\x{2070}-\\x{218F}][\\x{2C00}-\\x{2FEF}][\\x{3001}-\\x{D7FF}][\\x{F900}-\\x{FDCF}][\\x{FDF0}-\\x{FFFD}][\\x{10000}-\\x{EFFFF}]]))*-(?:(?:[-_a-z0-9\\x{00B7}]|\\\\\\.|[[\\x{00C0}-\\x{00D6}][\\x{00D8}-\\x{00F6}][\\x{00F8}-\\x{02FF}][\\x{0300}-\\x{037D}][\\x{037F}-\\x{1FFF}][\\x{200C}-\\x{200D}][\\x{203F}-\\x{2040}][\\x{2070}-\\x{218F}][\\x{2C00}-\\x{2FEF}][\\x{3001}-\\x{D7FF}][\\x{F900}-\\x{FDCF}][\\x{FDF0}-\\x{FFFD}][\\x{10000}-\\x{EFFFF}]]))*)\\b",
4818
"name": "entity.name.tag.custom.less"
4819
},
4820
{
4821
"match": "(?x)\\b( a | abbr | acronym | address | applet | area | article | aside | audio | b | base | basefont | bdi | bdo | big | blockquote | body | br | button | canvas | caption | circle | cite | clipPath | code | col | colgroup | content | data | dataList | dd | defs | del | details | dfn | dialog | dir | div | dl | dt | element | ellipse | em | embed | eventsource | fieldset | figcaption | figure | filter | footer | foreignObject | form | frame | frameset | g | glyph | glyphRef | h1 | h2 | h3 | h4 | h5 | h6 | head | header | hgroup | hr | html | i | iframe | image | img | input | ins | isindex | kbd | keygen | label | legend | li | line | linearGradient | link | main | map | mark | marker | mask | menu | meta | meter | nav | noframes | noscript | object | ol | optgroup | option | output | p | param | path | pattern | picture | polygon | polyline | pre | progress | q | radialGradient | rect | rp | ruby | rt | rtc | s | samp | script | section | select | shadow | small | source | span | stop | strike | strong | style | sub | summary | sup | svg | switch | symbol | table | tbody | td | template | textarea | textPath | tfoot | th | thead | time | title | tr | track | tref | tspan | tt | u | ul | use | var | video | wbr | xmp )\\b",
4822
"name": "entity.name.tag.less"
4823
},
4824
{
4825
"begin": "(\\.)",
4826
"beginCaptures": {
4827
"1": {
4828
"name": "punctuation.definition.entity.less"
4829
}
4830
},
4831
"end": "(?![-\\w]|[^\\x{00}-\\x{9f}]|\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\@(?=\\{)))",
4832
"name": "entity.other.attribute-name.class.less",
4833
"patterns": [
4834
{
4835
"include": "#less-variable-interpolation"
4836
}
4837
]
4838
},
4839
{
4840
"begin": "(#)",
4841
"beginCaptures": {
4842
"1": {
4843
"name": "punctuation.definition.entity.less"
4844
}
4845
},
4846
"end": "(?![-\\w]|[^\\x{00}-\\x{9f}]|\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\@(?=\\{)))",
4847
"name": "entity.other.attribute-name.id.less",
4848
"patterns": [
4849
{
4850
"include": "#less-variable-interpolation"
4851
}
4852
]
4853
},
4854
{
4855
"begin": "(&)",
4856
"beginCaptures": {
4857
"1": {
4858
"name": "punctuation.definition.entity.less"
4859
}
4860
},
4861
"contentName": "entity.other.attribute-name.parent.less",
4862
"end": "(?![-\\w]|[^\\x{00}-\\x{9f}]|\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\@(?=\\{)))",
4863
"name": "entity.other.attribute-name.parent.less",
4864
"patterns": [
4865
{
4866
"include": "#less-variable-interpolation"
4867
},
4868
{
4869
"include": "#selectors"
4870
}
4871
]
4872
},
4873
{
4874
"include": "#pseudo-selectors"
4875
},
4876
{
4877
"include": "#less-extend"
4878
},
4879
{
4880
"match": "(?!\\+_?:)(?:>{1,3}|[~+])(?![>~+;}])",
4881
"name": "punctuation.separator.combinator.less"
4882
},
4883
{
4884
"match": "((?:>{1,3}|[~+])){2,}",
4885
"name": "invalid.illegal.combinator.less"
4886
},
4887
{
4888
"match": "\\/deep\\/",
4889
"name": "invalid.illegal.combinator.less"
4890
},
4891
{
4892
"begin": "\\[",
4893
"beginCaptures": {
4894
"0": {
4895
"name": "punctuation.section.braces.begin.less"
4896
}
4897
},
4898
"end": "\\]",
4899
"endCaptures": {
4900
"0": {
4901
"name": "punctuation.section.braces.end.less"
4902
}
4903
},
4904
"name": "meta.attribute-selector.less",
4905
"patterns": [
4906
{
4907
"include": "#less-variable-interpolation"
4908
},
4909
{
4910
"include": "#qualified-name"
4911
},
4912
{
4913
"match": "(-?(?:[[_a-zA-Z][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))(?:[[-\\w][^\\x{00}-\\x{7F}]]|(?:\\\\\\h{1,6}[\\s\\t\\n\\f]?|\\\\[^\\n\\f\\h]))*)",
4914
"name": "entity.other.attribute-name.less"
4915
},
4916
{
4917
"begin": "\\s*([~*|^$]?=)\\s*",
4918
"beginCaptures": {
4919
"1": {
4920
"name": "keyword.operator.attribute-selector.less"
4921
}
4922
},
4923
"end": "(?=(\\s|\\]))",
4924
"patterns": [
4925
{
4926
"include": "#less-variable-interpolation"
4927
},
4928
{
4929
"match": "[^\\s\\]\\['\"]",
4930
"name": "string.unquoted.less"
4931
},
4932
{
4933
"include": "#literal-string"
4934
},
4935
{
4936
"captures": {
4937
"1": {
4938
"name": "keyword.other.less"
4939
}
4940
},
4941
"match": "(?:\\s+([iI]))?"
4942
},
4943
{
4944
"match": "\\]",
4945
"name": "punctuation.definition.entity.less"
4946
}
4947
]
4948
}
4949
]
4950
},
4951
{
4952
"include": "#arbitrary-repetition"
4953
},
4954
{
4955
"match": "\\*",
4956
"name": "entity.name.tag.wildcard.less"
4957
}
4958
]
4959
},
4960
"shape-functions": {
4961
"patterns": [
4962
{
4963
"begin": "\\b(rect)(?=\\()",
4964
"beginCaptures": {
4965
"0": {
4966
"name": "support.function.shape.less"
4967
}
4968
},
4969
"end": "\\)",
4970
"endCaptures": {
4971
"0": {
4972
"name": "punctuation.definition.group.end.less"
4973
}
4974
},
4975
"name": "meta.function-call.less",
4976
"patterns": [
4977
{
4978
"begin": "\\(",
4979
"beginCaptures": {
4980
"0": {
4981
"name": "punctuation.definition.group.begin.less"
4982
}
4983
},
4984
"end": "(?=\\))",
4985
"patterns": [
4986
{
4987
"match": "\\bauto\\b",
4988
"name": "support.constant.property-value.less"
4989
},
4990
{
4991
"include": "#length-type"
4992
},
4993
{
4994
"include": "#comma-delimiter"
4995
}
4996
]
4997
}
4998
]
4999
},
5000
{
5001
"begin": "\\b(inset)(?=\\()",
5002
"beginCaptures": {
5003
"0": {
5004
"name": "support.function.shape.less"
5005
}
5006
},
5007
"end": "\\)",
5008
"endCaptures": {
5009
"0": {
5010
"name": "punctuation.definition.group.end.less"
5011
}
5012
},
5013
"name": "meta.function-call.less",
5014
"patterns": [
5015
{
5016
"begin": "\\(",
5017
"beginCaptures": {
5018
"0": {
5019
"name": "punctuation.definition.group.begin.less"
5020
}
5021
},
5022
"end": "(?=\\))",
5023
"patterns": [
5024
{
5025
"match": "\\bround\\b",
5026
"name": "keyword.other.less"
5027
},
5028
{
5029
"include": "#length-type"
5030
},
5031
{
5032
"include": "#percentage-type"
5033
}
5034
]
5035
}
5036
]
5037
},
5038
{
5039
"begin": "\\b(circle|ellipse)(?=\\()",
5040
"beginCaptures": {
5041
"0": {
5042
"name": "support.function.shape.less"
5043
}
5044
},
5045
"end": "\\)",
5046
"endCaptures": {
5047
"0": {
5048
"name": "punctuation.definition.group.end.less"
5049
}
5050
},
5051
"name": "meta.function-call.less",
5052
"patterns": [
5053
{
5054
"begin": "\\(",
5055
"beginCaptures": {
5056
"0": {
5057
"name": "punctuation.definition.group.begin.less"
5058
}
5059
},
5060
"end": "(?=\\))",
5061
"patterns": [
5062
{
5063
"match": "\\bat\\b",
5064
"name": "keyword.other.less"
5065
},
5066
{
5067
"match": "\\b(top|right|bottom|left|center|closest-side|farthest-side)\\b",
5068
"name": "support.constant.property-value.less"
5069
},
5070
{
5071
"include": "#length-type"
5072
},
5073
{
5074
"include": "#percentage-type"
5075
}
5076
]
5077
}
5078
]
5079
},
5080
{
5081
"begin": "\\b(polygon)(?=\\()",
5082
"beginCaptures": {
5083
"0": {
5084
"name": "support.function.shape.less"
5085
}
5086
},
5087
"end": "\\)",
5088
"endCaptures": {
5089
"0": {
5090
"name": "punctuation.definition.group.end.less"
5091
}
5092
},
5093
"name": "meta.function-call.less",
5094
"patterns": [
5095
{
5096
"begin": "\\(",
5097
"beginCaptures": {
5098
"0": {
5099
"name": "punctuation.definition.group.begin.less"
5100
}
5101
},
5102
"end": "(?=\\))",
5103
"patterns": [
5104
{
5105
"match": "\\b(nonzero|evenodd)\\b",
5106
"name": "support.constant.property-value.less"
5107
},
5108
{
5109
"include": "#length-type"
5110
},
5111
{
5112
"include": "#percentage-type"
5113
}
5114
]
5115
}
5116
]
5117
}
5118
]
5119
},
5120
"steps-function": {
5121
"begin": "\\b(steps)(\\()",
5122
"beginCaptures": {
5123
"1": {
5124
"name": "support.function.timing.less"
5125
},
5126
"2": {
5127
"name": "punctuation.definition.group.begin.less"
5128
}
5129
},
5130
"contentName": "meta.group.less",
5131
"end": "\\)",
5132
"endCaptures": {
5133
"0": {
5134
"name": "punctuation.definition.group.end.less"
5135
}
5136
},
5137
"name": "meta.function-call.less",
5138
"patterns": [
5139
{
5140
"match": "jump-start|jump-end|jump-none|jump-both|start|end",
5141
"name": "support.constant.step-position.less"
5142
},
5143
{
5144
"include": "#comma-delimiter"
5145
},
5146
{
5147
"include": "#integer-type"
5148
},
5149
{
5150
"include": "#less-variables"
5151
},
5152
{
5153
"include": "#var-function"
5154
},
5155
{
5156
"include": "#calc-function"
5157
}
5158
]
5159
},
5160
"string-content": {
5161
"patterns": [
5162
{
5163
"include": "#less-variable-interpolation"
5164
},
5165
{
5166
"match": "\\\\\\s*\\n",
5167
"name": "constant.character.escape.newline.less"
5168
},
5169
{
5170
"match": "\\\\(\\h{1,6}|.)",
5171
"name": "constant.character.escape.less"
5172
}
5173
]
5174
},
5175
"style-function": {
5176
"begin": "\\b(style)(?=\\()",
5177
"beginCaptures": {
5178
"0": {
5179
"name": "support.function.style.less"
5180
}
5181
},
5182
"end": "\\)",
5183
"endCaptures": {
5184
"0": {
5185
"name": "punctuation.definition.group.end.less"
5186
}
5187
},
5188
"name": "meta.function-call.less",
5189
"patterns": [
5190
{
5191
"begin": "\\(",
5192
"beginCaptures": {
5193
"0": {
5194
"name": "punctuation.definition.group.begin.less"
5195
}
5196
},
5197
"end": "(?=\\))",
5198
"patterns": [
5199
{
5200
"include": "#rule-list-body"
5201
}
5202
]
5203
}
5204
]
5205
},
5206
"symbols-function": {
5207
"begin": "\\b(symbols)(?=\\()",
5208
"beginCaptures": {
5209
"1": {
5210
"name": "support.function.counter.less"
5211
}
5212
},
5213
"end": "\\)",
5214
"endCaptures": {
5215
"0": {
5216
"name": "punctuation.definition.group.end.less"
5217
}
5218
},
5219
"name": "meta.function-call.less",
5220
"patterns": [
5221
{
5222
"begin": "\\(",
5223
"beginCaptures": {
5224
"0": {
5225
"name": "punctuation.definition.group.begin.less"
5226
}
5227
},
5228
"end": "(?=\\))",
5229
"patterns": [
5230
{
5231
"match": "\\b(cyclic|numeric|alphabetic|symbolic|fixed)\\b",
5232
"name": "support.constant.symbol-type.less"
5233
},
5234
{
5235
"include": "#comma-delimiter"
5236
},
5237
{
5238
"include": "#literal-string"
5239
},
5240
{
5241
"include": "#image-type"
5242
}
5243
]
5244
}
5245
]
5246
},
5247
"time-type": {
5248
"captures": {
5249
"1": {
5250
"name": "keyword.other.unit.less"
5251
}
5252
},
5253
"match": "(?i:[-+]?(?:(?:\\d*\\.\\d+(?:[eE](?:[-+]?\\d+))*)|(?:[-+]?\\d+))(s|ms))\\b",
5254
"name": "constant.numeric.less"
5255
},
5256
"transform-functions": {
5257
"patterns": [
5258
{
5259
"begin": "\\b(matrix3d|scale3d|matrix|scale)(?=\\()",
5260
"beginCaptures": {
5261
"0": {
5262
"name": "support.function.transform.less"
5263
}
5264
},
5265
"end": "\\)",
5266
"endCaptures": {
5267
"0": {
5268
"name": "punctuation.definition.group.end.less"
5269
}
5270
},
5271
"name": "meta.function-call.less",
5272
"patterns": [
5273
{
5274
"begin": "\\(",
5275
"beginCaptures": {
5276
"0": {
5277
"name": "punctuation.definition.group.begin.less"
5278
}
5279
},
5280
"end": "(?=\\))",
5281
"patterns": [
5282
{
5283
"include": "#comma-delimiter"
5284
},
5285
{
5286
"include": "#number-type"
5287
},
5288
{
5289
"include": "#less-variables"
5290
},
5291
{
5292
"include": "#var-function"
5293
}
5294
]
5295
}
5296
]
5297
},
5298
{
5299
"begin": "\\b(translate(3d)?)(?=\\()",
5300
"beginCaptures": {
5301
"0": {
5302
"name": "support.function.transform.less"
5303
}
5304
},
5305
"end": "\\)",
5306
"endCaptures": {
5307
"0": {
5308
"name": "punctuation.definition.group.end.less"
5309
}
5310
},
5311
"name": "meta.function-call.less",
5312
"patterns": [
5313
{
5314
"begin": "\\(",
5315
"beginCaptures": {
5316
"0": {
5317
"name": "punctuation.definition.group.begin.less"
5318
}
5319
},
5320
"end": "(?=\\))",
5321
"patterns": [
5322
{
5323
"include": "#comma-delimiter"
5324
},
5325
{
5326
"include": "#percentage-type"
5327
},
5328
{
5329
"include": "#length-type"
5330
},
5331
{
5332
"include": "#number-type"
5333
},
5334
{
5335
"include": "#less-variables"
5336
},
5337
{
5338
"include": "#var-function"
5339
}
5340
]
5341
}
5342
]
5343
},
5344
{
5345
"begin": "\\b(translate[XY])(?=\\()",
5346
"beginCaptures": {
5347
"0": {
5348
"name": "support.function.transform.less"
5349
}
5350
},
5351
"end": "\\)",
5352
"endCaptures": {
5353
"0": {
5354
"name": "punctuation.definition.group.end.less"
5355
}
5356
},
5357
"name": "meta.function-call.less",
5358
"patterns": [
5359
{
5360
"begin": "\\(",
5361
"beginCaptures": {
5362
"0": {
5363
"name": "punctuation.definition.group.begin.less"
5364
}
5365
},
5366
"end": "(?=\\))",
5367
"patterns": [
5368
{
5369
"include": "#percentage-type"
5370
},
5371
{
5372
"include": "#length-type"
5373
},
5374
{
5375
"include": "#number-type"
5376
},
5377
{
5378
"include": "#less-variables"
5379
},
5380
{
5381
"include": "#var-function"
5382
}
5383
]
5384
}
5385
]
5386
},
5387
{
5388
"begin": "\\b(rotate[XYZ]?|skew[XY])(?=\\()",
5389
"beginCaptures": {
5390
"0": {
5391
"name": "support.function.transform.less"
5392
}
5393
},
5394
"end": "\\)",
5395
"endCaptures": {
5396
"0": {
5397
"name": "punctuation.definition.group.end.less"
5398
}
5399
},
5400
"name": "meta.function-call.less",
5401
"patterns": [
5402
{
5403
"begin": "\\(",
5404
"beginCaptures": {
5405
"0": {
5406
"name": "punctuation.definition.group.begin.less"
5407
}
5408
},
5409
"end": "(?=\\))",
5410
"patterns": [
5411
{
5412
"include": "#angle-type"
5413
},
5414
{
5415
"include": "#less-variables"
5416
},
5417
{
5418
"include": "#calc-function"
5419
},
5420
{
5421
"include": "#var-function"
5422
}
5423
]
5424
}
5425
]
5426
},
5427
{
5428
"begin": "\\b(skew)(?=\\()",
5429
"beginCaptures": {
5430
"0": {
5431
"name": "support.function.transform.less"
5432
}
5433
},
5434
"end": "\\)",
5435
"endCaptures": {
5436
"0": {
5437
"name": "punctuation.definition.group.end.less"
5438
}
5439
},
5440
"name": "meta.function-call.less",
5441
"patterns": [
5442
{
5443
"begin": "\\(",
5444
"beginCaptures": {
5445
"0": {
5446
"name": "punctuation.definition.group.begin.less"
5447
}
5448
},
5449
"end": "(?=\\))",
5450
"patterns": [
5451
{
5452
"include": "#comma-delimiter"
5453
},
5454
{
5455
"include": "#angle-type"
5456
},
5457
{
5458
"include": "#less-variables"
5459
},
5460
{
5461
"include": "#calc-function"
5462
},
5463
{
5464
"include": "#var-function"
5465
}
5466
]
5467
}
5468
]
5469
},
5470
{
5471
"begin": "\\b(translateZ|perspective)(?=\\()",
5472
"beginCaptures": {
5473
"0": {
5474
"name": "support.function.transform.less"
5475
}
5476
},
5477
"end": "\\)",
5478
"endCaptures": {
5479
"0": {
5480
"name": "punctuation.definition.group.end.less"
5481
}
5482
},
5483
"name": "meta.function-call.less",
5484
"patterns": [
5485
{
5486
"begin": "\\(",
5487
"beginCaptures": {
5488
"0": {
5489
"name": "punctuation.definition.group.begin.less"
5490
}
5491
},
5492
"end": "(?=\\))",
5493
"patterns": [
5494
{
5495
"include": "#length-type"
5496
},
5497
{
5498
"include": "#less-variables"
5499
},
5500
{
5501
"include": "#calc-function"
5502
},
5503
{
5504
"include": "#var-function"
5505
}
5506
]
5507
}
5508
]
5509
},
5510
{
5511
"begin": "\\b(rotate3d)(?=\\()",
5512
"beginCaptures": {
5513
"0": {
5514
"name": "support.function.transform.less"
5515
}
5516
},
5517
"end": "\\)",
5518
"endCaptures": {
5519
"0": {
5520
"name": "punctuation.definition.group.end.less"
5521
}
5522
},
5523
"name": "meta.function-call.less",
5524
"patterns": [
5525
{
5526
"begin": "\\(",
5527
"beginCaptures": {
5528
"0": {
5529
"name": "punctuation.definition.group.begin.less"
5530
}
5531
},
5532
"end": "(?=\\))",
5533
"patterns": [
5534
{
5535
"include": "#comma-delimiter"
5536
},
5537
{
5538
"include": "#angle-type"
5539
},
5540
{
5541
"include": "#number-type"
5542
},
5543
{
5544
"include": "#less-variables"
5545
},
5546
{
5547
"include": "#calc-function"
5548
},
5549
{
5550
"include": "#var-function"
5551
}
5552
]
5553
}
5554
]
5555
},
5556
{
5557
"begin": "\\b(scale[XYZ])(?=\\()",
5558
"beginCaptures": {
5559
"0": {
5560
"name": "support.function.transform.less"
5561
}
5562
},
5563
"end": "\\)",
5564
"endCaptures": {
5565
"0": {
5566
"name": "punctuation.definition.group.end.less"
5567
}
5568
},
5569
"name": "meta.function-call.less",
5570
"patterns": [
5571
{
5572
"begin": "\\(",
5573
"beginCaptures": {
5574
"0": {
5575
"name": "punctuation.definition.group.begin.less"
5576
}
5577
},
5578
"end": "(?=\\))",
5579
"patterns": [
5580
{
5581
"include": "#comma-delimiter"
5582
},
5583
{
5584
"include": "#number-type"
5585
},
5586
{
5587
"include": "#less-variables"
5588
},
5589
{
5590
"include": "#calc-function"
5591
},
5592
{
5593
"include": "#var-function"
5594
}
5595
]
5596
}
5597
]
5598
}
5599
]
5600
},
5601
"unicode-range": {
5602
"captures": {
5603
"1": {
5604
"name": "support.constant.unicode-range.prefix.less"
5605
},
5606
"2": {
5607
"name": "constant.codepoint-range.less"
5608
},
5609
"3": {
5610
"name": "punctuation.section.range.less"
5611
}
5612
},
5613
"match": "(?i)(u\\+)([0-9a-f?]{1,6}(?:(-)[0-9a-f]{1,6})?)",
5614
"name": "support.unicode-range.less"
5615
},
5616
"unquoted-string": {
5617
"match": "[^\\s'\"]",
5618
"name": "string.unquoted.less"
5619
},
5620
"url-function": {
5621
"begin": "\\b(url)(?=\\()",
5622
"beginCaptures": {
5623
"1": {
5624
"name": "support.function.url.less"
5625
}
5626
},
5627
"end": "\\)",
5628
"endCaptures": {
5629
"0": {
5630
"name": "punctuation.definition.group.end.less"
5631
}
5632
},
5633
"name": "meta.function-call.less",
5634
"patterns": [
5635
{
5636
"begin": "\\(",
5637
"beginCaptures": {
5638
"0": {
5639
"name": "punctuation.definition.group.begin.less"
5640
}
5641
},
5642
"end": "(?=\\))",
5643
"patterns": [
5644
{
5645
"include": "#less-variables"
5646
},
5647
{
5648
"include": "#literal-string"
5649
},
5650
{
5651
"include": "#unquoted-string"
5652
},
5653
{
5654
"include": "#var-function"
5655
}
5656
]
5657
}
5658
]
5659
},
5660
"value-separator": {
5661
"captures": {
5662
"1": {
5663
"name": "punctuation.separator.less"
5664
}
5665
},
5666
"match": "\\s*(/)\\s*"
5667
},
5668
"var-function": {
5669
"begin": "\\b(var)(?=\\()",
5670
"beginCaptures": {
5671
"1": {
5672
"name": "support.function.var.less"
5673
}
5674
},
5675
"end": "\\)",
5676
"endCaptures": {
5677
"0": {
5678
"name": "punctuation.definition.group.end.less"
5679
}
5680
},
5681
"name": "meta.function-call.less",
5682
"patterns": [
5683
{
5684
"begin": "\\(",
5685
"beginCaptures": {
5686
"0": {
5687
"name": "punctuation.definition.group.begin.less"
5688
}
5689
},
5690
"end": "(?=\\))",
5691
"patterns": [
5692
{
5693
"include": "#comma-delimiter"
5694
},
5695
{
5696
"include": "#custom-property-name"
5697
},
5698
{
5699
"include": "#less-variables"
5700
},
5701
{
5702
"include": "#property-values"
5703
}
5704
]
5705
}
5706
]
5707
},
5708
"view-function": {
5709
"begin": "\\b(view)(?=\\()",
5710
"beginCaptures": {
5711
"1": {
5712
"name": "support.function.view.less"
5713
}
5714
},
5715
"end": "\\)",
5716
"endCaptures": {
5717
"0": {
5718
"name": "punctuation.definition.group.end.less"
5719
}
5720
},
5721
"name": "meta.function-call.less",
5722
"patterns": [
5723
{
5724
"begin": "\\(",
5725
"beginCaptures": {
5726
"0": {
5727
"name": "punctuation.definition.group.begin.less"
5728
}
5729
},
5730
"end": "(?=\\))",
5731
"patterns": [
5732
{
5733
"match": "block|inline|x|y|auto",
5734
"name": "support.constant.property-value.less"
5735
},
5736
{
5737
"include": "#percentage-type"
5738
},
5739
{
5740
"include": "#length-type"
5741
},
5742
{
5743
"include": "#less-variables"
5744
},
5745
{
5746
"include": "#var-function"
5747
},
5748
{
5749
"include": "#calc-function"
5750
},
5751
{
5752
"include": "#arbitrary-repetition"
5753
}
5754
]
5755
}
5756
]
5757
}
5758
}
5759
}
5760