github-linguist 7.7.0 → 7.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +47 -0
  3. data/grammars/hidden.manref.json +1 -1
  4. data/grammars/hint.haskell.json +47 -0
  5. data/grammars/hint.message.haskell.json +47 -0
  6. data/grammars/hint.type.haskell.json +47 -0
  7. data/grammars/markdown.plantuml.codeblock.json +26 -0
  8. data/grammars/source.4dm.json +1100 -0
  9. data/grammars/source.abap.json +1 -1
  10. data/grammars/source.agda.json +32 -202
  11. data/grammars/source.ahk.json +6 -2
  12. data/grammars/source.chapel.json +4 -4
  13. data/grammars/source.csound.json +1 -1
  14. data/grammars/source.dart.json +57 -31
  15. data/grammars/source.dircolors.json +101 -3
  16. data/grammars/source.editorconfig.json +23 -5
  17. data/grammars/source.elixir.json +8 -0
  18. data/grammars/source.elm.json +1 -1
  19. data/grammars/source.emacs.lisp.json +10 -0
  20. data/grammars/source.faust.json +119 -0
  21. data/grammars/source.gcode.json +166 -8
  22. data/grammars/source.hack.json +4 -18
  23. data/grammars/source.haskell.json +47 -0
  24. data/grammars/source.hlsl.json +9 -5
  25. data/grammars/source.hsig.json +47 -0
  26. data/grammars/source.hx.json +4 -0
  27. data/grammars/source.igor.json +44 -0
  28. data/grammars/source.julia.json +25 -21
  29. data/grammars/source.lean.json +19 -3
  30. data/grammars/source.lean.markdown.json +2598 -0
  31. data/grammars/source.matlab.json +215 -152
  32. data/grammars/source.mcfunction-snapshot.json +1 -1
  33. data/grammars/source.meson.json +1 -1
  34. data/grammars/source.mrc.json +416 -534
  35. data/grammars/source.nasl.json +155 -0
  36. data/grammars/source.nextflow.json +2 -2
  37. data/grammars/source.odin-ehr.json +806 -0
  38. data/grammars/source.odin.json +402 -0
  39. data/grammars/source.prisma.json +7 -0
  40. data/grammars/source.qasm.json +66 -0
  41. data/grammars/source.ql.json +1408 -0
  42. data/grammars/source.scala.json +27 -3
  43. data/grammars/source.sy.json +2088 -183
  44. data/grammars/source.terraform.json +576 -132
  45. data/grammars/source.tnsaudit.json +256 -0
  46. data/grammars/source.ts.json +89 -30
  47. data/grammars/source.tsx.json +89 -30
  48. data/grammars/source.v.json +541 -788
  49. data/grammars/source.viml.json +2 -2
  50. data/grammars/source.webassembly.json +10 -0
  51. data/grammars/source.wsd.json +775 -0
  52. data/grammars/text.tex.latex.haskell.json +47 -0
  53. data/grammars/version +1 -1
  54. data/lib/linguist/VERSION +1 -1
  55. data/lib/linguist/file_blob.rb +1 -1
  56. data/lib/linguist/generated.rb +23 -3
  57. data/lib/linguist/heuristics.yml +48 -3
  58. data/lib/linguist/languages.json +1 -1
  59. data/lib/linguist/languages.yml +156 -34
  60. data/lib/linguist/lazy_blob.rb +10 -10
  61. data/lib/linguist/linguist.bundle +0 -0
  62. data/lib/linguist/samples.json +7739 -2010
  63. data/lib/linguist/shebang.rb +5 -3
  64. data/lib/linguist/vendor.yml +3 -0
  65. metadata +13 -7
  66. data/grammars/source.LS.json +0 -85
  67. data/grammars/source.MCPOST.json +0 -54
  68. data/grammars/source.MOD.json +0 -55
  69. data/grammars/source.apt.json +0 -18
  70. data/grammars/source.yaml-ext.json +0 -324
@@ -32,8 +32,106 @@
32
32
  "match": "\\b\\d+?\\b"
33
33
  },
