github-linguist 7.7.0 → 7.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/hidden.manref.json +1 -1
  3. data/grammars/source.4dm.json +1029 -0
  4. data/grammars/source.agda.json +32 -202
  5. data/grammars/source.clarion.json +6 -6
  6. data/grammars/source.dircolors.json +101 -3
  7. data/grammars/source.editorconfig.json +23 -5
  8. data/grammars/source.elm.json +1 -1
  9. data/grammars/source.emacs.lisp.json +10 -0
  10. data/grammars/source.faust.json +119 -0
  11. data/grammars/source.gcode.json +170 -8
  12. data/grammars/source.hlsl.json +9 -5
  13. data/grammars/source.hx.json +4 -0
  14. data/grammars/source.igor.json +44 -0
  15. data/grammars/source.julia.json +8 -4
  16. data/grammars/source.mcfunction-snapshot.json +1 -1
  17. data/grammars/source.meson.json +1 -1
  18. data/grammars/source.odin-ehr.json +806 -0
  19. data/grammars/source.odin.json +402 -0
  20. data/grammars/source.p4.json +5 -21
  21. data/grammars/source.scala.json +27 -3
  22. data/grammars/source.sy.json +2088 -183
  23. data/grammars/source.terraform.json +576 -132
  24. data/grammars/source.ts.json +89 -30
  25. data/grammars/source.tsx.json +89 -30
  26. data/grammars/source.v.json +541 -788
  27. data/grammars/source.viml.json +2 -2
  28. data/grammars/source.webassembly.json +10 -0
  29. data/grammars/version +1 -1
  30. data/lib/linguist/VERSION +1 -1
  31. data/lib/linguist/generated.rb +10 -1
  32. data/lib/linguist/heuristics.yml +41 -3
  33. data/lib/linguist/languages.json +1 -1
  34. data/lib/linguist/languages.yml +117 -34
  35. data/lib/linguist/lazy_blob.rb +10 -10
  36. data/lib/linguist/linguist.bundle +0 -0
  37. data/lib/linguist/samples.json +6577 -1979
  38. data/lib/linguist/vendor.yml +3 -0
  39. metadata +6 -6
  40. data/grammars/source.LS.json +0 -85
  41. data/grammars/source.MCPOST.json +0 -54
  42. data/grammars/source.MOD.json +0 -55
  43. data/grammars/source.apt.json +0 -18
@@ -327,7 +327,7 @@
327
327
  },
328
328
  "module_name": {
329
329
  "name": "support.other.module.elm",
330
- "match": "[A-Z][A-Za-z._']*"
330
+ "match": "[A-Z][A-Za-z0-9._']*"
331
331
  },
