github-linguist 5.0.6 → 5.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/grammars/source.bsl.json +196 -162
- data/grammars/source.ceylon.json +43 -21
- data/grammars/source.coffee.json +46 -21
- data/grammars/source.cs.json +2 -2
- data/grammars/source.csound-score.json +41 -18
- data/grammars/source.csound.json +63 -7
- data/grammars/source.css.json +2 -2
- data/grammars/source.css.less.json +22 -91
- data/grammars/source.ditroff.json +114 -116
- data/grammars/source.gfm.clean.json +28 -0
- data/grammars/source.gfm.json +1 -0
- data/grammars/source.jison.json +678 -0
- data/grammars/source.jisonlex-injection.json +11 -0
- data/grammars/source.jisonlex.json +432 -0
- data/grammars/source.js.json +12 -67
- data/grammars/source.jsdoc.json +485 -0
- data/grammars/source.p4.json +15 -0
- data/grammars/source.perl6fe.json +37 -1
- data/grammars/source.puppet.json +1 -1
- data/grammars/source.python.json +6 -3
- data/grammars/source.quoting.perl6fe.json +101 -0
- data/grammars/source.rpm-spec.json +7 -3
- data/grammars/source.scad.json +152 -0
- data/grammars/source.shaderlab.json +42 -15
- data/grammars/source.terraform.json +18 -0
- data/grammars/source.yaml.json +57 -32
- data/grammars/text.html.php.blade.json +1 -1
- data/grammars/text.marko.json +1522 -0
- data/grammars/text.roff.json +9 -6
- data/lib/linguist.rb +2 -2
- data/lib/linguist/documentation.yml +4 -3
- data/lib/linguist/heuristics.rb +2 -0
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +33 -1
- data/lib/linguist/samples.json +423 -48
- data/lib/linguist/version.rb +1 -1
- metadata +13 -7
- data/grammars/module.ceylon.json +0 -54
@@ -0,0 +1,11 @@
|
|
1
|
+
{
|
2
|
+
"name": "Jison Lex Injection",
|
3
|
+
"scopeName": "source.jisonlex-injection",
|
4
|
+
"injectionSelector": "L:meta.rule.action.jisonlex -comment",
|
5
|
+
"patterns": [
|
6
|
+
{
|
7
|
+
"name": "variable.language.jisonlex",
|
8
|
+
"match": "\\byy(?:l(?:eng|ineno|loc)|text)\\b"
|
9
|
+
}
|
10
|
+
]
|
11
|
+
}
|
@@ -0,0 +1,432 @@
|
|
1
|
+
{
|
2
|
+
"name": "Jison Lex",
|
3
|
+
"scopeName": "source.jisonlex",
|
4
|
+
"fileTypes": [
|
5
|
+
"jisonlex"
|
6
|
+
],
|
7
|
+
"patterns": [
|
8
|
+
{
|
9
|
+
"begin": "%%",
|
10
|
+
"beginCaptures": {
|
11
|
+
"0": {
|
12
|
+
"name": "meta.separator.section.jisonlex"
|
13
|
+
}
|
14
|
+
},
|
15
|
+
"patterns": [
|
16
|
+
{
|
17
|
+
"begin": "^%%",
|
18
|
+
"beginCaptures": {
|
19
|
+
"0": {
|
20
|
+
"name": "meta.separator.section.jisonlex"
|
21
|
+
}
|
22
|
+
},
|
23
|
+
"patterns": [
|
24
|
+
{
|
25
|
+
"name": "meta.section.user-code.jisonlex",
|
26
|
+
"begin": "\\G",
|
27
|
+
"patterns": [
|
28
|
+
{
|
29
|
+
"include": "#user_code_section"
|
30
|
+
}
|
31
|
+
]
|
32
|
+
}
|
33
|
+
]
|
34
|
+
},
|
35
|
+
{
|
36
|
+
"name": "meta.section.rules.jisonlex",
|
37
|
+
"begin": "(?!%%)",
|
38
|
+
"end": "(?=^%%)",
|
39
|
+
"patterns": [
|
40
|
+
{
|
41
|
+
"include": "#rules_section"
|
42
|
+
}
|
43
|
+
]
|
44
|
+
}
|
45
|
+
]
|
46
|
+
},
|
47
|
+
{
|
48
|
+
"name": "meta.section.definitions.jisonlex",
|
49
|
+
"begin": "(?!%%)",
|
50
|
+
"end": "(?=%%)",
|
51
|
+
"patterns": [
|
52
|
+
{
|
53
|
+
"include": "#definitions_section"
|
54
|
+
}
|
55
|
+
]
|
56
|
+
}
|
57
|
+
],
|
58
|
+
"repository": {
|
59
|
+
"definitions_section": {
|
60
|
+
"patterns": [
|
61
|
+
{
|
62
|
+
"include": "source.jison#comments"
|
63
|
+
},
|
64
|
+
{
|
65
|
+
"include": "source.jison#include_declarations"
|
66
|
+
},
|
67
|
+
{
|
68
|
+
"name": "meta.definition.jisonlex",
|
69
|
+
"begin": "\\b[\\p{Alpha}_](?:[\\w-]*\\w)?\\b",
|
70
|
+
"end": "$",
|
71
|
+
"beginCaptures": {
|
72
|
+
"0": {
|
73
|
+
"name": "entity.name.variable.jisonlex"
|
74
|
+
}
|
75
|
+
},
|
76
|
+
"patterns": [
|
77
|
+
{
|
78
|
+
"include": "source.jison#comments"
|
79
|
+
},
|
80
|
+
{
|
81
|
+
"name": "string.regexp.jisonlex",
|
82
|
+
"begin": "(?=\\S)",
|
83
|
+
"end": "(?=\\s)",
|
84
|
+
"patterns": [
|
85
|
+
{
|
86
|
+
"include": "#regexp"
|
87
|
+
}
|
88
|
+
]
|
89
|
+
}
|
90
|
+
]
|
91
|
+
},
|
92
|
+
{
|
93
|
+
"name": "meta.start-condition.jisonlex",
|
94
|
+
"begin": "%[sx]\\b",
|
95
|
+
"end": "$",
|
96
|
+
"beginCaptures": {
|
97
|
+
"0": {
|
98
|
+
"name": "keyword.other.start-condition.jisonlex"
|
99
|
+
}
|
100
|
+
},
|
101
|
+
"patterns": [
|
102
|
+
{
|
103
|
+
"include": "source.jison#comments"
|
104
|
+
},
|
105
|
+
{
|
106
|
+
"name": "entity.name.function.jisonlex",
|
107
|
+
"match": "\\b[\\p{Alpha}_](?:[\\w-]*\\w)?\\b"
|
108
|
+
},
|
109
|
+
{
|
110
|
+
"name": "invalid.illegal.jisonlex",
|
111
|
+
"match": "\\S"
|
112
|
+
}
|
113
|
+
]
|
114
|
+
},
|
115
|
+
{
|
116
|
+
"include": "source.jison#options_declarations"
|
117
|
+
},
|
118
|
+
{
|
119
|
+
"name": "invalid.unimplemented.jisonlex",
|
120
|
+
"match": "%(?:array|pointer)"
|
121
|
+
},
|
122
|
+
{
|
123
|
+
"include": "source.jison#user_code_blocks"
|
124
|
+
}
|
125
|
+
]
|
126
|
+
},
|
127
|
+
"rules_section": {
|
128
|
+
"patterns": [
|
129
|
+
{
|
130
|
+
"include": "source.jison#comments"
|
131
|
+
},
|
132
|
+
{
|
133
|
+
"name": "meta.start-conditions.jisonlex",
|
134
|
+
"begin": "(?:^|(?<=%\\}))<(?!<EOF>>)",
|
135
|
+
"end": ">",
|
136
|
+
"beginCaptures": {
|
137
|
+
"0": {
|
138
|
+
"name": "punctuation.definition.start-conditions.begin.jisonlex"
|
139
|
+
}
|
140
|
+
},
|
141
|
+
"endCaptures": {
|
142
|
+
"0": {
|
143
|
+
"name": "punctuation.definition.start-conditions.end.jisonlex"
|
144
|
+
}
|
145
|
+
},
|
146
|
+
"patterns": [
|
147
|
+
{
|
148
|
+
"name": "keyword.other.jisonlex",
|
149
|
+
"match": "\\bINITIAL\\b"
|
150
|
+
},
|
151
|
+
{
|
152
|
+
"name": "entity.name.function.jisonlex",
|
153
|
+
"match": "\\b[\\p{Alpha}_](?:[\\w-]*\\w)?\\b"
|
154
|
+
},
|
155
|
+
{
|
156
|
+
"name": "punctuation.separator.start-condition.jisonlex",
|
157
|
+
"match": ","
|
158
|
+
},
|
159
|
+
{
|
160
|
+
"name": "keyword.other.any-start-condition.jisonlex",
|
161
|
+
"match": "(?<=<)\\*(?=>)"
|
162
|
+
},
|
163
|
+
{
|
164
|
+
"name": "invalid.illegal.jisonlex",
|
165
|
+
"match": "."
|
166
|
+
}
|
167
|
+
]
|
168
|
+
},
|
169
|
+
{
|
170
|
+
"name": "meta.rule.action.jisonlex",
|
171
|
+
"begin": "(?=%\\{)",
|
172
|
+
"end": "(?<=%\\})",
|
173
|
+
"patterns": [
|
174
|
+
{
|
175
|
+
"include": "source.jison#user_code_blocks"
|
176
|
+
}
|
177
|
+
]
|
178
|
+
},
|
179
|
+
{
|
180
|
+
"name": "string.regexp.jisonlex",
|
181
|
+
"begin": "(?:^|(?<=>|%\\}))(?=\\S)",
|
182
|
+
"end": "(?=\\s|%\\{)",
|
183
|
+
"patterns": [
|
184
|
+
{
|
185
|
+
"include": "#regexp"
|
186
|
+
}
|
187
|
+
]
|
188
|
+
},
|
189
|
+
{
|
190
|
+
"name": "meta.rule.action.jisonlex",
|
191
|
+
"begin": "(?=\\S)",
|
192
|
+
"end": "((//).*)?(?=$)",
|
193
|
+
"endCaptures": {
|
194
|
+
"1": {
|
195
|
+
"name": "comment.line.double-slash.js"
|
196
|
+
},
|
197
|
+
"2": {
|
198
|
+
"name": "punctuation.definition.comment.js"
|
199
|
+
}
|
200
|
+
},
|
201
|
+
"patterns": [
|
202
|
+
{
|
203
|
+
"include": "source.jison#include_declarations"
|
204
|
+
},
|
205
|
+
{
|
206
|
+
"include": "source.js"
|
207
|
+
}
|
208
|
+
]
|
209
|
+
}
|
210
|
+
]
|
211
|
+
},
|
212
|
+
"user_code_section": {
|
213
|
+
"patterns": [
|
214
|
+
{
|
215
|
+
"include": "source.jison#user_code_include_declarations"
|
216
|
+
},
|
217
|
+
{
|
218
|
+
"include": "source.js"
|
219
|
+
}
|
220
|
+
]
|
221
|
+
},
|
222
|
+
"name_uses": {
|
223
|
+
"patterns": [
|
224
|
+
{
|
225
|
+
"name": "variable.other.jisonlex",
|
226
|
+
"match": "\\{[\\p{Alpha}_](?:[\\w-]*\\w)?\\}"
|
227
|
+
}
|
228
|
+
]
|
229
|
+
},
|
230
|
+
"regexp": {
|
231
|
+
"patterns": [
|
232
|
+
{
|
233
|
+
"include": "source.jison#comments"
|
234
|
+
},
|
235
|
+
{
|
236
|
+
"name": "keyword.other.character-class.any.regexp.jisonlex",
|
237
|
+
"match": "\\."
|
238
|
+
},
|
239
|
+
{
|
240
|
+
"name": "keyword.other.anchor.word-boundary.regexp.jisonlex",
|
241
|
+
"match": "\\\\b"
|
242
|
+
},
|
243
|
+
{
|
244
|
+
"name": "keyword.other.anchor.non-word-boundary.regexp.jisonlex",
|
245
|
+
"match": "\\\\B"
|
246
|
+
},
|
247
|
+
{
|
248
|
+
"name": "keyword.other.anchor.start-of-input.regexp.jisonlex",
|
249
|
+
"match": "\\^"
|
250
|
+
},
|
251
|
+
{
|
252
|
+
"name": "keyword.other.anchor.end-of-input.regexp.jisonlex",
|
253
|
+
"match": "\\$"
|
254
|
+
},
|
255
|
+
{
|
256
|
+
"name": "keyword.other.back-reference.regexp.jisonlex",
|
257
|
+
"match": "\\\\[1-9]\\d*"
|
258
|
+
},
|
259
|
+
{
|
260
|
+
"name": "keyword.operator.quantifier.regexp.jisonlex",
|
261
|
+
"match": "(?:[+*?]|\\{(?:\\d+(?:,(?:\\d+)?)?|,\\d+)\\})\\??"
|
262
|
+
},
|
263
|
+
{
|
264
|
+
"name": "keyword.operator.alternation.regexp.jisonlex",
|
265
|
+
"match": "\\|"
|
266
|
+
},
|
267
|
+
{
|
268
|
+
"name": "meta.non-capturing.group.regexp.jisonlex",
|
269
|
+
"begin": "\\(\\?:",
|
270
|
+
"end": "\\)",
|
271
|
+
"beginCaptures": {
|
272
|
+
"0": {
|
273
|
+
"name": "punctuation.definition.group.begin.regexp.jisonlex"
|
274
|
+
}
|
275
|
+
},
|
276
|
+
"endCaptures": {
|
277
|
+
"0": {
|
278
|
+
"name": "punctuation.definition.group.end.regexp.jisonlex"
|
279
|
+
}
|
280
|
+
},
|
281
|
+
"patterns": [
|
282
|
+
{
|
283
|
+
"include": "#regexp"
|
284
|
+
}
|
285
|
+
]
|
286
|
+
},
|
287
|
+
{
|
288
|
+
"name": "meta.lookahead.assertion.regexp.jisonlex",
|
289
|
+
"begin": "\\(\\?=",
|
290
|
+
"end": "\\)",
|
291
|
+
"beginCaptures": {
|
292
|
+
"0": {
|
293
|
+
"name": "punctuation.definition.group.begin.regexp.jisonlex"
|
294
|
+
}
|
295
|
+
},
|
296
|
+
"endCaptures": {
|
297
|
+
"0": {
|
298
|
+
"name": "punctuation.definition.group.end.regexp.jisonlex"
|
299
|
+
}
|
300
|
+
},
|
301
|
+
"patterns": [
|
302
|
+
{
|
303
|
+
"include": "#regexp"
|
304
|
+
}
|
305
|
+
]
|
306
|
+
},
|
307
|
+
{
|
308
|
+
"name": "meta.negative.lookahead.assertion.regexp.jisonlex",
|
309
|
+
"begin": "\\(\\?!",
|
310
|
+
"end": "\\)",
|
311
|
+
"beginCaptures": {
|
312
|
+
"0": {
|
313
|
+
"name": "punctuation.definition.group.begin.regexp.jisonlex"
|
314
|
+
}
|
315
|
+
},
|
316
|
+
"endCaptures": {
|
317
|
+
"0": {
|
318
|
+
"name": "punctuation.definition.group.end.regexp.jisonlex"
|
319
|
+
}
|
320
|
+
},
|
321
|
+
"patterns": [
|
322
|
+
{
|
323
|
+
"include": "#regexp"
|
324
|
+
}
|
325
|
+
]
|
326
|
+
},
|
327
|
+
{
|
328
|
+
"name": "meta.group.regexp.jisonlex",
|
329
|
+
"begin": "\\(",
|
330
|
+
"end": "\\)",
|
331
|
+
"beginCaptures": {
|
332
|
+
"0": {
|
333
|
+
"name": "punctuation.definition.group.begin.regexp.jisonlex"
|
334
|
+
}
|
335
|
+
},
|
336
|
+
"endCaptures": {
|
337
|
+
"0": {
|
338
|
+
"name": "punctuation.definition.group.end.regexp.jisonlex"
|
339
|
+
}
|
340
|
+
},
|
341
|
+
"patterns": [
|
342
|
+
{
|
343
|
+
"include": "#regexp"
|
344
|
+
}
|
345
|
+
]
|
346
|
+
},
|
347
|
+
{
|
348
|
+
"name": "constant.other.character-class.set.regexp.jisonlex",
|
349
|
+
"begin": "(\\[)(\\^)?",
|
350
|
+
"end": "\\]",
|
351
|
+
"beginCaptures": {
|
352
|
+
"1": {
|
353
|
+
"name": "punctuation.definition.character-class.begin.regexp.jisonlex"
|
354
|
+
},
|
355
|
+
"2": {
|
356
|
+
"name": "keyword.operator.negation.regexp.jisonlex"
|
357
|
+
}
|
358
|
+
},
|
359
|
+
"endCaptures": {
|
360
|
+
"0": {
|
361
|
+
"name": "punctuation.definition.character-class.end.regexp.jisonlex"
|
362
|
+
}
|
363
|
+
},
|
364
|
+
"patterns": [
|
365
|
+
{
|
366
|
+
"include": "#name_uses"
|
367
|
+
},
|
368
|
+
{
|
369
|
+
"include": "#regexp_character_class"
|
370
|
+
}
|
371
|
+
]
|
372
|
+
},
|
373
|
+
{
|
374
|
+
"include": "#regexp_character_class"
|
375
|
+
},
|
376
|
+
{
|
377
|
+
"include": "#name_uses"
|
378
|
+
},
|
379
|
+
{
|
380
|
+
"include": "source.jison#quoted_strings"
|
381
|
+
},
|
382
|
+
{
|
383
|
+
"name": "keyword.other.eof.regexp.jisonlex",
|
384
|
+
"match": "<<EOF>>"
|
385
|
+
},
|
386
|
+
{
|
387
|
+
"name": "keyword.operator.negative.lookahead.regexp.jisonlex",
|
388
|
+
"match": "/!"
|
389
|
+
},
|
390
|
+
{
|
391
|
+
"name": "keyword.operator.lookahead.regexp.jisonlex",
|
392
|
+
"match": "/"
|
393
|
+
}
|
394
|
+
]
|
395
|
+
},
|
396
|
+
"regexp_character_class": {
|
397
|
+
"patterns": [
|
398
|
+
{
|
399
|
+
"name": "constant.character.escape.character-class.word.regexp.jisonlex",
|
400
|
+
"match": "\\\\w"
|
401
|
+
},
|
402
|
+
{
|
403
|
+
"name": "constant.character.escape.character-class.non-word.regexp.jisonlex",
|
404
|
+
"match": "\\\\W"
|
405
|
+
},
|
406
|
+
{
|
407
|
+
"name": "constant.character.escape.character-class.space.regexp.jisonlex",
|
408
|
+
"match": "\\\\s"
|
409
|
+
},
|
410
|
+
{
|
411
|
+
"name": "constant.character.escape.character-class.non-space.regexp.jisonlex",
|
412
|
+
"match": "\\\\S"
|
413
|
+
},
|
414
|
+
{
|
415
|
+
"name": "constant.character.escape.character-class.digit.regexp.jisonlex",
|
416
|
+
"match": "\\\\d"
|
417
|
+
},
|
418
|
+
{
|
419
|
+
"name": "constant.character.escape.character-class.non-digit.regexp.jisonlex",
|
420
|
+
"match": "\\\\D"
|
421
|
+
},
|
422
|
+
{
|
423
|
+
"name": "constant.character.escape.character-class.control.regexp.jisonlex",
|
424
|
+
"match": "\\\\c[A-Z]"
|
425
|
+
},
|
426
|
+
{
|
427
|
+
"include": "source.js#string_escapes"
|
428
|
+
}
|
429
|
+
]
|
430
|
+
}
|
431
|
+
}
|
432
|
+
}
|
data/grammars/source.js.json
CHANGED
@@ -466,7 +466,7 @@
|
|
466
466
|
]
|
467
467
|
},
|
468
468
|
{
|
469
|
-
"begin": "(?x)\n(?=\n (?!\n (break|case|catch|continue|do|else|finally|for|function|if|\n package|return|switch|throw|try|while|with)\n [\\s\\(]\n )\n (\n \\b(get|set) # Property getter/setter: get foo(){}\n (?:\\s+|(?=\\[)) # Followed by whitespace or square bracket\n )
|
469
|
+
"begin": "(?x)\n(?=\n (?!\n (break|case|catch|continue|do|else|finally|for|function|if|\n package|return|switch|throw|try|while|with)\n [\\s\\(]\n )\n (\n \\b(get|set) # Property getter/setter: get foo(){}\n (?:\\s+|(?=\\[)) # Followed by whitespace or square bracket\n )?+\n ( # Method name\n \\b[a-zA-Z_$][\\w$]* # Fixed name\n |\n \\[ # Computed property key\n [^\\[\\]]++ # Contains at least one non-brace character\n \\]\n )\n \\s*\\(\\s* # Start of arguments list\n (\n \"[^\"]*\" | # Double-quoted string\n '[^']*' | # Single-quoted string\n [^\"()'] # Any non-bracket or non-quote\n )*\n \\)\\s* # End of arguments\n { # Beginning of body\n)",
|
470
470
|
"end": "(?<=})",
|
471
471
|
"patterns": [
|
472
472
|
{
|
@@ -1767,92 +1767,37 @@
|
|
1767
1767
|
}
|
1768
1768
|
]
|
1769
1769
|
},
|
1770
|
-
"
|
1770
|
+
"comments": {
|
1771
1771
|
"patterns": [
|
1772
1772
|
{
|
1773
|
-
"match": "(?x) (?<!\\w)@\n(abstract|access|alias|arg|argument|async|attribute|augments|author|beta|borrows|bubbes|callback|chainable|class\n|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc\n|description|dict|emits|enum|event|example|exports?|extends|extension|extension_for|extensionfor|external|file\n|fileoverview|final|fires|for|function|global|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance\n|interface|kind|lends|license|listens|main|member|memberof|method|mixex|mixins?|modifies|module|name|namespace\n|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|preserve|private|prop|property\n|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress\n|template|this|throws|todo|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce)\\b",
|
1774
|
-
"name": "storage.type.class.jsdoc"
|
1775
|
-
},
|
1776
|
-
{
|
1777
|
-
"match": "(?x)\n(\n \\[\n [^\\]]+ # Optional [link text] preceding {@link syntax}\n \\]\n\n (?! # Check to avoid highlighting two sets of link text\n {\n @\\w+ # Tagname\n \\s+\n [^\\s|}]+ # Namepath/URL\n [\\s|] # Whitespace or bar delimiting description\n [^}]*\n }\n )\n)?\n\n(?:\n {\n (\n @\n (?: link # Name of tag\n | linkcode\n | linkplain\n | tutorial\n )\n )\n\n \\s+\n\n ([^\\s|}]+) # Namepath or URL\n\n (?: # Optional link text following link target\n [\\s|] # Bar or space separating target and text\n [^}]* # Actual text\n )?\n }\n)",
|
1778
1773
|
"captures": {
|
1779
|
-
"0": {
|
1780
|
-
"name": "entity.name.type.instance.jsdoc"
|
1781
|
-
},
|
1782
1774
|
"1": {
|
1783
|
-
"name": "
|
1775
|
+
"name": "punctuation.section.begin.comment.js"
|
1784
1776
|
},
|
1785
1777
|
"2": {
|
1786
|
-
"name": "
|
1787
|
-
},
|
1788
|
-
"3": {
|
1789
|
-
"name": "variable.other.description.jsdoc"
|
1778
|
+
"name": "punctuation.section.end.comment.js"
|
1790
1779
|
}
|
1791
1780
|
},
|
1792
|
-
"
|
1793
|
-
|
1794
|
-
{
|
1795
|
-
"match": "(?x)\n(?:(?<=@param)|(?<=@arg)|(?<=@argument)|(?<=@type))\n\\s+\n({(?:\n \\* | # {*} any type\n \\? | # {?} unknown type\n\n (?:\n (?: # Check for a prefix\n \\? | # {?string} nullable type\n ! | # {!string} non-nullable type\n \\.{3} # {...string} variable number of parameters\n [*?]? # {...*} Variable number of mixed types\n )?\n\n (?:\n (?:\n function # {function(string, number)} function type\n \\s*\n (?:\n (?:\n \\(\\s*\n \\.{3}[a-zA-Z_$][\\w$]+ # {function(...string)} variable number of parameters\n \\s*\\)\n )\n |\n (?:\n \\(\\s*\n (?:\n (?:\\?|!)? # {function(?string)} or function(!string)} nullable/non-nullable type\n [a-zA-Z_$][\\w$]+\n (?:\\[\\])? # {function(string[])} type application, an array of strings\n (?:\n (?:\n (?:\n \\s*,\\s*\n (?:\\?|!)? # {function(?string)} or function(!string)} nullable/non-nullable type\n [a-zA-Z_$][\\w$]+\n (?:\\[\\])? # {function(string[])} type application, an array of strings\n )*\n (?:\n \\s*,\\s*\n \\.{3}[a-zA-Z_$][\\w$]+ # {function(string, ...string)} variable number of parameters\n )?\n )\n |\n (?:\n =? # {function(string=)} optional parameter\n (?:\n (?<!=) # {function(string, string, number)} loop non-optional params\n \\s*,\\s*\n (?:\\?|!)? # {function(?string)} or function(!string)} nullable/non-nullable type\n [a-zA-Z_$][\\w$]+\n (?:\\[\\])? # {function(string[])} type application, an array of strings\n =?\n )*\n (?:\n (?<==) # {function(string, string=, number=)} loop optional params\n \\s*,\\s*\n (?:\\?|!)? # {function(?string)} or function(!string)} nullable/non-nullable type\n [a-zA-Z_$][\\w$]+\n (?:\\[\\])? # {function(string[])} type application, an array of strings\n =\n )*\n )\n )\n )?\n \\s*\\)\n )\n )\n (?: # {function(): string} function return type\n \\s*:\\s*\n [a-zA-Z_$][\\w$]*\n )?\n )?\n |\n (?:\n \\( # Opening bracket of multiple types with parenthesis {(string|number)}\n [a-zA-Z_$]+\n (?:\n (?:\n [\\w$]*\n (?:\\[\\])? # {(string[]|number)} type application, an array of strings or a number\n ) |\n \\.?<[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application (optional .)\n )\n (?:\n [\\.|~] # {Foo.bar} namespaced, {string|number} multiple, {Foo~bar} class-specific callback\n [a-zA-Z_$]+\n (?:\n (?:\n [\\w$]*\n (?:\\[\\])? # {(string|number[])} type application, a string or an array of numbers\n ) |\n \\.?<[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application (optional .)\n )\n )*\n \\) |\n [a-zA-Z_$]+\n (?:\n (?:\n [\\w$]*\n (?:\\[\\])? # {(string|number[])} type application, a string or an array of numbers\n ) |\n \\.?<[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application (optional .)\n )\n (?:\n [\\.|~] # {Foo.bar} namespaced, {string|number} multiple, {Foo~bar} class-specific callback\n [a-zA-Z_$]+\n (?:\n [\\w$]* |\n \\.?<[\\w$]+(?:,\\s+[\\w$]+)*> # {Array<string>} or {Object<string, number>} type application (optional .)\n )\n )*\n )\n )\n # Check for suffix\n (?:\\[\\])? # {string[]} type application, an array of strings\n =? # {string=} optional parameter\n )\n)})\n\\s+\n(\n \\[ # [foo] optional parameter\n \\s*\n (?:\n [a-zA-Z_$][\\w$]*\n (?:\n (?:\\[\\])? # Foo[].bar properties within an array\n \\. # Foo.Bar namespaced parameter\n [a-zA-Z_$][\\w$]*\n )*\n (?:\n \\s*\n = # [foo=bar] Default parameter value\n \\s*\n (?:\n [\\w$.\\s]* | # [foo=bar] Unquoted\n \"[^\"]*\" | # [foo=\"bar\"] Double-quoted\n '[^']*' | # [foo='bar'] Single-quoted\n {[^{}]*} | # [foo={a:1}] Object literal\n \\[ [^\\[\\]]* \\] # [foo=[1,2]] Array literal\n )\n )?\n )\n \\s*\n \\] |\n (?:\n [a-zA-Z_$][\\w$]*\n (?:\n (?:\\[\\])? # Foo[].bar properties within an array\n \\. # Foo.Bar namespaced parameter\n [a-zA-Z_$][\\w$]*\n )*\n )?\n)\n\\s+\n(?:-\\s+)? # optional hyphen before the description\n((?:(?!\\*\\/).)*) # The type description",
|
1796
|
-
"captures": {
|
1797
|
-
"0": {
|
1798
|
-
"name": "other.meta.jsdoc"
|
1799
|
-
},
|
1800
|
-
"1": {
|
1801
|
-
"name": "entity.name.type.instance.jsdoc"
|
1802
|
-
},
|
1803
|
-
"2": {
|
1804
|
-
"name": "variable.other.jsdoc"
|
1805
|
-
},
|
1806
|
-
"3": {
|
1807
|
-
"name": "other.description.jsdoc",
|
1808
|
-
"patterns": [
|
1809
|
-
{
|
1810
|
-
"include": "#docblock"
|
1811
|
-
}
|
1812
|
-
]
|
1813
|
-
}
|
1814
|
-
}
|
1781
|
+
"match": "(/\\*)(\\*/)",
|
1782
|
+
"name": "comment.block.empty.js"
|
1815
1783
|
},
|
1816
1784
|
{
|
1817
|
-
"
|
1818
|
-
"captures": {
|
1819
|
-
"0": {
|
1820
|
-
"name": "other.meta.jsdoc"
|
1821
|
-
},
|
1822
|
-
"1": {
|
1823
|
-
"name": "entity.name.type.instance.jsdoc"
|
1824
|
-
},
|
1825
|
-
"2": {
|
1826
|
-
"name": "other.description.jsdoc",
|
1827
|
-
"patterns": [
|
1828
|
-
{
|
1829
|
-
"include": "#docblock"
|
1830
|
-
}
|
1831
|
-
]
|
1832
|
-
}
|
1833
|
-
}
|
1834
|
-
}
|
1835
|
-
]
|
1836
|
-
},
|
1837
|
-
"comments": {
|
1838
|
-
"patterns": [
|
1839
|
-
{
|
1840
|
-
"begin": "/\\*\\*(?!/)",
|
1785
|
+
"begin": "/\\*\\*",
|
1841
1786
|
"beginCaptures": {
|
1842
1787
|
"0": {
|
1843
|
-
"name": "punctuation.
|
1788
|
+
"name": "punctuation.section.begin.comment.js"
|
1844
1789
|
}
|
1845
1790
|
},
|
1846
1791
|
"end": "\\*/",
|
1847
1792
|
"endCaptures": {
|
1848
1793
|
"0": {
|
1849
|
-
"name": "punctuation.
|
1794
|
+
"name": "punctuation.section.end.comment.js"
|
1850
1795
|
}
|
1851
1796
|
},
|
1852
1797
|
"name": "comment.block.documentation.js",
|
1853
1798
|
"patterns": [
|
1854
1799
|
{
|
1855
|
-
"include": "
|
1800
|
+
"include": "source.jsdoc"
|
1856
1801
|
}
|
1857
1802
|
]
|
1858
1803
|
},
|
@@ -1860,13 +1805,13 @@
|
|
1860
1805
|
"begin": "/\\*",
|
1861
1806
|
"beginCaptures": {
|
1862
1807
|
"0": {
|
1863
|
-
"name": "punctuation.
|
1808
|
+
"name": "punctuation.section.begin.comment.js"
|
1864
1809
|
}
|
1865
1810
|
},
|
1866
1811
|
"end": "\\*/",
|
1867
1812
|
"endCaptures": {
|
1868
1813
|
"0": {
|
1869
|
-
"name": "punctuation.
|
1814
|
+
"name": "punctuation.section.end.comment.js"
|
1870
1815
|
}
|
1871
1816
|
},
|
1872
1817
|
"name": "comment.block.js"
|