34
34
  {
35
- "name": "keyword.other.dircolors",
36
- "match": "\\b(TERM|COLOR|EIGHTBIT|OPTION|NORMAL|NORM|FILE|RESET|DIR|LNK|LINK|SYMLINK|ORPHAN|MISSING|FIFO|PIPE|SOCK|BLK|BLOCK|CHR|CHAR|DOOR|EXEC|LEFT|LEFTCODE|RIGHT|RIGHTCODE|END|ENDCODE|SUID|SETUID|SGID|SETGID|STICKY|OTHER_WRITABLE|OWR|STICKY_OTHER_WRITABLE|OWT|CAPABILITY|MULTIHARDLINK|CLRTOEOL)\\b"
35
+ "name": "punctuation.delimiter.semicolon.dircolors",
36
+ "match": ";"
37
+ },
38
+ {
39
+ "match": "(?i)^(\\s*)(TERM)\\s+((?:[^\\s#\\\\]|\\\\.)+)",
40
+ "captures": {
41
+ "1": {
42
+ "name": "punctuation.whitespace.comment.leading.dircolors"
43
+ },
44
+ "2": {
45
+ "name": "keyword.other.dircolors"
46
+ },
47
+ "3": {
48
+ "name": "variable.parameter.function.terminal-type.dircolors"
49
+ }
50
+ }
51
+ },
52
+ {
53
+ "match": "(?i)^(\\s*)(COLOR|EIGHTBIT)\\s+(all|none|no|tty|yes)\\b",
54
+ "captures": {
55
+ "1": {
56
+ "name": "punctuation.whitespace.comment.leading.dircolors"
57
+ },
58
+ "2": {
59
+ "name": "keyword.other.dircolors"
60
+ },
61
+ "3": {
62
+ "name": "constant.language.${3:/downcase}.dircolors"
63
+ }
64
+ }
65
+ },
66
+ {
67
+ "match": "(?i)^(\\s*)(OPTIONS)\\s+((?:[^\\s#\\\\]|\\\\.)+)",
68
+ "captures": {
69
+ "1": {
70
+ "name": "punctuation.whitespace.comment.leading.dircolors"
71
+ },
72
+ "2": {
73
+ "name": "keyword.other.dircolors"
74
+ },
75
+ "3": {
76
+ "patterns": [
77
+ {
78
+ "include": "source.opts"
79
+ }
80
+ ]
81
+ }
82
+ }
83
+ },
84
+ {
85
+ "match": "(?ix)\n^ (\\s*)\n(TERM|COLOR|EIGHTBIT|OPTION|NORMAL|NORM|FILE|RESET|DIR|LNK|LINK|SYMLINK|ORPHAN|MISSING\n|FIFO|PIPE|SOCK|BLK|BLOCK|CHR|CHAR|DOOR|EXEC|LEFT|LEFTCODE|RIGHT|RIGHTCODE|END|ENDCODE\n|SUID|SETUID|SGID|SETGID|STICKY|OTHER_WRITABLE|OWR|STICKY_OTHER_WRITABLE|OWT|CAPABILITY\n|MULTIHARDLINK|CLRTOEOL)\n(?=\\s|\\#|$)",
86
+ "captures": {
87
+ "1": {
88
+ "name": "punctuation.whitespace.comment.leading.dircolors"
89
+ },
90
+ "2": {
91
+ "name": "keyword.other.dircolors"
92
+ }
93
+ }
94
+ },
95
+ {
96
+ "match": "^(\\s*)((?:[^\\s#\\\\]|\\\\.)+)",
97
+ "captures": {
98
+ "1": {
99
+ "name": "punctuation.whitespace.comment.leading.dircolors"
100
+ },
101
+ "2": {
102
+ "name": "keyword.other.extension.dircolors",
103
+ "patterns": [
104
+ {
105
+ "include": "#escape"
106
+ }
107
+ ]
108
+ }
109
+ }
110
+ },
111
+ {
112
+ "include": "#escape"
113
+ }
114
+ ],
115
+ "repository": {
116
+ "escape": {
117
+ "patterns": [
118
+ {
119
+ "name": "constant.character.escape.caret-notation.dircolors",
120
+ "match": "\\^[?@A-Za-z\\[\\\\\\]^_]"
121
+ },
122
+ {
123
+ "name": "constant.character.escape.codepoint.hexadecimal.dircolors",
124
+ "match": "\\\\x[0-9A-Fa-f]{1,3}"
125
+ },
126
+ {
127
+ "name": "constant.character.escape.codepoint.octal.dircolors",
128
+ "match": "\\\\[0-7]{1,3}"
129
+ },
130
+ {
131
+ "name": "constant.character.escape.dircolors",
132
+ "match": "(?i)\\\\[abefnrtv?\\_^#]"
133
+ }
134
+ ]
37
135
  }
38
- ]
136
+ }
39
137
  }