332
332
  "type_signature": {
333
333
  "patterns": [
@@ -2,6 +2,16 @@
2
2
  "name": "Emacs Lisp",
3
3
  "scopeName": "source.emacs.lisp",
4
4
  "patterns": [
5
+ {
6
+ "name": "comment.line.hashbang.emacs.lisp",
7
+ "begin": "\\A(#!)",
8
+ "end": "$",
9
+ "beginCaptures": {
10
+ "1": {
11
+ "name": "punctuation.definition.comment.hashbang.emacs.lisp"
12
+ }
13
+ }
14
+ },
5
15
  {
6
16
  "include": "#main"
7
17
  }
@@ -0,0 +1,119 @@
1
+ {
2
+ "name": "faust",
3
+ "scopeName": "source.faust",
4
+ "patterns": [
5
+ {
6
+ "name": "comment.block.faust",
7
+ "begin": "/\\*",
8
+ "end": "\\*/",
9
+ "captures": {
10
+ "0": {
11
+ "name": "punctuation.definition.comment.faust"
12
+ }
13
+ }
14
+ },
15
+ {
16
+ "name": "comment.line.double-slash.faust",
17
+ "match": "(//).*$\\n?",
18
+ "captures": {
19
+ "1": {
20
+ "name": "punctuation.definition.comment.faust"
21
+ }
22
+ }
23
+ },
24
+ {
25
+ "name": "constant.numeric.faust",
26
+ "match": "(\\.\\d+([Ee][-+]\\d+)?i?)\\b"
27
+ },
28
+ {
29
+ "name": "constant.numeric.faust",
30
+ "match": "\\b\\d+\\.\\d*(([Ee][-+]\\d+)?i?\\b)?"
31
+ },
32
+ {
33
+ "name": "constant.numeric.faust",
34
+ "match": "\\b((0x[0-9a-fA-F]+)|(0[0-7]+i?)|(\\d+([Ee]\\d+)?i?)|(\\d+[Ee][-+]\\d+i?))\\b"
35
+ },
36
+ {
37
+ "name": "constant.symbol.faust",
38
+ "match": "\\b(mem|prefix|int|float|rdtable|rwtable|select2|select3|ffunction|fconstant|fvariable|button|checkbox|vslider|hslider|nentry|vgroup|hgroup|tgroup|vbargraph|hbargraph|attach|acos|asin|atan|atan2|cos|sin|tan|exp|log|log10|pow|sqrt|abs|min|max|fmod|remainder|floor|ceil|rint)\\b"
39
+ },
40
+ {
41
+ "name": "keyword.control.faust",
42
+ "match": "\\b(import|component|declare|library|environment|with|letrec|process|seq|par|sum|prod|inputs|outputs)\\b"
43
+ },
44
+ {
45
+ "name": "keyword.algebra.faust",
46
+ "match": "(,|:\u003e|\u003c:|:|~)"
47
+ },
48
+ {
49
+ "name": "constant.numeric.faust",
50
+ "match": "(;|=)"
51
+ },
52
+ {
53
+ "include": "#string_escaped_char"
54
+ },
55
+ {
56
+ "include": "#strings"
57
+ },
58
+ {
59
+ "include": "#operators"
60
+ }
61
+ ],
62
+ "repository": {
63
+ "operators": {
64
+ "patterns": [
65
+ {
66
+ "name": "keyword.operator.faust",
67
+ "match": "(\\+|\u0026|==|!=|\\(|\\)|\\-|\\||\\-=|\\|=|\\|\\||\u003c|\u003c=|\\[|\\]|\\*|\\^|\\*=|\\^=|\u003c\\-|\u003e|\u003e=|\\{|\\}|/|\u003c\u003c|/=|\u003c\u003c=|\\+\\+|=|:=|,|;|%|\u003e\u003e|%=|\u003e\u003e=|\\-\\-|!|\\.\\.\\.|\\.|:|\u0026\\^|\u0026\\^=)"
68
+ }
69
+ ]
70
+ },
71
+ "printf_verbs": {
72
+ "patterns": [
73
+ {
74
+ "name": "constant.escape.format-verb.faust",
75
+ "match": "%(\\[\\d+\\])?([\\+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGsp]"
76
+ }
77
+ ]
78
+ },
79
+ "string_escaped_char": {
80
+ "patterns": [
81
+ {
82
+ "name": "constant.character.escape.faust",
83
+ "match": "\\\\([0-7]{3}|[abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})"
84
+ },
85
+ {
86
+ "name": "invalid.illegal.unknown-escape.faust",
87
+ "match": "\\\\[^0-7xuUabfnrtv\\'\"]"
88
+ }
89
+ ]
90
+ },
91
+ "strings": {
92
+ "patterns": [
93
+ {
94
+ "name": "string.quoted.double.faust",
95
+ "begin": "\"",
96
+ "end": "\"",
97
+ "patterns": [
98
+ {
99
+ "include": "#string_escaped_char"
100
+ },
101
+ {
102
+ "include": "#printf_verbs"
103
+ }
104
+ ],
105
+ "beginCaptures": {
106
+ "0": {
107
+ "name": "punctuation.definition.string.begin.faust"
108
+ }
109
+ },
110
+ "endCaptures": {
111
+ "0": {
112
+ "name": "punctuation.definition.string.end.faust"
113
+ }
114
+ }
115
+ }
116
+ ]
117
+ }
118
+ }
119
+ }
@@ -1,18 +1,180 @@
1
1
  {
2
- "name": "GCode",
2
+ "name": "VSCode GCode Syntax",
3
3
  "scopeName": "source.gcode",
4
4
  "patterns": [
5
5
  {
6
- "name": "comment.number-sign.nc",
7
- "match": "(\\()(.*)(\\))"
6
+ "include": "#comments"
8
7
  },
9
8
  {
10
- "name": "keyword.nc",
11
- "match": "(G|F|S|M|T|O|%)[0-9]+"
9
+ "include": "#speedsfeeds"
12
10
  },
13
11
  {
14
- "name": "variable.language.MCPOST",
15
- "match": "(X|Y|Z|I|J|K)([0-9]+(?:\\.[0-9]*)?)"
12
+ "include": "#prognumbers"
13
+ },
14
+ {
15
+ "include": "#coords"
16
+ },
17
+ {
18
+ "include": "#tools"
19
+ },
20
+ {
21
+ "include": "#modifiers"
22
+ },
23
+ {
24
+ "include": "#macrovars"
25
+ },
26
+ {
27
+ "include": "#keywords"
28
+ },
29
+ {
30
+ "include": "#operators"
31
+ }
32
+ ],
33
+ "repository": {
34
+ "comments": {
35
+ "patterns": [
36
+ {
37
+ "name": "comment.gcode",
38
+ "match": "(\\(.+\\))"
39
+ },
40
+ {
41
+ "name": "comment.gcode",
42
+ "begin": ";",
43
+ "end": "\\n"
44
+ },
45
+ {
46
+ "begin": "[\\/].*",
47
+ "end": "\\n"
48
+ }
49
+ ]
50
+ },
51
+ "coords": {
52
+ "patterns": [
53
+ {
54
+ "name": "string.gcode",
55
+ "match": "([xX])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
56
+ },
57
+ {
58
+ "name": "string.gcode",
59
+ "match": "([yY])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
60
+ },
61
+ {
62
+ "name": "invalid.gcode",
63
+ "match": "([zZ])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
64
+ },
65
+ {
66
+ "name": "constant.character.escape.gcode",
67
+ "match": "([aAbBcC])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
68
+ }
69
+ ]
70
+ },
71
+ "keywords": {
72
+ "patterns": [
73
+ {
74
+ "name": "markup.bold.gcode",
75
+ "match": "[gG][0-9]{1,3}"
76
+ },
77
+ {
78
+ "name": "keyword.operator.quantifier.regexp.gcode",
79
+ "match": "[mM][0-9]{1,3}"
80
+ },
81
+ {
82
+ "name": "string.gcode",
83
+ "match": "([\\%])"
84
+ },
85
+ {
86
+ "name": "keyword.control.gcode",
87
+ "match": "(GOTO)|(IF)|(EQ)|(NE)|(LT)|(GT)|(LE)|(GE)|(DO)|(WHILE)|(END)|(AND)|(OR)|(XOR)"
88
+ }
89
+ ]
90
+ },
91
+ "macrovars": {
92
+ "patterns": [
93
+ {
94
+ "name": "variable.other.gcode",
95
+ "match": "[#][0-9]+"
96
+ },
97
+ {
98
+ "name": "variable.other.gcode",
99
+ "match": "[#][\\[].+[\\]]"
100
+ }
101
+ ]
102
+ },
103
+ "modifiers": {
104
+ "patterns": [
105
+ {
106
+ "name": "constant.character.escape.gcode",
107
+ "match": "([iIjJkK])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
108
+ },
109
+ {
110
+ "name": "support.constant.math.gcode",
111
+ "match": "([qQrR])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
112
+ }
113
+ ]
114
+ },
115
+ "operators": {
116
+ "patterns": [
117
+ {
118
+ "name": "support.constant.math.gcode",
119
+ "match": "(SIN)|(COS)|(TAN)|(ASIN)|(ACOS)|(ATAN)|(FIX)|(FUP)|(LN)|(ROUND)|(SQRT)"
120
+ },
121
+ {
122
+ "name": "support.constant.math.gcode",
123
+ "match": "(FIX)|(FUP)|(ROUND)|(ABS)"
124
+ },
125
+ {
126
+ "name": "support.constant.math.gcode",
127
+ "match": "(\\+)|(\\*)|(\\/)|(\\*\\*)"
128
+ },
129
+ {
130
+ "name": "invalid.gcode",
131
+ "match": "(\\-)"
132
+ }
133
+ ]
134
+ },
135
+ "prognumbers": {
136
+ "patterns": [
137
+ {
138
+ "name": "constant.numeric.gcode",
139
+ "match": "[nN][0-9]+"
140
+ },
141
+ {
142
+ "name": "string.regexp.gcode",
143
+ "match": "[oO][0-9]{1,5}"
144
+ },
145
+ {
146
+ "name": "string.regexp.gcode",
147
+ "match": "[pP][0-9]{1,5}"
148
+ }
149
+ ]
150
+ },
151
+ "speedsfeeds": {
152
+ "patterns": [
153
+ {
154
+ "name": "constant.language.gcode",
155
+ "match": "([sS])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
156
+ },
157
+ {
158
+ "name": "constant.language.gcode",
159
+ "match": "([fF])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
160
+ }
161
+ ]
162
+ },
163
+ "tools": {
164
+ "patterns": [
165
+ {
166
+ "name": "constant.character.gcode",
167
+ "match": "([dD])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
168
+ },
169
+ {
170
+ "name": "constant.character.gcode",
171
+ "match": "([hH])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
172
+ },
173
+ {
174
+ "name": "constant.character.gcode",
175
+ "match": "([tT])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
176
+ }
177
+ ]
16
178
  }
17
- ]
179
+ }
18
180
  }
@@ -13,16 +13,20 @@
13
13
  "end": "$"
14
14
  },
15
15
  {
16
- "name": "constant.numeric.hlsl",
17
- "match": "\\b([0-9]+\\.?[0-9]*)\\b"
16
+ "name": "constant.numeric.decimal.hlsl",
17
+ "match": "\\b[0-9]+\\.[0-9]*(F|f)?\\b"
18
18
  },
19
19
  {
20
- "name": "constant.numeric.hlsl",
21
- "match": "\\b(\\.[0-9]+)\\b"
20
+ "name": "constant.numeric.decimal.hlsl",
21
+ "match": "(\\.([0-9]+)(F|f)?)\\b"
22
+ },
23
+ {
24
+ "name": "constant.numeric.decimal.hlsl",
25
+ "match": "\\b([0-9]+(F|f)?)\\b"
22
26
  },
23
27
  {
24
28
  "name": "constant.numeric.hex.hlsl",
25
- "match": "\\b(0x[0-9A-F]+)\\b"
29
+ "match": "\\b(0(x|X)[0-9a-fA-F]+)\\b"
26
30
  },
27
31
  {
28
32
  "name": "constant.language.hlsl",
@@ -1067,6 +1067,10 @@
1067
1067
  {
1068
1068
  "include": "#macro-reification"
1069
1069
  },
1070
+ {
1071
+ "name": "keyword.operator.extractor.hx",
1072
+ "match": "=\u003e"
1073
+ },
1070
1074
  {
1071
1075
  "include": "#operator-assignment"
1072
1076
  },
@@ -66,6 +66,50 @@
66
66
  }
67
67
  }
