github-linguist 7.0.0 → 7.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/source.abap.json +51 -25
  3. data/grammars/source.afm.json +22 -14
  4. data/grammars/source.ahk.json +3 -3
  5. data/grammars/source.angelscript.json +2 -2
  6. data/grammars/source.ballerina.json +26 -2
  7. data/grammars/source.clarion.json +6 -6
  8. data/grammars/source.csound.json +1 -1
  9. data/grammars/source.elixir.json +2 -2
  10. data/grammars/source.gfm.json +21 -0
  11. data/grammars/source.haproxy-config.json +100 -0
  12. data/grammars/source.jison.json +1 -1
  13. data/grammars/source.js.css.json +328 -0
  14. data/grammars/source.js.json +1 -1
  15. data/grammars/source.js.jsx.json +1030 -1686
  16. data/grammars/source.julia.json +3 -7
  17. data/grammars/source.kotlin.json +355 -487
  18. data/grammars/source.nim.json +5 -9
  19. data/grammars/source.prolog.json +1 -1
  20. data/grammars/source.python.json +52 -18
  21. data/grammars/source.rascal.json +1 -0
  22. data/grammars/source.ruby.json +28 -28
  23. data/grammars/source.sqf.json +1 -1
  24. data/grammars/source.toml.json +79 -2
  25. data/grammars/source.ts.json +85 -35
  26. data/grammars/source.tsx.json +85 -35
  27. data/grammars/source.yara.json +1 -1
  28. data/grammars/text.eml.basic.json +283 -0
  29. data/grammars/text.html.cshtml.json +356 -0
  30. data/grammars/text.roff.json +1 -1
  31. data/grammars/version +1 -1
  32. data/lib/linguist/VERSION +1 -1
  33. data/lib/linguist/documentation.yml +1 -0
  34. data/lib/linguist/generated.rb +24 -0
  35. data/lib/linguist/heuristics.yml +21 -0
  36. data/lib/linguist/language.rb +7 -0
  37. data/lib/linguist/languages.json +1 -1
  38. data/lib/linguist/languages.yml +61 -13
  39. data/lib/linguist/samples.json +2270 -797
  40. data/lib/linguist/samples.json.orig +175625 -0
  41. metadata +7 -3
  42. data/grammars/source.regexp.babel.json +0 -200
