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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/source.bsl.json +196 -162
  3. data/grammars/source.ceylon.json +43 -21
  4. data/grammars/source.coffee.json +46 -21
  5. data/grammars/source.cs.json +2 -2
  6. data/grammars/source.csound-score.json +41 -18
  7. data/grammars/source.csound.json +63 -7
  8. data/grammars/source.css.json +2 -2
  9. data/grammars/source.css.less.json +22 -91
  10. data/grammars/source.ditroff.json +114 -116
  11. data/grammars/source.gfm.clean.json +28 -0
  12. data/grammars/source.gfm.json +1 -0
  13. data/grammars/source.jison.json +678 -0
  14. data/grammars/source.jisonlex-injection.json +11 -0
  15. data/grammars/source.jisonlex.json +432 -0
  16. data/grammars/source.js.json +12 -67
  17. data/grammars/source.jsdoc.json +485 -0
  18. data/grammars/source.p4.json +15 -0
  19. data/grammars/source.perl6fe.json +37 -1
  20. data/grammars/source.puppet.json +1 -1
  21. data/grammars/source.python.json +6 -3
  22. data/grammars/source.quoting.perl6fe.json +101 -0
  23. data/grammars/source.rpm-spec.json +7 -3
  24. data/grammars/source.scad.json +152 -0
  25. data/grammars/source.shaderlab.json +42 -15
  26. data/grammars/source.terraform.json +18 -0
  27. data/grammars/source.yaml.json +57 -32
  28. data/grammars/text.html.php.blade.json +1 -1
  29. data/grammars/text.marko.json +1522 -0
  30. data/grammars/text.roff.json +9 -6
  31. data/lib/linguist.rb +2 -2
  32. data/lib/linguist/documentation.yml +4 -3
  33. data/lib/linguist/heuristics.rb +2 -0
  34. data/lib/linguist/languages.json +1 -1
  35. data/lib/linguist/languages.yml +33 -1
  36. data/lib/linguist/samples.json +423 -48
  37. data/lib/linguist/version.rb +1 -1
  38. metadata +13 -7
  39. data/grammars/module.ceylon.json +0 -54
@@ -5,6 +5,21 @@
5
5
  "p4"
6
6
  ],
7
7
  "patterns": [
8
+ {
9
+ "begin": "/\\*",
10
+ "beginCaptures": {
11
+ "0": {
12
+ "name": "punctuation.definition.comment.block.begin.p4"
13
+ }
14
+ },
15
+ "end": "\\*/",
16
+ "endCaptures": {
17
+ "0": {
18
+ "name": "punctuation.definition.comment.block.end.p4"
19
+ }
20
+ },
21
+ "name": "comment.block.p4"
22
+ },
8
23
  {
9
24
  "begin": "\"",
10
25
  "beginCaptures": {
@@ -251,6 +251,18 @@
251
251
  }
252
252
  ]
253
253
  },
254
+ {
255
+ "begin": "\\s*#`‚",
256
+ "end": "‘",
257
+ "name": "comment.multiline.hash-tick.low-q_left_single.perl6fe",
258
+ "patterns": [
259
+ {
260
+ "begin": "‚",
261
+ "end": "‘",
262
+ "name": "comment.internal.low-q_left_single.perl6fe"
263
+ }
264
+ ]
265
+ },
254
266
  {
255
267
  "begin": "\\s*#`「",
256
268
  "end": "」",
@@ -377,6 +389,30 @@
377
389
  }
378
390
  ]
379
391
  },
