github-linguist 5.0.5 → 5.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/hint.haskell.json +11 -5
  3. data/grammars/hint.message.haskell.json +11 -5
  4. data/grammars/hint.type.haskell.json +11 -5
  5. data/grammars/source.SASLog.json +1 -1
  6. data/grammars/source.clarion.json +1 -1
  7. data/grammars/source.clean.json +4 -4
  8. data/grammars/source.click.json +19 -8
  9. data/grammars/source.clojure.json +8 -6
  10. data/grammars/source.cobol.json +16 -23
  11. data/grammars/source.coffee.json +1 -1
  12. data/grammars/source.csound-document.json +0 -5
  13. data/grammars/source.csound-score.json +6 -2
  14. data/grammars/source.csound.json +77 -14
  15. data/grammars/source.css.less.json +1 -1
  16. data/grammars/source.ditroff.desc.json +379 -0
  17. data/grammars/source.ditroff.json +545 -0
  18. data/grammars/source.elixir.json +44 -2
  19. data/grammars/source.fsharp.json +20 -93
  20. data/grammars/source.haskell.json +13 -6
  21. data/grammars/source.hlsl.json +217 -0
  22. data/grammars/source.js.json +34 -16
  23. data/grammars/source.julia.json +4 -4
  24. data/grammars/source.meson.json +167 -0
  25. data/grammars/source.p4.json +117 -0
  26. data/grammars/source.perl6fe.json +101 -18
  27. data/grammars/source.python.json +7 -7
  28. data/grammars/source.quoting.perl6fe.json +101 -0
  29. data/grammars/source.regexp.extended.json +9 -5
  30. data/grammars/source.regexp.json +12 -21
  31. data/grammars/source.rust.json +33 -3
  32. data/grammars/source.sas.json +2 -2
  33. data/grammars/source.shaderlab.json +174 -0
  34. data/grammars/source.terraform.json +196 -0
  35. data/grammars/source.turing.json +1 -1
  36. data/grammars/source.viml.json +1 -1
  37. data/grammars/source.yaml.json +3 -1
  38. data/grammars/text.html.php.blade.json +10 -7
  39. data/grammars/text.restructuredtext.json +57 -6
  40. data/grammars/text.roff.json +1 -1
  41. data/grammars/text.slim.json +1 -1
  42. data/grammars/text.tex.latex.haskell.json +11 -5
  43. data/lib/linguist/documentation.yml +1 -1
  44. data/lib/linguist/heuristics.rb +8 -0
  45. data/lib/linguist/languages.json +1 -1
  46. data/lib/linguist/languages.yml +20 -2
  47. data/lib/linguist/samples.json +1253 -68
  48. data/lib/linguist/version.rb +1 -1
  49. metadata +9 -3
  50. data/grammars/source.regexp.comment.json +0 -11
@@ -25,8 +25,8 @@
25
25
  },
