github-linguist 4.8.15 → 4.8.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/grammars/hint.haskell.json +206 -58
- data/grammars/hint.message.haskell.json +206 -58
- data/grammars/hint.type.haskell.json +206 -58
- data/grammars/source.actionscript.3.json +20 -22
- data/grammars/source.bsl.json +41 -9
- data/grammars/source.c++.json +2 -2
- data/grammars/source.clojure.json +3 -2
- data/grammars/source.coffee.json +32 -50
- data/grammars/source.crystal.json +21 -9
- data/grammars/source.cs.json +6 -0
- data/grammars/source.css.less.json +11 -11
- data/grammars/source.elixir.json +3 -3
- data/grammars/source.emacs.lisp.json +105 -11
- data/grammars/source.gfm.json +147 -0
- data/grammars/source.haskell.json +202 -147
- data/grammars/source.js.embedded.html.json +10 -0
- data/grammars/source.js.json +73 -26
- data/grammars/source.lean.json +8 -4
- data/grammars/source.litcoffee.json +1 -0
- data/grammars/source.mql5.json +214 -0
- data/grammars/source.objc.json +1 -1
- data/grammars/source.pic.json +67 -22
- data/grammars/source.python.json +6 -6
- data/grammars/source.sdbl.json +1 -1
- data/grammars/source.shell.json +1 -1
- data/grammars/source.sqf.json +5 -1
- data/grammars/source.swift.json +2564 -707
- data/grammars/source.ts.json +2581 -702
- data/grammars/source.tsx.json +2779 -841
- data/grammars/source.yaml.json +2 -2
- data/grammars/text.html.asdoc.json +0 -2
- data/grammars/text.html.handlebars.json +1 -1
- data/grammars/text.restructuredtext.json +37 -8
- data/grammars/text.roff.json +9 -1
- data/grammars/text.shell-session.json +1 -1
- data/grammars/text.tex.latex.haskell.json +207 -152
- data/grammars/text.xml.flex-config.json +0 -2
- data/lib/linguist/heuristics.rb +2 -2
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +85 -32
- data/lib/linguist/samples.json +2046 -114
- data/lib/linguist/vendor.yml +6 -0
- data/lib/linguist/version.rb +1 -1
- metadata +7 -5
data/grammars/source.yaml.json
CHANGED
@@ -91,10 +91,10 @@
|
|
91
91
|
"name": "constant.numeric.yaml"
|
92
92
|
}
|
93
93
|
},
|
94
|
-
"match": "(?:(?:(?:(-)\\s*)?([^\\s#]
|
94
|
+
"match": "(?:(?:(?:(-)\\s*)?([^\\s#'\"][^#'\"]*?(:)(?=\\s)))|(-))\\s*(((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?)\\s*($|(?=#)(?!#{))"
|
95
95
|
},
|
96
96
|
{
|
97
|
-
"begin": "(?:(?:(?:(-)\\s*)?([^\\s#]
|
97
|
+
"begin": "(?:(?:(?:(-)\\s*)?([^\\s#'\"][^#'\"]*?(:)(?=\\s)))|(-))[ ]*",
|
98
98
|
"beginCaptures": {
|
99
99
|
"1": {
|
100
100
|
"name": "punctuation.definition.entry.yaml"
|
@@ -430,7 +430,7 @@
|
|
430
430
|
]
|
431
431
|
},
|
432
432
|
"block_helper": {
|
433
|
-
"begin": "(\\{\\{~?\\#)([-a-zA-Z0-9_
|
433
|
+
"begin": "(\\{\\{~?\\#)([-a-zA-Z0-9_\\./>]+)\\s?(@?[-a-zA-Z0-9_\\./]+)*\\s?(@?[-a-zA-Z0-9_\\./]+)*\\s?(@?[-a-zA-Z0-9_\\./]+)*",
|
434
434
|
"end": "(~?\\}\\})",
|
435
435
|
"name": "meta.function.block.start.handlebars",
|
436
436
|
"endCaptures": {
|
@@ -944,7 +944,7 @@
|
|
944
944
|
"contentName": "source.embedded.xml",
|
945
945
|
"patterns": [
|
946
946
|
{
|
947
|
-
"include": "
|
947
|
+
"include": "text.xml"
|
948
948
|
}
|
949
949
|
],
|
950
950
|
"begin": "^([ \\t]*)(\\.\\.)\\s(code(?:-block)?)(::)\\s+(xml)\\s*$",
|
@@ -1416,13 +1416,8 @@
|
|
1416
1416
|
{
|
1417
1417
|
"name": "meta.sphinx-domain.restructuredtext",
|
1418
1418
|
"contentName": "source.embedded.python",
|
1419
|
-
"patterns": [
|
1420
|
-
{
|
1421
|
-
"include": "source.python"
|
1422
|
-
}
|
1423
|
-
],
|
1424
1419
|
"begin": "^(\\s*)(\\.\\.)\\s+(py)(:)([^:]+)(::)",
|
1425
|
-
"end": "^(?!\\s*$|\\1[ \\t]{
|
1420
|
+
"end": "^(?!\\s*$|\\1[ \\t]{6,}\\S)",
|
1426
1421
|
"beginCaptures": {
|
1427
1422
|
"2": {
|
1428
1423
|
"name": "punctuation.definition.directive.restructuredtext"
|
@@ -1439,7 +1434,41 @@
|
|
1439
1434
|
"6": {
|
1440
1435
|
"name": "punctuation.separator.key-value.restructuredtext"
|
1441
1436
|
}
|
1442
|
-
}
|
1437
|
+
},
|
1438
|
+
"patterns": [
|
1439
|
+
{
|
1440
|
+
"match": "(?:\\G|^)([^(]*)(\\()([^\\\\)]*\\\\[^)]*)(\\))",
|
1441
|
+
"captures": {
|
1442
|
+
"1": {
|
1443
|
+
"patterns": [
|
1444
|
+
{
|
1445
|
+
"include": "source.python"
|
1446
|
+
}
|
1447
|
+
]
|
1448
|
+
},
|
1449
|
+
"2": {
|
1450
|
+
"name": "punctuation.parenthesis.begin.python"
|
1451
|
+
},
|
1452
|
+
"3": {
|
1453
|
+
"patterns": [
|
1454
|
+
{
|
1455
|
+
"match": "\\\\.",
|
1456
|
+
"name": "constant.character.escape.restructuredtext"
|
1457
|
+
},
|
1458
|
+
{
|
1459
|
+
"include": "source.python"
|
1460
|
+
}
|
1461
|
+
]
|
1462
|
+
},
|
1463
|
+
"4": {
|
1464
|
+
"name": "punctuation.parenthesis.end.python"
|
1465
|
+
}
|
1466
|
+
}
|
1467
|
+
},
|
1468
|
+
{
|
1469
|
+
"include": "source.python"
|
1470
|
+
}
|
1471
|
+
]
|
1443
1472
|
},
|
1444
1473
|
{
|
1445
1474
|
"name": "meta.sphinx-domain.restructuredtext",
|
data/grammars/text.roff.json
CHANGED
@@ -196,7 +196,7 @@
|
|
196
196
|
"name": "punctuation.definition.string.begin.roff"
|
197
197
|
},
|
198
198
|
"2": {
|
199
|
-
"name": "entity.string.
|
199
|
+
"name": "entity.string.left.roff",
|
200
200
|
"patterns": [
|
201
201
|
{
|
202
202
|
"include": "#escapes"
|
@@ -217,6 +217,14 @@
|
|
217
217
|
"5": {
|
218
218
|
"name": "punctuation.definition.string.end.roff"
|
219
219
|
},
|
220
|
+
"6": {
|
221
|
+
"name": "entity.string.right.roff",
|
222
|
+
"patterns": [
|
223
|
+
{
|
224
|
+
"include": "#escapes"
|
225
|
+
}
|
226
|
+
]
|
227
|
+
},
|
220
228
|
"7": {
|
221
229
|
"name": "punctuation.definition.string.end.roff"
|
222
230
|
}
|
@@ -6,7 +6,7 @@
|
|
6
6
|
],
|
7
7
|
"patterns": [
|
8
8
|
{
|
9
|
-
"match": "(?x) ^ (?: ( (?:\\(\\S+\\))? (?:
|
9
|
+
"match": "(?x) ^ (?: ( (?:\\(\\S+\\))? (?: sh\\S*? | \\w+\\S+[@:]\\S+(?:\\s+\\S+)? | \\[\\S+[@:][^\\n]+\\].+ ) ) \\s* )? ( [>$#%] ) \\s+ (.*) $",
|
10
10
|
"captures": {
|
11
11
|
"1": {
|
12
12
|
"name": "entity.other.prompt-prefix.shell-session"
|
@@ -6,6 +6,7 @@
|
|
6
6
|
"scopeName": "text.tex.latex.haskell",
|
7
7
|
"macros": {
|
8
8
|
"identStartCharClass": "[\\p{Ll}_\\p{Lu}\\p{Lt}]",
|
9
|
+
"identContCharClass": "[\\p{Ll}_\\p{Lu}\\p{Lt}']",
|
9
10
|
"identCharClass": "[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']",
|
10
11
|
"functionNameOne": "[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*",
|
11
12
|
"classNameOne": "[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*",
|
@@ -19,20 +20,21 @@
|
|
19
20
|
"octalChar": "(?:\\\\o[0-7]+)",
|
20
21
|
"hexChar": "(?:\\\\x[0-9A-Fa-f]+)",
|
21
22
|
"controlChar": "(?:\\^[A-Z@\\[\\]\\\\\\^_])",
|
22
|
-
"character": "(?:[\\ -\\[\\]-~]|\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\&])|(?:\\\\o[0-7]+)|(?:\\\\x[0-9A-Fa-f]+)|(?:\\^[A-Z@\\[\\]\\\\\\^_]))",
|
23
|
-
"functionTypeDeclaration": "(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*(
|
24
|
-
"
|
23
|
+
"character": "(?:[\\ -\\[\\]-~]|\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\&])|(?:\\\\o[0-7]+)|(?:\\\\x[0-9A-Fa-f]+)|(?:\\^[A-Z@\\[\\]\\\\\\^_])|[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])",
|
24
|
+
"functionTypeDeclaration": "(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))",
|
25
|
+
"doubleColonOperator": "(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])",
|
26
|
+
"ctorTypeDeclaration": "(?:(?:((?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))",
|
25
27
|
"ctorArgs": "(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+)",
|
26
|
-
"ctor": "(?:(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s*)(?:((?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+))(?:(?:\\s+)(?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+)))*)?))",
|
27
|
-
"typeDeclOne": "(?:(?!(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))",
|
28
|
-
"typeDecl": "(?>(?:(?:(?!(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)))(?:\\s+(?:(?!(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)))*)",
|
28
|
+
"ctor": "(?:(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s*)(?:((?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+))(?:(?:\\s+)(?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+)))*)?))",
|
29
|
+
"typeDeclOne": "(?:(?!(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))",
|
30
|
+
"typeDecl": "(?>(?:(?:(?!(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)))(?:\\s+(?:(?!(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)))*)",
|
29
31
|
"indentChar": "[ \\t]",
|
30
32
|
"indentBlockStart": "^(?:>|<) ([ \\t]*)",
|
31
33
|
"indentBlockEnd": "^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
32
34
|
"maybeBirdTrack": "^(?:>|<) ",
|
33
|
-
"lb": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))",
|
35
|
+
"lb": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))",
|
34
36
|
"rb": "(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
35
|
-
"b": "(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))|(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))"
|
37
|
+
"b": "(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))|(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])))"
|
36
38
|
},
|
37
39
|
"patterns": [
|
38
40
|
{
|
@@ -80,100 +82,7 @@
|
|
80
82
|
"name": "meta.embedded.haskell",
|
81
83
|
"patterns": [
|
82
84
|
{
|
83
|
-
"
|
84
|
-
"contentName": "block.liquidhaskell.annotation.haskell",
|
85
|
-
"begin": "\\{-@(?!#)",
|
86
|
-
"end": "@-\\}",
|
87
|
-
"patterns": [
|
88
|
-
{
|
89
|
-
"include": "$self"
|
90
|
-
}
|
91
|
-
]
|
92
|
-
},
|
93
|
-
{
|
94
|
-
"name": "comment.line.shebang.haskell",
|
95
|
-
"match": "^\\#\\!.*\\brunhaskell\\b.*$"
|
96
|
-
},
|
97
|
-
{
|
98
|
-
"include": "#infix_function"
|
99
|
-
},
|
100
|
-
{
|
101
|
-
"include": "#unit"
|
102
|
-
},
|
103
|
-
{
|
104
|
-
"include": "#empty_list"
|
105
|
-
},
|
106
|
-
{
|
107
|
-
"include": "#quasi_quotes"
|
108
|
-
},
|
109
|
-
{
|
110
|
-
"include": "#module_decl"
|
111
|
-
},
|
112
|
-
{
|
113
|
-
"include": "#class_decl"
|
114
|
-
},
|
115
|
-
{
|
116
|
-
"include": "#instance_decl"
|
117
|
-
},
|
118
|
-
{
|
119
|
-
"include": "#foreign_import"
|
120
|
-
},
|
121
|
-
{
|
122
|
-
"include": "#regular_import"
|
123
|
-
},
|
124
|
-
{
|
125
|
-
"include": "#data_decl"
|
126
|
-
},
|
127
|
-
{
|
128
|
-
"include": "#type_alias"
|
129
|
-
},
|
130
|
-
{
|
131
|
-
"include": "#keywords"
|
132
|
-
},
|
133
|
-
{
|
134
|
-
"include": "#c_preprocessor"
|
135
|
-
},
|
136
|
-
{
|
137
|
-
"include": "#pragma"
|
138
|
-
},
|
139
|
-
{
|
140
|
-
"include": "#string"
|
141
|
-
},
|
142
|
-
{
|
143
|
-
"include": "#newline_escape"
|
144
|
-
},
|
145
|
-
{
|
146
|
-
"include": "#quoted_character"
|
147
|
-
},
|
148
|
-
{
|
149
|
-
"include": "#scoped_type_override"
|
150
|
-
},
|
151
|
-
{
|
152
|
-
"include": "#function_type_declaration"
|
153
|
-
},
|
154
|
-
{
|
155
|
-
"include": "#scoped_type"
|
156
|
-
},
|
157
|
-
{
|
158
|
-
"include": "#comments"
|
159
|
-
},
|
160
|
-
{
|
161
|
-
"include": "#infix_op"
|
162
|
-
},
|
163
|
-
{
|
164
|
-
"include": "#comma"
|
165
|
-
},
|
166
|
-
{
|
167
|
-
"include": "#lit_num"
|
168
|
-
},
|
169
|
-
{
|
170
|
-
"include": "#operator"
|
171
|
-
},
|
172
|
-
{
|
173
|
-
"include": "#identifier"
|
174
|
-
},
|
175
|
-
{
|
176
|
-
"include": "#type_ctor"
|
85
|
+
"include": "#haskell_source"
|
177
86
|
},
|
178
87
|
{
|
179
88
|
"match": "^> ",
|
@@ -375,7 +284,7 @@
|
|
375
284
|
"patterns": [
|
376
285
|
{
|
377
286
|
"name": "support.other.module.haskell",
|
378
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
287
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
379
288
|
}
|
380
289
|
]
|
381
290
|
},
|
@@ -383,7 +292,7 @@
|
|
383
292
|
"patterns": [
|
384
293
|
{
|
385
294
|
"name": "support.other.module.haskell",
|
386
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\."
|
295
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\."
|
387
296
|
}
|
388
297
|
]
|
389
298
|
},
|
@@ -395,7 +304,7 @@
|
|
395
304
|
"end": "#-\\}",
|
396
305
|
"patterns": [
|
397
306
|
{
|
398
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(NOTINLINE CONSTRUCTORLIKE|NOINLINE CONSTRUCTORLIKE|INLINE CONSTRUCTORLIKE|SPECIALISE NOTINLINE|SPECIALIZE NOTINLINE|SPECIALISE NOINLINE|SPECIALIZE NOINLINE|NOTINLINE CONLIKE|SPECIALISE INLINE|SPECIALIZE INLINE|NOINLINE CONLIKE|VECTORISE SCALAR|VECTORIZE SCALAR|OPTIONS_HADDOCK|INLINE CONLIKE|OPTIONS_DERIVE|OPTIONS_CATCH|OPTIONS_NHC98|OPTIONS_HUGS|OVERLAPPABLE|NOVECTORISE|NOVECTORIZE|OPTIONS_GHC|OPTIONS_JHC|OPTIONS_YHC|OVERLAPPING|DEPRECATED|INCOHERENT|INLINEABLE|SPECIALISE|SPECIALIZE|GENERATED|INLINABLE|NOTINLINE|VECTORISE|VECTORIZE|CONTRACT|LANGUAGE|NOINLINE|NOUNPACK|OVERLAPS|INCLUDE|MINIMAL|OPTIONS|WARNING|CFILES|INLINE|SOURCE|UNPACK|CTYPE|RULES|CORE|LINE|ANN|SCC)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
307
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(NOTINLINE CONSTRUCTORLIKE|NOINLINE CONSTRUCTORLIKE|INLINE CONSTRUCTORLIKE|SPECIALISE NOTINLINE|SPECIALIZE NOTINLINE|SPECIALISE NOINLINE|SPECIALIZE NOINLINE|NOTINLINE CONLIKE|SPECIALISE INLINE|SPECIALIZE INLINE|NOINLINE CONLIKE|VECTORISE SCALAR|VECTORIZE SCALAR|OPTIONS_HADDOCK|INLINE CONLIKE|OPTIONS_DERIVE|OPTIONS_CATCH|OPTIONS_NHC98|OPTIONS_HUGS|OVERLAPPABLE|NOVECTORISE|NOVECTORIZE|OPTIONS_GHC|OPTIONS_JHC|OPTIONS_YHC|OVERLAPPING|DEPRECATED|INCOHERENT|INLINEABLE|SPECIALISE|SPECIALIZE|GENERATED|INLINABLE|NOTINLINE|VECTORISE|VECTORIZE|CONTRACT|LANGUAGE|NOINLINE|NOUNPACK|OVERLAPS|INCLUDE|MINIMAL|OPTIONS|WARNING|CFILES|INLINE|SOURCE|UNPACK|CTYPE|RULES|CORE|LINE|ANN|SCC)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
399
308
|
"name": "keyword.other.preprocessor.haskell"
|
400
309
|
}
|
401
310
|
]
|
@@ -406,7 +315,7 @@
|
|
406
315
|
"patterns": [
|
407
316
|
{
|
408
317
|
"name": "meta.function.type-declaration.haskell",
|
409
|
-
"begin": "^(?:>|<) ([ \\t]*)(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*(
|
318
|
+
"begin": "^(?:>|<) ([ \\t]*)(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))",
|
410
319
|
"end": "^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
411
320
|
"contentName": "meta.type-signature.haskell",
|
412
321
|
"beginCaptures": {
|
@@ -436,7 +345,7 @@
|
|
436
345
|
"patterns": [
|
437
346
|
{
|
438
347
|
"name": "meta.ctor.type-declaration.haskell",
|
439
|
-
"begin": "^(?:>|<) ([ \\t]*)(?:(?:((?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*(
|
348
|
+
"begin": "^(?:>|<) ([ \\t]*)(?:(?:((?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))",
|
440
349
|
"end": "^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
441
350
|
"contentName": "meta.type-signature.haskell",
|
442
351
|
"beginCaptures": {
|
@@ -466,8 +375,8 @@
|
|
466
375
|
"patterns": [
|
467
376
|
{
|
468
377
|
"name": "meta.record-field.type-declaration.haskell",
|
469
|
-
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*(
|
470
|
-
"end": "(?=(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*(
|
378
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))",
|
379
|
+
"end": "(?=(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))|})",
|
471
380
|
"contentName": "meta.type-signature.haskell",
|
472
381
|
"beginCaptures": {
|
473
382
|
"1": {
|
@@ -502,7 +411,7 @@
|
|
502
411
|
},
|
503
412
|
{
|
504
413
|
"name": "keyword.other.forall.haskell",
|
505
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))forall(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
414
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))forall(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
506
415
|
},
|
507
416
|
{
|
508
417
|
"include": "#unit"
|
@@ -523,7 +432,7 @@
|
|
523
432
|
},
|
524
433
|
{
|
525
434
|
"name": "variable.other.generic-type.haskell",
|
526
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
435
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
527
436
|
},
|
528
437
|
{
|
529
438
|
"include": "#type_name"
|
@@ -563,7 +472,7 @@
|
|
563
472
|
"patterns": [
|
564
473
|
{
|
565
474
|
"name": "meta.deriving.haskell",
|
566
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(deriving)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
475
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
567
476
|
"captures": {
|
568
477
|
"1": {
|
569
478
|
"name": "keyword.other.haskell"
|
@@ -576,7 +485,7 @@
|
|
576
485
|
"patterns": [
|
577
486
|
{
|
578
487
|
"name": "meta.deriving.haskell",
|
579
|
-
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(deriving)\\s*\\(",
|
488
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*\\(",
|
580
489
|
"end": "\\)",
|
581
490
|
"beginCaptures": {
|
582
491
|
"1": {
|
@@ -585,7 +494,7 @@
|
|
585
494
|
},
|
586
495
|
"patterns": [
|
587
496
|
{
|
588
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
497
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
589
498
|
"captures": {
|
590
499
|
"1": {
|
591
500
|
"name": "entity.other.inherited-class.haskell"
|
@@ -600,7 +509,7 @@
|
|
600
509
|
"patterns": [
|
601
510
|
{
|
602
511
|
"name": "meta.deriving.haskell",
|
603
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\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}']*)*)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
512
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\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}']*)*)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
604
513
|
"captures": {
|
605
514
|
"1": {
|
606
515
|
"name": "keyword.other.haskell"
|
@@ -655,7 +564,7 @@
|
|
655
564
|
{
|
656
565
|
"name": "meta.declaration.module.haskell",
|
657
566
|
"begin": "^(?:>|<) ([ \\t]*)(module)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
658
|
-
"end": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(where)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
567
|
+
"end": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(where)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))|^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
659
568
|
"beginCaptures": {
|
660
569
|
"2": {
|
661
570
|
"name": "keyword.other.haskell"
|
@@ -688,7 +597,7 @@
|
|
688
597
|
{
|
689
598
|
"name": "meta.declaration.class.haskell",
|
690
599
|
"begin": "^(?:>|<) ([ \\t]*)(class)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
691
|
-
"end": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(where)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))
|
600
|
+
"end": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(where)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))|^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
692
601
|
"beginCaptures": {
|
693
602
|
"2": {
|
694
603
|
"name": "storage.type.class.haskell"
|
@@ -712,7 +621,7 @@
|
|
712
621
|
{
|
713
622
|
"name": "meta.declaration.instance.haskell",
|
714
623
|
"begin": "^(?:>|<) ([ \\t]*)(instance)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
715
|
-
"end": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(where)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))
|
624
|
+
"end": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(where)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))|^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
716
625
|
"contentName": "meta.type-signature.haskell",
|
717
626
|
"beginCaptures": {
|
718
627
|
"2": {
|
@@ -735,6 +644,29 @@
|
|
735
644
|
}
|
736
645
|
]
|
737
646
|
},
|
647
|
+
"deriving_instance_decl": {
|
648
|
+
"patterns": [
|
649
|
+
{
|
650
|
+
"name": "meta.declaration.instance.deriving.haskell",
|
651
|
+
"begin": "^(?:>|<) ([ \\t]*)(deriving\\s+instance)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
652
|
+
"end": "^(?!(?:>|<) \\1[ \\t]|(?:>|<) [ \\t]*$)|^(?!(?:>|<) )",
|
653
|
+
"contentName": "meta.type-signature.haskell",
|
654
|
+
"beginCaptures": {
|
655
|
+
"2": {
|
656
|
+
"name": "keyword.other.haskell"
|
657
|
+
}
|
658
|
+
},
|
659
|
+
"patterns": [
|
660
|
+
{
|
661
|
+
"include": "#pragma"
|
662
|
+
},
|
663
|
+
{
|
664
|
+
"include": "#type_signature"
|
665
|
+
}
|
666
|
+
]
|
667
|
+
}
|
668
|
+
]
|
669
|
+
},
|
738
670
|
"foreign_import": {
|
739
671
|
"patterns": [
|
740
672
|
{
|
@@ -759,7 +691,10 @@
|
|
759
691
|
}
|
760
692
|
},
|
761
693
|
{
|
762
|
-
"include": "
|
694
|
+
"include": "#function_type_declaration"
|
695
|
+
},
|
696
|
+
{
|
697
|
+
"include": "#haskell_expr"
|
763
698
|
}
|
764
699
|
]
|
765
700
|
}
|
@@ -784,7 +719,7 @@
|
|
784
719
|
"include": "#module_exports"
|
785
720
|
},
|
786
721
|
{
|
787
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(qualified|as|hiding)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
722
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(qualified|as|hiding)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
788
723
|
"captures": {
|
789
724
|
"1": {
|
790
725
|
"name": "keyword.other.haskell"
|
@@ -831,7 +766,7 @@
|
|
831
766
|
"include": "#assignment_op"
|
832
767
|
},
|
833
768
|
{
|
834
|
-
"match": "(?:(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s*)(?:((?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+))(?:(?:\\s+)(?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+)))*)?))",
|
769
|
+
"match": "(?:(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s*)(?:((?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+))(?:(?:\\s+)(?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|->|=>)+\\s*)+)))*)?))",
|
835
770
|
"captures": {
|
836
771
|
"1": {
|
837
772
|
"patterns": [
|
@@ -927,19 +862,19 @@
|
|
927
862
|
"patterns": [
|
928
863
|
{
|
929
864
|
"name": "keyword.other.haskell",
|
930
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(deriving|where|data|type|newtype)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
865
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving|where|data|type|newtype)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
931
866
|
},
|
932
867
|
{
|
933
868
|
"name": "storage.type.haskell",
|
934
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(data|type|newtype)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
869
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(data|type|newtype)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
935
870
|
},
|
936
871
|
{
|
937
872
|
"name": "keyword.operator.haskell",
|
938
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))infix[lr]?(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
873
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))infix[lr]?(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
939
874
|
},
|
940
875
|
{
|
941
876
|
"name": "keyword.control.haskell",
|
942
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(do|if|then|else|case|of|let|in|default)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
877
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(do|if|then|else|case|of|let|in|default)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
943
878
|
}
|
944
879
|
]
|
945
880
|
},
|
@@ -1012,7 +947,7 @@
|
|
1012
947
|
"patterns": [
|
1013
948
|
{
|
1014
949
|
"name": "string.quoted.single.haskell",
|
1015
|
-
"match": "(')((?:[\\ -\\[\\]-~]|\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\&])|(?:\\\\o[0-7]+)|(?:\\\\x[0-9A-Fa-f]+)|(?:\\^[A-Z@\\[\\]\\\\\\^_])))(')",
|
950
|
+
"match": "(')((?:[\\ -\\[\\]-~]|\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\"'\\&])|(?:\\\\o[0-7]+)|(?:\\\\x[0-9A-Fa-f]+)|(?:\\^[A-Z@\\[\\]\\\\\\^_])|[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))(')",
|
1016
951
|
"captures": {
|
1017
952
|
"1": {
|
1018
953
|
"name": "punctuation.definition.string.begin.haskell"
|
@@ -1034,30 +969,19 @@
|
|
1034
969
|
"scoped_type": {
|
1035
970
|
"patterns": [
|
1036
971
|
{
|
1037
|
-
"match": "\\((?<paren>(?:[
|
972
|
+
"match": "\\(((?<paren>(?:[^\\(\\)]|\\(\\g<paren>\\))*)(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?<paren2>(?:[^\\(\\)]|\\(\\g<paren2>\\))*))\\)",
|
1038
973
|
"captures": {
|
1039
974
|
"1": {
|
1040
975
|
"patterns": [
|
1041
976
|
{
|
1042
|
-
"include": "
|
1043
|
-
}
|
1044
|
-
]
|
1045
|
-
},
|
1046
|
-
"2": {
|
1047
|
-
"name": "keyword.other.double-colon.haskell"
|
1048
|
-
},
|
1049
|
-
"3": {
|
1050
|
-
"name": "meta.type-signature.haskell",
|
1051
|
-
"patterns": [
|
1052
|
-
{
|
1053
|
-
"include": "#type_signature"
|
977
|
+
"include": "#haskell_expr"
|
1054
978
|
}
|
1055
979
|
]
|
1056
980
|
}
|
1057
981
|
}
|
1058
982
|
},
|
1059
983
|
{
|
1060
|
-
"match": "(
|
984
|
+
"match": "((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))(.*?)(?=(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(<-|=)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])|$)",
|
1061
985
|
"captures": {
|
1062
986
|
"1": {
|
1063
987
|
"name": "keyword.other.double-colon.haskell"
|
@@ -1077,7 +1001,7 @@
|
|
1077
1001
|
"scoped_type_override": {
|
1078
1002
|
"patterns": [
|
1079
1003
|
{
|
1080
|
-
"match": "^(?:>|<) ([ \\t]*)(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*(
|
1004
|
+
"match": "^(?:>|<) ([ \\t]*)(?:(?:((?:(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\)))(?:(?:\\s*,\\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}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:\\((?!--+\\))[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]+\\))))*))(?:\\s*((?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(?:::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]]))))(.*)(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])(<-|=)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'\\|]])",
|
1081
1005
|
"captures": {
|
1082
1006
|
"2": {
|
1083
1007
|
"patterns": [
|
@@ -1150,7 +1074,7 @@
|
|
1150
1074
|
"identifier": {
|
1151
1075
|
"patterns": [
|
1152
1076
|
{
|
1153
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1077
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1154
1078
|
"name": "identifier.haskell",
|
1155
1079
|
"captures": {
|
1156
1080
|
"0": {
|
@@ -1160,7 +1084,7 @@
|
|
1160
1084
|
},
|
1161
1085
|
{
|
1162
1086
|
"name": "support.function.prelude.haskell",
|
1163
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(abs|acos|acosh|all|and|any|appendFile|asTypeOf|asin|asinh|atan|atan2|atanh|break|ceiling|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldMap|foldl|foldl1|foldr|foldr1|fromEnum|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|head|id|init|interact|ioError|isDenormalized|isIEEE|isInfinite|isNaN|isNegativeZero|iterate|last|lcm|length|lex|lines|log|logBase|lookup|map|mapM|mapM_|mappend|max|maxBound|maximum|maybe|mconcat|mempty|min|minBound|minimum|mod|negate|not|notElem|null|odd|or|otherwise|pi|pred|print|product|properFraction|pure|putChar|putStr|putStrLn|quot|quotRem|read|readFile|readIO|readList|readLn|readParen|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequenceA|sequence_|show|showChar|showList|showParen|showString|shows|showsPrec|significand|signum|sin|sinh|snd|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|toEnum|toInteger|toRational|traverse|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1087
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(abs|acos|acosh|all|and|any|appendFile|asTypeOf|asin|asinh|atan|atan2|atanh|break|ceiling|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldMap|foldl|foldl1|foldr|foldr1|fromEnum|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|head|id|init|interact|ioError|isDenormalized|isIEEE|isInfinite|isNaN|isNegativeZero|iterate|last|lcm|length|lex|lines|log|logBase|lookup|map|mapM|mapM_|mappend|max|maxBound|maximum|maybe|mconcat|mempty|min|minBound|minimum|mod|negate|not|notElem|null|odd|or|otherwise|pi|pred|print|product|properFraction|pure|putChar|putStr|putStrLn|quot|quotRem|read|readFile|readIO|readList|readLn|readParen|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequenceA|sequence_|show|showChar|showList|showParen|showString|shows|showsPrec|significand|signum|sin|sinh|snd|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|toEnum|toInteger|toRational|traverse|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1164
1088
|
}
|
1165
1089
|
]
|
1166
1090
|
}
|
@@ -1172,7 +1096,7 @@
|
|
1172
1096
|
"patterns": [
|
1173
1097
|
{
|
1174
1098
|
"name": "entity.name.type.haskell",
|
1175
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1099
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1176
1100
|
"captures": {
|
1177
1101
|
"0": {
|
1178
1102
|
"patterns": [
|
@@ -1181,11 +1105,11 @@
|
|
1181
1105
|
},
|
1182
1106
|
{
|
1183
1107
|
"name": "entity.other.inherited-class.prelude.haskell",
|
1184
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(Applicative|Bounded|Enum|Eq|Floating|Foldable|Fractional|Functor|Integral|Monad|Monoid|Num|Ord|Read|Real|RealFloat|RealFrac|Show|Traversable)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1108
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(Applicative|Bounded|Enum|Eq|Floating|Foldable|Fractional|Functor|Integral|Monad|Monoid|Num|Ord|Read|Real|RealFloat|RealFrac|Show|Traversable)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1185
1109
|
},
|
1186
1110
|
{
|
1187
1111
|
"name": "support.class.prelude.haskell",
|
1188
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(Either|FilePath|IO|IOError|Integer|Maybe|Ordering|Rational|ReadS|ShowS|String|Bool|Char|Double|Float|Int|Word)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1112
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(Either|FilePath|IO|IOError|Integer|Maybe|Ordering|Rational|ReadS|ShowS|String|Bool|Char|Double|Float|Int|Word)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1189
1113
|
}
|
1190
1114
|
]
|
1191
1115
|
}
|
@@ -1197,7 +1121,7 @@
|
|
1197
1121
|
"patterns": [
|
1198
1122
|
{
|
1199
1123
|
"name": "entity.name.tag.haskell",
|
1200
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1124
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1201
1125
|
"captures": {
|
1202
1126
|
"0": {
|
1203
1127
|
"patterns": [
|
@@ -1206,7 +1130,7 @@
|
|
1206
1130
|
},
|
1207
1131
|
{
|
1208
1132
|
"name": "support.tag.prelude.haskell",
|
1209
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(EQ|GT|Just|LT|Left|Nothing|Right|True|False)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1133
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(EQ|GT|Just|LT|Left|Nothing|Right|True|False)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1210
1134
|
}
|
1211
1135
|
]
|
1212
1136
|
}
|
@@ -1217,7 +1141,7 @@
|
|
1217
1141
|
"where": {
|
1218
1142
|
"patterns": [
|
1219
1143
|
{
|
1220
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1144
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))where(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1221
1145
|
"name": "keyword.other.haskell"
|
1222
1146
|
}
|
1223
1147
|
]
|
@@ -1225,7 +1149,7 @@
|
|
1225
1149
|
"family_and_instance": {
|
1226
1150
|
"patterns": [
|
1227
1151
|
{
|
1228
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(family|instance)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1152
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(family|instance)(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1229
1153
|
"name": "keyword.other.haskell"
|
1230
1154
|
}
|
1231
1155
|
]
|
@@ -1242,7 +1166,7 @@
|
|
1242
1166
|
"patterns": [
|
1243
1167
|
{
|
1244
1168
|
"name": "entity.name.function.haskell",
|
1245
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1169
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1246
1170
|
}
|
1247
1171
|
]
|
1248
1172
|
},
|
@@ -1262,7 +1186,138 @@
|
|
1262
1186
|
"patterns": [
|
1263
1187
|
{
|
1264
1188
|
"name": "entity.other.attribute-name.haskell",
|
1265
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}]))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1189
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?<![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))"
|
1190
|
+
}
|
1191
|
+
]
|
1192
|
+
},
|
1193
|
+
"liquidhaskell_annotation": {
|
1194
|
+
"patterns": [
|
1195
|
+
{
|
1196
|
+
"name": "block.liquidhaskell.haskell",
|
1197
|
+
"contentName": "block.liquidhaskell.annotation.haskell",
|
1198
|
+
"begin": "\\{-@(?!#)",
|
1199
|
+
"end": "@-\\}",
|
1200
|
+
"patterns": [
|
1201
|
+
{
|
1202
|
+
"include": "#haskell_expr"
|
1203
|
+
}
|
1204
|
+
]
|
1205
|
+
}
|
1206
|
+
]
|
1207
|
+
},
|
1208
|
+
"shebang": {
|
1209
|
+
"patterns": [
|
1210
|
+
{
|
1211
|
+
"name": "comment.line.shebang.haskell",
|
1212
|
+
"match": "^\\#\\!.*\\brunhaskell\\b.*$"
|
1213
|
+
}
|
1214
|
+
]
|
1215
|
+
},
|
1216
|
+
"haskell_expr": {
|
1217
|
+
"patterns": [
|
1218
|
+
{
|
1219
|
+
"include": "#infix_function"
|
1220
|
+
},
|
1221
|
+
{
|
1222
|
+
"include": "#unit"
|
1223
|
+
},
|
1224
|
+
{
|
1225
|
+
"include": "#empty_list"
|
1226
|
+
},
|
1227
|
+
{
|
1228
|
+
"include": "#quasi_quotes"
|
1229
|
+
},
|
1230
|
+
{
|
1231
|
+
"include": "#keywords"
|
1232
|
+
},
|
1233
|
+
{
|
1234
|
+
"include": "#pragma"
|
1235
|
+
},
|
1236
|
+
{
|
1237
|
+
"include": "#string"
|
1238
|
+
},
|
1239
|
+
{
|
1240
|
+
"include": "#newline_escape"
|
1241
|
+
},
|
1242
|
+
{
|
1243
|
+
"include": "#quoted_character"
|
1244
|
+
},
|
1245
|
+
{
|
1246
|
+
"include": "#comments"
|
1247
|
+
},
|
1248
|
+
{
|
1249
|
+
"include": "#infix_op"
|
1250
|
+
},
|
1251
|
+
{
|
1252
|
+
"include": "#comma"
|
1253
|
+
},
|
1254
|
+
{
|
1255
|
+
"include": "#lit_num"
|
1256
|
+
},
|
1257
|
+
{
|
1258
|
+
"include": "#scoped_type"
|
1259
|
+
},
|
1260
|
+
{
|
1261
|
+
"include": "#operator"
|
1262
|
+
},
|
1263
|
+
{
|
1264
|
+
"include": "#identifier"
|
1265
|
+
},
|
1266
|
+
{
|
1267
|
+
"include": "#type_ctor"
|
1268
|
+
}
|
1269
|
+
]
|
1270
|
+
},
|
1271
|
+
"haskell_toplevel": {
|
1272
|
+
"patterns": [
|
1273
|
+
{
|
1274
|
+
"include": "#liquidhaskell_annotation"
|
1275
|
+
},
|
1276
|
+
{
|
1277
|
+
"include": "#class_decl"
|
1278
|
+
},
|
1279
|
+
{
|
1280
|
+
"include": "#instance_decl"
|
1281
|
+
},
|
1282
|
+
{
|
1283
|
+
"include": "#deriving_instance_decl"
|
1284
|
+
},
|
1285
|
+
{
|
1286
|
+
"include": "#foreign_import"
|
1287
|
+
},
|
1288
|
+
{
|
1289
|
+
"include": "#regular_import"
|
1290
|
+
},
|
1291
|
+
{
|
1292
|
+
"include": "#data_decl"
|
1293
|
+
},
|
1294
|
+
{
|
1295
|
+
"include": "#type_alias"
|
1296
|
+
},
|
1297
|
+
{
|
1298
|
+
"include": "#c_preprocessor"
|
1299
|
+
},
|
1300
|
+
{
|
1301
|
+
"include": "#scoped_type_override"
|
1302
|
+
},
|
1303
|
+
{
|
1304
|
+
"include": "#function_type_declaration"
|
1305
|
+
},
|
1306
|
+
{
|
1307
|
+
"include": "#haskell_expr"
|
1308
|
+
}
|
1309
|
+
]
|
1310
|
+
},
|
1311
|
+
"haskell_source": {
|
1312
|
+
"patterns": [
|
1313
|
+
{
|
1314
|
+
"include": "#shebang"
|
1315
|
+
},
|
1316
|
+
{
|
1317
|
+
"include": "#module_decl"
|
1318
|
+
},
|
1319
|
+
{
|
1320
|
+
"include": "#haskell_toplevel"
|
1266
1321
|
}
|
1267
1322
|
]
|
1268
1323
|
}
|