github-linguist 4.8.5 → 4.8.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/{source.sas_log.json → source.SASLog.json} +5 -6
  3. data/grammars/source.ahk.json +81 -57
  4. data/grammars/source.assembly.json +1 -1
  5. data/grammars/source.bro.json +4 -4
  6. data/grammars/source.clojure.json +32 -8
  7. data/grammars/source.coq.json +1 -1
  8. data/grammars/source.crystal.json +21 -6
  9. data/grammars/source.csound-document.json +71 -0
  10. data/grammars/source.csound-score.json +65 -0
  11. data/grammars/source.csound.json +494 -0
  12. data/grammars/source.elm.json +27 -2
  13. data/grammars/source.fsharp.json +1 -1
  14. data/grammars/source.glsl.json +96 -6
  15. data/grammars/source.js.jsx.json +664 -524
  16. data/grammars/source.nu.json +526 -0
  17. data/grammars/source.pawn.json +8 -109
  18. data/grammars/source.pony.json +1 -1
  19. data/grammars/source.python.json +4 -4
  20. data/grammars/source.regexp.babel.json +1 -1
  21. data/grammars/source.shell.json +4 -1
  22. data/grammars/source.swift.json +2 -2
  23. data/grammars/source.wavefront.mtl.json +1177 -0
  24. data/grammars/source.wavefront.obj.json +1344 -0
  25. data/grammars/text.html.creole.json +329 -0
  26. data/grammars/text.html.ecr.json +52 -0
  27. data/grammars/text.html.handlebars.json +1 -1
  28. data/grammars/text.html.mako.json +17 -2
  29. data/grammars/text.html.vue.json +36 -1
  30. data/grammars/text.slim.json +1 -4
  31. data/grammars/text.tex.latex.json +2 -2
  32. data/lib/linguist/languages.json +1 -1
  33. data/lib/linguist/languages.yml +75 -6
  34. data/lib/linguist/samples.json +1856 -71
  35. data/lib/linguist/version.rb +1 -1
  36. metadata +11 -4
  37. data/grammars/source.fan.json +0 -188