26
26
  {
27
27
  "name": "meta.p-symbol.csound-score",
28
- "match": "((?:[nN]|[pP])[pP])(\\d+)",
29
- "beginCaptures": {
28
+ "match": "([nNpP][pP])(\\d+)",
29
+ "captures": {
30
30
  "1": {
31
31
  "name": "keyword.control.csound-score"
32
32
  },
@@ -90,6 +90,10 @@
90
90
  {
91
91
  "include": "source.csound#numbers"
92
92
  },
93
+ {
94
+ "name": "keyword.operator.csound-score",
95
+ "match": "[!+\\-*/^%&|<>#~.]"
96
+ },
93
97
  {
94
98
  "name": "string.quoted.csound-score",
95
99
  "begin": "\"",
@@ -123,6 +123,16 @@
123
123
  }
124
124
  ],
125
125
  "repository": {
126
+ "bracedStringContents": {
127
+ "patterns": [
128
+ {
129
+ "include": "#escapeSequences"
130
+ },
131
+ {
132
+ "include": "#formatSpecifiers"
133
+ }
134
+ ]
135
+ },
126
136
  "comments": {
127
137
  "patterns": [
128
138
  {
@@ -222,7 +232,7 @@
222
232
  "name": "entity.name.function.preprocessor.csound"
223
233
  },
224
234
  "2": {
225
- "name": "entity.invalid.illegal.preprocessor.csound"
235
+ "name": "invalid.illegal.csound"
226
236
  }
227
237
  }
228
238
  }
@@ -241,7 +251,7 @@
241
251
  },
242
252
  "endCaptures": {
243
253
  "1": {
244
- "name": "entity.invalid.illegal.preprocessor.csound"
254
+ "name": "invalid.illegal.csound"
245
255
  },
246
256
  "2": {
247
257
  "name": "constant.character.escape.csound"
@@ -252,7 +262,7 @@
252
262
  "include": "#macroParameterValueParenthetical"
253
263
  },
254
264
  {
255
- "name": "entity.invalid.illegal.preprocessor.csound",
265
+ "name": "invalid.illegal.csound",
256
266
  "match": "[#']"
257
267
  },
258
268
  {
@@ -274,6 +284,58 @@
274
284
  }
275
285
  },
276
286
  "patterns": [
287
+ {
288
+ "name": "string.quoted.csound",
289
+ "begin": "\"",
290
+ "end": "\"",
291
+ "beginCaptures": {
292
+ "0": {
293
+ "name": "punctuation.definition.string.begin.csound"
294
+ }
295
+ },
296
+ "endCaptures": {
297
+ "0": {
298
+ "name": "punctuation.definition.string.end.csound"
299
+ }
300
+ },
301
+ "patterns": [
302
+ {
303
+ "match": "(\\))|(\\\\\\))",
304
+ "captures": {
305
+ "1": {
306
+ "name": "invalid.illegal.csound"
307
+ },
308
+ "2": {
309
+ "name": "constant.character.escape.csound"
310
+ }
311
+ }
312
+ },
313
+ {
314
+ "include": "#quotedStringContents"
315
+ }
316
+ ]
317
+ },
318
+ {
319
+ "name": "string.braced.csound",
320
+ "begin": "\\{\\{",
321
+ "end": "\\}\\}",
322
+ "patterns": [
323
+ {
324
+ "match": "(\\))|(\\\\\\))",
325
+ "captures": {
326
+ "1": {
327
+ "name": "invalid.illegal.csound"
328
+ },
329
+ "2": {
330
+ "name": "constant.character.escape.csound"
331
+ }
332
+ }
333
+ },
334
+ {
335
+ "include": "#bracedStringContents"
336
+ }
337
+ ]
338
+ },
277
339
  {
278
340
  "include": "#macroParameterValueParenthetical"
279
341
  },
@@ -338,10 +400,7 @@
338
400
  "end": "\\}\\}",
339
401
  "patterns": [
340
402
  {
341
- "include": "#escapeSequences"
342
- },
343
- {
344
- "include": "#formatSpecifiers"
403
+ "include": "#bracedStringContents"
345
404
  }
346
405
  ]
347
406
  },
@@ -652,6 +711,16 @@
652
711
  }
653
712
  ]
654
713
  },
714
+ "quotedStringContents": {
715
+ "patterns": [
716
+ {
717
+ "include": "#macroUses"
718
+ },
719
+ {
720
+ "include": "#bracedStringContents"
721
+ }
722
+ ]
723
+ },
655
724
  "quotedStrings": {
656
725
  "patterns": [
657
726
  {
@@ -670,13 +739,7 @@
670
739
  },
671
740
  "patterns": [
672
741
  {
673
- "include": "#macroUses"
674
- },
675
- {
676
- "include": "#escapeSequences"
677
- },
678
- {
679
- "include": "#formatSpecifiers"
742
+ "include": "#quotedStringContents"
680
743
  }
681
744
  ]
682
745
  }
@@ -287,7 +287,7 @@
287
287
  "name": "punctuation.definition.variable.less"
288
288
  }
289
289
  },
290
- "match": "@[a-zA-Z0-9_-][\\w-]*(?=\\s*)",
290
+ "match": "(?:@|\\-\\-)[a-zA-Z0-9_-][\\w-]*(?=\\s*)",
291
291
  "name": "variable.other.less"
292
292
  },