@@ -51,10 +51,6 @@
51
51
  "name": "constant.language.boolean.${1:/downcase}.editorconfig",
52
52
  "match": "(?i)(?\u003c=\\s|=)(true|false|on|off|yes|no)(?=$|\\s)"
53
53
  },
54
- {
55
- "name": "constant.language.charset.encoding.${1:/downcase}.editorconfig",
56
- "match": "(?i)(?\u003c=\\s|=)(latin1|utf-8(?:-bom)?|utf-16[bl]e)(?=$|\\s)"
57
- },
58
54
  {
59
55
  "name": "constant.language.${1:/downcase}.editorconfig",
60
56
  "match": "(?i)(?\u003c=\\s|=)(CRLF|CR|LF|tab|space|unset)(?=$|\\s)"
@@ -200,9 +196,31 @@
200
196
  },
201
197
  {
202
198
  "name": "meta.rule.${1:/downcase}.editorconfig",
203
- "begin": "(?ix)\n^ \\s*\n( charset\n| end_of_line\n| indent_size\n| indent_style\n| insert_final_newline\n| max_line_length\n| root\n| tab_width\n| trim_trailing_whitespace\n) \\s* (=)",
199
+ "begin": "(?ix)\n^ \\s*\n( end_of_line\n| indent_size\n| indent_style\n| insert_final_newline\n| max_line_length\n| root\n| tab_width\n| trim_trailing_whitespace\n) \\s* (=)",
200
+ "end": "$",
201
+ "patterns": [
202
+ {
203
+ "include": "#value"
204
+ }
205
+ ],
206
+ "beginCaptures": {
207
+ "1": {
208
+ "name": "keyword.other.definition.${1:/downcase}.editorconfig"
209
+ },
210
+ "2": {
211
+ "name": "punctuation.separator.key-value.editorconfig"
212
+ }
213
+ }
214
+ },
215
+ {
216
+ "name": "meta.rule.charset.editorconfig",
217
+ "begin": "^\\s*(charset)\\s*(=)",
204
218
  "end": "$",
205
219
  "patterns": [
220
+ {
221
+ "name": "constant.language.charset.encoding.${1:/downcase}.editorconfig",
222
+ "match": "(?i)(?\u003c=\\s|=)([-\\w]+)(?=$|\\s)"
223
+ },
206
224
  {
207
225
  "include": "#value"
208
226
  }
@@ -817,6 +817,14 @@
817
817
  }
818
818
  }
819
819
  },
