github-linguist 4.8.4 → 4.8.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 99af32b5594d1a8267a3f8b671a92c940d3f2202
4
- data.tar.gz: bd33cdef876e9c3a8bb591c84bd71bd08c07b029
3
+ metadata.gz: 598e61956269248e9afe472b71df76331e5cc395
4
+ data.tar.gz: 28b25d18cf7ca86541a0a446cbbb1defadab2145
5
5
  SHA512:
6
- metadata.gz: 5871b971d18e7bc814f23c6cc08e2298bf9dbf874894325a74538f235fd7d4f38bacafba091be2c5beeae4b1ef21c745a7a7fedd75827f6b5740743c7bd1b79f
7
- data.tar.gz: 5a3da7cffa1c9bfc9762a6e4ef2f9a2f141142f23a6bfb54fe7a6c37358a799ac6fb6c8ba664c8813abc568f5cb2238cf87f2a2150a2076b7ad7a5ad45114bc4
6
+ metadata.gz: cf592eb25a004b9d610cc033b7a34bf8024a649af368d5f20e9acdc03415fd5115c1e909311530e50017b7456317212f1d1d42a4de4fcc2c8cfc13d9b0d6baa8
7
+ data.tar.gz: 170fa990e08779652414bdb346b5dc226bcbd57bdd9b7b4060e17a9c3da36d3c4b154f3d4bbf53e3526d2989858150c9ca502681147d39c5a59927d05b48d80c
@@ -0,0 +1,80 @@
1
+ {
2
+ "fileTypes": [
3
+ "clp"
4
+ ],
5
+ "name": "CLIPS",
6
+ "patterns": [
7
+ {
8
+ "begin": ";",
9
+ "captures": {
10
+ "0": {
11
+ "name": "punctuation.definition.comment.clips"
12
+ }
13
+ },
14
+ "comment": "Comments line",
15
+ "end": "$\n?",
16
+ "name": "comment.line.double-slash.clips"
17
+ },
18
+ {
19
+ "comment": "Keywords",
20
+ "match": "\\b(type|default|allowed-values|slot|not|or|and|assert|retract|gensym|printout|declare|salience|modify|export)\\b",
21
+ "name": "keyword.control.clips"
22
+ },
23
+ {
24
+ "comment": "RHD",
25
+ "match": "=>",
26
+ "name": "constant.language.clips"
27
+ },
28
+ {
29
+ "captures": {
30
+ "1": {
31
+ "name": "keyword.clips"
32
+ },
33
+ "2": {
34
+ "name": "variable.parameter"
35
+ }
36
+ },
37
+ "comment": "Functions",
38
+ "match": "(\\?)([a-zA-Z0-9_\\-]*)",
39
+ "name": "meta.function.clips"
40
+ },
41
+ {
42
+ "captures": {
43
+ "2": {
44
+ "name": "entity.name.function.clips"
45
+ },
46
+ "3": {
47
+ "name": "variable.clips"
48
+ }
49
+ },
50
+ "comment": "Definitions",
51
+ "match": "(^.*(defrule|deffacts|defmodule|deftemplate)[ \\t]+)([a-zA-Z0-9_\\-]+)"
52
+ },
53
+ {
54
+ "comment": "Constant A",
55
+ "match": "\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b",
56
+ "name": "constant.other.color.rgb-value.css"
57
+ },
58
+ {
59
+ "comment": "Constant B",
60
+ "match": "(<-|~|%)",
61
+ "name": "constant.language.clips"
62
+ },
63
+ {
64
+ "comment": "Operators",
65
+ "match": "(|=|>|\\+|\\*|\\/|~|%|neq|eq)",
66
+ "name": "entity.name.function.clips"
67
+ },
68
+ {
69
+ "captures": {
70
+ "2": {
71
+ "name": "entity.name.function.clips"
72
+ }
73
+ },
74
+ "comment": "Operators",
75
+ "match": "(\\()(\\-)"
76
+ }
77
+ ],
78
+ "scopeName": "source.clips",
79
+ "uuid": "1b2ecbe9-9ccb-401d-8707-9440305081df"
80
+ }
@@ -300,7 +300,7 @@
300
300
  "name": "meta.export.js"