@@ -0,0 +1,526 @@
1
+ {
2
+ "comment": "\n This is a bundle for the Nu programming language (www.programming.nu)\n ",
3
+ "fileTypes": [
4
+ "nu",
5
+ "Nukefile"
6
+ ],
7
+ "firstLineMatch": "^#!/.*\\bnush\\b",
8
+ "foldingStartMarker": "\\(",
9
+ "foldingStopMarker": "\\)",
10
+ "keyEquivalent": "^~N",
11
+ "name": "Nu",
12
+ "patterns": [
13
+ {
14
+ "match": "\\b(t|nil|self|super|YES|NO|margs)\\b",
15
+ "name": "constant.language.nu"
16
+ },
17
+ {
18
+ "match": "\\b((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|ll|LL|ull|ULL)?\\b",
19
+ "name": "constant.numeric.nu"
20
+ },
21
+ {
22
+ "captures": {
23
+ "1": {
24
+ "name": "punctuation.definition.constant.nu"
25
+ },
26
+ "4": {
27
+ "name": "punctuation.definition.constant.nu"
28
+ }
29
+ },
30
+ "match": "(')(.|\\\\[nrfbaes]|\\\\[0-7]{3}|\\\\x\\h{2}|\\\\u\\h{4})(')",
31
+ "name": "constant.character.nu"
32
+ },
33
+ {
34
+ "captures": {
35
+ "1": {
36
+ "name": "punctuation.definition.variable.nu"
37
+ }
38
+ },
39
+ "match": "(@)[a-zA-Z_]\\w*",
40
+ "name": "variable.other.readwrite.instance.nu"
41
+ },
42
+ {
43
+ "captures": {
44
+ "1": {
45
+ "name": "punctuation.definition.variable.nu"
46
+ }
47
+ },
48
+ "match": "(\\$)[a-zA-Z_]\\w*",
49
+ "name": "variable.other.readwrite.global.nu"
50
+ },
51
+ {
52
+ "match": "\\b[A-Z]\\w*\\b",
53
+ "name": "support.class.nu"
54
+ },
55
+ {
56
+ "captures": {
57
+ "1": {
58
+ "name": "punctuation.definition.comment.nudoc.nu"
59
+ },
60
+ "2": {
61
+ "name": "support.comment.nudoc.nu"
62
+ }
63
+ },
64
+ "match": "(;.*|#.*)(@(abstract|copyright|discussion|file|header|info).*)",
65
+ "name": "comment.nudoc.nu"
66
+ },
67
+ {
68
+ "captures": {
69
+ "1": {
70
+ "name": "punctuation.definition.comment.nu"
71
+ }
72
+ },
73
+ "match": "(;).*$\\n?",
74
+ "name": "comment.line.semicolon.nu"
75
+ },
76
+ {
77
+ "captures": {
78
+ "1": {
79
+ "name": "punctuation.definition.comment.nu"
80
+ }
81
+ },
82
+ "match": "(#).*$\\n?",
83
+ "name": "comment.line.hash.nu"
84
+ },
85
+ {
86
+ "begin": "-\"",
87
+ "beginCaptures": {
88
+ "0": {
89
+ "name": "punctuation.definition.string.begin.nu"
90
+ }
91
+ },
92
+ "end": "\"",
93
+ "endCaptures": {
94
+ "0": {
95
+ "name": "punctuation.definition.string.end.nu"
96
+ }
97
+ },
98
+ "name": "string.quoted.double.unescaped.nu",
99
+ "patterns": [
100
+ {
101
+ "include": "#interpolated_nu"
102
+ }
103
+ ]
104
+ },
105
+ {
106
+ "begin": "\\+?\"",
107
+ "beginCaptures": {
108
+ "0": {
109
+ "name": "punctuation.definition.string.begin.nu"
110
+ }
111
+ },
112
+ "end": "\"",
113
+ "endCaptures": {
114
+ "0": {
115
+ "name": "punctuation.definition.string.end.nu"
116
+ }
117
+ },
118
+ "name": "string.quoted.double.escaped.nu",
119
+ "patterns": [
120
+ {
121
+ "include": "#escaped_char"
122
+ },
123
+ {
124
+ "include": "#interpolated_nu"
125
+ }
126
+ ]
127
+ },
128
+ {
129
+ "begin": "<<[+](.*)",
130
+ "beginCaptures": {
131
+ "0": {
132
+ "name": "punctuation.definition.string.begin.nu"
133
+ }
134
+ },
135
+ "end": "\\1",
136
+ "endCaptures": {
137
+ "0": {
138
+ "name": "punctuation.definition.string.end.nu"
139
+ }
140
+ },
141
+ "name": "string.unquoted.heredoc.escaped.nu",
142
+ "patterns": [
143
+ {
144
+ "include": "#escaped_char"
145
+ },
146
+ {
147
+ "include": "#interpolated_nu"
148
+ }
149
+ ]
150
+ },
151
+ {
152
+ "begin": "<<[-](.*)",
153
+ "beginCaptures": {
154
+ "0": {
155
+ "name": "punctuation.definition.string.begin.nu"
156
+ }
157
+ },
158
+ "end": "\\1",
159
+ "endCaptures": {
160
+ "0": {
161
+ "name": "punctuation.definition.string.end.nu"
162
+ }
163
+ },
164
+ "name": "string.unquoted.heredoc.unescaped.nu",
165
+ "patterns": [
166
+ {
167
+ "include": "#interpolated_nu"
168
+ }
169
+ ]
170
+ },
171
+ {
172
+ "begin": "(/)(?=[^ ])",
173
+ "beginCaptures": {
174
+ "1": {
175
+ "name": "punctuation.definition.regex.begin.nu"
176
+ }
177
+ },
178
+ "end": "/[isxlm]*",
179
+ "endCaptures": {
180
+ "0": {
181
+ "name": "punctuation.definition.regex.end.nu"
182
+ }
183
+ },
184
+ "name": "string.regexp.nu",
185
+ "patterns": [
186
+ {
187
+ "match": "\\\\/",
188
+ "name": "constant.character.escape.nu"
189
+ }
190
+ ]
191
+ },
192
+ {
193
+ "captures": {
194
+ "1": {
195
+ "name": "keyword.control.class.nu"
196
+ },
197
+ "2": {
198
+ "name": "entity.name.function.nu"
199
+ },
200
+ "5": {
201
+ "name": "keyword.control.is.nu"
202
+ },
203
+ "6": {
204
+ "name": "entity.name.function.nu"
205
+ }
206
+ },
207
+ "match": "\\b(class)\\s+((\\w|\\-|\\!|\\?)*)(\\s+(is)\\s+((\\w|\\-|\\!|\\?)*))?",
208
+ "name": "meta.class.nu"
209
+ },
210
+ {
211
+ "captures": {
212
+ "1": {
213
+ "name": "keyword.control.protocol.nu"
214
+ },
215
+ "2": {
216
+ "name": "entity.name.function.nu"
217
+ }
218
+ },
219
+ "match": "\\b(protocol)\\s+((\\w)*)",
220
+ "name": "meta.protocol.nu"
221
+ },
222
+ {
223
+ "captures": {
224
+ "1": {
225
+ "name": "keyword.control.import.nu"
226
+ },
227
+ "2": {
228
+ "name": "entity.name.type.class.nu"
229
+ }
230
+ },
231
+ "match": "\\((import)\\s+(\\w*)",
232
+ "name": "meta.import.nu"
233
+ },
234
+ {
235
+ "captures": {
236
+ "1": {
237
+ "name": "keyword.control.global.nu"
238
+ },
239
+ "2": {
240
+ "name": "variable.other.readwrite.global.nu"
241
+ }
242
+ },
243
+ "match": "\\((global)\\s+([\\w\\-]*)",
244
+ "name": "meta.global.nu"
245
+ },
246
+ {
247
+ "captures": {
248
+ "1": {
249
+ "name": "keyword.control.method.nu"
250
+ },
251
+ "2": {
252
+ "name": "storage.type.class.nu"
253
+ },
254
+ "3": {
255
+ "name": "entity.name.function.nu"
256
+ },
257
+ "4": {
258
+ "name": "keyword.control.is.nu"
259
+ }
260
+ },
261
+ "match": "\\(([+-]|[ic]method)\\s+\\((\\w+)\\)\\s+(\\w+)\\s+(is)",
262
+ "name": "meta.method.nu.zero-args"
263
+ },
264
+ {
265
+ "captures": {
266
+ "1": {
267
+ "name": "keyword.control.method.nu"
268
+ },
269
+ "2": {
270
+ "name": "storage.type.class.nu"
271
+ },
272
+ "3": {
273
+ "name": "entity.name.function.nu"
274
+ },
275
+ "4": {
276
+ "name": "storage.type.class.nu"
277
+ },
278
+ "5": {
279
+ "name": "variable.parameter.function.nu"
280
+ },
281
+ "6": {
282
+ "name": "keyword.control.is.nu"
283
+ }
284
+ },
285
+ "match": "\\(([+-]|[ic]method)\\s+\\((\\w+)\\)\\s+(\\w+\\:)\\s*\\((\\w+)\\)\\s+(\\w+)\\s+(is)",
286
+ "name": "meta.method.nu.one-arg"
287
+ },
288
+ {
289
+ "captures": {
290
+ "1": {
291
+ "name": "keyword.control.method.nu"
292
+ },
293
+ "2": {
294
+ "name": "storage.type.class.nu"
295
+ },
296
+ "3": {
297
+ "name": "entity.name.function.nu"
298
+ },
299
+ "4": {
300
+ "name": "storage.type.class.nu"
301
+ },
302
+ "5": {
303
+ "name": "variable.parameter.function.nu"
304
+ },
305
+ "6": {
306
+ "name": "entity.name.function.nu"
307
+ },
308
+ "7": {
309
+ "name": "storage.type.class.nu"
310
+ },
311
+ "8": {
312
+ "name": "variable.parameter.function.nu"
313
+ },
314
+ "9": {
315
+ "name": "keyword.control.is.nu"
316
+ }
317
+ },
318
+ "match": "\\(([+-]|[ic]method)\\s+\\((\\w+)\\)\\s+(\\w+\\:)\\s*\\((\\w+)\\)\\s+(\\w+)\\s+(\\w+\\:)\\s*\\((\\w+)\\)\\s+(\\w+)\\s+(is)",
319
+ "name": "meta.method.nu.two-args"
320
+ },
321
+ {
322
+ "captures": {
323
+ "1": {
324
+ "name": "keyword.control.method.nu"
325
+ },
326
+ "10": {
327
+ "name": "storage.type.class.nu"
328
+ },
329
+ "11": {
330
+ "name": "variable.parameter.function.nu"
331
+ },
332
+ "12": {
333
+ "name": "keyword.control.is.nu"
334
+ },
335
+ "2": {
336
+ "name": "storage.type.class.nu"
337
+ },
338
+ "3": {
339
+ "name": "entity.name.function.nu"
340
+ },
341
+ "4": {
342
+ "name": "storage.type.class.nu"
343
+ },
344
+ "5": {
345
+ "name": "variable.parameter.function.nu"
346
+ },
347
+ "6": {
348
+ "name": "entity.name.function.nu"
349
+ },
350
+ "7": {
351
+ "name": "storage.type.class.nu"
352
+ },
353
+ "8": {
354
+ "name": "variable.parameter.function.nu"
355
+ },
356
+ "9": {
357
+ "name": "entity.name.function.nu"
358
+ }
359
+ },
360
+ "match": "\\(([+-]|[ic]method)\\s+\\((\\w+)\\)\\s+(\\w+\\:)\\s*\\((\\w+)\\)\\s+(\\w+)\\s+(\\w+\\:)\\s*\\((\\w+)\\)\\s+(\\w+)\\s+(\\w+\\:)\\s*\\((\\w+)\\)\\s+(\\w+)\\s+(is)",
361
+ "name": "meta.method.nu.three-args"
362
+ },
363
+ {
364
+ "captures": {
365
+ "1": {
366
+ "name": "keyword.control.class.nu"
367
+ },
368
+ "2": {
369
+ "name": "entity.name.function.nu"
370
+ },
371
+ "5": {
372
+ "name": "keyword.control.class.nu"
373
+ },
374
+ "6": {
375
+ "name": "entity.name.function.nu"
376
+ }
377
+ },
378
+ "match": "\\b((ivar)\\s+((\\w|\\-|\\!|\\?)*)(\\s+(is)\\s+((\\w|\\-|\\!|\\?)*))?|ivars|ivar-accessors)",
379
+ "name": "meta.ivars.nu"
380
+ },
381
+ {
382
+ "captures": {
383
+ "1": {
384
+ "name": "keyword.control.function-type.nu"
385
+ },
386
+ "2": {
387
+ "name": "entity.name.function.nu"
388
+ }
389
+ },
390
+ "match": "\\b(function|macro|macro-0|macro-1)\\s+((\\w|\\-|\\!|\\?)*)",
391
+ "name": "meta.function.nu"
392
+ },
393
+ {
394
+ "captures": {
395
+ "1": {
396
+ "name": "keyword.control.task.nu"
397
+ },
398
+ "2": {
399
+ "name": "entity.name.task.nu"
400
+ },
401
+ "3": {
402
+ "name": "keyword.control.colon.nu"
403
+ },
404
+ "4": {
405
+ "name": "storage.description.task.nu"
406
+ },
407
+ "5": {
408
+ "name": "keyword.control.is.nu"
409
+ }
410
+ },
411
+ "match": "(task)\\s+(\\\"\\w+\")\\s?(:?)\\s?(\\\"[\\w\\s]+\\\")?\\s+(is)",
412
+ "name": "meta.nukefile.task.nu"
413
+ },
414
+ {
415
+ "captures": {
416
+ "1": {
417
+ "name": "keyword.control.task.nu"
418
+ },
419
+ "2": {
420
+ "name": "entity.name.task.nu"
421
+ },
422
+ "3": {
423
+ "name": "keyword.control.colon.nu"
424
+ },
425
+ "4": {
426
+ "name": "storage.description.task.nu"
427
+ },
428
+ "5": {
429
+ "name": "keyword.control.arrow.nu"
430
+ },
431
+ "6": {
432
+ "name": "support.dependency.task.nu"
433
+ },
434
+ "7": {
435
+ "name": "keyword.control.is.nu"
436
+ }
437
+ },
438
+ "match": "(task)\\s+(\\\"\\w+\\\")\\s?(:)?\\s?(\\\"[\\w\\s]+\\\")?\\s?(=>?)\\s?(\\\"[\\\"\\w\\s]+\\\")?\\s+(is)",
439
+ "name": "meta.nukefile.task.with-dependencies.nu"
440
+ },
441
+ {
442
+ "captures": {
443
+ "1": {
444
+ "name": "keyword.control.task.nu"
445
+ },
446
+ "2": {
447
+ "name": "entity.name.task.nu"
448
+ },
449
+ "3": {
450
+ "name": "keyword.control.arrow.nu"
451
+ },
452
+ "4": {
453
+ "name": "support.name.task.nu"
454
+ },
455
+ "5": {
456
+ "name": "keyword.control.is.nu"
457
+ }
458
+ },
459
+ "match": "(task)\\s+(\\\"default\\\")\\s+(=>)\\s+(\\\"\\w+\\\")",
460
+ "name": "meta.nukefile.default.task.nu"
461
+ },
462
+ {
463
+ "match": "\\b(let|set|cond|case|do|loop|until|while|for|break|continue|if|else|elseif|then|unless|try|throw|catch|array|dict|list|return)\\b",
464
+ "name": "keyword.control.nu"
465
+ },
466
+ {
467
+ "match": "\\b(eq|neq|and|or|synchronized|not)\\b",
468
+ "name": "keyword.operator.nu"
469
+ },
470
+ {
471
+ "match": "[/*+-/&|><=!`@]",
472
+ "name": "keyword.operator.symbolic.nu"
473
+ },
474
+ {
475
+ "match": "\\b(append|atom|cons|car|cdr|context|eval|head|quote|parse|progn|send|tail|load|system|puts|help|version|beep|first|rest|macrox|print)\\b",
476
+ "name": "support.function.nu"
477
+ },
478
+ {
479
+ "match": "\\b(assert_equal|assert_not_equal|assert_throws|assert_in_delta|assert_true|assert_false|assert_less_than|assert_greater_than)\\b",
480
+ "name": "support.function.testing.nu"
481
+ },
482
+ {
483
+ "match": "\\b(task|application-tasks|bundle-tasks|compilation-tasks|dylib-tasks|framework-tasks|library-tasks)\\b",
484
+ "name": "keyword.nukefile.nu"
485
+ }
486
+ ],
487
+ "repository": {
488
+ "escaped_char": {
489
+ "match": "\\\\([0-7]{3}|x\\h{2}|u\\h{4}|.)",
490
+ "name": "constant.character.escape.nu"
491
+ },
492
+ "interpolated_nu": {
493
+ "patterns": [
494
+ {
495
+ "captures": {
496
+ "0": {
497
+ "name": "punctuation.section.embedded.nu"
498
+ },
499
+ "1": {
500
+ "name": "source.nu.embedded.source.empty"
501
+ }
502
+ },
503
+ "match": "#\\{(\\})",
504
+ "name": "source.nu.embedded.source"
505
+ },
506
+ {
507
+ "begin": "#\\{",
508
+ "captures": {
509
+ "0": {
510
+ "name": "punctuation.section.embedded.nu"
511
+ }
512
+ },
513
+ "end": "\\}",
514
+ "name": "source.nu.embedded.source",
515
+ "patterns": [
516
+ {
517
+ "include": "$self"
518
+ }
519
+ ]
520
+ }
521
+ ]
522
+ }
523
+ },
524
+ "scopeName": "source.nu",
525
+ "uuid": "F8A96494-C89A-4CA4-A2D3-6A5A4ED56FD7"
526
+ }