@@ -86,7 +86,7 @@
86
86
  "patterns": [
87
87
  {
88
88
  "name": "constant.character.escape.yara",
89
- "match": "\\\\(\\\\|[abefnprtv'\"?]|[0-3]\\d{,2}|[4-7]\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})"
89
+ "match": "\\\\(\\\\|[abefnprtv'\"?]|[0-3]\\d{0,2}|[4-7]\\d?|x[a-fA-F0-9]{0,2}|u[a-fA-F0-9]{0,4}|U[a-fA-F0-9]{0,8})"
90
90
  },
91
91
  {
92
92
  "name": "invalid.illegal.unknown-escape.yara",
@@ -0,0 +1,283 @@
1
+ {
2
+ "name": "Email (EML)",
3
+ "scopeName": "text.eml.basic",
4
+ "patterns": [
5
+ {
6
+ "include": "#addresses"
7
+ },
8
+ {
9
+ "include": "#headers"
10
+ },
11
+ {
12
+ "include": "#boundary"
13
+ },
14
+ {
15
+ "include": "#encodedWord"
16
+ },
17
+ {
18
+ "include": "#encodingTypes"
19
+ },
20
+ {
21
+ "include": "#uuid"
22
+ },
23
+ {
24
+ "include": "#base64"
25
+ },
26
+ {
27
+ "include": "#html"
28
+ },
29
+ {
30
+ "include": "#quote"
31
+ },
32
+ {
33
+ "include": "#ipv4"
34
+ },
35
+ {
36
+ "include": "#ipv6"
37
+ }
38
+ ],
39
+ "repository": {
40
+ "addresses": {
41
+ "patterns": [
42
+ {
43
+ "name": "meta.email-address.eml",
44
+ "match": "(?x)\n((\") [-a-zA-Z0-9.\\x20+_]+ (\")) \\s*\n((\u003c) [-a-zA-Z0-9.]+@[-a-zA-Z0-9.]+ (\u003e))",
45
+ "captures": {
46
+ "1": {
47
+ "name": "string.quoted.double.author-name.eml"
48
+ },
49
+ "2": {
50
+ "name": "punctuation.definition.string.begin.eml"
51
+ },
52
+ "3": {
53
+ "name": "punctuation.definition.string.end.eml"
54
+ },
55
+ "4": {
56
+ "name": "constant.other.author-address.eml"
57
+ },
58
+ "5": {
59
+ "name": "punctuation.definition.tag.begin.eml"
60
+ },
61
+ "6": {
62
+ "name": "punctuation.definition.tag.end.eml"
63
+ }
64
+ }
65
+ },
66
+ {
67
+ "name": "meta.email-address.eml",
68
+ "match": "(?x)\n((\") [-a-zA-Z0-9.\\ +_]+ (\")) \\s*\n((\u0026lt;) [-a-zA-Z0-9.]+@[-a-zA-Z0-9.]+ (\u0026gt;))",
69
+ "captures": {
70
+ "1": {
71
+ "name": "string.quoted.double.author-name.eml"
72
+ },
73
+ "2": {
74
+ "name": "punctuation.definition.string.begin.eml"
75
+ },
76
+ "3": {
77
+ "name": "punctuation.definition.string.end.eml"
78
+ },
79
+ "4": {
80
+ "name": "constant.other.author-address.eml"
81
+ },
82
+ "5": {
83
+ "name": "punctuation.definition.tag.begin.eml"
84
+ },
85
+ "6": {
86
+ "name": "punctuation.definition.tag.end.eml"
87
+ }
88
+ }
89
+ },
90
+ {
91
+ "name": "meta.email-address.eml",
92
+ "match": "(?x)\n([-a-zZ-Z0-9.+_]+) \\s*\n(\u003c)([-a-zA-Z0-9.]+@[-a-zA-Z0-9.]+)(\u003e)",
93
+ "captures": {
94
+ "1": {
95
+ "name": "string.unquoted.author-name.eml"
96
+ },
97
+ "2": {
98
+ "name": "punctuation.definition.tag.begin.eml"
99
+ },
100
+ "3": {
101
+ "name": "constant.other.author-address.eml"
102
+ },
103
+ "4": {
104
+ "name": "punctuation.definition.tag.end.eml"
105
+ }
106
+ }
107
+ },
108
+ {
109
+ "name": "meta.email-address.eml",
110
+ "match": "(?x)\n([-a-zZ-Z0-9.+_]+) \\s*\n(\u0026lt;)([-a-zA-Z0-9.]+@[-a-zA-Z0-9.]+)(\u0026gt;)",
111
+ "captures": {
112
+ "1": {
113
+ "name": "string.unquoted.author-name.eml"
114
+ },
115
+ "2": {
116
+ "name": "punctuation.definition.tag.begin.eml"
117
+ },
118
+ "3": {
119
+ "name": "constant.other.author-address.eml"
120
+ },
121
+ "4": {
122
+ "name": "punctuation.definition.tag.end.eml"
123
+ }
124
+ }
125
+ },
126
+ {
127
+ "match": "(\u0026lt;)([-a-zA-Z0-9.+_]+@[-a-zA-Z0-9.]+)(\u0026gt;)",
128
+ "captures": {
129
+ "1": {
130
+ "name": "punctuation.definition.tag.begin.eml"
131
+ },
132
+ "2": {
133
+ "name": "constant.other.author-address.eml"
134
+ },
135
+ "3": {
136
+ "name": "punctuation.definition.tag.end.eml"
137
+ }
138
+ }
139
+ },
140
+ {
141
+ "match": "(\u003c)([-a-zA-Z0-9.+_]+@[-a-zA-Z0-9.]+)(\u003e)",
142
+ "captures": {
143
+ "1": {
144
+ "name": "punctuation.definition.tag.begin.eml"
145
+ },
146
+ "2": {
147
+ "name": "constant.other.author-address.eml"
148
+ },
149
+ "3": {
150
+ "name": "punctuation.definition.tag.end.eml"
151
+ }
152
+ }
153
+ }
154
+ ]
155
+ },
156
+ "base64": {
157
+ "name": "text.eml.encoded",
158
+ "match": "(?x) ^\n(?:[A-Za-z0-9+/]{4})+\n(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"
159
+ },
160
+ "boundary": {
161
+ "name": "meta.multi-part.chunk.eml",
162
+ "begin": "^(--(?!\u003e).*)",
163
+ "end": "^(?=\\1)",
164
+ "patterns": [
165
+ {
166
+ "name": "meta.embedded.html.eml",
167
+ "contentName": "meta.embedded.html",
168
+ "begin": "^(?i)(Content-Type:)\\s*(text/html(?=[\\s;+]).*)",
169
+ "end": "^(?=--(?!\u003e))",
170
+ "patterns": [
171
+ {
172
+ "include": "#boundaryHeaders"
173
+ },
174
+ {
175
+ "include": "text.html.basic"
176
+ }
177
+ ],
178
+ "beginCaptures": {
179
+ "1": {
180
+ "patterns": [
181
+ {
182
+ "include": "#headers"
183
+ }
184
+ ]
185
+ },
186
+ "2": {
187
+ "patterns": [
188
+ {
189
+ "include": "$self"
190
+ }
191
+ ]
192
+ }
193
+ }
194
+ },
195
+ {
196
+ "name": "meta.embedded.text.eml",
197
+ "contentName": "markup.raw.html",
198
+ "begin": "^(?i)(Content-Type:)\\s*((?!text/html(?=[\\s;+]))\\S+.*)",
199
+ "end": "^(?=--(?!\u003e))",
200
+ "patterns": [
201
+ {
202
+ "include": "#boundaryHeaders"
203
+ }
204
+ ],
205
+ "beginCaptures": {
206
+ "1": {
207
+ "patterns": [
208
+ {
209
+ "include": "#headers"
210
+ }
211
+ ]
212
+ },
213
+ "2": {
214
+ "patterns": [
215
+ {
216
+ "include": "$self"
217
+ }
218
+ ]
219
+ }
220
+ }
221
+ },
222
+ {
223
+ "include": "$self"
224
+ }
225
+ ],
226
+ "beginCaptures": {
227
+ "0": {
228
+ "name": "keyword.control.boundary.eml"
229
+ }
230
+ }
231
+ },
232
+ "boundaryHeaders": {
233
+ "begin": "\\G",
234
+ "end": "^(?=\\s*)$",
235
+ "patterns": [
236
+ {
237
+ "include": "$self"
238
+ }
239
+ ]
240
+ },
241
+ "encodedWord": {
242
+ "name": "keyword.control.encoded-word.eml",
243
+ "match": "(?i)=\\?utf-8\\?B\\?(.*)\\?="
244
+ },
245
+ "encodingTypes": {
246
+ "name": "keyword.operator.special.eml",
247
+ "match": "(?xi)\n( base64\n| multipart\\/.*:\n| image\\/.*;\n| text\\/.*\n| boundary=.*\n)"
248
+ },
249
+ "headers": {
250
+ "match": "(?xi) ^\n( archived-at\n| cc\n| content-type\n| date\n| envelope-from\n| from\n| in-reply-to\n| mail-from\n| message-id\n| precedence\n| references\n| reply-to\n| return-path\n| sender\n| subject\n| to\n| x-cmae-virus\n| \\d*zendesk\\d*\n| [^:]*resent-[^:]*\n| x-[^:]*\n| [A-Z][a-zA-Z0-9-]*\n) (:)",
251
+ "captures": {
252
+ "1": {
253
+ "name": "variable.header.name.eml"
254
+ },
255
+ "2": {
256
+ "name": "punctuation.separator.dictionary.key-value.colon.eml"
257
+ }
258
+ }
259
+ },
260
+ "ipv4": {
261
+ "name": "variable.other.ipv4.eml",
262
+ "match": "(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"
263
+ },
264
+ "ipv6": {
265
+ "name": "variable.other.eml",
266
+ "match": "(?x)\n( ([0-9a-fA-F]{1,4}:){7} [0-9a-fA-F]{1,4}\n| ([0-9a-fA-F]{1,4}:){1,7} :\n| ([0-9a-fA-F]{1,4}:){1,6} :[0-9a-fA-F]{1,4}\n| ([0-9a-fA-F]{1,4}:){1,5} (:[0-9a-fA-F]{1,4}){1,2}\n| ([0-9a-fA-F]{1,4}:){1,4} (:[0-9a-fA-F]{1,4}){1,3}\n| ([0-9a-fA-F]{1,4}:){1,3} (:[0-9a-fA-F]{1,4}){1,4}\n| ([0-9a-fA-F]{1,4}:){1,2} (:[0-9a-fA-F]{1,4}){1,5}\n| [0-9a-fA-F]{1,4} :((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)\n| fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]+\n| ::(ffff(:0{1,4})?:)? ((25[0-5]|(2[0-4]|1?[0-9])?[0-9])\\.){3}(25[0-5]|(2[0-4]|1?[0-9])?[0-9])\n| ([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1?[0-9])?[0-9])\\.){3}(25[0-5]|(2[0-4]|1?[0-9])?[0-9])\n)"
267
+ },
268
+ "quote": {
269
+ "name": "markup.quote.line.eml",
270
+ "begin": "^[|\u003e]",
271
+ "end": "$",
272
+ "beginCaptures": {
273
+ "0": {
274
+ "name": "punctuation.definition.comment.quote.eml"
275
+ }
276
+ }
277
+ },
278
+ "uuid": {
279
+ "name": "constant.other.uuid.eml",
280
+ "match": "(?x)\n( [0-9a-fA-F]{32}\n| [0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}\n)"
281
+ }
282
+ }
283
+ }
@@ -0,0 +1,356 @@
1
+ {
2
+ "name": "ASP.NET Razor",
3
+ "scopeName": "text.html.cshtml",
4
+ "patterns": [
5
+ {
6
+ "include": "#comments"
7
+ },
8
+ {
9
+ "include": "#razor-directives"
10
+ },
11
+ {
12
+ "include": "#razor-code-block"
13
+ },
14
+ {
15
+ "include": "#razor-else-if"
16
+ },
17
+ {
18
+ "include": "#razor-if"
19
+ },
20
+ {
21
+ "include": "#razor-else"
22
+ },
23
+ {
24
+ "include": "#razor-foreach"
25
+ },
26
+ {
27
+ "include": "#razor-for"
28
+ },
29
+ {
30
+ "include": "#explicit-razor-expression"
31
+ },
32
+ {
33
+ "include": "#implicit-razor-expression"
34
+ },
35
+ {
36
+ "include": "text.html.basic"
37
+ }
38
+ ],
39
+ "repository": {
40
+ "comments": {
41
+ "name": "comment.block.cshtml",
42
+ "begin": "@\\*",
43
+ "end": "\\*@",
44
+ "captures": {
45
+ "0": {
46
+ "name": "punctuation.definition.comment.source.cshtml"
47
+ }
48
+ }
49
+ },
50
+ "csharp-namespace-identifier": {
51
+ "patterns": [
52
+ {
53
+ "name": "entity.name.type.namespace.cs",
54
+ "match": "[_[:alpha:]][_[:alnum:]]*"
55
+ }
56
+ ]
57
+ },
58
+ "csharp-type-name": {
59
+ "patterns": [
60
+ {
61
+ "match": "([_[:alpha:]][_[:alnum:]]*)\\s*(\\:\\:)",
62
+ "captures": {
63
+ "1": {
64
+ "name": "entity.name.type.alias.cs"
65
+ },
66
+ "2": {
67
+ "name": "punctuation.separator.coloncolon.cs"
68
+ }
69
+ }
70
+ },
71
+ {
72
+ "match": "([_[:alpha:]][_[:alnum:]]*)\\s*(\\.)",
73
+ "captures": {
74
+ "1": {
75
+ "name": "storage.type.cs"
76
+ },
77
+ "2": {
78
+ "name": "punctuation.accessor.cs"
79
+ }
80
+ }
81
+ },
82
+ {
83
+ "match": "(\\.)\\s*([_[:alpha:]][_[:alnum:]]*)",
84
+ "captures": {
85
+ "1": {
86
+ "name": "punctuation.accessor.cs"
87
+ },
88
+ "2": {
89
+ "name": "storage.type.cs"
90
+ }
91
+ }
92
+ },
93
+ {
94
+ "name": "storage.type.cs",
95
+ "match": "[_[:alpha:]][_[:alnum:]]*"
96
+ }
97
+ ]
98
+ },
99
+ "explicit-razor-expression": {
100
+ "name": "meta.expression.explicit.cshtml",
101
+ "begin": "(@)\\(",
102
+ "end": "\\)",
103
+ "patterns": [
104
+ {
105
+ "include": "source.cs"
106
+ }
107
+ ],
108
+ "captures": {
109
+ "0": {
110
+ "name": "keyword.control.cshtml"
111
+ }
112
+ }
113
+ },
114
+ "functions-directive": {
115
+ "name": "meta.directive.functions.cshtml",
116
+ "match": "(@functions)",
117
+ "captures": {
118
+ "0": {
119
+ "name": "keyword.control.cshtml"
120
+ }
121
+ }
122
+ },
123
+ "implements-directive": {
124
+ "name": "meta.directive.implements.cshtml",
125
+ "begin": "(@implements)\\s+",
126
+ "end": "$",
127
+ "patterns": [
128
+ {
129
+ "include": "#csharp-type-name"
130
+ }
131
+ ],
132
+ "captures": {
133
+ "0": {
134
+ "name": "keyword.control.cshtml"
135
+ }
136
+ }
137
+ },
138
+ "implicit-razor-expression": {
139
+ "name": "meta.expression.implicit.cshtml",
140
+ "match": "(?\u003c!@)(@)([a-zA-Z0-9\\.\\_\\(\\)]+)",
141
+ "captures": {
142
+ "0": {
143
+ "name": "keyword.control.cshtml"
144
+ }
145
+ }
146
+ },
147
+ "inherits-directive": {
148
+ "name": "meta.directive.inherits.cshtml",
149
+ "begin": "(@inherits)\\s+",
150
+ "end": "$",
151
+ "patterns": [
152
+ {
153
+ "include": "#csharp-type-name"
154
+ }
155
+ ],
156
+ "captures": {
157
+ "0": {
158
+ "name": "keyword.control.cshtml"
159
+ }
160
+ }
161
+ },
162
+ "inject-directive": {
163
+ "name": "meta.directive.inject.cshtml",
164
+ "begin": "(@inject)\\s+",
165
+ "end": "$",
166
+ "patterns": [
167
+ {
168
+ "include": "#csharp-type-name"
169
+ }
170
+ ],
171
+ "captures": {
172
+ "0": {
173
+ "name": "keyword.control.cshtml"
174
+ }
175
+ }
176
+ },
177
+ "layout-directive": {
178
+ "name": "meta.directive.layout.cshtml",
179
+ "begin": "(@layout)\\s+",
180
+ "end": "$",
181
+ "patterns": [
182
+ {
183
+ "include": "#csharp-type-name"
184
+ }
185
+ ],
186
+ "captures": {
187
+ "0": {
188
+ "name": "keyword.control.cshtml"
189
+ }
190
+ }
191
+ },
192
+ "model-directive": {
193
+ "name": "meta.directive.model.cshtml",
194
+ "begin": "(@model)\\s+",
195
+ "end": "$",
196
+ "patterns": [
197
+ {
198
+ "include": "#csharp-type-name"
199
+ }
200
+ ],
201
+ "captures": {
202
+ "0": {
203
+ "name": "keyword.control.cshtml"
204
+ }
205
+ }
206
+ },
207
+ "page-directive": {
208
+ "name": "meta.directive.page.cshtml",
209
+ "begin": "(@page)\\s+",
210
+ "end": "$",
211
+ "patterns": [
212
+ {
213
+ "include": "source.cs"
214
+ }
215
+ ],
216
+ "captures": {
217
+ "0": {
218
+ "name": "keyword.control.cshtml"
219
+ }
220
+ }
221
+ },
222
+ "razor-code-block": {
223
+ "begin": "@?\\{",
224
+ "end": "\\}",
225
+ "patterns": [
226
+ {
227
+ "include": "text.html.cshtml"
228
+ },
229
+ {
230
+ "include": "source.cs"
231
+ }
232
+ ],
233
+ "captures": {
234
+ "0": {
235
+ "name": "keyword.control.cshtml"
236
+ }
237
+ }
238
+ },
239
+ "razor-directives": {
240
+ "name": "meta.directive.cshtml",
241
+ "patterns": [
242
+ {
243
+ "include": "#using-directive"
244
+ },
245
+ {
246
+ "include": "#model-directive"
247
+ },
248
+ {
249
+ "include": "#inherits-directive"
250
+ },
251
+ {
252
+ "include": "#inject-directive"
253
+ },
254
+ {
255
+ "include": "#implements-directive"
256
+ },
257
+ {
258
+ "include": "#layout-directive"
259
+ },
260
+ {
261
+ "include": "#page-directive"
262
+ },
263
+ {
264
+ "include": "#functions-directive"
265
+ }
266
+ ]
267
+ },
268
+ "razor-else": {
269
+ "begin": "(else)",
270
+ "end": "$",
271
+ "patterns": [
272
+ {
273
+ "include": "source.cs"
274
+ }
275
+ ],
276
+ "captures": {
277
+ "0": {
278
+ "name": "keyword.control.cshtml"
279
+ }
280
+ }
281
+ },
282
+ "razor-else-if": {
283
+ "begin": "(else\\s+if)",
284
+ "end": "$",
285
+ "patterns": [
286
+ {
287
+ "include": "source.cs"
288
+ }
289
+ ],
290
+ "captures": {
291
+ "0": {
292
+ "name": "keyword.control.cshtml"
293
+ }
294
+ }
295
+ },
296
+ "razor-for": {
297
+ "begin": "(@for)\\s*\\(",
298
+ "end": "\\)",
299
+ "patterns": [
300
+ {
301
+ "include": "source.cs"
302
+ }
303
+ ],
304
+ "captures": {
305
+ "0": {
306
+ "name": "keyword.control.cshtml"
307
+ }
308
+ }
309
+ },
310
+ "razor-foreach": {
311
+ "begin": "(@foreach)\\s*\\(",
312
+ "end": "\\)",
313
+ "patterns": [
314
+ {
315
+ "include": "source.cs"
316
+ }
317
+ ],
318
+ "captures": {
319
+ "0": {
320
+ "name": "keyword.control.cshtml"
321
+ }
322
+ }
323
+ },
324
+ "razor-if": {
325
+ "begin": "(@if)",
326
+ "end": "$",
327
+ "patterns": [
328
+ {
329
+ "include": "source.cs"
330
+ }
331
+ ],
332
+ "captures": {
333
+ "0": {
334
+ "name": "keyword.control.cshtml"
335
+ }
336
+ }
337
+ },
338
+ "using-directive": {
339
+ "name": "meta.directive.using.cshtml",
340
+ "begin": "(@)(?=using)(.*)",
341
+ "end": "(?=$)",
342
+ "captures": {
343
+ "0": {
344
+ "name": "keyword.control.cshtml"
345
+ },
346
+ "2": {
347
+ "patterns": [
348
+ {
349
+ "include": "source.cs"
350
+ }
351
+ ]
352
+ }
353
+ }
354
+ }
355
+ }
356
+ }