68
68
  },
69
+ {
70
+ "name": "meta.macro",
71
+ "begin": "(?i)^\\s*(Macro|Window)\\s+(\\w+)\\s*(\\(\\))(\\s+:\\s+\\w+)?",
72
+ "end": "(?i)^\\s*EndMacro",
73
+ "patterns": [
74
+ {
75
+ "include": "#igor_operations"
76
+ }
77
+ ],
78
+ "beginCaptures": {
79
+ "1": {
80
+ "name": "constant.igor"
81
+ },
82
+ "2": {
83
+ "name": "entity.name.igor"
84
+ },
85
+ "3": {
86
+ "name": "brackethighlighter.round.igor"
87
+ },
88
+ "4": {
89
+ "name": "entity.name.igor"
90
+ }
91
+ },
92
+ "endCaptures": {
93
+ "0": {
94
+ "name": "constant.igor"
95
+ }
96
+ }
97
+ },
98
+ {
99
+ "name": "meta.picture",
100
+ "begin": "(?i)^\\s*(Picture)",
101
+ "end": "(?i)^\\s*End",
102
+ "beginCaptures": {
103
+ "0": {
104
+ "name": "constant.igor"
105
+ }
106
+ },
107
+ "endCaptures": {
108
+ "0": {
109
+ "name": "constant.igor"
110
+ }
111
+ }
112
+ },
69
113
  {
70
114
  "include": "#igor_variable"
71
115
  },