392
+ {
393
+ "begin": "(?<=\\W|^)‚",
394
+ "beginCaptures": {
395
+ "0": {
396
+ "name": "punctuation.definition.string.begin.perl6fe"
397
+ }
398
+ },
399
+ "end": "‘",
400
+ "endCaptures": {
401
+ "0": {
402
+ "name": "punctuation.definition.string.end.perl6fe"
403
+ }
404
+ },
405
+ "name": "string.quoted.single.low-q_left_single.perl6fe",
406
+ "patterns": [
407
+ {
408
+ "match": "\\\\[‚‘\\\\]",
409
+ "name": "constant.character.escape.perl6fe"
410
+ },
411
+ {
412
+ "include": "source.quoting.perl6fe#q_low-q_left_single_string_content"
413
+ }
414
+ ]
415
+ },
380
416
  {
381
417
  "begin": "(?<=\\W|^)'",
382
418
  "beginCaptures": {
@@ -1159,7 +1195,7 @@
1159
1195
  "name": "constant.numeric.radix.perl6fe"
1160
1196
  },
1161
1197
  {
1162
- "match": "(?x)\n (?<= ^ | [×÷*=,:;^\\s{\\[(/] | \\.\\. | … )\n (?: \\^? [+-−] )?\n(?:\n (?: \\d+ (?: [\\_\\d]+ \\d )? )\n (?: \\. \\d+ (?: [\\_\\d]+ \\d )? )?\n)\n(?: e (?:-|−)? \\d+ (?: [\\_\\d]+ \\d )? )?",
1198
+ "match": "(?x)\n (?<= ^ | [×÷*=,:;^\\s{\\[(/] | \\.\\. | … )\n (?: \\^? [+\\-−] )?\n(?:\n (?: \\d+ (?: [\\_\\d]+ \\d )? )\n (?: \\. \\d+ (?: [\\_\\d]+ \\d )? )?\n)\n(?: e (?:-|−)? \\d+ (?: [\\_\\d]+ \\d )? )?",
1163
1199
  "name": "constant.numeric.perl6fe"
1164
1200
  },
1165
1201
  {
@@ -124,7 +124,7 @@
124
124
  "name": "entity.name.section.puppet"
125
125
  }
126
126
  },
127
- "match": "^\\s*(\\w+)\\s*{\\s*(['\"].+['\"]):",
127
+ "match": "^\\s*(\\S+)\\s*{\\s*(['\"].+['\"]):",
128
128
  "name": "meta.definition.resource.puppet"
129
129
  },
130
130
  {
@@ -14,10 +14,13 @@
14
14
  "SConscript",
15
15
  "gyp",
16
16
  "gypi",
17
- "wsgi"
17
+ "wsgi",
18
+ "kv",
19
+ "Snakefile",
20
+ "tac"
18
21
  ],
19
- "first_line_match": "^#!/.*\\bpython[\\d\\.]*\\b",
20
- "firstLineMatch": "^#!/.*\\bpython[\\d\\.]*\\b",
22
+ "first_line_match": "^#![ \\t]*/.*\\bpython[\\d\\.]*\\b",
23
+ "firstLineMatch": "^#![ \\t]*/.*\\bpython[\\d\\.]*\\b",
21
24
  "uuid": "742deb57-6e38-4192-bed6-410746efd85d",
22
25
  "patterns": [
23
26
  {
@@ -1385,6 +1385,98 @@
1385
1385
  }
1386
1386
  ]
1387
1387
  },