820
+ {
821
+ "name": "comment.unused.elixir",
822
+ "match": "\\b_([\\w]+[?!]?)"
823
+ },
824
+ {
825
+ "name": "comment.wildcard.elixir",
826
+ "match": "\\b_\\b"
827
+ },
820
828
  {
821
829
  "name": "constant.numeric.elixir",
822
830
  "match": "(?\u003c!\\w)\\?(\\\\(x[0-9A-Fa-f]{1,2}(?![0-9A-Fa-f])\\b|[^xMC])|[^\\s\\\\])"
@@ -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,176 @@
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
+ },
47
+ "coords": {
48
+ "patterns": [
49
+ {
50
+ "name": "string.gcode",
51
+ "match": "([xX])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
52
+ },
53
+ {
54
+ "name": "string.gcode",
55
+ "match": "([yY])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
56
+ },
57
+ {
58
+ "name": "invalid.gcode",
59
+ "match": "([zZ])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
60
+ },
61
+ {
62
+ "name": "constant.character.escape.gcode",
63
+ "match": "([aAbBcC])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
64
+ }
65
+ ]
66
+ },
67
+ "keywords": {
68
+ "patterns": [
69
+ {
70
+ "name": "markup.bold.gcode",
71
+ "match": "[gG][0-9]{1,3}"
72
+ },
73
+ {
74
+ "name": "keyword.operator.quantifier.regexp.gcode",
75
+ "match": "[mM][0-9]{1,3}"
76
+ },
77
+ {
78
+ "name": "string.gcode",
79
+ "match": "([\\%])"
80
+ },
81
+ {
82
+ "name": "keyword.control.gcode",
83
+ "match": "(GOTO)|(IF)|(EQ)|(NE)|(LT)|(GT)|(LE)|(GE)|(DO)|(WHILE)|(END)|(AND)|(OR)|(XOR)"
84
+ }
85
+ ]
86
+ },
87
+ "macrovars": {
88
+ "patterns": [
89
+ {
90
+ "name": "variable.other.gcode",
91
+ "match": "[#][0-9]+"
92
+ },
93
+ {
94
+ "name": "variable.other.gcode",
95
+ "match": "[#][\\[].+[\\]]"
96
+ }
97
+ ]
98
+ },
99
+ "modifiers": {
100
+ "patterns": [
101
+ {
102
+ "name": "constant.character.escape.gcode",
103
+ "match": "([iIjJkK])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
104
+ },
105
+ {
106
+ "name": "support.constant.math.gcode",
107
+ "match": "([qQrR])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
108
+ }
109
+ ]
110
+ },
111
+ "operators": {
112
+ "patterns": [
113
+ {
114
+ "name": "support.constant.math.gcode",
115
+ "match": "(SIN)|(COS)|(TAN)|(ASIN)|(ACOS)|(ATAN)|(FIX)|(FUP)|(LN)|(ROUND)|(SQRT)"
116
+ },
117
+ {
118
+ "name": "support.constant.math.gcode",
119
+ "match": "(FIX)|(FUP)|(ROUND)|(ABS)"
120
+ },
121
+ {
122
+ "name": "support.constant.math.gcode",
123
+ "match": "(\\+)|(\\*)|(\\/)|(\\*\\*)"
124
+ },
125
+ {
126
+ "name": "invalid.gcode",
127
+ "match": "(\\-)"
128
+ }
129
+ ]
130
+ },
131
+ "prognumbers": {
132
+ "patterns": [
133
+ {
134
+ "name": "constant.numeric.gcode",
135
+ "match": "[nN][0-9]+"
136
+ },
137
+ {
138
+ "name": "string.regexp.gcode",
139
+ "match": "[oO][0-9]{1,5}"
140
+ },
141
+ {
142
+ "name": "string.regexp.gcode",
143
+ "match": "[pP][0-9]{1,5}"
144
+ }
145
+ ]
146
+ },
147
+ "speedsfeeds": {
148
+ "patterns": [
149
+ {
150
+ "name": "constant.language.gcode",
151
+ "match": "([sS])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
152
+ },
153
+ {
154
+ "name": "constant.language.gcode",
155
+ "match": "([fF])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
156
+ }
157
+ ]
158
+ },
159
+ "tools": {
160
+ "patterns": [
161
+ {
162
+ "name": "constant.character.gcode",
163
+ "match": "([dD])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
164
+ },
165
+ {
166
+ "name": "constant.character.gcode",
167
+ "match": "([hH])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
168
+ },
169
+ {
170
+ "name": "constant.character.gcode",
171
+ "match": "([tT])(?=-|\\d|\\[|#)-?(?:\\d+(?:\\.\\d*)?)?"
172
+ }
173
+ ]
16
174
  }
17
- ]
175
+ }
18
176
  }