github-linguist 7.6.1 → 7.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. checksums.yaml +5 -5
  2. data/bin/github-linguist +17 -4
  3. data/grammars/annotation.liquidhaskell.haskell.json +58 -11
  4. data/grammars/etc.json +212 -3
  5. data/grammars/hidden.manref.json +29 -0
  6. data/grammars/hint.haskell.json +58 -11
  7. data/grammars/hint.message.haskell.json +58 -11
  8. data/grammars/hint.type.haskell.json +58 -11
  9. data/grammars/injections.etc.json +601 -1
  10. data/grammars/markdown.plantuml.codeblock.json +26 -0
  11. data/grammars/source.4dm.json +1100 -0
  12. data/grammars/source.abap.json +7 -7
  13. data/grammars/source.abnf.json +23 -1
  14. data/grammars/source.agda.json +32 -202
  15. data/grammars/source.ahk.json +9 -5
  16. data/grammars/source.angelscript.json +1 -1
  17. data/grammars/source.ballerina.json +54 -18
  18. data/grammars/source.chapel.json +4 -4
  19. data/grammars/source.csound.json +1 -1
  20. data/grammars/source.css.json +2 -2
  21. data/grammars/source.css.scss.json +164 -15
  22. data/grammars/source.curlrc.json +869 -65
  23. data/grammars/source.dart.json +58 -32
  24. data/grammars/source.dircolors.json +137 -0
  25. data/grammars/source.direct-x.json +135 -0
  26. data/grammars/source.ebnf.json +67 -39
  27. data/grammars/source.editorconfig.json +23 -5
  28. data/grammars/source.elixir.json +51 -0
  29. data/grammars/source.elm.json +1 -1
  30. data/grammars/source.emacs.lisp.json +10 -0
  31. data/grammars/source.faust.json +119 -0
  32. data/grammars/source.gcode.json +166 -8
  33. data/grammars/source.gfm.json +1 -1
  34. data/grammars/source.gitconfig.json +1 -1
  35. data/grammars/source.hack.json +200 -98
  36. data/grammars/source.haskell.json +58 -11
  37. data/grammars/source.hlsl.json +9 -5
  38. data/grammars/source.hosts.json +40 -0
  39. data/grammars/source.hsig.json +58 -11
  40. data/grammars/source.hx.json +4 -0
  41. data/grammars/source.igor.json +46 -2
  42. data/grammars/source.ini.npmrc.json +311 -0
  43. data/grammars/source.inno.json +133 -0
  44. data/grammars/source.inputrc.json +500 -0
  45. data/grammars/source.js.json +4 -4
  46. data/grammars/source.julia.json +69 -23
  47. data/grammars/source.kotlin.json +1 -1
  48. data/grammars/source.lean.json +19 -3
  49. data/grammars/source.lean.markdown.json +2598 -0
  50. data/grammars/source.lex.json +4 -4
  51. data/grammars/source.m4.json +141 -99
  52. data/grammars/source.man-conf.json +46 -34
  53. data/grammars/source.matlab.json +437 -184
  54. data/grammars/source.mcfunction-snapshot.json +21388 -561
  55. data/grammars/source.mcfunction.json +55 -5
  56. data/grammars/source.meson.json +1 -1
  57. data/grammars/source.mlir.json +37 -317
  58. data/grammars/source.mrc.json +740 -0
  59. data/grammars/source.nasl.json +155 -0
  60. data/grammars/source.nextflow.json +2 -2
  61. data/grammars/source.odin-ehr.json +806 -0
  62. data/grammars/source.odin.json +402 -0
  63. data/grammars/source.opts.json +12 -2
  64. data/grammars/source.p4.json +21 -5
  65. data/grammars/source.prisma.json +435 -0
  66. data/grammars/source.python.json +2 -0
  67. data/grammars/source.qasm.json +66 -0
  68. data/grammars/source.ql.json +1408 -0
  69. data/grammars/source.reason.json +28 -16
  70. data/grammars/source.rego.json +124 -0
  71. data/grammars/source.sass.json +158 -3
  72. data/grammars/source.scala.json +53 -18
  73. data/grammars/source.ssh-config.json +1 -14
  74. data/grammars/source.swift.json +162 -2
  75. data/grammars/source.sy.json +2088 -183
  76. data/grammars/source.terraform.json +576 -132
  77. data/grammars/source.tnsaudit.json +256 -0
  78. data/grammars/source.ts.json +159 -51
  79. data/grammars/source.tsx.json +160 -52
  80. data/grammars/source.v.json +559 -764
  81. data/grammars/source.vim-snippet.json +645 -0
  82. data/grammars/source.viml.json +6 -6
  83. data/grammars/source.webassembly.json +10 -0
  84. data/grammars/source.wgetrc.json +1640 -0
  85. data/grammars/source.wsd.json +775 -0
  86. data/grammars/source.zig.json +169 -304
  87. data/grammars/text.html.php.blade.json +1 -1
  88. data/grammars/text.html.riot.json +788 -0
  89. data/grammars/text.muse.json +1471 -0
  90. data/grammars/text.tex.latex.haskell.json +58 -11
  91. data/grammars/text.vim-help.json +383 -0
  92. data/grammars/version +1 -1
  93. data/lib/linguist/VERSION +1 -1
  94. data/lib/linguist/blob_helper.rb +4 -2
  95. data/lib/linguist/file_blob.rb +1 -1
  96. data/lib/linguist/generated.rb +60 -13
  97. data/lib/linguist/heuristics.yml +64 -4
  98. data/lib/linguist/languages.json +1 -1
  99. data/lib/linguist/languages.yml +336 -45
  100. data/lib/linguist/lazy_blob.rb +10 -10
  101. data/lib/linguist/linguist.bundle +0 -0
  102. data/lib/linguist/samples.json +43560 -31457
  103. data/lib/linguist/shebang.rb +5 -3
  104. data/lib/linguist/vendor.yml +9 -0
  105. metadata +29 -10
  106. data/grammars/source.LS.json +0 -85
  107. data/grammars/source.MCPOST.json +0 -54
  108. data/grammars/source.MOD.json +0 -55
  109. data/grammars/source.apt.json +0 -18
  110. data/grammars/source.jlex.json +0 -322
  111. data/grammars/source.yaml-ext.json +0 -324