1388
+ {
1389
+ "begin": "(?x) (?<=^|[\\[\\]\\s\\(\\){},;]) (Q(?:x|w|ww|v|s|a|h|f|c|b|p)?) ((?: \\s*:(?: x|exec|w|words|ww|quotewords|v|val|q|single|double| s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash| regexp|substr|trans|codes|p|path|nfkc|nfkd ) )*) \\s*(‚)",
1390
+ "beginCaptures": {
1391
+ "1": {
1392
+ "name": "string.quoted.q.operator.perl6fe"
1393
+ },
1394
+ "2": {
1395
+ "name": "support.function.quote.adverb.perl6fe"
1396
+ },
1397
+ "3": {
1398
+ "name": "punctuation.definition.string.perl6fe"
1399
+ }
1400
+ },
1401
+ "end": "‘",
1402
+ "endCaptures": {
1403
+ "0": {
1404
+ "name": "punctuation.definition.string.perl6fe"
1405
+ }
1406
+ },
1407
+ "contentName": "string.quoted.q.low-q_left_single.quote.perl6fe",
1408
+ "patterns": [
1409
+ {
1410
+ "include": "#q_low-q_left_single_string_content"
1411
+ }
1412
+ ]
1413
+ },
1414
+ {
1415
+ "begin": "(?x) (?<=^|[\\[\\]\\s\\(\\){},;]) (q(?:x|w|ww|v|s|a|h|f|c|b|p)?) ((?: \\s*:(?: x|exec|w|words|ww|quotewords|v|val|q|single|double| s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash| regexp|substr|trans|codes|p|path|nfkc|nfkd ) )*) \\s*(‚)",
1416
+ "beginCaptures": {
1417
+ "1": {
1418
+ "name": "string.quoted.q.operator.perl6fe"
1419
+ },
1420
+ "2": {
1421
+ "name": "support.function.quote.adverb.perl6fe"
1422
+ },
1423
+ "3": {
1424
+ "name": "punctuation.definition.string.perl6fe"
1425
+ }
1426
+ },
1427
+ "end": "\\\\\\\\‘|(?<!\\\\)‘",
1428
+ "endCaptures": {
1429
+ "0": {
1430
+ "name": "punctuation.definition.string.perl6fe"
1431
+ }
1432
+ },
1433
+ "contentName": "string.quoted.q.low-q_left_single.quote.perl6fe",
1434
+ "patterns": [
1435
+ {
1436
+ "match": "\\\\‚|\\\\‘",
1437
+ "name": "constant.character.escape.perl6fe"
1438
+ },
1439
+ {
1440
+ "include": "#q_low-q_left_single_string_content"
1441
+ }
1442
+ ]
1443
+ },
1444
+ {
1445
+ "begin": "(?x) (?<=^|[\\[\\]\\s\\(\\){},;]) (qq(?:x|w|ww|v|s|a|h|f|c|b|p)?) ((?: \\s*:(?: x|exec|w|words|ww|quotewords|v|val|q|single|double| s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash| regexp|substr|trans|codes|p|path|nfkc|nfkd ) )*) \\s*(‚)",
1446
+ "beginCaptures": {
1447
+ "1": {
1448
+ "name": "string.quoted.qq.operator.perl6fe"
1449
+ },
1450
+ "2": {
1451
+ "name": "support.function.quote.adverb.perl6fe"
1452
+ },
1453
+ "3": {
1454
+ "name": "punctuation.definition.string.perl6fe"
1455
+ }
1456
+ },
1457
+ "end": "\\\\\\\\‘|(?<!\\\\)‘",
1458
+ "endCaptures": {
1459
+ "0": {
1460
+ "name": "punctuation.definition.string.perl6fe"
1461
+ }
1462
+ },
1463
+ "contentName": "string.quoted.qq.low-q_left_single.quote.perl6fe",
1464
+ "patterns": [
1465
+ {
1466
+ "match": "\\\\‚|\\\\‘",
1467
+ "name": "constant.character.escape.perl6fe"
1468
+ },
1469
+ {
1470
+ "include": "#qq_character_escape"
1471
+ },
1472
+ {
1473
+ "include": "source.perl6fe#interpolation"
1474
+ },
1475
+ {
1476
+ "include": "#q_low-q_left_single_string_content"
1477
+ }
1478
+ ]
1479
+ },
1388
1480
  {
1389
1481
  "begin": "(?x) (?<=^|[\\[\\]\\s\\(\\){},;]) (Q(?:x|w|ww|v|s|a|h|f|c|b|p)?) ((?: \\s*:(?: x|exec|w|words|ww|quotewords|v|val|q|single|double| s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash| regexp|substr|trans|codes|p|path|nfkc|nfkd ) )*) \\s*(「)",
1390
1482
  "beginCaptures": {
@@ -2204,6 +2296,15 @@
2204
2296
  }
2205
2297
  ]
2206
2298
  },