293
293
  {
@@ -0,0 +1,379 @@
1
+ {
2
+ "name": "Roff (Device Description)",
3
+ "scopeName": "source.ditroff.desc",
4
+ "fileTypes": [
5
+ "DESC",
6
+ "DESC.in",
7
+ "DESC.proto",
8
+ "R.proto",
9
+ "text.enc",
10
+ "devps/download",
11
+ "devpdf/download",
12
+ "devpdf/Foundry"
13
+ ],
14
+ "firstLineMatch": "# This file has been generated with GNU afmtodit",
15
+ "patterns": [
16
+ {
17
+ "include": "#main"
18
+ }
19
+ ],
20
+ "repository": {
21
+ "main": {
22
+ "patterns": [
23
+ {
24
+ "include": "#foundry"
25
+ },
26
+ {
27
+ "include": "#comment"
28
+ },
29
+ {
30
+ "include": "#charset"
31
+ },
32
+ {
33
+ "include": "#fields"
34
+ },
35
+ {
36
+ "include": "#kernpairs"
37
+ },
38
+ {
39
+ "include": "#fontPath"
40
+ }
41
+ ]
42
+ },
43
+ "charset": {
44
+ "name": "meta.charset.ditroff.desc",
45
+ "begin": "^(charset)\\s*$",
46
+ "end": "^(?=kernpairs|\\s*$)",
47
+ "beginCaptures": {
48
+ "1": {
49
+ "name": "keyword.control.section.ditroff.desc"
50
+ }
51
+ },
52
+ "patterns": [
53
+ {
54
+ "name": "meta.glyph.ditroff.desc",
55
+ "match": "(?x) ^\n\\s* ((---)|\\S+) # Name\n\\s+ ([-\\d]+(?:,[-\\d]+){0,5}) # Metrics\n\\s+ (\\d) # Glyph type\n\\s+ (0[Xx][0-9A-Fa-f]+|\\d+) # Code\n(?:\\s+(?!--)(\\S+))? # Entity name",
56
+ "captures": {
57
+ "1": {
58
+ "name": "entity.type.var.ditroff.desc"
59
+ },
60
+ "2": {
61
+ "name": "punctuation.definition.unnamed.glyph.ditroff.desc"
62
+ },
63
+ "3": {
64
+ "patterns": [
65
+ {
66
+ "match": "-?\\d+",
67
+ "name": "constant.numeric.integer.ditroff.desc"
68
+ },
69
+ {
70
+ "match": ",",
71
+ "name": "punctuation.delimiter.comma.ditroff.desc"
72
+ }
73
+ ]
74
+ },
75
+ "4": {
76
+ "name": "constant.numeric.integer.ditroff.desc"
77
+ },
78
+ "5": {
79
+ "name": "constant.numeric.integer.ditroff.desc"
80
+ },
81
+ "6": {
82
+ "name": "variable.other.ditroff.desc"
83
+ }
84
+ }
85
+ },
86
+ {
87
+ "name": "meta.glyph.alias.ditroff.desc",
88
+ "match": "^\\s*(\\S+)\\s+(\")(?=\\s|$)",
89
+ "captures": {
90
+ "1": {
91
+ "name": "entity.type.var.ditroff.desc"
92
+ },
93
+ "2": {
94
+ "name": "keyword.operator.ditroff.desc"
95
+ }
96
+ }
97
+ },
98
+ {
99
+ "name": "comment.line.double-dash.ditroff.desc",
100
+ "begin": "(?<=\\s)--(?!-)",
101
+ "end": "(?=$)",
102
+ "beginCaptures": {
103
+ "0": {
104
+ "name": "punctuation.definition.comment.ditroff.desc"
105
+ }
106
+ }
107
+ },
108
+ {
109
+ "include": "#comment"
110
+ }
111
+ ]
112
+ },
113
+ "comment": {
114
+ "name": "comment.line.number-sign.ditroff.desc",
115
+ "begin": "#",
116
+ "end": "$",
117
+ "beginCaptures": {
118
+ "0": {
119
+ "name": "punctuation.definition.comment.ditroff.desc"
120
+ }
121
+ }
122
+ },
123
+ "fields": {
124
+ "patterns": [
125
+ {
126
+ "name": "meta.$1-list.ditroff.desc",
127
+ "begin": "^\\s*(ligatures|sizes)(?=\\s)",
128
+ "end": "(?=$|#)",
129
+ "beginCaptures": {
130
+ "1": {
131
+ "name": "entity.type.var.ditroff.desc"
132
+ }
133
+ },
134
+ "patterns": [
135
+ {
136
+ "name": "constant.numeric.range.ditroff.desc",
137
+ "match": "\\d+(-)\\d+",
138
+ "captures": {
139
+ "1": {
140
+ "name": "punctuation.separator.range.dash.ditroff.desc"
141
+ }
142
+ }
143
+ },
144
+ {
145
+ "name": "variable.parameter.ditroff.desc",
146
+ "match": "\\S{2,}"
147
+ },
148
+ {
149
+ "name": "punctuation.terminator.statement.ditroff.desc",
150
+ "match": "(?<=\\s)0(?=\\s*$)"
151
+ }
152
+ ]
153
+ },
154
+ {
155
+ "name": "meta.papersize.ditroff.desc",
156
+ "begin": "^\\s*(papersize)(?=\\s)",
157
+ "end": "(?=$|#)",
158
+ "beginCaptures": {
159
+ "1": {
160
+ "name": "entity.type.var.ditroff.desc"
161
+ }
162
+ },
163
+ "patterns": [
164
+ {
165
+ "name": "support.constant.papersize.ditroff.desc",
166
+ "match": "(?i)(?:[A-D][0-7]|DL|letter|legal|tabloid|ledger|statement|executive|com10|monarch)(?=$|[\\s#])"
167
+ },
168
+ {
169
+ "name": "meta.custom-papersize.ditroff.desc",
170
+ "match": "(?<=\\s)([\\d.]+)([icpP])(,)([\\d.]+)([icpP])(?=\\s|$)",
171
+ "captures": {
172
+ "1": {
173
+ "name": "constant.numeric.ditroff.desc"
174
+ },
175
+ "2": {
176
+ "name": "keyword.other.unit.ditroff.desc"
177
+ },
178
+ "3": {
179
+ "name": "punctuation.delimiter.comma.ditroff.desc"
180
+ },
181
+ "4": {
182
+ "name": "constant.numeric.ditroff.desc"
183
+ },
184
+ "5": {
185
+ "name": "keyword.other.unit.ditroff.desc"
186
+ }
187
+ }
188
+ }
189
+ ]
190
+ },
191
+ {
192
+ "begin": "(?x)^\\s* (biggestfont|broken|checksum|designsize|encoding|family|fonts|hor|image_generator |internalname|name|orientation|paper(?:length|width)|pass_filenames|postpro|prepro |print|res|sizescale|slant|spacewidth|spare\\d|special|styles|tcommand|unicode |unitwidth|unscaled_charwidths|use_charnames_in_special|vert|X11|(?:lbp|pcl)[a-z]+) (?=\\s)",
193
+ "end": "(?=$|#)",
194
+ "beginCaptures": {
195
+ "1": {
196
+ "name": "entity.type.var.ditroff.desc"
197
+ }
198
+ },
199
+ "patterns": [
200
+ {
201
+ "name": "constant.numeric.ditroff.desc",
202
+ "match": "-?[\\d.]+(?=\\s|$)"
203
+ },
204
+ {
205
+ "name": "variable.parameter.ditroff.desc",
206
+ "match": "\\S+"
207
+ }
208
+ ]
209
+ }
210
+ ]
211
+ },
212
+ "fontPath": {
213
+ "match": "^(?:(\\w+)?\\t+)?(\\S+)\\t+(\\*)?(\\S+(?:\\.pf[ab]|[\\/]Resource[\\/]Font[\\/]\\S+))\\s*$",
214
+ "captures": {
215
+ "1": {
216
+ "name": "variable.other.foundry.ditroff.desc"
217
+ },
218
+ "2": {
219
+ "name": "entity.name.var.ditroff.desc"
220
+ },
221
+ "3": {
222
+ "name": "keyword.operator.globstar.ditroff.desc"
223
+ },
224
+ "4": {
225
+ "name": "string.quoted.double.filename.ditroff.desc"
226
+ }
227
+ }
228
+ },
229
+ "foundry": {
230
+ "name": "meta.foundry-data.ditroff.desc",
231
+ "begin": "^(#)Foundry\\|Name\\|Searchpath\\s*$",
232
+ "end": "(?=A)B",
233
+ "beginCaptures": {
234
+ "0": {
235
+ "name": "comment.line.number-sign.ditroff.desc"
236
+ },
237
+ "1": {
238
+ "name": "punctuation.definition.comment.ditroff.desc"
239
+ }
240
+ },
241
+ "patterns": [
242
+ {
243
+ "include": "#comment"
244
+ },
245
+ {
246
+ "match": "^([^\\s|]+)(\\|)([YN])(\\|)([rins]+)?(\\|)(?:([.\\w]*)(\\|)([.\\w]*)(?=\\|))?",
247
+ "captures": {
248
+ "1": {
249
+ "name": "entity.name.var.ditroff.desc"
250
+ },
251
+ "2": {
252
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
253
+ },
254
+ "3": {
255
+ "name": "constant.boolean.is-base64.ditroff.desc"
256
+ },
257
+ "4": {
258
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
259
+ },
260
+ "5": {
261
+ "name": "constant.language.flags.ditroff.desc"
262
+ },
263
+ "6": {
264
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
265
+ },
266
+ "7": {
267
+ "name": "variable.parameter.ditroff.desc"
268
+ },
269
+ "8": {
270
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
271
+ },
272
+ "9": {
273
+ "name": "variable.parameter.ditroff.desc"
274
+ }
275
+ }
276
+ },
277
+ {
278
+ "match": "^(foundry)(\\|)(\\w*)(\\|)((\\()\\w+(\\)))?([^|#]+)",
279
+ "captures": {
280
+ "1": {
281
+ "name": "storage.type.foundry.ditroff.desc"
282
+ },
283
+ "2": {
284
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
285
+ },
286
+ "3": {
287
+ "name": "variable.other.foundry.ditroff.desc"
288
+ },
289
+ "4": {
290
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
291
+ },
292
+ "5": {
293
+ "name": "string.interpolated.ditroff.desc"
294
+ },
295
+ "6": {
296
+ "name": "punctuation.definition.arguments.begin.ditroff.desc"
297
+ },
298
+ "7": {
299
+ "name": "punctuation.definition.arguments.end.ditroff.desc"
300
+ },
301
+ "8": {
302
+ "name": "string.quoted.double.filename.ditroff.desc",
303
+ "patterns": [
304
+ {
305
+ "match": ":",
306
+ "name": "punctuation.separator.key-value.colon.ditroff.desc"
307
+ }
308
+ ]
309
+ }
310
+ }
311
+ },
312
+ {
313
+ "name": "meta.foundry-font.ditroff.desc",
314
+ "match": "(?<=\\|)(?:([^|!]+\\.pf[ab])|([^|!]+)(!)([^|!]+\\.pf[ab]))$",
315
+ "captures": {
316
+ "1": {
317
+ "name": "string.quoted.double.filename.ditroff.desc"
318
+ },
319
+ "2": {
320
+ "name": "variable.parameter.ditroff.desc"
321
+ },
322
+ "3": {
323
+ "name": "punctuation.separator.fontname.ditroff.desc"
324
+ },
325
+ "4": {
326
+ "name": "string.quoted.double.filename.ditroff.desc"
327
+ }
328
+ }
329
+ },
330
+ {
331
+ "name": "meta.afmtodit-flag.ditroff.desc",
332
+ "match": "^([a-z])(=)(?=-)([^#]+)(?=$|#)",
333
+ "captures": {
334
+ "1": {
335
+ "name": "variable.other.ditroff.desc"
336
+ },
337
+ "2": {
338
+ "name": "keyword.operator.assignment.ditroff.desc"
339
+ },
340
+ "3": {
341
+ "name": "constant.other.ditroff.desc"
342
+ }
343
+ }
344
+ },
345
+ {
346
+ "match": "\\|",
347
+ "name": "punctuation.delimiter.pipe.ditroff.desc"
348
+ }
349
+ ]
350
+ },
351
+ "kernpairs": {
352
+ "name": "meta.kernpairs.ditroff.desc",
353
+ "begin": "^(kernpairs)\\s*$",
354
+ "end": "^(?=charset|\\s*$)",
355
+ "beginCaptures": {
356
+ "1": {
357
+ "name": "keyword.control.section.ditroff.desc"
358
+ }
359
+ },
360
+ "patterns": [
361
+ {
362
+ "name": "meta.kerning-pair.ditroff.desc",
363
+ "match": "^\\s*(\\S+)\\s+(\\S+)\\s+(-?\\d+)",
364
+ "captures": {
365
+ "1": {
366
+ "name": "entity.name.var.ditroff.desc"
367
+ },
368
+ "2": {
369
+ "name": "entity.name.var.ditroff.desc"
370
+ },
371
+ "3": {
372
+ "name": "constant.numeric.integer.ditroff.desc"
373
+ }
374
+ }
375
+ }
376
+ ]
377
+ }
378
+ }
379
+ }