@@ -280,7 +280,7 @@
280
280
  },
281
281
  {
282
282
  "name": "keyword.operator.update.julia",
283
- "match": "(?::=|\\+=|-=|\\*=|//=|/=|\\.//=|\\./=|\\.\\*=|\\\\=|\\.\\\\=|\\^=|\\.\\^=|%=|\\.%=|÷=|\\.÷=|\\|=|\u0026=|\\$=|\u003c\u003c=|\u003e\u003e=|\u003e\u003e\u003e=|=(?!=))"
283
+ "match": "(?::=|\\+=|-=|\\*=|//=|/=|\\.//=|\\./=|\\.\\*=|\\\\=|\\.\\\\=|\\^=|\\.\\^=|%=|\\.%=|÷=|\\.÷=|\\|=|\u0026=|\\.\u0026=|⊻=|\\.⊻=|\\$=|\u003c\u003c=|\u003e\u003e=|\u003e\u003e\u003e=|=(?!=))"
284
284
  },
285
285
  {
286
286
  "name": "keyword.operator.shift.julia",
@@ -299,7 +299,7 @@
299
299
  },
300
300
  {
301
301
  "name": "keyword.operator.relation.julia",
302
- "match": "(?:===|(?\u003c=\\s)in(?=\\s)|\\.==|!==|!=|\\.\u003e=|\\.\u003e|\\.\u003c=|\\.\u003c|==|\\.!=|\\.=|\\.!|\u003c:|\u003e:|:\u003e|(?\u003c!\u003e)\u003e=|(?\u003c!\u003c)\u003c=|\u003e|\u003c)"
302
+ "match": "(?:===|(?\u003c=\\s)in(?=\\s)|∈|\\.∈|∉|\\.∉|∋|\\.∋|∌|\\.∌|≈|\\.≈|≉|\\.≉|≠|\\.≠|≡|\\.≡|≢|\\.≢|⊆|\\.⊆|⊇|\\.⊇|⊈|\\.⊈|⊉|\\.⊉|⊊|\\.⊊|⊋|\\.⊋|\\.==|!==|!=|\\.\u003e=|\\.\u003e|\\.\u003c=|\\.\u003c|\\.≤|\\.≥|==|\\.!=|\\.=|\\.!|\u003c:|\u003e:|:\u003e|(?\u003c!\u003e)\u003e=|(?\u003c!\u003c)\u003c=|\u003e|\u003c|≥|≤)"
303
303
  },