2299
+ "q_low-q_left_single_string_content": {
2300
+ "begin": "‚",
2301
+ "end": "\\\\\\\\‘|(?<!\\\\)‘",
2302
+ "patterns": [
2303
+ {
2304
+ "include": "#q_low-q_left_single_string_content"
2305
+ }
2306
+ ]
2307
+ },
2207
2308
  "q_fw_cornerbracket_string_content": {
2208
2309
  "begin": "「",
2209
2310
  "end": "\\\\\\\\」|(?<!\\\\)」",
@@ -227,15 +227,19 @@
227
227
  "architectures": {
228
228
  "patterns": [
229
229
  {
230
- "match": "(?:noarch|i386|i586|x86_64|local)",
230
+ "match": "\\b(?:noarch|i386|i586|x86_64|ia64|local)\\b",
231
231
  "name": "constant.language.rpm-spec"
232
232
  },
233
233
  {
234
- "match": "(?:s390x|armv6l|armv7l|aarch64)",
234
+ "match": "\\b(?:s390x|s390|armv6l|armv7hl|armv7l)\\b",
235
235
  "name": "constant.language.rpm-spec"
236
236
  },
237
237
  {
238
- "match": "(?:ppc64p7|ppc64leppc64|ppc)",
238
+ "match": "\\b(?:ppc64p7|ppc64le|ppc64|ppc|aarch64)\\b",
239
+ "name": "constant.language.rpm-spec"
240
+ },
241
+ {
242
+ "match": "\\b(?:alpha|sparc64|sparcv9|sparc)\\b",
239
243
  "name": "constant.language.rpm-spec"
240
244
  }
241
245
  ]
@@ -0,0 +1,152 @@
1
+ {
2
+ "fileTypes": [
3
+ "scad"
4
+ ],
5
+ "foldingStartMarker": "/\\*\\*|\\{\\s*$",
6
+ "foldingStopMarker": "\\*\\*/|^\\s*\\}",
7
+ "keyEquivalent": "^~S",
8
+ "name": "OpenSCAD",
9
+ "patterns": [
10
+ {
11
+ "captures": {
12
+ "1": {
13
+ "name": "keyword.control.scad"
14
+ }
15
+ },
16
+ "match": "^(module)\\s.*$",
17
+ "name": "meta.function.scad"
18
+ },
19
+ {
20
+ "match": "\\b(if|else|for|intersection_for|assign|render|function|include|use)\\b",
21
+ "name": "keyword.control.scad"
22
+ },
23
+ {
24
+ "begin": "/\\*\\*(?!/)",
25
+ "captures": {
26
+ "0": {
27
+ "name": "punctuation.definition.comment.scad"
28
+ }
29
+ },
30
+ "end": "\\*/",
31
+ "name": "comment.block.documentation.scad"
32
+ },
33
+ {
34
+ "begin": "/\\*",
35
+ "captures": {
36
+ "0": {
37
+ "name": "punctuation.definition.comment.scad"
38
+ }
39
+ },
40
+ "end": "\\*/",
41
+ "name": "comment.block.scad"
42
+ },
43
+ {
44
+ "captures": {
45
+ "1": {
46
+ "name": "punctuation.definition.comment.scad"
47
+ }
48
+ },
49
+ "match": "(//).*$\\n?",
50
+ "name": "comment.line.double-slash.scad"
51
+ },
52
+ {
53
+ "begin": "\"",
54
+ "end": "\"",
55
+ "name": "string.quoted.double.scad",
56
+ "patterns": [
57
+ {
58
+ "match": "\\\\.",
59
+ "name": "constant.character.escape.scad"
60
+ }
61
+ ]
62
+ },
63
+ {
64
+ "begin": "'",
65
+ "beginCaptures": {
66
+ "0": {
67
+ "name": "punctuation.definition.string.begin.scad"
68
+ }
69
+ },
70
+ "end": "'",
71
+ "endCaptures": {
72
+ "0": {
73
+ "name": "punctuation.definition.string.end.scad"
74
+ }
75
+ },
76
+ "name": "string.quoted.single.scad",
77
+ "patterns": [
78
+ {
79
+ "match": "\\\\(x\\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)",
80
+ "name": "constant.character.escape.scad"
81
+ }
82
+ ]
83
+ },
84
+ {
85
+ "begin": "\"",
86
+ "beginCaptures": {
87
+ "0": {
88
+ "name": "punctuation.definition.string.begin.scad"
89
+ }
90
+ },
91
+ "end": "\"",
92
+ "endCaptures": {
93
+ "0": {
94
+ "name": "punctuation.definition.string.end.scad"
95
+ }
96
+ },
97
+ "name": "string.quoted.double.scad",
98
+ "patterns": [
99
+ {
100
+ "match": "\\\\(x\\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)",
101
+ "name": "constant.character.escape.scad"
102
+ }
103
+ ]
104
+ },
105
+ {
106
+ "match": "\\b(abs|acos|asun|atan|atan2|ceil|cos|exp|floor|ln|log|lookup|max|min|pow|rands|round|sign|sin|sqrt|tan|str|cube|sphere|cylinder|polyhedron|scale|rotate|translate|mirror|multimatrix|color|minkowski|hull|union|difference|intersection|echo)\\b",
107
+ "name": "support.function.scad"
108
+ },
109
+ {
110
+ "match": "\\;",
111
+ "name": "punctuation.terminator.statement.scad"
112
+ },
113
+ {
114
+ "match": ",[ |\\t]*",
115
+ "name": "meta.delimiter.object.comma.scad"
116
+ },
117
+ {
118
+ "match": "\\.",
119
+ "name": "meta.delimiter.method.period.scad"
120
+ },
121
+ {
122
+ "match": "\\{|\\}",
123
+ "name": "meta.brace.curly.scad"
124
+ },
125
+ {
126
+ "match": "\\(|\\)",
127
+ "name": "meta.brace.round.scad"
128
+ },
129
+ {
130
+ "match": "\\[|\\]",
131
+ "name": "meta.brace.square.scad"
132
+ },
133
+ {
134
+ "match": "!|\\$|%|&|\\*|\\-\\-|\\-|\\+\\+|\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\|\\||\\?\\:|\\*=|(?<!\\()/=|%=|\\+=|\\-=|&=|\\^=|\\b(in|instanceof|new|delete|typeof|void)\\b",
135
+ "name": "keyword.operator.scad"
136
+ },
137
+ {
138
+ "match": "\\b((0(x|X)[0-9a-fA-F]+)|([0-9]+(\\.[0-9]+)?))\\b",
139
+ "name": "constant.numeric.scad"
140
+ },
141
+ {
142
+ "match": "\\btrue\\b",
143
+ "name": "constant.language.boolean.true.scad"
144
+ },
145
+ {
146
+ "match": "\\bfalse\\b",
147
+ "name": "constant.language.boolean.false.scad"
148
+ }
149
+ ],
150
+ "scopeName": "source.scad",
151
+ "uuid": "ED71CA06-521E-4D30-B9C0-480808749662"
152
+ }
@@ -93,6 +93,48 @@
93
93
  "name": "keyword.other"
94
94
  }
95
95
  },
