github-linguist 7.1.3 → 7.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/grammars/annotation.liquidhaskell.haskell.json +119 -4
- data/grammars/etc.json +148 -0
- data/grammars/hint.haskell.json +119 -4
- data/grammars/hint.message.haskell.json +119 -4
- data/grammars/hint.type.haskell.json +119 -4
- data/grammars/injections.etc.json +21 -0
- data/grammars/source.abap.json +2 -2
- data/grammars/source.ats.json +87 -17
- data/grammars/source.ballerina.json +236 -313
- data/grammars/source.batchfile.json +1 -1
- data/grammars/source.bdf.json +14 -8
- data/grammars/source.changelogs.rpm-spec.json +3 -3
- data/grammars/source.chapel.json +1 -1
- data/grammars/source.coffee.json +98 -0
- data/grammars/source.csound-document.json +26 -124
- data/grammars/source.curlrc.json +180 -0
- data/grammars/source.dart.json +5 -2
- data/grammars/source.elixir.json +20 -25
- data/grammars/source.emacs.lisp.json +23 -1
- data/grammars/source.gdb.json +1 -1
- data/grammars/source.gitattributes.json +111 -0
- data/grammars/source.gitconfig.json +450 -0
- data/grammars/source.gitignore.json +140 -0
- data/grammars/source.graphql.json +18 -0
- data/grammars/source.haproxy-config.json +10 -10
- data/grammars/source.haskell.json +119 -4
- data/grammars/source.hgignore.json +34 -0
- data/grammars/source.hsig.json +119 -4
- data/grammars/source.hx.json +2 -2
- data/grammars/source.jison.json +1 -1
- data/grammars/source.ltspice.symbol.json +294 -0
- data/grammars/source.m4.json +187 -0
- data/grammars/source.man-conf.json +141 -0
- data/grammars/source.nanorc.json +330 -0
- data/grammars/source.nim.comment.json +82 -0
- data/grammars/source.nim.json +1 -57
- data/grammars/source.nix.json +2 -2
- data/grammars/source.opts.json +98 -0
- data/grammars/source.reason.json +13 -0
- data/grammars/source.rust.json +35 -0
- data/grammars/source.terraform.json +4 -1
- data/grammars/source.ts.json +307 -39
- data/grammars/source.tsx.json +290 -37
- data/grammars/source.zig.json +286 -0
- data/grammars/text.html.basic.json +1 -1
- data/grammars/text.marko.json +61 -9
- data/grammars/text.tex.latex.haskell.json +119 -4
- data/grammars/text.zone_file.json +2 -2
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +0 -8
- data/lib/linguist/heuristics.yml +30 -3
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +143 -3
- data/lib/linguist/samples.json +4494 -646
- data/lib/linguist/vendor.yml +1 -2
- metadata +31 -4
- data/grammars/source.solidity.json +0 -189
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e1b5d82326588ce899ff67555ffc5291f7888ae8
|
4
|
+
data.tar.gz: 709367930b683b77eaedda5205333f4b0136b658
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 28926e0d20748c753db47c29a52e5e5e483f98a88e7aa49f3a730047bc1c5894045570b86c1b8ab1675f13456e858cf993dbfb6959a411ab7ad799cc5c0101ec
|
7
|
+
data.tar.gz: 806e10bcd8fcb66b11a0fa01552856f6b03ab814084ad21949f72f829eb3ef519e01815bb5e62e4aa41e96d7c651071a3b32ab615d5c515224c91bc81d69ad84
|
@@ -276,6 +276,9 @@
|
|
276
276
|
{
|
277
277
|
"include": "#deriving"
|
278
278
|
},
|
279
|
+
{
|
280
|
+
"include": "#via"
|
281
|
+
},
|
279
282
|
{
|
280
283
|
"include": "#assignment_op"
|
281
284
|
},
|
@@ -374,7 +377,7 @@
|
|
374
377
|
{
|
375
378
|
"name": "meta.declaration.instance.deriving.haskell",
|
376
379
|
"contentName": "meta.type-signature.haskell",
|
377
|
-
"begin": "(?:\\G(?:\\s*\\w+\\s)?|^)([ \\t]*)(deriving\\s+instance)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
380
|
+
"begin": "(?:\\G(?:\\s*\\w+\\s)?|^)([ \\t]*)(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s+(instance)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
378
381
|
"end": "(?:^(?!\\1[ \\t]|[ \\t]*$)|(?=@-}))",
|
379
382
|
"patterns": [
|
380
383
|
{
|
@@ -382,11 +385,24 @@
|
|
382
385
|
},
|
383
386
|
{
|
384
387
|
"include": "#type_signature"
|
388
|
+
},
|
389
|
+
{
|
390
|
+
"include": "#deriving_via"
|
385
391
|
}
|
386
392
|
],
|
387
393
|
"beginCaptures": {
|
388
394
|
"2": {
|
389
395
|
"name": "keyword.other.haskell"
|
396
|
+
},
|
397
|
+
"3": {
|
398
|
+
"patterns": [
|
399
|
+
{
|
400
|
+
"include": "#deriving_strategies"
|
401
|
+
}
|
402
|
+
]
|
403
|
+
},
|
404
|
+
"4": {
|
405
|
+
"name": "keyword.other.haskell"
|
390
406
|
}
|
391
407
|
}
|
392
408
|
}
|
@@ -396,10 +412,17 @@
|
|
396
412
|
"patterns": [
|
397
413
|
{
|
398
414
|
"name": "meta.deriving.haskell",
|
399
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
415
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
400
416
|
"captures": {
|
401
417
|
"1": {
|
402
418
|
"name": "keyword.other.haskell"
|
419
|
+
},
|
420
|
+
"2": {
|
421
|
+
"patterns": [
|
422
|
+
{
|
423
|
+
"include": "#deriving_strategies"
|
424
|
+
}
|
425
|
+
]
|
403
426
|
}
|
404
427
|
}
|
405
428
|
}
|
@@ -409,7 +432,7 @@
|
|
409
432
|
"patterns": [
|
410
433
|
{
|
411
434
|
"name": "meta.deriving.haskell",
|
412
|
-
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*\\(",
|
435
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s*\\(",
|
413
436
|
"end": "\\)",
|
414
437
|
"patterns": [
|
415
438
|
{
|
@@ -424,6 +447,13 @@
|
|
424
447
|
"beginCaptures": {
|
425
448
|
"1": {
|
426
449
|
"name": "keyword.other.haskell"
|
450
|
+
},
|
451
|
+
"2": {
|
452
|
+
"patterns": [
|
453
|
+
{
|
454
|
+
"include": "#deriving_strategies"
|
455
|
+
}
|
456
|
+
]
|
427
457
|
}
|
428
458
|
}
|
429
459
|
}
|
@@ -433,18 +463,38 @@
|
|
433
463
|
"patterns": [
|
434
464
|
{
|
435
465
|
"name": "meta.deriving.haskell",
|
436
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
466
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
437
467
|
"captures": {
|
438
468
|
"1": {
|
439
469
|
"name": "keyword.other.haskell"
|
440
470
|
},
|
441
471
|
"2": {
|
472
|
+
"patterns": [
|
473
|
+
{
|
474
|
+
"include": "#deriving_strategies"
|
475
|
+
}
|
476
|
+
]
|
477
|
+
},
|
478
|
+
"3": {
|
442
479
|
"name": "entity.other.inherited-class.haskell"
|
443
480
|
}
|
444
481
|
}
|
445
482
|
}
|
446
483
|
]
|
447
484
|
},
|
485
|
+
"deriving_strategies": {
|
486
|
+
"patterns": [
|
487
|
+
{
|
488
|
+
"name": "meta.deriving.strategy.haskell",
|
489
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(stock|newtype|anyclass)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
490
|
+
"captures": {
|
491
|
+
"1": {
|
492
|
+
"name": "keyword.other.haskell"
|
493
|
+
}
|
494
|
+
}
|
495
|
+
}
|
496
|
+
]
|
497
|
+
},
|
448
498
|
"double_colon_operator": {
|
449
499
|
"patterns": [
|
450
500
|
{
|
@@ -1552,6 +1602,71 @@
|
|
1552
1602
|
}
|
1553
1603
|
]
|
1554
1604
|
},
|
1605
|
+
"via": {
|
1606
|
+
"patterns": [
|
1607
|
+
{
|
1608
|
+
"include": "#via_list"
|
1609
|
+
},
|
1610
|
+
{
|
1611
|
+
"include": "#via_simple"
|
1612
|
+
},
|
1613
|
+
{
|
1614
|
+
"include": "#via_keyword"
|
1615
|
+
}
|
1616
|
+
]
|
1617
|
+
},
|
1618
|
+
"via_keyword": {
|
1619
|
+
"patterns": [
|
1620
|
+
{
|
1621
|
+
"name": "meta.via.haskell",
|
1622
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1623
|
+
"captures": {
|
1624
|
+
"1": {
|
1625
|
+
"name": "keyword.other.haskell"
|
1626
|
+
}
|
1627
|
+
}
|
1628
|
+
}
|
1629
|
+
]
|
1630
|
+
},
|
1631
|
+
"via_list": {
|
1632
|
+
"patterns": [
|
1633
|
+
{
|
1634
|
+
"name": "meta.via.haskell",
|
1635
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)\\s*\\(",
|
1636
|
+
"end": "\\)",
|
1637
|
+
"patterns": [
|
1638
|
+
{
|
1639
|
+
"include": "#type_signature"
|
1640
|
+
}
|
1641
|
+
],
|
1642
|
+
"beginCaptures": {
|
1643
|
+
"1": {
|
1644
|
+
"name": "keyword.other.haskell"
|
1645
|
+
}
|
1646
|
+
}
|
1647
|
+
}
|
1648
|
+
]
|
1649
|
+
},
|
1650
|
+
"via_simple": {
|
1651
|
+
"patterns": [
|
1652
|
+
{
|
1653
|
+
"name": "meta.via.haskell",
|
1654
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1655
|
+
"captures": {
|
1656
|
+
"1": {
|
1657
|
+
"name": "keyword.other.haskell"
|
1658
|
+
},
|
1659
|
+
"2": {
|
1660
|
+
"patterns": [
|
1661
|
+
{
|
1662
|
+
"include": "#type_signature"
|
1663
|
+
}
|
1664
|
+
]
|
1665
|
+
}
|
1666
|
+
}
|
1667
|
+
}
|
1668
|
+
]
|
1669
|
+
},
|
1555
1670
|
"where": {
|
1556
1671
|
"patterns": [
|
1557
1672
|
{
|
data/grammars/etc.json
ADDED
@@ -0,0 +1,148 @@
|
|
1
|
+
{
|
2
|
+
"scopeName": "etc",
|
3
|
+
"patterns": [
|
4
|
+
{
|
5
|
+
"include": "#comment"
|
6
|
+
},
|
7
|
+
{
|
8
|
+
"include": "#esc"
|
9
|
+
},
|
10
|
+
{
|
11
|
+
"include": "#float"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"include": "#int"
|
15
|
+
},
|
16
|
+
{
|
17
|
+
"include": "#str"
|
18
|
+
},
|
19
|
+
{
|
20
|
+
"include": "#colon"
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"include": "#eql"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"include": "#bareword"
|
27
|
+
}
|
28
|
+
],
|
29
|
+
"repository": {
|
30
|
+
"bareword": {
|
31
|
+
"name": "string.unquoted.bareword",
|
32
|
+
"match": "[^\"\\s][\\S]*"
|
33
|
+
},
|
34
|
+
"colon": {
|
35
|
+
"name": "keyword.operator.assignment.key-value.colon",
|
36
|
+
"match": ":"
|
37
|
+
},
|
38
|
+
"comment": {
|
39
|
+
"name": "comment.line.number-sign",
|
40
|
+
"begin": "#",
|
41
|
+
"end": "$",
|
42
|
+
"beginCaptures": {
|
43
|
+
"0": {
|
44
|
+
"name": "punctuation.definition.comment"
|
45
|
+
}
|
46
|
+
}
|
47
|
+
},
|
48
|
+
"eql": {
|
49
|
+
"name": "keyword.operator.assignment.key-value.equals-sign",
|
50
|
+
"match": "="
|
51
|
+
},
|
52
|
+
"esc": {
|
53
|
+
"name": "constant.character.escape.backslash",
|
54
|
+
"match": "(\\\\).",
|
55
|
+
"captures": {
|
56
|
+
"1": {
|
57
|
+
"name": "punctuation.definition.escape.backslash"
|
58
|
+
}
|
59
|
+
}
|
60
|
+
},
|
61
|
+
"float": {
|
62
|
+
"patterns": [
|
63
|
+
{
|
64
|
+
"include": "#floatExp"
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"include": "#floatNoExp"
|
68
|
+
}
|
69
|
+
]
|
70
|
+
},
|
71
|
+
"floatExp": {
|
72
|
+
"name": "constant.numeric.float.real.decimal.dec.exponential.scientific",
|
73
|
+
"match": "[-+]?(?:[0-9]*\\.[0-9]+|[0-9]+\\.)(?:[eE][-+]?[0-9]+)++"
|
74
|
+
},
|
75
|
+
"floatNoExp": {
|
76
|
+
"name": "constant.numeric.float.real.decimal.dec",
|
77
|
+
"match": "[-+]?(?:[0-9]*\\.[0-9]+|[0-9]+\\.)++"
|
78
|
+
},
|
79
|
+
"int": {
|
80
|
+
"patterns": [
|
81
|
+
{
|
82
|
+
"include": "#intExp"
|
83
|
+
},
|
84
|
+
{
|
85
|
+
"include": "#intNoExp"
|
86
|
+
}
|
87
|
+
]
|
88
|
+
},
|
89
|
+
"intExp": {
|
90
|
+
"name": "constant.numeric.integer.int.decimal.dec.exponential.scientific",
|
91
|
+
"match": "[-+]?[0-9]+[eE][-+]?[0-9]+"
|
92
|
+
},
|
93
|
+
"intNoExp": {
|
94
|
+
"name": "constant.numeric.integer.int.decimal.dec",
|
95
|
+
"match": "[-+]?[0-9]+"
|
96
|
+
},
|
97
|
+
"str": {
|
98
|
+
"patterns": [
|
99
|
+
{
|
100
|
+
"include": "#strDouble"
|
101
|
+
},
|
102
|
+
{
|
103
|
+
"include": "#strSingle"
|
104
|
+
}
|
105
|
+
]
|
106
|
+
},
|
107
|
+
"strDouble": {
|
108
|
+
"name": "string.quoted.double",
|
109
|
+
"begin": "\"",
|
110
|
+
"end": "\"|(?=$)",
|
111
|
+
"patterns": [
|
112
|
+
{
|
113
|
+
"include": "#esc"
|
114
|
+
}
|
115
|
+
],
|
116
|
+
"beginCaptures": {
|
117
|
+
"0": {
|
118
|
+
"name": "punctuation.definition.string.begin"
|
119
|
+
}
|
120
|
+
},
|
121
|
+
"endCaptures": {
|
122
|
+
"0": {
|
123
|
+
"name": "punctuation.definition.string.end"
|
124
|
+
}
|
125
|
+
}
|
126
|
+
},
|
127
|
+
"strSingle": {
|
128
|
+
"name": "string.quoted.single",
|
129
|
+
"begin": "'",
|
130
|
+
"end": "'|(?=$)",
|
131
|
+
"patterns": [
|
132
|
+
{
|
133
|
+
"include": "#esc"
|
134
|
+
}
|
135
|
+
],
|
136
|
+
"beginCaptures": {
|
137
|
+
"0": {
|
138
|
+
"name": "punctuation.definition.string.begin"
|
139
|
+
}
|
140
|
+
},
|
141
|
+
"endCaptures": {
|
142
|
+
"0": {
|
143
|
+
"name": "punctuation.definition.string.end"
|
144
|
+
}
|
145
|
+
}
|
146
|
+
}
|
147
|
+
}
|
148
|
+
}
|
data/grammars/hint.haskell.json
CHANGED
@@ -258,6 +258,9 @@
|
|
258
258
|
{
|
259
259
|
"include": "#deriving"
|
260
260
|
},
|
261
|
+
{
|
262
|
+
"include": "#via"
|
263
|
+
},
|
261
264
|
{
|
262
265
|
"include": "#assignment_op"
|
263
266
|
},
|
@@ -356,7 +359,7 @@
|
|
356
359
|
{
|
357
360
|
"name": "meta.declaration.instance.deriving.haskell",
|
358
361
|
"contentName": "meta.type-signature.haskell",
|
359
|
-
"begin": "^([ \\t]*)(deriving\\s+instance)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
362
|
+
"begin": "^([ \\t]*)(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s+(instance)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
360
363
|
"end": "^(?!\\1[ \\t]|[ \\t]*$)",
|
361
364
|
"patterns": [
|
362
365
|
{
|
@@ -364,11 +367,24 @@
|
|
364
367
|
},
|
365
368
|
{
|
366
369
|
"include": "#type_signature"
|
370
|
+
},
|
371
|
+
{
|
372
|
+
"include": "#deriving_via"
|
367
373
|
}
|
368
374
|
],
|
369
375
|
"beginCaptures": {
|
370
376
|
"2": {
|
371
377
|
"name": "keyword.other.haskell"
|
378
|
+
},
|
379
|
+
"3": {
|
380
|
+
"patterns": [
|
381
|
+
{
|
382
|
+
"include": "#deriving_strategies"
|
383
|
+
}
|
384
|
+
]
|
385
|
+
},
|
386
|
+
"4": {
|
387
|
+
"name": "keyword.other.haskell"
|
372
388
|
}
|
373
389
|
}
|
374
390
|
}
|
@@ -378,10 +394,17 @@
|
|
378
394
|
"patterns": [
|
379
395
|
{
|
380
396
|
"name": "meta.deriving.haskell",
|
381
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
397
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
382
398
|
"captures": {
|
383
399
|
"1": {
|
384
400
|
"name": "keyword.other.haskell"
|
401
|
+
},
|
402
|
+
"2": {
|
403
|
+
"patterns": [
|
404
|
+
{
|
405
|
+
"include": "#deriving_strategies"
|
406
|
+
}
|
407
|
+
]
|
385
408
|
}
|
386
409
|
}
|
387
410
|
}
|
@@ -391,7 +414,7 @@
|
|
391
414
|
"patterns": [
|
392
415
|
{
|
393
416
|
"name": "meta.deriving.haskell",
|
394
|
-
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*\\(",
|
417
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s*\\(",
|
395
418
|
"end": "\\)",
|
396
419
|
"patterns": [
|
397
420
|
{
|
@@ -406,6 +429,13 @@
|
|
406
429
|
"beginCaptures": {
|
407
430
|
"1": {
|
408
431
|
"name": "keyword.other.haskell"
|
432
|
+
},
|
433
|
+
"2": {
|
434
|
+
"patterns": [
|
435
|
+
{
|
436
|
+
"include": "#deriving_strategies"
|
437
|
+
}
|
438
|
+
]
|
409
439
|
}
|
410
440
|
}
|
411
441
|
}
|
@@ -415,18 +445,38 @@
|
|
415
445
|
"patterns": [
|
416
446
|
{
|
417
447
|
"name": "meta.deriving.haskell",
|
418
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
448
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
419
449
|
"captures": {
|
420
450
|
"1": {
|
421
451
|
"name": "keyword.other.haskell"
|
422
452
|
},
|
423
453
|
"2": {
|
454
|
+
"patterns": [
|
455
|
+
{
|
456
|
+
"include": "#deriving_strategies"
|
457
|
+
}
|
458
|
+
]
|
459
|
+
},
|
460
|
+
"3": {
|
424
461
|
"name": "entity.other.inherited-class.haskell"
|
425
462
|
}
|
426
463
|
}
|
427
464
|
}
|
428
465
|
]
|
429
466
|
},
|
467
|
+
"deriving_strategies": {
|
468
|
+
"patterns": [
|
469
|
+
{
|
470
|
+
"name": "meta.deriving.strategy.haskell",
|
471
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(stock|newtype|anyclass)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
472
|
+
"captures": {
|
473
|
+
"1": {
|
474
|
+
"name": "keyword.other.haskell"
|
475
|
+
}
|
476
|
+
}
|
477
|
+
}
|
478
|
+
]
|
479
|
+
},
|
430
480
|
"double_colon_operator": {
|
431
481
|
"patterns": [
|
432
482
|
{
|
@@ -1479,6 +1529,71 @@
|
|
1479
1529
|
}
|
1480
1530
|
]
|
1481
1531
|
},
|
1532
|
+
"via": {
|
1533
|
+
"patterns": [
|
1534
|
+
{
|
1535
|
+
"include": "#via_list"
|
1536
|
+
},
|
1537
|
+
{
|
1538
|
+
"include": "#via_simple"
|
1539
|
+
},
|
1540
|
+
{
|
1541
|
+
"include": "#via_keyword"
|
1542
|
+
}
|
1543
|
+
]
|
1544
|
+
},
|
1545
|
+
"via_keyword": {
|
1546
|
+
"patterns": [
|
1547
|
+
{
|
1548
|
+
"name": "meta.via.haskell",
|
1549
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1550
|
+
"captures": {
|
1551
|
+
"1": {
|
1552
|
+
"name": "keyword.other.haskell"
|
1553
|
+
}
|
1554
|
+
}
|
1555
|
+
}
|
1556
|
+
]
|
1557
|
+
},
|
1558
|
+
"via_list": {
|
1559
|
+
"patterns": [
|
1560
|
+
{
|
1561
|
+
"name": "meta.via.haskell",
|
1562
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)\\s*\\(",
|
1563
|
+
"end": "\\)",
|
1564
|
+
"patterns": [
|
1565
|
+
{
|
1566
|
+
"include": "#type_signature"
|
1567
|
+
}
|
1568
|
+
],
|
1569
|
+
"beginCaptures": {
|
1570
|
+
"1": {
|
1571
|
+
"name": "keyword.other.haskell"
|
1572
|
+
}
|
1573
|
+
}
|
1574
|
+
}
|
1575
|
+
]
|
1576
|
+
},
|
1577
|
+
"via_simple": {
|
1578
|
+
"patterns": [
|
1579
|
+
{
|
1580
|
+
"name": "meta.via.haskell",
|
1581
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1582
|
+
"captures": {
|
1583
|
+
"1": {
|
1584
|
+
"name": "keyword.other.haskell"
|
1585
|
+
},
|
1586
|
+
"2": {
|
1587
|
+
"patterns": [
|
1588
|
+
{
|
1589
|
+
"include": "#type_signature"
|
1590
|
+
}
|
1591
|
+
]
|
1592
|
+
}
|
1593
|
+
}
|
1594
|
+
}
|
1595
|
+
]
|
1596
|
+
},
|
1482
1597
|
"where": {
|
1483
1598
|
"patterns": [
|
1484
1599
|
{
|