301
301
  },
302
302
  {
303
- "match": "(?<!\\.)\\b(super|this)(?!\\s*:)\\b|(?<=\\?)(?:\\s*)(super|this)(?=\\s*:)",
303
+ "match": "(?<!\\.)\\b(super|this|arguments)(?!\\s*:)\\b|(?<=\\?)(?:\\s*)(super|this|arguments)(?=\\s*:)",
304
304
  "captures": {
305
305
  "1": {
306
306
  "name": "variable.language.js"
@@ -673,7 +673,7 @@
673
673
  "name": "storage.modifier.js"
674
674
  },
675
675
  "3": {
676
- "name": "entity.name.type.class.js"
676
+ "name": "entity.other.inherited-class.js"
677
677
  },
678
678
  "4": {
679
679
  "name": "entity.name.type.class.js"
@@ -682,7 +682,7 @@
682
682
  "name": "storage.modifier.js"
683
683
  },
684
684
  "6": {
685
- "name": "entity.name.type.class.js"
685
+ "name": "entity.other.inherited-class.js"
686
686
  }
687
687
  },
688
688
  "name": "meta.class.js"
@@ -158,7 +158,7 @@
158
158
  {
159
159
  "comment": "e.g. play: function(arg1, arg2) { }",
160
160
  "name": "meta.function.json.js",
161
- "begin": "\\s*+([_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(?:(async)\\s+)?\\s*+((?<!\\.)\\bfunction\\b)\\s*+(?:(\\*)\\s*)?\\s*(?=\\(|<)",
161
+ "begin": "(?<=^|{|,)\\s*+([_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(?:(async)\\s+)?\\s*+((?<!\\.)\\bfunction\\b)\\s*+(?:(\\*)\\s*)?\\s*(?=\\(|<)",
162
162
  "end": "(?=\\{)",
163
163
  "applyEndPatternLast": 1,
164
164
  "beginCaptures": {
@@ -187,7 +187,7 @@
187
187
  {
188
188
  "comment": "e.g. 'play': function(arg1, arg2) { }",
189
189
  "name": "meta.function.json.js",
190
- "begin": "\\s*+(('|\\\")(\\b[_$a-zA-Z][$\\w]*)(\\k<2>))\\s*+(:)\\s*+(async)?\\s*+((?<!\\.)\\bfunction\\b)\\s*(\\*\\s*)?\\s*(?=\\(|<)",
190
+ "begin": "(?<=^|{|,)\\s*+(('|\\\")(\\b[_$a-zA-Z][$\\w]*)(\\k<2>))\\s*+(:)\\s*+(async)?\\s*+((?<!\\.)\\bfunction\\b)\\s*(\\*\\s*)?\\s*(?=\\(|<)",
191
191
  "end": "(?=\\{)",
192
192
  "applyEndPatternLast": 1,
193
193
  "beginCaptures": {
@@ -229,9 +229,8 @@
229
229
  {
230
230
  "comment": "e.g. play: async <T>(args) => { }",
231
231
  "name": "meta.function.json.arrow.js",
232
- "begin": "\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*\\s*=>)",
232
+ "begin": "(?<=^|{|,)\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*[x0-9A-Fa-f]+))*\\s*=>)",
233
233
  "end": "\\s*(=>)",
234
- "applyEndPatternLast": 1,
235
234
  "beginCaptures": {
236
235
  "1": {
237
236
  "name": "entity.name.function.js"
@@ -257,7 +256,7 @@
257
256
  {
258
257
  "comment": "e.g. play: arg => { }",
259
258
  "name": "meta.function.json.arrow.js",
260
- "begin": "\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+(?:\\s*(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*+[x0-9A-Fa-f]+))*\\s*+=>)",
259
+ "begin": "(?<=^|{|,)\\s*+(\\b[_$a-zA-Z][$\\w]*)\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+(?:\\s*(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*([\"']).*?\\k<-1>(?<!\\\\.))|\\s*+[x0-9A-Fa-f]+))*\\s*+=>)",
261
260
  "end": "\\s*(=>)",
262
261
  "beginCaptures": {
263
262
  "1": {
@@ -287,7 +286,7 @@
287
286
  {
288
287
  "comment": "e.g. 'play': (args) => { }",
289
288
  "name": "meta.function.json.arrow.js",
290
- "begin": "\\s*+(('|\\\")(\\b[_$a-zA-Z][$\\w]*)(\\k<2>))\\s*(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*+(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*+([\"']).*?\\k<-1>(?<!\\\\.))|\\s*+[x0-9A-Fa-f]+))*\\s*+=>)",
289
+ "begin": "(?<=^|{|,)\\s*+(('|\\\")(\\b[_$a-zA-Z][$\\w]*)(\\k<2>))\\s*(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+(\\((?:(?>[^()]+)|\\g<-1>)*\\))\\s*+(?:\\s*+(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*+([\"']).*?\\k<-1>(?<!\\\\.))|\\s*+[x0-9A-Fa-f]+))*\\s*+=>)",
291
290
  "end": "\\s*(=>)",
292
291
  "applyEndPatternLast": 1,
293
292
  "endCaptures": {
@@ -324,7 +323,7 @@
324
323
  {
325
324
  "comment": "e.g. 'play': arg => { }",
326
325
  "name": "meta.function.json.arrow.js",
327
- "begin": "\\s*+(('|\\\")(\\b[_$a-zA-Z][$\\w]*)(\\k<2>))\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+(?:\\s*+(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*+([\"']).*?\\k<-1>(?<!\\\\.))|\\s*+[x0-9A-Fa-f]+))*\\s*+=>)",
326
+ "begin": "(?<=^|{|,)\\s*+(('|\\\")(\\b[_$a-zA-Z][$\\w]*)(\\k<2>))\\s*+(:)\\s*+(\\basync\\b)?\\s*+(?=(<(?:(?>[^<>]+)|\\g<-1>)*>)?\\s*+([_$a-zA-Z][$\\w]*)\\s*+(?:\\s*+(:|\\|)(\\s*+[$_a-zA-Z0-9]+(<(?:(?>[^<>]+)|\\g<-1>)*>)?|\\s*+(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})|\\s*+(\\s*+([\"']).*?\\k<-1>(?<!\\\\.))|\\s*+[x0-9A-Fa-f]+))*\\s*+=>)",
328
327
  "end": "\\s*(=>)",
329
328
  "beginCaptures": {
330
329
  "1": {
@@ -438,7 +437,7 @@
438
437
  },
439
438
  {
440
439
  "name": "keyword.control.flow.js",
441
- "match": "\\s*+(?<!\\.)\\b(yield|type|declare)\\b(?:\\s*+(\\*))?",
440
+ "match": "\\s*+(?<!\\.)\\b(yield)\\b(?:\\s*+(\\*))?",
442
441
  "captures": {
443
442
  "1": {
444
443
  "name": "keyword.control.flow.js"
@@ -828,7 +827,7 @@
828
827
  {
829
828
  "comment": "flowtype vars with a : to indicate type",
830
829
  "begin": "\\s*+(?<!\\.)\\b(const|let|var)\\b\\s+(?=[$_\\p{L}](?:[$\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}-]*+\\s*+:))",
831
- "end": "\\s*((\\;)|(?=\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|label|yield|type|declare)\\b|^\\s*$|}))",
830
+ "end": "\\s*((\\;)|(?=\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare)\\b|^\\s*$|}))",
832
831
  "beginCaptures": {
833
832
  "1": {
834
833
  "name": "storage.type.js"
@@ -848,7 +847,7 @@
848
847
  {
849
848
  "comment": "flowtype objects {a,b,{z}} with a : to indicate type",
850
849
  "begin": "\\s*+(?<!\\.)\\b(const|let|var)\\b\\s+(?=(\\{(?:(?>[^{}]+)|\\g<-1>)*\\})\\s*+:)",
851
- "end": "\\s*((\\;)|(?=\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|label|yield|type|declare)\\b|^\\s*$|}))",
850
+ "end": "\\s*((\\;)|(?=\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare)\\b|^\\s*$|}))",
852
851
  "beginCaptures": {
853
852
  "1": {
854
853
  "name": "storage.type.js"
@@ -868,7 +867,7 @@
868
867
  {
869
868
  "comment": "flowtype arrays [a,[b,c]] with a : to indicate type",
870
869
  "begin": "\\s*+(?<!\\.)\\b(const|let|var)\\b\\s+(?=(\\[(?:(?>[^\\[\\]]+)|\\g<-1>)*\\])\\s*+:)",
871
- "end": "\\s*((\\;)|(?=\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|label|yield|type|declare)\\b|^\\s*$|}))",
870
+ "end": "\\s*((\\;)|(?=\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare)\\b|^\\s*$|}))",
872
871
  "beginCaptures": {
873
872
  "1": {
874
873
  "name": "storage.type.js"
@@ -1120,12 +1119,6 @@
1120
1119
  }
1121
1120
  },
1122
1121
  "patterns": [
1123
- {
1124
- "include": "#literal-object"
1125
- },
1126
- {
1127
- "include": "#literal-keywords"
1128
- },
1129
1122
  {
1130
1123
  "include": "#literal-function-labels"
1131
1124
  },
@@ -2249,7 +2242,7 @@
2249
2242
  "comment": "Avoid < operator expressions as best we can using Zertosh's regex",
2250
2243
  "patterns": [
2251
2244
  {
2252
- "begin": "(?<=\\(|\\{|\\[|,|&&|\\|\\||\\?|:|=|=>|\\Wreturn|^return|\\Wdefault|^)\\s*+(?=<[_$a-zA-Z])",
2245
+ "begin": "(?<=\\(|\\{|\\[|,|&&|\\|\\||\\?|:|=|=>|\\Wreturn|^return|\\Wdefault|^)\\s*+(?=<[$_\\p{L}])",
2253
2246
  "end": "(?=.)",
2254
2247
  "applyEndPatternLast": 1,
2255
2248
  "patterns": [
@@ -2265,14 +2258,17 @@
2265
2258
  {
2266
2259
  "comment": "Tags that end > are trapped in #jsx-tag-termination",
2267
2260
  "name": "meta.tag.jsx",
2268
- "begin": "\\s*+(<)([$_\\p{L}](?:[$.:\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}-](?<!\\.\\.))*+)(?=[/>\\s])(?<![\\.:])",
2269
- "end": "\\s*(?<=</)(\\2)(>)|(/>)|((?<=</)[\\S ]*?)>",
2261
+ "begin": "\\s*+(<)((\\p{Ll}[\\p{Ll}0-9]*)|((?:[$_\\p{L}\\p{Nl}][$_\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}-]*?:)?+(?:[$_\\p{L}\\p{Nl}](?:[$_\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}\\.-](?<!\\.\\.))*+)+))(?=[ />\\s])(?![:])(?<!\\.|:)",
2262
+ "end": "\\s*(?<=</)((\\4)|\\2)(>)|(/>)|((?<=</)[\\S ]*?)>",
2270
2263
  "beginCaptures": {
2271
2264
  "1": {
2272
2265
  "name": "punctuation.definition.tag.jsx"
2273
2266
  },
2274
2267
  "2": {
2275
2268
  "name": "entity.name.tag.open.jsx"
2269
+ },
2270
+ "4": {
2271
+ "name": "support.class.component.open.jsx"
2276
2272
  }
2277
2273
  },
2278
2274
  "endCaptures": {
@@ -2280,12 +2276,15 @@
2280
2276
  "name": "entity.name.tag.close.jsx"
2281
2277
  },
2282
2278
  "2": {
2283
- "name": "punctuation.definition.tag.jsx"
2279
+ "name": "support.class.component.close.jsx"
2284
2280
  },
2285
2281
  "3": {
2286
2282
  "name": "punctuation.definition.tag.jsx"
2287
2283
  },
2288
2284
  "4": {
2285
+ "name": "punctuation.definition.tag.jsx"
2286
+ },
2287
+ "5": {
2289
2288
  "name": "invalid.illegal.termination.jsx"
2290
2289
  }
2291
2290
  },
@@ -2694,7 +2693,7 @@
2694
2693
  {
2695
2694
  "comment": "some form of default assignment for func args",
2696
2695
  "begin": "\\s*+=(?!>|=|==)",
2697
- "end": "\\s*(?=,|;|\\)|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|label|yield|type|declare)\\b)",
2696
+ "end": "\\s*(?=,|;|\\)|}|\\]|\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare)\\b)",
2698
2697
  "beginCaptures": {
2699
2698
  "0": {
2700
2699
  "name": "keyword.operator.assignment.js"
@@ -2754,7 +2753,7 @@
2754
2753
  },
2755
2754
  {
2756
2755
  "comment": "custom primitive/var Types e.g. abc avoid abc(",
2757
- "match": "(?!^)\\s*+(?!\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|label|yield|type|declare)\\b)([$_\\p{L}][$.\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}]*+)(?!\\s*+\\()",
2756
+ "match": "(?!^)\\s*+(?!\\b(if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare)\\b)([$_\\p{L}][$.\\p{L}\\p{Mn}\\p{Mc}\\p{Nd}\\p{Nl}\\p{Pc}]*+)(?!\\s*+\\()",
2758
2757
  "captures": {
2759
2758
  "2": {
2760
2759
  "name": "support.type.primitive.flowtype"
@@ -2845,12 +2844,20 @@
2845
2844
  },
2846
2845
  "patterns": [
2847
2846
  {
2848
- "match": "\\s*+,",
2849
- "name": "punctuation.type.separator.flowtype"
2847
+ "match": "\\s*+(,|:)",
2848
+ "captures": {
2849
+ "1": {
2850
+ "name": "punctuation.type.separator.flowtype"
2851
+ }
2852
+ }
2850
2853
  },
2851
2854
  {
2852
- "match": "\\s*+:",
2853
- "name": "punctuation.type.separator.flowtype"
2855
+ "match": "\\s*+(\\+|-)",
2856
+ "captures": {
2857
+ "1": {
2858
+ "name": "support.type.variant.flowtype"
2859
+ }
2860
+ }
2854
2861
  },
2855
2862
  {
2856
2863
  "include": "#flowtype-parse-types"
@@ -2873,12 +2880,20 @@
2873
2880
  },
2874
2881
  "patterns": [
2875
2882
  {
2876
- "match": "\\s*+,",
2877
- "name": "punctuation.type.separator.flowtype"
2883
+ "match": "\\s*+(,|:)",
2884
+ "captures": {
2885
+ "1": {
2886
+ "name": "punctuation.type.separator.flowtype"
2887
+ }
2888
+ }
2878
2889
  },
2879
2890
  {
2880
- "match": "\\s*+:",
2881
- "name": "punctuation.type.separator.flowtype"
2891
+ "match": "\\s*+(\\+|-)",
2892
+ "captures": {
2893
+ "1": {
2894
+ "name": "support.type.variant.flowtype"
2895
+ }
2896
+ }
2882
2897
  },
2883
2898
  {
2884
2899
  "include": "#flowtype-parse-types"
@@ -2964,7 +2979,7 @@
2964
2979
  {
2965
2980
  "comment": "type aliases for export but avoid type instaceof or type in operators",
2966
2981
  "begin": "\\s*+\\b(type)\\b\\s+(?!(instanceof|in)\\b)(?=[$_\\p{L}])",
2967
- "end": "\\s*(\\;|\\n|\\b(?=if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|label|yield|type|declare)\\b)",
2982
+ "end": "\\s*(\\;|\\n|\\b(?=if|switch|try|var|let|const|static|function|return|class|do|for|while|debugger|export|import|yield|type|declare)\\b)",
2968
2983
  "beginCaptures": {
2969
2984
  "1": {
2970
2985
  "name": "support.type.type.flowtype"
@@ -243,6 +243,15 @@
243
243
  }
244
244
  ]
245
245
  },
246
+ "brackets": {
247
+ "patterns": [
248
+ {
249
+ "comment": "Brackets",
250
+ "match": "\\[\\]",
251
+ "name": "meta.array.papyrus"
252
+ }
253
+ ]
254
+ },
246
255
  "castAtom": {
247
256
  "patterns": [
248
257
  {
@@ -587,6 +596,9 @@
587
596
  },
588
597
  {
589
598
  "include": "#typeIdentifier"
599
+ },
600
+ {
601
+ "include": "#brackets"
590
602
  }
591
603
  ]
592
604
  },
@@ -759,7 +771,7 @@
759
771
  }
760
772
  },
761
773
  "comment": "Specific parameter",
762
- "match": "(?i)\\b(?:([_a-z][0-9_a-z]*)\\s*(\\=))?",
774
+ "match": "(?i)\\b(?:([_a-z][0-9_a-z]*)\\s*(\\=)(?!\\=))?",
763
775
  "name": "meta.functioncallparameter.papyrus"
764
776
  },
765
777
  {
@@ -790,7 +802,7 @@
790
802
  "patterns": [
791
803
  {
792
804
  "comment": "Function/event identifier",
793
- "match": "(?i)\\b([_a-z][0-9_a-z]*)(?=\\()",
805
+ "match": "(?i)\\b([_a-z][0-9_a-z]*)\\s*(?=\\()",
794
806
  "name": "entity.name.function.papyrus"
795
807
  }
796
808
  ]
@@ -802,6 +814,9 @@
802
814
  },
803
815
  {
804
816
  "include": "#typeIdentifier"
817
+ },
818
+ {
819
+ "include": "#brackets"
805
820
  }
806
821
  ]
807
822
  },
@@ -983,6 +998,11 @@
983
998
  "patterns": [
984
999
  {
985
1000
  "begin": "\\\\",
1001
+ "beginCaptures": {
1002
+ "0": {
1003
+ "name": "keyword.operator.papyrus"
1004
+ }
1005
+ },
986
1006
  "comment": "Multiline",
987
1007
  "end": "([\\n\\r])",
988
1008
  "name": "meta.multiline.papyrus",
@@ -22,7 +22,7 @@
22
22
  "cygport",
23
23
  "bats"
24
24
  ],
25
- "firstLineMatch": "^#!.*\\b(bash|zsh|sh|tcsh|ksh|dash|ash|csh)|^#\\s*-\\*-[^*]*mode:\\s*shell-script[^*]*-\\*-",
25
+ "firstLineMatch": "^#!.*\\b(bash|zsh|sh|tcsh|ksh|dash|ash|csh|rc)|(?i:^\\s*#\\s*-\\*-[^*]*mode:\\s*shell-script[^*]*-\\*-)",
26
26
  "patterns": [
27
27
  {
28
28
  "include": "#comment"
@@ -0,0 +1,128 @@
1
+ {
2
+ "fileTypes": [
3
+ "tla"
4
+ ],
5
+ "name": "TLA",
6
+ "patterns": [
7
+ {
8
+ "match": "\\\\\\*.*$",
9
+ "name": "comment.line.slash-star"
10
+ },
11
+ {
12
+ "begin": "\\(\\*",
13
+ "end": "\\*\\)",
14
+ "name": "comment.block"
15
+ },
16
+ {
17
+ "match": "\\={4,}",
18
+ "name": "markup.other.startbreak"
19
+ },
20
+ {
21
+ "match": "={4,}",
22
+ "name": "markup.other.endbreak"
23
+ },
24
+ {
25
+ "match": "\\b(\\\\h[0-9a-fA-F]+|\\\\o[0-9]+|\\\\b[01]+|\\d+\\.\\d+|\\d+)\\b",
26
+ "name": "constant.numeric"
27
+ },
28
+ {
29
+ "match": "\\b==\\b",
30
+ "name": "keyword.operator.definition.tla"
31
+ },
32
+ {
33
+ "match": "\\b=\\b",
34
+ "name": "keyword.operator.assignment.tla"
35
+ },
36
+ {
37
+ "match": "<\\=|>\\=|\\=|<|>|\\/\\=|\\#",
38
+ "name": "keyword.operator.comparison.tla"
39
+ },
40
+ {
41
+ "match": "(\\/\\\\|\\\\\\/|\\=>|<\\=>|~)",
42
+ "name": "keyword.operator.logic.tla"
43
+ },
44
+ {
45
+ "match": "(\\\\E|\\\\A)",
46
+ "name": "keyword.operator.quantification.tla"
47
+ },
48
+ {
49
+ "match": "(\\\\in|\\\\notin|:)",
50
+ "name": "keyword.operator.sets.tla"
51
+ },
52
+ {
53
+ "match": "\\b(\\+|\\-|\\*|\\/){1}\\b",
54
+ "name": "keyword.operator.arithmetic.tla"
55
+ },
56
+ {
57
+ "match": "(\\[\\]|\\<\\>)",
58
+ "name": "keyword.operator.temporal.tla"
59
+ },
60
+ {
61
+ "include": "#reserved-words"
62
+ },
63
+ {
64
+ "begin": "\"",
65
+ "end": "\"",
66
+ "name": "string.quoted.double.tla"
67
+ },
68
+ {
69
+ "begin": "';\n\t\t\tend = '",
70
+ "name": "string.quoted.single.tla"
71
+ },
72
+ {
73
+ "begin": "(\\[)",
74
+ "beginCaptures": {
75
+ "1": {
76
+ "name": "punctuation.definition.list.begin.tla"
77
+ }
78
+ },
79
+ "end": "(\\])",
80
+ "endCaptures": {
81
+ "1": {
82
+ "name": "punctuation.definition.list.end.tla"
83
+ }
84
+ },
85
+ "name": "meta.structure.list.tla",
86
+ "patterns": [
87
+ {
88
+ "begin": "(?<=\\[|\\,)\\s*(?![\\],])",
89
+ "contentName": "meta.structure.list.item.tla",
90
+ "end": "\\s*(?:(,)|(?=\\]))",
91
+ "endCaptures": {
92
+ "1": {
93
+ "name": "punctuation.separator.list.tla"
94
+ }
95
+ },
96
+ "patterns": [
97
+ {
98
+ "include": "$self"
99
+ }
100
+ ]
101
+ }
102
+ ]
103
+ },
104
+ {
105
+ "captures": {
106
+ "1": {
107
+ "name": "punctuation.definition.tuple.begin.tla"
108
+ },
109
+ "2": {
110
+ "name": "meta.empty-tuple.tla"
111
+ },
112
+ "3": {
113
+ "name": "punctuation.definition.tuple.end.tla"
114
+ }
115
+ },
116
+ "match": "(<<)(\\s*(>>))",
117
+ "name": "meta.structure.tuple.tla"
118
+ }
119
+ ],
120
+ "repository": {
121
+ "reserved-words": {
122
+ "match": "\\b(ASSUME|ASSUMPTION|AXIOM|CASE|CHOOSE|CONSTANT|CONSTANTS|DOMAIN|ELSE|ENABLED|EXCEPT|EXTENDS|IF|IN|INSTANCE|LET|LOCAL|MODULE|OTHER|SF_|SUBSET|THEN|THEOREM|UNCHANGED|UNION|VARIABLE|VARIABLES|WF_|WITH)\\b",
123
+ "name": "keyword.control.tla"
124
+ }
125
+ },
126
+ "scopeName": "source.tla",
127
+ "uuid": "A29E70ED-6D0F-4997-84E9-528B8EC412A1"
128
+ }