@@ -1,322 +0,0 @@
1
- {
2
- "name": "JLex",
3
- "scopeName": "source.jlex",
4
- "patterns": [
5
- {
6
- "include": "#main"
7
- }
8
- ],
9
- "repository": {
10
- "comments": {
11
- "patterns": [
12
- {
13
- "name": "comment.line.double-slash.jlex",
14
- "begin": "//",
15
- "end": "$",
16
- "beginCaptures": {
17
- "0": {
18
- "name": "punctuation.definition.comment.jlex"
19
- }
20
- }
21
- },
22
- {
23
- "name": "comment.block.jlex",
24
- "begin": "/\\*",
25
- "end": "\\*/",
26
- "beginCaptures": {
27
- "0": {
28
- "name": "punctuation.definition.begin.comment.jlex"
29
- }
30
- },
31
- "endCaptures": {
32
- "0": {
33
- "name": "punctuation.definition.end.comment.jlex"
34
- }
35
- }
36
- }
37
- ]
38
- },
39
- "directive": {
40
- "patterns": [
41
- {
42
- "match": "((%)(?:class|extends|implements|extends|cupsym))\\s+(\\S.*)",
43
- "captures": {
44
- "1": {
45
- "name": "keyword.control.directive.jlex"
46
- },
47
- "2": {
48
- "name": "punctuation.definition.directive.jlex"
49
- },
50
- "3": {
51
- "name": "storage.type.class.var.jlex"
52
- }
53
- }
54
- },
55
- {
56
- "match": "((%)include)\\s*(\\S.*)(?=$|//)",
57
- "captures": {
58
- "1": {
59
- "name": "keyword.control.directive.jlex"
60
- },
61
- "2": {
62
- "name": "punctuation.definition.directive.jlex"
63
- },
64
- "3": {
65
- "patterns": [
66
- {
67
- "name": "storage.modifier.import.java",
68
- "match": "[^\\s.]+"
69
- },
70
- {
71
- "name": "punctuation.separator.java",
72
- "match": "\\."
73
- }
74
- ]
75
- }
76
- }
77
- },
78
- {
79
- "name": "meta.state-declarations.jlex",
80
- "begin": "(%)state(?=\\s)(?!$)",
81
- "end": "(?=$|/\\*)",
82
- "patterns": [
83
- {
84
- "name": "variable.other.definition.jlex",
85
- "match": "[A-Za-z_][A-Za-z_0-9]*"
86
- },
87
- {
88
- "name": "punctuation.delimiter.comma.jlex",
89
- "match": ","
90
- }
91
- ],
92
- "beginCaptures": {
93
- "0": {
94
- "name": "keyword.control.directive.jlex"
95
- },
96
- "1": {
97
- "name": "punctuation.definition.directive.jlex"
98
- }
99
- }
100
- },
101
- {
102
- "name": "meta.code-block.directive.$3.jlex",
103
- "begin": "^\\s*((%)(initthrow|init|eofthrow|eofval|eof))({)",
104
- "end": "^\\s*((%)\\3)(})",
105
- "patterns": [
106
- {
107
- "include": "source.java"
108
- }
109
- ],
110
- "beginCaptures": {
111
- "1": {
112
- "name": "keyword.control.directive.jlex"
113
- },
114
- "2": {
115
- "name": "punctuation.definition.directive.jlex"
116
- },
117
- "4": {
118
- "name": "punctuation.definition.curly.bracket.begin.jlex"
119
- }
120
- },
121
- "endCaptures": {
122
- "1": {
123
- "name": "keyword.control.directive.jlex"
124
- },
125
- "2": {
126
- "name": "punctuation.definition.directive.jlex"
127
- },
128
- "3": {
129
- "name": "punctuation.definition.curly.bracket.end.jlex"
130
- }
131
- }
132
- },
133
- {
134
- "begin": "^\\s*((%)\\w+)(\\s+\\S.*)?",
135
- "end": "(?=$)",
136
- "beginCaptures": {
137
- "1": {
138
- "name": "keyword.control.directive.jlex"
139
- },
140
- "2": {
141
- "name": "punctuation.definition.directive.jlex"
142
- },
143
- "3": {
144
- "patterns": [
145
- {
146
- "include": "#comments"
147
- },
148
- {
149
- "name": "constant.language.other.lex",
150
- "match": "\\S+"
151
- }
152
- ]
153
- }
154
- }
155
- }
156
- ]
157
- },
158
- "directives": {
159
- "name": "name.directives.jlex",
160
- "begin": "^\\s*(%%)\\s*$\\s*",
161
- "end": "^\\s*(%%)\\s*$\\s*",
162
- "patterns": [
163
- {
164
- "include": "#passthrough"
165
- },
166
- {
167
- "include": "#directive"
168
- },
169
- {
170
- "include": "#comments"
171
- },
172
- {
173
- "include": "#macro"
174
- }
175
- ],
176
- "beginCaptures": {
177
- "1": {
178
- "name": "keyword.control.section.begin.jlex"
179
- }
180
- },
181
- "endCaptures": {
182
- "1": {
183
- "name": "keyword.control.section.end.jlex"
184
- }
185
- }
186
- },
187
- "macro": {
188
- "match": "^\\s*([^\\s=]+)\\s*(=)(\\s*\\S.*)$",
189
- "captures": {
190
- "1": {
191
- "name": "entity.macro.name.jlex"
192
- },
193
- "2": {
194
- "name": "keyword.operator.assignment.jlex"
195
- },
196
- "3": {
197
- "name": "meta.macro.definition.jlex",
198
- "patterns": [
199
- {
200
- "include": "source.lex.regexp"
201
- }
202
- ]
203
- }
204
- }
205
- },
206
- "main": {
207
- "patterns": [
208
- {
209
- "include": "#comments"
210
- },
211
- {
212
- "include": "#user-code"
213
- },
214
- {
215
- "include": "#directives"
216
- },
217
- {
218
- "include": "#rules"
219
- }
220
- ]
221
- },
222
- "passthrough": {
223
- "name": "meta.code-chunk.jlex",
224
- "begin": "^\\s*%{",
225
- "end": "^\\s*%}",
226
- "patterns": [
227
- {
228
- "include": "source.java"
229
- }
230
- ],
231
- "beginCaptures": {
232
- "0": {
233
- "name": "punctuation.section.embedded.begin.jlex"
234
- }
235
- },
236
- "endCaptures": {
237
- "0": {
238
- "name": "punctuation.section.embedded.end.jlex"
239
- }
240
- }
241
- },
242
- "rules": {
243
- "patterns": [
244
- {
245
- "name": "meta.rule.jlex",
246
- "begin": "^\\s*(\"[^\"]+\")\\s+({)",
247
- "end": "}",
248
- "patterns": [
249
- {
250
- "include": "source.java"
251
- }
252
- ],
253
- "beginCaptures": {
254
- "1": {
255
- "patterns": [
256
- {
257
- "include": "source.lex.regexp#string"
258
- }
259
- ]
260
- },
261
- "2": {
262
- "name": "punctuation.definition.curly.bracket.begin.jlex"
263
- }
264
- },
265
- "endCaptures": {
266
- "0": {
267
- "name": "punctuation.definition.curly.bracket.begin.jlex"
268
- }
269
- }
270
- },
271
- {
272
- "name": "meta.rule.jlex",
273
- "begin": "^([^{]*[^\\s{][^{]*)({\\w+}\\s*)?({)",
274
- "end": "}",
275
- "patterns": [
276
- {
277
- "include": "source.java"
278
- }
279
- ],
280
- "beginCaptures": {
281
- "1": {
282
- "patterns": [
283
- {
284
- "include": "source.lex.regexp"
285
- }
286
- ]
287
- },
288
- "2": {
289
- "patterns": [
290
- {
291
- "include": "source.lex.regexp"
292
- }
293
- ]
294
- },
295
- "3": {
296
- "name": "punctuation.definition.curly.bracket.begin.jlex"
297
- }
298
- },
299
- "endCaptures": {
300
- "0": {
301
- "name": "punctuation.definition.curly.bracket.begin.jlex"
302
- }
303
- }
304
- }
305
- ]
306
- },
307
- "user-code": {
308
- "patterns": [
309
- {
310
- "name": "meta.user-code.jlex",
311
- "begin": "\\G",
312
- "end": "^(?=\\s*%%)",
313
- "patterns": [
314
- {
315
- "include": "source.java"
316
- }
317
- ]
318
- }
319
- ]
320
- }
321
- }
322
- }
@@ -1,324 +0,0 @@
1
- {
2
- "name": "YAML-ext",
3
- "scopeName": "source.yaml-ext",
4
- "patterns": [
5
- {
6
- "include": "#erb"
7
- },
8
- {
9
- "name": "string.unquoted.block.yaml-ext",
10
- "begin": "^(\\s*)(?!-\\s*)(\\S+\\s*(:))\\s*(\\||\u003e)",
11
- "end": "^(?!\\1\\s+)(?=\\s*(-|\\S+\\s*:|#))",
12
- "patterns": [
13
- {
14
- "include": "#erb"
15
- }
16
- ],
17
- "beginCaptures": {
18
- "2": {
19
- "name": "entity.name.tag.yaml-ext"
20
- },
21
- "3": {
22
- "name": "punctuation.separator.key-value.yaml-ext"
23
- }
24
- }
25
- },
26
- {
27
- "name": "string.unquoted.block.yaml-ext",
28
- "begin": "^(\\s*)(?:(-)|(?:(-(\\s*))?(\\S+\\s*(:))))\\s*(\\||\u003e)",
29
- "end": "^(?!\\1 \\4\\s+)(?=\\s*(-|\\S+\\s*:|#))",
30
- "patterns": [
31
- {
32
- "include": "#erb"
33
- }
34
- ],
35
- "beginCaptures": {
36
- "2": {
37
- "name": "punctuation.definition.entry.yaml-ext"
38
- },
39
- "3": {
40
- "name": "punctuation.definition.entry.yaml-ext"
41
- },
42
- "5": {
43
- "name": "entity.name.tag.yaml-ext"
44
- },
45
- "6": {
46
- "name": "punctuation.separator.key-value.yaml-ext"
47
- }
48
- }
49
- },
50
- {
51
- "name": "constant.numeric.yaml-ext",
52
- "match": "(?:(?:(-\\s*)?([^\\s#].*?(:)(?=\\s)))|(-))\\s*((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)?\\s*($|(?=#)(?!#\\{))",
53
- "captures": {
54
- "1": {
55
- "name": "punctuation.definition.entry.yaml-ext"
56
- },
57
- "2": {
58
- "name": "entity.name.tag.yaml-ext"
59
- },
60
- "3": {
61
- "name": "punctuation.separator.key-value.yaml-ext"
62
- },
63
- "4": {
64
- "name": "punctuation.definition.entry.yaml-ext"
65
- }
66
- }
67
- },
68
- {
69
- "name": "string.unquoted.yaml-ext",
70
- "begin": "(?:(?:(-\\s*)?([^\\s#].*?(:)(?=\\s)))|(-))[ \t]*",
71
- "end": "$|(?=#)(?!#\\{)",
72
- "patterns": [
73
- {
74
- "name": "string.unquoted.yaml-ext",
75
- "match": "\\!\\s*"
76
- },
77
- {
78
- "include": "#double_quoted_string"
79
- },
80
- {
81
- "include": "#single_quoted_string"
82
- },
83
- {
84
- "name": "string.unquoted.yaml-ext",
85
- "match": "[^\"'#\\n]([^#\\n]|((?\u003c!\\s)#))*"
86
- }
87
- ],
88
- "beginCaptures": {
89
- "1": {
90
- "name": "punctuation.definition.entry.yaml-ext"
91
- },
92
- "2": {
93
- "name": "entity.name.tag.yaml-ext"
94
- },
95
- "3": {
96
- "name": "punctuation.separator.key-value.yaml-ext"
97
- },
98
- "4": {
99
- "name": "punctuation.definition.entry.yaml-ext"
100
- }
101
- }
102
- },
103
- {
104
- "name": "constant.other.date.yaml-ext",
105
- "match": "(?:(?:(-\\s*)?(\\w+\\s*(:)))|(-))\\s*([0-9]{4}-[0-9]{2}-[0-9]{2})\\s*($|(?=#)(?!#\\{))",
106
- "captures": {
107
- "1": {
108
- "name": "punctuation.definition.entry.yaml-ext"
109
- },
110
- "2": {
111
- "name": "entity.name.tag.yaml-ext"
112
- },
113
- "3": {
114
- "name": "punctuation.separator.key-value.yaml-ext"
115
- },
116
- "4": {
117
- "name": "punctuation.definition.entry.yaml-ext"
118
- }
119
- }
120
- },
121
- {
122
- "name": "meta.tag.yaml-ext",
123
- "match": "(\\w.*?)(:)\\s*((\\!\\!)omap)?",
124
- "captures": {
125
- "1": {
126
- "name": "entity.name.tag.yaml-ext"
127
- },
128
- "2": {
129
- "name": "punctuation.separator.key-value.yaml-ext"
130
- },
131
- "3": {
132
- "name": "keyword.other.omap.yaml-ext"
133
- },
134
- "4": {
135
- "name": "punctuation.definition.keyword.yaml-ext"
136
- }
137
- }
138
- },
139
- {
140
- "name": "variable.other.yaml-ext",
141
- "match": "(\\\u0026|\\*)\\w.*?$",
142
- "captures": {
143
- "1": {
144
- "name": "punctuation.definition.variable.yaml-ext"
145
- }
146
- }
147
- },
148
- {
149
- "include": "#double_quoted_string"
150
- },
151
- {
152
- "include": "#single_quoted_string"
153
- },
154
- {
155
- "name": "string.interpolated.yaml-ext",
156
- "begin": "`",
157
- "end": "`",
158
- "patterns": [
159
- {
160
- "include": "#escaped_char"
161
- },
162
- {
163
- "include": "#erb"
164
- }
165
- ],
166
- "beginCaptures": {
167
- "0": {
168
- "name": "punctuation.definition.string.begin.yaml-ext"
169
- }
170
- },
171
- "endCaptures": {
172
- "0": {
173
- "name": "punctuation.definition.string.end.yaml-ext"
174
- }
175
- }
176
- },
177
- {
178
- "name": "keyword.operator.merge-key.yaml-ext",
179
- "match": "(\\\u003c\\\u003c): ((\\*).*)$",
180
- "captures": {
181
- "1": {
182
- "name": "entity.name.tag.yaml-ext"
183
- },
184
- "2": {
185
- "name": "keyword.operator.merge-key.yaml-ext"
186
- },
187
- "3": {
188
- "name": "punctuation.definition.keyword.yaml-ext"
189
- }
190
- }
191
- },
192
- {
193
- "name": "invalid.deprecated.trailing-whitespace.yaml-ext",
194
- "match": "( |\t)+$",
195
- "disabled": true
196
- },
197
- {
198
- "begin": "(^[ \\t]+)?(?\u003c!\\$)(?\u003c=^|[ \\t])(?=#)(?!#\\{)",
199
- "end": "(?!\\G)",
200
- "patterns": [
201
- {
202
- "name": "comment.line.number-sign.yaml-ext",
203
- "begin": "#",
204
- "end": "\\n",
205
- "beginCaptures": {
206
- "0": {
207
- "name": "punctuation.definition.comment.yaml-ext"
208
- }
209
- }
210
- }
211
- ],
212
- "beginCaptures": {
213
- "1": {
214
- "name": "punctuation.whitespace.comment.leading.yaml-ext"
215
- }
216
- }
217
- },
218
- {
219
- "name": "keyword.operator.symbol",
220
- "match": "-"
221
- },
222
- {
223
- "name": "meta.leading-tabs.yaml-ext",
224
- "begin": "^(?=\\t)",
225
- "end": "(?=[^\\t])",
226
- "patterns": [
227
- {
228
- "match": "(\\t)(\\t)?",
229
- "captures": {
230
- "1": {
231
- "name": "meta.odd-tab"
232
- },
233
- "2": {
234
- "name": "meta.even-tab"
235
- }
236
- }
237
- }
238
- ]
239
- }
240
- ],
241
- "repository": {
242
- "double_quoted_string": {
243
- "name": "string.quoted.double.yaml-ext",
244
- "begin": "\"",
245
- "end": "\"",
246
- "patterns": [
247
- {
248
- "include": "#escaped_char"
249
- },
250
- {
251
- "include": "#erb"
252
- }
253
- ],
254
- "beginCaptures": {
255
- "0": {
256
- "name": "punctuation.definition.string.begin.yaml-ext"
257
- }
258
- },
259
- "endCaptures": {
260
- "0": {
261
- "name": "punctuation.definition.string.end.yaml-ext"
262
- }
263
- }
264
- },
265
- "erb": {
266
- "name": "meta.embedded.line.ruby",
267
- "contentName": "source.ruby.rails",
268
- "begin": "\u003c%+(?!\u003e)=?",
269
- "end": "(%)\u003e",
270
- "patterns": [
271
- {
272
- "name": "comment.line.number-sign.ruby",
273
- "match": "(#).*?(?=%\u003e)",
274
- "captures": {
275
- "1": {
276
- "name": "punctuation.definition.comment.ruby"
277
- }
278
- }
279
- },
280
- {}
281
- ],
282
- "beginCaptures": {
283
- "0": {
284
- "name": "punctuation.definition.embedded.begin.ruby"
285
- }
286
- },
287
- "endCaptures": {
288
- "0": {
289
- "name": "punctuation.definition.embedded.end.ruby"
290
- },
291
- "1": {
292
- "name": "source.ruby.rails"
293
- }
294
- }
295
- },
296
- "escaped_char": {
297
- "name": "constant.character.escape.yaml-ext",
298
- "match": "\\\\."
299
- },
300
- "single_quoted_string": {
301
- "name": "string.quoted.single.yaml-ext",
302
- "begin": "'",
303
- "end": "'",
304
- "patterns": [
305
- {
306
- "include": "#escaped_char"
307
- },
308
- {
309
- "include": "#erb"
310
- }
311
- ],
312
- "beginCaptures": {
313
- "0": {
314
- "name": "punctuation.definition.string.begin.yaml-ext"
315
- }
316
- },
317
- "endCaptures": {
318
- "0": {
319
- "name": "punctuation.definition.string.end.yaml-ext"
320
- }
321
- }
322
- }
323
- }
324
- }