@codingame/monaco-vscode-clojure-default-extension 1.81.8-next.1

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.
@@ -0,0 +1,431 @@
1
+ {
2
+ "information_for_contributors": [
3
+ "This file has been converted from https://github.com/atom/language-clojure/blob/master/grammars/clojure.cson",
4
+ "If you want to provide a fix or improvement, please create a pull request against the original repository.",
5
+ "Once accepted there, we are happy to receive an update request."
6
+ ],
7
+ "version": "https://github.com/atom/language-clojure/commit/45bdb881501d0b8f8b707ca1d3fcc8b4b99fca03",
8
+ "name": "Clojure",
9
+ "scopeName": "source.clojure",
10
+ "patterns": [
11
+ {
12
+ "include": "#comment"
13
+ },
14
+ {
15
+ "include": "#shebang-comment"
16
+ },
17
+ {
18
+ "include": "#quoted-sexp"
19
+ },
20
+ {
21
+ "include": "#sexp"
22
+ },
23
+ {
24
+ "include": "#keyfn"
25
+ },
26
+ {
27
+ "include": "#string"
28
+ },
29
+ {
30
+ "include": "#vector"
31
+ },
32
+ {
33
+ "include": "#set"
34
+ },
35
+ {
36
+ "include": "#map"
37
+ },
38
+ {
39
+ "include": "#regexp"
40
+ },
41
+ {
42
+ "include": "#var"
43
+ },
44
+ {
45
+ "include": "#constants"
46
+ },
47
+ {
48
+ "include": "#dynamic-variables"
49
+ },
50
+ {
51
+ "include": "#metadata"
52
+ },
53
+ {
54
+ "include": "#namespace-symbol"
55
+ },
56
+ {
57
+ "include": "#symbol"
58
+ }
59
+ ],
60
+ "repository": {
61
+ "comment": {
62
+ "begin": "(?<!\\\\);",
63
+ "beginCaptures": {
64
+ "0": {
65
+ "name": "punctuation.definition.comment.clojure"
66
+ }
67
+ },
68
+ "end": "$",
69
+ "name": "comment.line.semicolon.clojure"
70
+ },
71
+ "constants": {
72
+ "patterns": [
73
+ {
74
+ "match": "(nil)(?=(\\s|\\)|\\]|\\}))",
75
+ "name": "constant.language.nil.clojure"
76
+ },
77
+ {
78
+ "match": "(true|false)",
79
+ "name": "constant.language.boolean.clojure"
80
+ },
81
+ {
82
+ "match": "(##(?:Inf|-Inf|NaN))",
83
+ "name": "constant.numeric.symbol.clojure"
84
+ },
85
+ {
86
+ "match": "([-+]?\\d+/\\d+)",
87
+ "name": "constant.numeric.ratio.clojure"
88
+ },
89
+ {
90
+ "match": "([-+]?(?:(?:3[0-6])|(?:[12]\\d)|[2-9])[rR][0-9A-Za-z]+N?)",
91
+ "name": "constant.numeric.arbitrary-radix.clojure"
92
+ },
93
+ {
94
+ "match": "([-+]?0[xX][0-9a-fA-F]+N?)",
95
+ "name": "constant.numeric.hexadecimal.clojure"
96
+ },
97
+ {
98
+ "match": "([-+]?0[0-7]+N?)",
99
+ "name": "constant.numeric.octal.clojure"
100
+ },
101
+ {
102
+ "match": "([-+]?[0-9]+(?:(\\.|(?=[eEM]))[0-9]*([eE][-+]?[0-9]+)?)M?)",
103
+ "name": "constant.numeric.double.clojure"
104
+ },
105
+ {
106
+ "match": "([-+]?\\d+N?)",
107
+ "name": "constant.numeric.long.clojure"
108
+ },
109
+ {
110
+ "include": "#keyword"
111
+ }
112
+ ]
113
+ },
114
+ "keyword": {
115
+ "match": "(?<=(\\s|\\(|\\[|\\{)):[\\w\\#\\.\\-\\_\\:\\+\\=\\>\\<\\/\\!\\?\\*]+(?=(\\s|\\)|\\]|\\}|\\,))",
116
+ "name": "constant.keyword.clojure"
117
+ },
118
+ "keyfn": {
119
+ "patterns": [
120
+ {
121
+ "match": "(?<=(\\s|\\(|\\[|\\{))(if(-[-\\p{Ll}\\?]*)?|when(-[-\\p{Ll}]*)?|for(-[-\\p{Ll}]*)?|cond|do|let(-[-\\p{Ll}\\?]*)?|binding|loop|recur|fn|throw[\\p{Ll}\\-]*|try|catch|finally|([\\p{Ll}]*case))(?=(\\s|\\)|\\]|\\}))",
122
+ "name": "storage.control.clojure"
123
+ },
124
+ {
125
+ "match": "(?<=(\\s|\\(|\\[|\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[\\p{Ll}\\-]*))(?=(\\s|\\)|\\]|\\}))",
126
+ "name": "keyword.control.clojure"
127
+ }
128
+ ]
129
+ },
130
+ "dynamic-variables": {
131
+ "match": "\\*[\\w\\.\\-\\_\\:\\+\\=\\>\\<\\!\\?\\d]+\\*",
132
+ "name": "meta.symbol.dynamic.clojure"
133
+ },
134
+ "map": {
135
+ "begin": "(\\{)",
136
+ "beginCaptures": {
137
+ "1": {
138
+ "name": "punctuation.section.map.begin.clojure"
139
+ }
140
+ },
141
+ "end": "(\\}(?=[\\}\\]\\)\\s]*(?:;|$)))|(\\})",
142
+ "endCaptures": {
143
+ "1": {
144
+ "name": "punctuation.section.map.end.trailing.clojure"
145
+ },
146
+ "2": {
147
+ "name": "punctuation.section.map.end.clojure"
148
+ }
149
+ },
150
+ "name": "meta.map.clojure",
151
+ "patterns": [
152
+ {
153
+ "include": "$self"
154
+ }
155
+ ]
156
+ },
157
+ "metadata": {
158
+ "patterns": [
159
+ {
160
+ "begin": "(\\^\\{)",
161
+ "beginCaptures": {
162
+ "1": {
163
+ "name": "punctuation.section.metadata.map.begin.clojure"
164
+ }
165
+ },
166
+ "end": "(\\}(?=[\\}\\]\\)\\s]*(?:;|$)))|(\\})",
167
+ "endCaptures": {
168
+ "1": {
169
+ "name": "punctuation.section.metadata.map.end.trailing.clojure"
170
+ },
171
+ "2": {
172
+ "name": "punctuation.section.metadata.map.end.clojure"
173
+ }
174
+ },
175
+ "name": "meta.metadata.map.clojure",
176
+ "patterns": [
177
+ {
178
+ "include": "$self"
179
+ }
180
+ ]
181
+ },
182
+ {
183
+ "begin": "(\\^)",
184
+ "end": "(\\s)",
185
+ "name": "meta.metadata.simple.clojure",
186
+ "patterns": [
187
+ {
188
+ "include": "#keyword"
189
+ },
190
+ {
191
+ "include": "$self"
192
+ }
193
+ ]
194
+ }
195
+ ]
196
+ },
197
+ "quoted-sexp": {
198
+ "begin": "(['``]\\()",
199
+ "beginCaptures": {
200
+ "1": {
201
+ "name": "punctuation.section.expression.begin.clojure"
202
+ }
203
+ },
204
+ "end": "(\\))$|(\\)(?=[\\}\\]\\)\\s]*(?:;|$)))|(\\))",
205
+ "endCaptures": {
206
+ "1": {
207
+ "name": "punctuation.section.expression.end.trailing.clojure"
208
+ },
209
+ "2": {
210
+ "name": "punctuation.section.expression.end.trailing.clojure"
211
+ },
212
+ "3": {
213
+ "name": "punctuation.section.expression.end.clojure"
214
+ }
215
+ },
216
+ "name": "meta.quoted-expression.clojure",
217
+ "patterns": [
218
+ {
219
+ "include": "$self"
220
+ }
221
+ ]
222
+ },
223
+ "regexp": {
224
+ "begin": "#\"",
225
+ "beginCaptures": {
226
+ "0": {
227
+ "name": "punctuation.definition.regexp.begin.clojure"
228
+ }
229
+ },
230
+ "end": "\"",
231
+ "endCaptures": {
232
+ "0": {
233
+ "name": "punctuation.definition.regexp.end.clojure"
234
+ }
235
+ },
236
+ "name": "string.regexp.clojure",
237
+ "patterns": [
238
+ {
239
+ "include": "#regexp_escaped_char"
240
+ }
241
+ ]
242
+ },
243
+ "regexp_escaped_char": {
244
+ "match": "\\\\.",
245
+ "name": "constant.character.escape.clojure"
246
+ },
247
+ "set": {
248
+ "begin": "(\\#\\{)",
249
+ "beginCaptures": {
250
+ "1": {
251
+ "name": "punctuation.section.set.begin.clojure"
252
+ }
253
+ },
254
+ "end": "(\\}(?=[\\}\\]\\)\\s]*(?:;|$)))|(\\})",
255
+ "endCaptures": {
256
+ "1": {
257
+ "name": "punctuation.section.set.end.trailing.clojure"
258
+ },
259
+ "2": {
260
+ "name": "punctuation.section.set.end.clojure"
261
+ }
262
+ },
263
+ "name": "meta.set.clojure",
264
+ "patterns": [
265
+ {
266
+ "include": "$self"
267
+ }
268
+ ]
269
+ },
270
+ "sexp": {
271
+ "begin": "(\\()",
272
+ "beginCaptures": {
273
+ "1": {
274
+ "name": "punctuation.section.expression.begin.clojure"
275
+ }
276
+ },
277
+ "end": "(\\))$|(\\)(?=[\\}\\]\\)\\s]*(?:;|$)))|(\\))",
278
+ "endCaptures": {
279
+ "1": {
280
+ "name": "punctuation.section.expression.end.trailing.clojure"
281
+ },
282
+ "2": {
283
+ "name": "punctuation.section.expression.end.trailing.clojure"
284
+ },
285
+ "3": {
286
+ "name": "punctuation.section.expression.end.clojure"
287
+ }
288
+ },
289
+ "name": "meta.expression.clojure",
290
+ "patterns": [
291
+ {
292
+ "begin": "(?<=\\()(ns|declare|def[\\w\\d._:+=><!?*-]*|[\\w._:+=><!?*-][\\w\\d._:+=><!?*-]*/def[\\w\\d._:+=><!?*-]*)\\s+",
293
+ "beginCaptures": {
294
+ "1": {
295
+ "name": "keyword.control.clojure"
296
+ }
297
+ },
298
+ "end": "(?=\\))",
299
+ "name": "meta.definition.global.clojure",
300
+ "patterns": [
301
+ {
302
+ "include": "#metadata"
303
+ },
304
+ {
305
+ "include": "#dynamic-variables"
306
+ },
307
+ {
308
+ "match": "([\\p{L}\\.\\-\\_\\+\\=\\>\\<\\!\\?\\*][\\w\\.\\-\\_\\:\\+\\=\\>\\<\\!\\?\\*\\d]*)",
309
+ "name": "entity.global.clojure"
310
+ },
311
+ {
312
+ "include": "$self"
313
+ }
314
+ ]
315
+ },
316
+ {
317
+ "include": "#keyfn"
318
+ },
319
+ {
320
+ "include": "#constants"
321
+ },
322
+ {
323
+ "include": "#vector"
324
+ },
325
+ {
326
+ "include": "#map"
327
+ },
328
+ {
329
+ "include": "#set"
330
+ },
331
+ {
332
+ "include": "#sexp"
333
+ },
334
+ {
335
+ "match": "(?<=\\()(.+?)(?=\\s|\\))",
336
+ "captures": {
337
+ "1": {
338
+ "name": "entity.name.function.clojure"
339
+ }
340
+ },
341
+ "patterns": [
342
+ {
343
+ "include": "$self"
344
+ }
345
+ ]
346
+ },
347
+ {
348
+ "include": "$self"
349
+ }
350
+ ]
351
+ },
352
+ "shebang-comment": {
353
+ "begin": "^(#!)",
354
+ "beginCaptures": {
355
+ "1": {
356
+ "name": "punctuation.definition.comment.shebang.clojure"
357
+ }
358
+ },
359
+ "end": "$",
360
+ "name": "comment.line.shebang.clojure"
361
+ },
362
+ "string": {
363
+ "begin": "(?<!\\\\)(\")",
364
+ "beginCaptures": {
365
+ "1": {
366
+ "name": "punctuation.definition.string.begin.clojure"
367
+ }
368
+ },
369
+ "end": "(\")",
370
+ "endCaptures": {
371
+ "1": {
372
+ "name": "punctuation.definition.string.end.clojure"
373
+ }
374
+ },
375
+ "name": "string.quoted.double.clojure",
376
+ "patterns": [
377
+ {
378
+ "match": "\\\\.",
379
+ "name": "constant.character.escape.clojure"
380
+ }
381
+ ]
382
+ },
383
+ "namespace-symbol": {
384
+ "patterns": [
385
+ {
386
+ "match": "([\\p{L}\\.\\-\\_\\+\\=\\>\\<\\!\\?\\*][\\w\\.\\-\\_\\:\\+\\=\\>\\<\\!\\?\\*\\d]*)/",
387
+ "captures": {
388
+ "1": {
389
+ "name": "meta.symbol.namespace.clojure"
390
+ }
391
+ }
392
+ }
393
+ ]
394
+ },
395
+ "symbol": {
396
+ "patterns": [
397
+ {
398
+ "match": "([\\p{L}\\.\\-\\_\\+\\=\\>\\<\\!\\?\\*][\\w\\.\\-\\_\\:\\+\\=\\>\\<\\!\\?\\*\\d]*)",
399
+ "name": "meta.symbol.clojure"
400
+ }
401
+ ]
402
+ },
403
+ "var": {
404
+ "match": "(?<=(\\s|\\(|\\[|\\{)\\#)'[\\w\\.\\-\\_\\:\\+\\=\\>\\<\\/\\!\\?\\*]+(?=(\\s|\\)|\\]|\\}))",
405
+ "name": "meta.var.clojure"
406
+ },
407
+ "vector": {
408
+ "begin": "(\\[)",
409
+ "beginCaptures": {
410
+ "1": {
411
+ "name": "punctuation.section.vector.begin.clojure"
412
+ }
413
+ },
414
+ "end": "(\\](?=[\\}\\]\\)\\s]*(?:;|$)))|(\\])",
415
+ "endCaptures": {
416
+ "1": {
417
+ "name": "punctuation.section.vector.end.trailing.clojure"
418
+ },
419
+ "2": {
420
+ "name": "punctuation.section.vector.end.clojure"
421
+ }
422
+ },
423
+ "name": "meta.vector.clojure",
424
+ "patterns": [
425
+ {
426
+ "include": "$self"
427
+ }
428
+ ]
429
+ }
430
+ }
431
+ }
package/index.js ADDED
@@ -0,0 +1,7 @@
1
+ import { registerExtension } from 'vscode/extensions';
2
+
3
+ var manifest = {name:"clojure",displayName:"Clojure Language Basics",description:"Provides syntax highlighting and bracket matching in Clojure files.",version:"1.0.0",publisher:"vscode",license:"MIT",engines:{vscode:"*"},scripts:{"update-grammar":"node ../node_modules/vscode-grammar-updater/bin atom/language-clojure grammars/clojure.cson ./syntaxes/clojure.tmLanguage.json"},contributes:{languages:[{id:"clojure",aliases:["Clojure","clojure"],extensions:[".clj",".cljs",".cljc",".cljx",".clojure",".edn"],configuration:"./language-configuration.json"}],grammars:[{language:"clojure",scopeName:"source.clojure",path:"./syntaxes/clojure.tmLanguage.json"}],configurationDefaults:{"[clojure]":{"diffEditor.ignoreTrimWhitespace":false}}},repository:{type:"git",url:"https://github.com/microsoft/vscode.git"},main:undefined};
4
+
5
+ const { registerFileUrl } = registerExtension(manifest);
6
+ registerFileUrl('./syntaxes/clojure.tmLanguage.json', new URL('./clojure.tmLanguage.json', import.meta.url).toString(), 'application/json');
7
+ registerFileUrl('./language-configuration.json', new URL('./language-configuration.json', import.meta.url).toString(), 'application/json');
@@ -0,0 +1,25 @@
1
+ {
2
+ "comments": {
3
+ "lineComment": ";;"
4
+ },
5
+ "brackets": [
6
+ ["{", "}"],
7
+ ["[", "]"],
8
+ ["(", ")"]
9
+ ],
10
+ "autoClosingPairs": [
11
+ ["{", "}"],
12
+ ["[", "]"],
13
+ ["(", ")"],
14
+ { "open": "\"", "close": "\"", "notIn": ["string"] }
15
+ ],
16
+ "surroundingPairs": [
17
+ ["{", "}"],
18
+ ["[", "]"],
19
+ ["(", ")"],
20
+ ["\"", "\""]
21
+ ],
22
+ "folding": {
23
+ "offSide": true
24
+ }
25
+ }
package/package.json ADDED
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "@codingame/monaco-vscode-clojure-default-extension",
3
+ "version": "1.81.8-next.1",
4
+ "keywords": [],
5
+ "author": {
6
+ "name": "CodinGame",
7
+ "url": "http://www.codingame.com"
8
+ },
9
+ "license": "MIT",
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "https://github.com/CodinGame/monaco-vscode-api"
13
+ },
14
+ "type": "module",
15
+ "private": false,
16
+ "description": "Default VSCode extension designed to be used with @codingame/monaco-vscode-api",
17
+ "main": "index.js",
18
+ "module": "index.js",
19
+ "dependencies": {
20
+ "vscode": "npm:@codingame/monaco-vscode-api@1.81.8-next.1"
21
+ }
22
+ }