304
304
  {
305
305
  "name": "keyword.operator.ternary.julia",
@@ -319,11 +319,15 @@
319
319
  },
320
320
  {
321
321
  "name": "keyword.operator.bitwise.julia",
322
- "match": "(?:\\||\\\u0026|~)"
322
+ "match": "(?:\\||\\.\\||\\\u0026|\\.\\\u0026|~|\\.~|⊻|\\.⊻)"
323
323
  },
324
324
  {
325
325
  "name": "keyword.operator.arithmetic.julia",
326
- "match": "(?:\\+\\+|--|\\+|\\.\\+|-|\\.\\-|\\*|\\.\\*|//(?!=)|\\.//(?!=)|/|\\./|%|\\.%|\\\\|\\.\\\\|\\^|\\.\\^)"
326
+ "match": "(?:\\+\\+|--|\\+|\\.\\+|-|\\.\\-|\\*|\\.\\*|//(?!=)|\\.//(?!=)|/|\\./|%|\\.%|\\\\|\\.\\\\|\\^|\\.\\^|÷|\\.÷|⋅|\\.⋅|∩|\\.∩|∪|\\.∪|×|√|∛)"
327
+ },
328
+ {
329
+ "name": "keyword.operator.compose.julia",
330
+ "match": "(?:∘)"
327
331
  },
328
332
  {
329
333
  "name": "keyword.operator.isa.julia",