96
+ "patterns": [
97
+ {
98
+ "include": "#hlsl-embedded"
99
+ }
100
+ ]
101
+ },
102
+ {
103
+ "name": "meta.hlslblock",
104
+ "begin": "\\b(HLSLPROGRAM|HLSLINCLUDE)\\b",
105
+ "beginCaptures": {
106
+ "1": {
107
+ "name": "keyword.other"
108
+ }
109
+ },
110
+ "end": "\\b(ENDHLSL)\\b",
111
+ "endCaptures": {
112
+ "1": {
113
+ "name": "keyword.other"
114
+ }
115
+ },
116
+ "patterns": [
117
+ {
118
+ "include": "#hlsl-embedded"
119
+ }
120
+ ]
121
+ },
122
+ {
123
+ "name": "string.quoted.double.shaderlab",
124
+ "begin": "\"",
125
+ "end": "\""
126
+ }
127
+ ],
128
+ "repository": {
129
+ "numbers": {
130
+ "patterns": [
131
+ {
132
+ "name": "constant.numeric.shaderlab",
133
+ "match": "\\b([0-9]+\\.?[0-9]*)\\b"
134
+ }
135
+ ]
136
+ },
137
+ "hlsl-embedded": {
96
138
  "patterns": [
97
139
  {
98
140
  "include": "source.hlsl"
@@ -154,21 +196,6 @@
154
196
  "match": "\\b(SurfaceOutputStandardSpecular|SurfaceOutputStandard|SurfaceOutput|Input)\\b"
155
197
  }
156
198
  ]
157
- },
158
- {
159
- "name": "string.quoted.double.shaderlab",
160
- "begin": "\"",
161
- "end": "\""
162
- }
163
- ],
164
- "repository": {
165
- "numbers": {
166
- "patterns": [
167
- {
168
- "name": "constant.numeric.shaderlab",
169
- "match": "\\b([0-9]+\\.?[0-9]*)\\b"
170
- }
171
- ]
172
199
  }
173
200
  }
174
201
  }