tm-grammars 1.24.20 → 1.24.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/grammars/fish.json +224 -100
- package/index.js +6 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -76,7 +76,7 @@ import { grammars } from 'tm-grammars'
|
|
|
76
76
|
| `erb` | | [textmate/ruby.tmbundle](https://github.com/textmate/ruby.tmbundle/blob/ecf0f1df23984bcff9b51552e35d9696cb0d9539/Syntaxes/HTML%20(Ruby%20-%20ERB).tmLanguage) | | | `html` `ruby` | 1.90 kB |
|
|
77
77
|
| `erlang` | `erl` | [erlang-ls/grammar](https://github.com/erlang-ls/grammar/blob/fe898becd3004bcb4947ab50d6b6b830fbfb9228/Erlang.plist) | [Apache-2.0](https://raw.githubusercontent.com/erlang-ls/grammar/main/LICENSE) | | `markdown` | 35.64 kB |
|
|
78
78
|
| `fennel` | | [kongeor/vsc-fennel](https://github.com/kongeor/vsc-fennel/blob/664148923d7bd72531120d0cba712c6dba6f698d/syntaxes/fennel.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/kongeor/vsc-fennel/master/LICENSE) | | | 4.53 kB |
|
|
79
|
-
| `fish` | | [bmalehorn/vscode-fish](https://github.com/bmalehorn/vscode-fish/blob/
|
|
79
|
+
| `fish` | | [bmalehorn/vscode-fish](https://github.com/bmalehorn/vscode-fish/blob/888213a73202e394bf9b80f09fb8b5c0f130d1b6/syntaxes/fish.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/bmalehorn/vscode-fish/master/LICENSE) | | | 6.00 kB |
|
|
80
80
|
| `fluent` | `ftl` | [macabeus/vscode-fluent](https://github.com/macabeus/vscode-fluent/blob/8544ea296a7769a359f43ddff4dc4b6c61f5cf59/syntaxes/fluent.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/macabeus/vscode-fluent/master/LICENSE) | | | 3.38 kB |
|
|
81
81
|
| `fortran-fixed-form` | `f` `for` `f77` | [fortran-lang/vscode-fortran-support](https://github.com/fortran-lang/vscode-fortran-support/blob/e642012094fc0a7379f204bb4e61243005afb1da/syntaxes/fortran_fixed-form.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/fortran-lang/vscode-fortran-support/main/LICENSE) | | `fortran-free-form` | 903.00 B |
|
|
82
82
|
| `fortran-free-form` | `f90` `f95` `f03` `f08` `f18` | [fortran-lang/vscode-fortran-support](https://github.com/fortran-lang/vscode-fortran-support/blob/f7fb41579770a0d8c75b9f295d167b31147b4f33/syntaxes/fortran_free-form.tmLanguage.json) | [MIT](https://raw.githubusercontent.com/fortran-lang/vscode-fortran-support/main/LICENSE) | | | 82.16 kB |
|
package/grammars/fish.json
CHANGED
|
@@ -1,14 +1,199 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "Fish",
|
|
3
|
-
"fileTypes": [
|
|
4
|
-
"fish"
|
|
5
|
-
],
|
|
6
|
-
"firstLineMatch": "^#!.*\\bfish\\b",
|
|
7
|
-
"foldingStartMarker": "^\\s*(function|while|if|switch|for|begin)\\s.*$",
|
|
8
|
-
"foldingStopMarker": "^\\s*end\\s*$",
|
|
9
3
|
"name": "fish",
|
|
10
4
|
"patterns": [
|
|
11
5
|
{
|
|
6
|
+
"include": "#string-double"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"include": "#string-single"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"include": "#comment"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"include": "#command"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"include": "#keywords"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"include": "#io-redirection"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"include": "#operators"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"include": "#options"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"include": "#subshell"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"include": "#variable"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"include": "#escape"
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"repository": {
|
|
40
|
+
"command": {
|
|
41
|
+
"captures": {
|
|
42
|
+
"2": {
|
|
43
|
+
"name": "keyword.operator.pipe.fish"
|
|
44
|
+
},
|
|
45
|
+
"3": {
|
|
46
|
+
"name": "keyword.control.fish"
|
|
47
|
+
},
|
|
48
|
+
"5": {
|
|
49
|
+
"name": "support.function.command.fish"
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
"match": "(^\\s*|&&\\s*|(\\|)\\s*|\\(\\s*|;\\s*|\\b(if|while)\\b\\s+)(?!(?<!\\.)\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\b(?![!?]))([-\\].0-9A-\\[_a-z]+)"
|
|
53
|
+
},
|
|
54
|
+
"command-subshell": {
|
|
55
|
+
"captures": {
|
|
56
|
+
"2": {
|
|
57
|
+
"name": "keyword.operator.pipe.fish"
|
|
58
|
+
},
|
|
59
|
+
"3": {
|
|
60
|
+
"name": "keyword.control.fish"
|
|
61
|
+
},
|
|
62
|
+
"5": {
|
|
63
|
+
"name": "support.function.command.fish"
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"match": "(\\G\\s*|&&\\s*|(\\|)\\s*|\\(\\s*|;\\s*|\\b(if|while)\\b\\s+)(?!(?<!\\.)\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\b(?![!?]))([-\\].0-9A-\\[_a-z]+)"
|
|
67
|
+
},
|
|
68
|
+
"comment": {
|
|
69
|
+
"captures": {
|
|
70
|
+
"1": {
|
|
71
|
+
"name": "punctuation.definition.comment.fish"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"match": "(?<!\\$)(#)(?!\\{).*$\\n?",
|
|
75
|
+
"name": "comment.line.number-sign.fish"
|
|
76
|
+
},
|
|
77
|
+
"escape": {
|
|
78
|
+
"patterns": [
|
|
79
|
+
{
|
|
80
|
+
"match": "\\\\[] \"#$\\&-*;<>?\\[^abefnrtv{-~]",
|
|
81
|
+
"name": "constant.character.escape.single.fish"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"match": "\\\\x\\h{1,2}",
|
|
85
|
+
"name": "constant.character.escape.hex-ascii.fish"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"match": "\\\\X\\h{1,2}",
|
|
89
|
+
"name": "constant.character.escape.hex-byte.fish"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"match": "\\\\[0-7]{1,3}",
|
|
93
|
+
"name": "constant.character.escape.octal.fish"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"match": "\\\\u\\h{1,4}",
|
|
97
|
+
"name": "constant.character.escape.unicode-16-bit.fish"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"match": "\\\\U\\h{1,8}",
|
|
101
|
+
"name": "constant.character.escape.unicode-32-bit.fish"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"match": "\\\\c[A-Za-z]",
|
|
105
|
+
"name": "constant.character.escape.control.fish"
|
|
106
|
+
}
|
|
107
|
+
]
|
|
108
|
+
},
|
|
109
|
+
"io-redirection": {
|
|
110
|
+
"patterns": [
|
|
111
|
+
{
|
|
112
|
+
"captures": {
|
|
113
|
+
"1": {
|
|
114
|
+
"name": "keyword.operator.redirect.fish"
|
|
115
|
+
},
|
|
116
|
+
"2": {
|
|
117
|
+
"name": "keyword.operator.redirect.target.fish"
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"match": "(<|(?:[>^]|>>|\\^\\^)(?:&[-012])?|[012](?:[<>]|>>)(?:&[-012])?)\\s*(?!\\()([\\--9A-Z_a-z]+)"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"match": "<|([>^]|>>|\\^\\^)(&[-012])?|[012]([<>]|>>)(&[-012])?",
|
|
124
|
+
"name": "keyword.operator.redirect.fish"
|
|
125
|
+
}
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
"keywords": {
|
|
129
|
+
"patterns": [
|
|
130
|
+
{
|
|
131
|
+
"captures": {
|
|
132
|
+
"2": {
|
|
133
|
+
"name": "keyword.control.fish"
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
"match": "(^\\s*|&&\\s*|(?<=\\|)\\s*|\\(\\s*|;\\s*|(?<=\\bwhile\\b)\\s+|(?<=\\bif\\b)\\s+|(?<=\\band\\b)\\s+|(?<=\\bor\\b)\\s+|(?<=\\bnot\\b)\\s+)(?<!\\.)\\b(while|if|and|or|not)\\b(?![!?])"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"captures": {
|
|
140
|
+
"2": {
|
|
141
|
+
"name": "keyword.control.fish"
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
"match": "(^\\s*|&&\\s*|(?<=\\|)\\s*|\\(\\s*|;\\s*)(?<!\\.)\\b(function|else|switch|case|for|begin|end|continue|break|return|source|exit|wait)\\b(?![!?])"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"match": "\\b(in)\\b(?![!?])",
|
|
148
|
+
"name": "keyword.control.fish"
|
|
149
|
+
}
|
|
150
|
+
]
|
|
151
|
+
},
|
|
152
|
+
"keywords-subshell": {
|
|
153
|
+
"patterns": [
|
|
154
|
+
{
|
|
155
|
+
"captures": {
|
|
156
|
+
"2": {
|
|
157
|
+
"name": "keyword.control.fish"
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"match": "(\\G\\s*|&&\\s*|(?<=\\|)\\s*|\\(\\s*|;\\s*|(?<=\\bwhile\\b)\\s+|(?<=\\bif\\b)\\s+|(?<=\\band\\b)\\s+|(?<=\\bor\\b)\\s+|(?<=\\bnot\\b)\\s+)(?<!\\.)\\b(while|if|and|or|not)\\b(?![!?])"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"captures": {
|
|
164
|
+
"2": {
|
|
165
|
+
"name": "keyword.control.fish"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
"match": "(\\G\\s*|&&\\s*|(?<=\\|)\\s*|\\(\\s*|;\\s*)(?<!\\.)\\b(function|else|switch|case|for|begin|end|continue|break|return|source|exit|wait)\\b(?![!?])"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"match": "\\b(in)\\b(?![!?])",
|
|
172
|
+
"name": "keyword.control.fish"
|
|
173
|
+
}
|
|
174
|
+
]
|
|
175
|
+
},
|
|
176
|
+
"operators": {
|
|
177
|
+
"patterns": [
|
|
178
|
+
{
|
|
179
|
+
"match": "&",
|
|
180
|
+
"name": "keyword.operator.background.fish"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"match": "\\*\\*|[*?]",
|
|
184
|
+
"name": "keyword.operator.glob.fish"
|
|
185
|
+
}
|
|
186
|
+
]
|
|
187
|
+
},
|
|
188
|
+
"options": {
|
|
189
|
+
"captures": {
|
|
190
|
+
"1": {
|
|
191
|
+
"name": "source.option.fish"
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
"match": "\\s(-{1,2}[-0-9A-Z_a-z]+|-\\w)\\b"
|
|
195
|
+
},
|
|
196
|
+
"string-double": {
|
|
12
197
|
"begin": "\"",
|
|
13
198
|
"beginCaptures": {
|
|
14
199
|
"0": {
|
|
@@ -23,6 +208,9 @@
|
|
|
23
208
|
},
|
|
24
209
|
"name": "string.quoted.double.fish",
|
|
25
210
|
"patterns": [
|
|
211
|
+
{
|
|
212
|
+
"include": "#subshell"
|
|
213
|
+
},
|
|
26
214
|
{
|
|
27
215
|
"include": "#variable"
|
|
28
216
|
},
|
|
@@ -32,7 +220,7 @@
|
|
|
32
220
|
}
|
|
33
221
|
]
|
|
34
222
|
},
|
|
35
|
-
{
|
|
223
|
+
"string-single": {
|
|
36
224
|
"begin": "'",
|
|
37
225
|
"beginCaptures": {
|
|
38
226
|
"0": {
|
|
@@ -53,117 +241,53 @@
|
|
|
53
241
|
}
|
|
54
242
|
]
|
|
55
243
|
},
|
|
56
|
-
{
|
|
57
|
-
"
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
},
|
|
62
|
-
"match": "(?<!\\$)(#)(?!\\{).*$\\n?",
|
|
63
|
-
"name": "comment.line.number-sign.fish"
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"captures": {
|
|
67
|
-
"2": {
|
|
68
|
-
"name": "keyword.operator.pipe.fish"
|
|
69
|
-
},
|
|
70
|
-
"3": {
|
|
71
|
-
"name": "keyword.control.fish"
|
|
72
|
-
},
|
|
73
|
-
"5": {
|
|
74
|
-
"name": "support.function.command.fish"
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
"match": "(^\\s*|&&\\s*|(\\|)\\s*|\\(\\s*|;\\s*|\\b(if|while)\\b\\s+)(?!(?<!\\.)\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\b(?![!?]))([-\\].0-9A-\\[_a-z]+)"
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"captures": {
|
|
81
|
-
"2": {
|
|
82
|
-
"name": "keyword.control.fish"
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
"match": "(^\\s*|&&\\s*|(?<=\\|)\\s*|\\(\\s*|;\\s*|(?<=\\b(?:while|if|and|or|not)\\b)\\s+)(?<!\\.)\\b(while|if|and|or|not)\\b(?![!?])"
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"captures": {
|
|
89
|
-
"2": {
|
|
90
|
-
"name": "keyword.control.fish"
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
"match": "(^\\s*|&&\\s*|(?<=\\|)\\s*|\\(\\s*|;\\s*)(?<!\\.)\\b(function|else|switch|case|for|begin|end|continue|break|return|source|exit|wait)\\b(?![!?])"
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
"match": "\\b(in)\\b(?![!?])",
|
|
97
|
-
"name": "keyword.control.fish"
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
"captures": {
|
|
101
|
-
"1": {
|
|
102
|
-
"name": "keyword.operator.redirect.fish"
|
|
103
|
-
},
|
|
104
|
-
"2": {
|
|
105
|
-
"name": "keyword.operator.redirect.target.fish"
|
|
244
|
+
"subshell": {
|
|
245
|
+
"begin": "\\$\\(",
|
|
246
|
+
"beginCaptures": {
|
|
247
|
+
"0": {
|
|
248
|
+
"name": "punctuation.definition.subshell.begin.fish"
|
|
106
249
|
}
|
|
107
250
|
},
|
|
108
|
-
"
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
"name": "keyword.operator.redirect.fish"
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
"match": "&",
|
|
116
|
-
"name": "keyword.operator.background.fish"
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
"match": "\\*\\*|[*?]",
|
|
120
|
-
"name": "keyword.operator.glob.fish"
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
"captures": {
|
|
124
|
-
"1": {
|
|
125
|
-
"name": "source.option.fish"
|
|
251
|
+
"end": "\\)",
|
|
252
|
+
"endCaptures": {
|
|
253
|
+
"0": {
|
|
254
|
+
"name": "punctuation.definition.subshell.end.fish"
|
|
126
255
|
}
|
|
127
256
|
},
|
|
128
|
-
"
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
"include": "#variable"
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
"include": "#escape"
|
|
135
|
-
}
|
|
136
|
-
],
|
|
137
|
-
"repository": {
|
|
138
|
-
"escape": {
|
|
257
|
+
"name": "meta.embedded.subshell.fish",
|
|
139
258
|
"patterns": [
|
|
140
259
|
{
|
|
141
|
-
"
|
|
142
|
-
"name": "constant.character.escape.single.fish"
|
|
260
|
+
"include": "#string-double"
|
|
143
261
|
},
|
|
144
262
|
{
|
|
145
|
-
"
|
|
146
|
-
"name": "constant.character.escape.hex-ascii.fish"
|
|
263
|
+
"include": "#string-single"
|
|
147
264
|
},
|
|
148
265
|
{
|
|
149
|
-
"
|
|
150
|
-
"name": "constant.character.escape.hex-byte.fish"
|
|
266
|
+
"include": "#comment"
|
|
151
267
|
},
|
|
152
268
|
{
|
|
153
|
-
"
|
|
154
|
-
"name": "constant.character.escape.octal.fish"
|
|
269
|
+
"include": "#keywords-subshell"
|
|
155
270
|
},
|
|
156
271
|
{
|
|
157
|
-
"
|
|
158
|
-
"name": "constant.character.escape.unicode-16-bit.fish"
|
|
272
|
+
"include": "#command-subshell"
|
|
159
273
|
},
|
|
160
274
|
{
|
|
161
|
-
"
|
|
162
|
-
"name": "constant.character.escape.unicode-32-bit.fish"
|
|
275
|
+
"include": "#io-redirection"
|
|
163
276
|
},
|
|
164
277
|
{
|
|
165
|
-
"
|
|
166
|
-
|
|
278
|
+
"include": "#operators"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"include": "#options"
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
"include": "#subshell"
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"include": "#variable"
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
"include": "#escape"
|
|
167
291
|
}
|
|
168
292
|
]
|
|
169
293
|
},
|
package/index.js
CHANGED
|
@@ -1167,22 +1167,22 @@ export const grammars = [
|
|
|
1167
1167
|
sourceApi: 'https://api.github.com/repos/kongeor/vsc-fennel/contents/syntaxes/fennel.tmLanguage.json?ref=664148923d7bd72531120d0cba712c6dba6f698d',
|
|
1168
1168
|
},
|
|
1169
1169
|
{
|
|
1170
|
-
byteSize:
|
|
1170
|
+
byteSize: 6146,
|
|
1171
1171
|
categories: [
|
|
1172
1172
|
'scripting',
|
|
1173
1173
|
],
|
|
1174
1174
|
displayName: 'Fish',
|
|
1175
1175
|
funding: [
|
|
1176
1176
|
],
|
|
1177
|
-
hash: '
|
|
1178
|
-
lastUpdate: '2025-10-
|
|
1177
|
+
hash: 'gLC6DZLi_rN4pBKvSyp1CBSC1rO1UB6pErRskqXsydo',
|
|
1178
|
+
lastUpdate: '2025-10-13T05:02:18Z',
|
|
1179
1179
|
license: 'MIT',
|
|
1180
1180
|
licenseUrl: 'https://raw.githubusercontent.com/bmalehorn/vscode-fish/master/LICENSE',
|
|
1181
1181
|
name: 'fish',
|
|
1182
1182
|
scopeName: 'source.fish',
|
|
1183
|
-
sha: '
|
|
1184
|
-
source: 'https://github.com/bmalehorn/vscode-fish/blob/
|
|
1185
|
-
sourceApi: 'https://api.github.com/repos/bmalehorn/vscode-fish/contents/syntaxes/fish.tmLanguage.json?ref=
|
|
1183
|
+
sha: '888213a73202e394bf9b80f09fb8b5c0f130d1b6',
|
|
1184
|
+
source: 'https://github.com/bmalehorn/vscode-fish/blob/888213a73202e394bf9b80f09fb8b5c0f130d1b6/syntaxes/fish.tmLanguage.json',
|
|
1185
|
+
sourceApi: 'https://api.github.com/repos/bmalehorn/vscode-fish/contents/syntaxes/fish.tmLanguage.json?ref=888213a73202e394bf9b80f09fb8b5c0f130d1b6',
|
|
1186
1186
|
},
|
|
1187
1187
|
{
|
|
1188
1188
|
aliases: [
|