online-compiler-widget 0.0.3 → 1.0.2

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.
Files changed (161) hide show
  1. package/dist/abap-CrvW7_qN.js +1398 -0
  2. package/dist/apex-BAOI8p1v.js +327 -0
  3. package/dist/assets/css.worker-Cb0JI69t.js +93 -0
  4. package/dist/assets/html.worker-BNFZMwEc.js +470 -0
  5. package/dist/assets/json.worker-BCybXpia.js +58 -0
  6. package/dist/assets/ts.worker-DAVh1bw1.js +67731 -0
  7. package/dist/azcli-BlCk_UqW.js +68 -0
  8. package/dist/bat-DPoEelVx.js +100 -0
  9. package/dist/bicep-Cp1F394l.js +102 -0
  10. package/dist/cameligo-CWqtSlQs.js +174 -0
  11. package/dist/clojure-CKBp32Gf.js +761 -0
  12. package/dist/coffee-CDo6vc-J.js +232 -0
  13. package/dist/cpp-DokufPgf.js +389 -0
  14. package/dist/csharp-BQi3szM0.js +326 -0
  15. package/dist/csp-BSGtCCZ-.js +53 -0
  16. package/dist/css-DEPFDJfb.js +187 -0
  17. package/dist/cssMode-nHrB9Mnr.js +141 -0
  18. package/dist/cypher-DAb1vOxS.js +263 -0
  19. package/dist/dart-C8p4jewR.js +281 -0
  20. package/dist/dockerfile-DP0iLFPN.js +130 -0
  21. package/dist/ecl-BDQHA6fi.js +456 -0
  22. package/dist/elixir-D4II6kDM.js +569 -0
  23. package/dist/flow9-StcnL-VB.js +142 -0
  24. package/dist/freemarker2-BoiXdkJM.js +982 -0
  25. package/dist/fsharp-DdUVp3EN.js +217 -0
  26. package/dist/go-D1-I258M.js +218 -0
  27. package/dist/graphql-DWkL3f8U.js +151 -0
  28. package/dist/handlebars-C7PJzkmo.js +412 -0
  29. package/dist/hcl-D_0MNifv.js +183 -0
  30. package/dist/html-D_xe_tUa.js +301 -0
  31. package/dist/htmlMode-Dk_luXu_.js +152 -0
  32. package/dist/index-Ds0EJmOd.js +129200 -0
  33. package/dist/index.js +14 -0
  34. package/dist/ini-C4I2-MT7.js +71 -0
  35. package/dist/java-OBvaP_SS.js +232 -0
  36. package/dist/javascript-CUK67ITD.js +70 -0
  37. package/dist/jsonMode-BIAYTpVF.js +569 -0
  38. package/dist/julia-BmDH8Kkf.js +511 -0
  39. package/dist/kotlin-Dhu5AGOD.js +252 -0
  40. package/dist/less-CzmjXREq.js +162 -0
  41. package/dist/lexon-CV2c4pN9.js +157 -0
  42. package/dist/liquid-Cgsk8EmK.js +233 -0
  43. package/dist/lspLanguageFeatures-HqO1l9Me.js +1458 -0
  44. package/dist/lua-CFY5U8qF.js +162 -0
  45. package/dist/m3-BL_AnZVh.js +210 -0
  46. package/dist/markdown-CWKQPXCv.js +229 -0
  47. package/dist/mdx-QboWmT4M.js +158 -0
  48. package/dist/mips-ButYmJ5E.js +198 -0
  49. package/dist/msdax-C3cnXqDh.js +375 -0
  50. package/dist/mysql-YlSHaf6G.js +878 -0
  51. package/dist/objective-c-Dwnlproe.js +183 -0
  52. package/dist/pascal-UzGbSWEN.js +251 -0
  53. package/dist/pascaligo-CslTgu68.js +164 -0
  54. package/dist/perl-oj6r_mgw.js +626 -0
  55. package/dist/pgsql-DSBO0Mev.js +851 -0
  56. package/dist/php-YzCD--7j.js +500 -0
  57. package/dist/pla-CmylB8vQ.js +137 -0
  58. package/dist/postiats-CLFW5gNY.js +907 -0
  59. package/dist/powerquery-CmOWUvlh.js +890 -0
  60. package/dist/powershell-fHQcmBLK.js +239 -0
  61. package/dist/protobuf-p5BArb-9.js +420 -0
  62. package/dist/pug-gVdUDvqf.js +402 -0
  63. package/dist/python-kIZaMFF7.js +294 -0
  64. package/dist/qsharp-DnrWSUlt.js +301 -0
  65. package/dist/r-Cv309K2z.js +243 -0
  66. package/dist/razor-ms2cCMGp.js +543 -0
  67. package/dist/redis-DTcS4wMj.js +302 -0
  68. package/dist/redshift-hLxZVESM.js +809 -0
  69. package/dist/restructuredtext-C898lK4f.js +174 -0
  70. package/dist/ruby-CgKtnJIQ.js +511 -0
  71. package/dist/rust-bj8oxVnh.js +343 -0
  72. package/dist/sb-DWynz26l.js +115 -0
  73. package/dist/scala-BL5z1UEd.js +370 -0
  74. package/dist/scheme-DUJsH6VU.js +108 -0
  75. package/dist/scss-CxjmhvaL.js +262 -0
  76. package/dist/shell-D14Zs1dF.js +221 -0
  77. package/dist/solidity-WyRm-BGK.js +1367 -0
  78. package/dist/sophia-CKk-_Oa5.js +199 -0
  79. package/dist/sparql-DHtmINMZ.js +201 -0
  80. package/dist/sql-Dqaj5JHC.js +853 -0
  81. package/dist/st-Bj2IIaop.js +416 -0
  82. package/dist/style.css +1 -0
  83. package/dist/swift-DwxP72iM.js +312 -0
  84. package/dist/systemverilog-D7wJfuql.js +576 -0
  85. package/dist/tcl-0ApMt-eC.js +232 -0
  86. package/dist/tsMode-BiXWAJYS.js +946 -0
  87. package/dist/twig-DxwbdmvQ.js +392 -0
  88. package/dist/typescript-ByMmjZ38.js +336 -0
  89. package/dist/typespec-Fd-JwSuS.js +117 -0
  90. package/dist/vb-CxuyYE1I.js +372 -0
  91. package/dist/wgsl-DoEGc31J.js +439 -0
  92. package/dist/xml-iOXTZgNN.js +88 -0
  93. package/dist/yaml-RRlyy-QW.js +199 -0
  94. package/package.json +41 -36
  95. package/FileStorage/obj/FileStorage.csproj.EntityFrameworkCore.targets +0 -28
  96. package/README.md +0 -1
  97. package/eslint.config.js +0 -26
  98. package/index.html +0 -13
  99. package/index.tsx +0 -3
  100. package/openapitools.json +0 -7
  101. package/pnpm-workspace.yaml +0 -2
  102. package/public/vite.svg +0 -1
  103. package/src/App.css +0 -49
  104. package/src/App.tsx +0 -84
  105. package/src/api/.openapi-generator/FILES +0 -25
  106. package/src/api/.openapi-generator/VERSION +0 -1
  107. package/src/api/.openapi-generator-ignore +0 -23
  108. package/src/api/api.ts +0 -1312
  109. package/src/api/base.ts +0 -62
  110. package/src/api/common.ts +0 -113
  111. package/src/api/configuration.ts +0 -121
  112. package/src/api/docs/CompilationError.md +0 -26
  113. package/src/api/docs/CompileRequest.md +0 -22
  114. package/src/api/docs/CompileResult.md +0 -28
  115. package/src/api/docs/CompilerApi.md +0 -263
  116. package/src/api/docs/CreateFileDto.md +0 -22
  117. package/src/api/docs/CreateProjectRequest.md +0 -20
  118. package/src/api/docs/FileApi.md +0 -274
  119. package/src/api/docs/ProcessStatus.md +0 -28
  120. package/src/api/docs/ProjectApi.md +0 -362
  121. package/src/api/docs/ProjectInfo.md +0 -24
  122. package/src/api/docs/ProjectStats.md +0 -28
  123. package/src/api/docs/RenameFileDto.md +0 -20
  124. package/src/api/docs/RenameProjectRequest.md +0 -20
  125. package/src/api/docs/RunRequest.md +0 -24
  126. package/src/api/docs/RunResult.md +0 -30
  127. package/src/api/docs/RunningProjectInfo.md +0 -26
  128. package/src/api/docs/UpdateFileDto.md +0 -20
  129. package/src/api/git_push.sh +0 -57
  130. package/src/api/index.ts +0 -18
  131. package/src/assets/Badge.svg +0 -17
  132. package/src/assets/closeIcon.svg +0 -20
  133. package/src/assets/documentIcon.svg +0 -11
  134. package/src/assets/history.svg +0 -11
  135. package/src/assets/output.svg +0 -12
  136. package/src/assets/plus.svg +0 -20
  137. package/src/assets/react.svg +0 -1
  138. package/src/assets/save-icon.svg +0 -11
  139. package/src/assets/shield.svg +0 -10
  140. package/src/assets/start.svg +0 -11
  141. package/src/assets/stop.svg +0 -11
  142. package/src/components/CompilerWidget.module.scss +0 -169
  143. package/src/components/CompilerWidget.tsx +0 -279
  144. package/src/components/FileExplorer.module.scss +0 -372
  145. package/src/components/FileExplorer.tsx +0 -285
  146. package/src/components/MonacoEditorWrapper.module.scss +0 -29
  147. package/src/components/MonacoEditorWrapper.tsx +0 -74
  148. package/src/components/OutputPanel.module.scss +0 -123
  149. package/src/components/OutputPanel.tsx +0 -53
  150. package/src/components/RunContainer.module.scss +0 -150
  151. package/src/components/RunContainer.tsx +0 -34
  152. package/src/hooks/useCompiler.ts +0 -228
  153. package/src/hooks/useInitialNodes.ts +0 -0
  154. package/src/index.css +0 -78
  155. package/src/main.tsx +0 -8
  156. package/src/types/EditorDocument.ts +0 -8
  157. package/swagger.json +0 -1020
  158. package/tsconfig.app.json +0 -29
  159. package/tsconfig.json +0 -7
  160. package/tsconfig.node.json +0 -26
  161. package/vite.config.ts +0 -8
@@ -0,0 +1,370 @@
1
+ const e = {
2
+ /*
3
+ * `...` is allowed as an identifier.
4
+ * $ is allowed in identifiers.
5
+ * unary_<op> is allowed as an identifier.
6
+ * <name>_= is allowed as an identifier.
7
+ */
8
+ wordPattern: /(unary_[@~!#%^&*()\-=+\\|:<>\/?]+)|([a-zA-Z_$][\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\w$]*)/g,
9
+ comments: {
10
+ lineComment: "//",
11
+ blockComment: ["/*", "*/"]
12
+ },
13
+ brackets: [
14
+ ["{", "}"],
15
+ ["[", "]"],
16
+ ["(", ")"]
17
+ ],
18
+ autoClosingPairs: [
19
+ { open: "{", close: "}" },
20
+ { open: "[", close: "]" },
21
+ { open: "(", close: ")" },
22
+ { open: '"', close: '"' },
23
+ { open: "'", close: "'" }
24
+ ],
25
+ surroundingPairs: [
26
+ { open: "{", close: "}" },
27
+ { open: "[", close: "]" },
28
+ { open: "(", close: ")" },
29
+ { open: '"', close: '"' },
30
+ { open: "'", close: "'" }
31
+ ],
32
+ folding: {
33
+ markers: {
34
+ start: new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),
35
+ end: new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")
36
+ }
37
+ }
38
+ }, t = {
39
+ tokenPostfix: ".scala",
40
+ // We can't easily add everything from Dotty, but we can at least add some of its keywords
41
+ keywords: [
42
+ "asInstanceOf",
43
+ "catch",
44
+ "class",
45
+ "classOf",
46
+ "def",
47
+ "do",
48
+ "else",
49
+ "extends",
50
+ "finally",
51
+ "for",
52
+ "foreach",
53
+ "forSome",
54
+ "if",
55
+ "import",
56
+ "isInstanceOf",
57
+ "macro",
58
+ "match",
59
+ "new",
60
+ "object",
61
+ "package",
62
+ "return",
63
+ "throw",
64
+ "trait",
65
+ "try",
66
+ "type",
67
+ "until",
68
+ "val",
69
+ "var",
70
+ "while",
71
+ "with",
72
+ "yield",
73
+ // Dotty-specific:
74
+ "given",
75
+ "enum",
76
+ "then"
77
+ ],
78
+ // Dotty-specific:
79
+ softKeywords: ["as", "export", "extension", "end", "derives", "on"],
80
+ constants: ["true", "false", "null", "this", "super"],
81
+ modifiers: [
82
+ "abstract",
83
+ "final",
84
+ "implicit",
85
+ "lazy",
86
+ "override",
87
+ "private",
88
+ "protected",
89
+ "sealed"
90
+ ],
91
+ // Dotty-specific:
92
+ softModifiers: ["inline", "opaque", "open", "transparent", "using"],
93
+ name: /(?:[a-z_$][\w$]*|`[^`]+`)/,
94
+ type: /(?:[A-Z][\w$]*)/,
95
+ // we include these common regular expressions
96
+ symbols: /[=><!~?:&|+\-*\/^\\%@#]+/,
97
+ digits: /\d+(_+\d+)*/,
98
+ hexdigits: /[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,
99
+ // C# style strings
100
+ escapes: /\\(?:[btnfr\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
101
+ fstring_conv: /[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,
102
+ // The main tokenizer for our languages
103
+ tokenizer: {
104
+ root: [
105
+ // strings
106
+ [/\braw"""/, { token: "string.quote", bracket: "@open", next: "@rawstringt" }],
107
+ [/\braw"/, { token: "string.quote", bracket: "@open", next: "@rawstring" }],
108
+ [/\bs"""/, { token: "string.quote", bracket: "@open", next: "@sstringt" }],
109
+ [/\bs"/, { token: "string.quote", bracket: "@open", next: "@sstring" }],
110
+ [/\bf""""/, { token: "string.quote", bracket: "@open", next: "@fstringt" }],
111
+ [/\bf"/, { token: "string.quote", bracket: "@open", next: "@fstring" }],
112
+ [/"""/, { token: "string.quote", bracket: "@open", next: "@stringt" }],
113
+ [/"/, { token: "string.quote", bracket: "@open", next: "@string" }],
114
+ // numbers
115
+ [/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/, "number.float", "@allowMethod"],
116
+ [/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/, "number.float", "@allowMethod"],
117
+ [/0[xX](@hexdigits)[Ll]?/, "number.hex", "@allowMethod"],
118
+ [/(@digits)[fFdD]/, "number.float", "@allowMethod"],
119
+ [/(@digits)[lL]?/, "number", "@allowMethod"],
120
+ [/\b_\*/, "key"],
121
+ [/\b(_)\b/, "keyword", "@allowMethod"],
122
+ // identifiers and keywords
123
+ [/\bimport\b/, "keyword", "@import"],
124
+ [/\b(case)([ \t]+)(class)\b/, ["keyword.modifier", "white", "keyword"]],
125
+ [/\bcase\b/, "keyword", "@case"],
126
+ [/\bva[lr]\b/, "keyword", "@vardef"],
127
+ [
128
+ /\b(def)([ \t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,
129
+ ["keyword", "white", "identifier"]
130
+ ],
131
+ [/@name(?=[ \t]*:(?!:))/, "variable"],
132
+ [/(\.)(@name|@symbols)/, ["operator", { token: "@rematch", next: "@allowMethod" }]],
133
+ [/([{(])(\s*)(@name(?=\s*=>))/, ["@brackets", "white", "variable"]],
134
+ [
135
+ /@name/,
136
+ {
137
+ cases: {
138
+ "@keywords": "keyword",
139
+ "@softKeywords": "keyword",
140
+ "@modifiers": "keyword.modifier",
141
+ "@softModifiers": "keyword.modifier",
142
+ "@constants": {
143
+ token: "constant",
144
+ next: "@allowMethod"
145
+ },
146
+ "@default": {
147
+ token: "identifier",
148
+ next: "@allowMethod"
149
+ }
150
+ }
151
+ }
152
+ ],
153
+ [/@type/, "type", "@allowMethod"],
154
+ // whitespace
155
+ { include: "@whitespace" },
156
+ // @ annotations.
157
+ [/@[a-zA-Z_$][\w$]*(?:\.[a-zA-Z_$][\w$]*)*/, "annotation"],
158
+ // delimiters and operators
159
+ [/[{(]/, "@brackets"],
160
+ [/[})]/, "@brackets", "@allowMethod"],
161
+ [/\[/, "operator.square"],
162
+ [/](?!\s*(?:va[rl]|def|type)\b)/, "operator.square", "@allowMethod"],
163
+ [/]/, "operator.square"],
164
+ [/([=-]>|<-|>:|<:|:>|<%)(?=[\s\w()[\]{},\."'`])/, "keyword"],
165
+ [/@symbols/, "operator"],
166
+ // delimiter: after number because of .\d floats
167
+ [/[;,\.]/, "delimiter"],
168
+ // symbols
169
+ [/'[a-zA-Z$][\w$]*(?!')/, "attribute.name"],
170
+ // characters
171
+ [/'[^\\']'/, "string", "@allowMethod"],
172
+ [/(')(@escapes)(')/, ["string", "string.escape", { token: "string", next: "@allowMethod" }]],
173
+ [/'/, "string.invalid"]
174
+ ],
175
+ import: [
176
+ [/;/, "delimiter", "@pop"],
177
+ [/^|$/, "", "@pop"],
178
+ [/[ \t]+/, "white"],
179
+ [/[\n\r]+/, "white", "@pop"],
180
+ [/\/\*/, "comment", "@comment"],
181
+ [/@name|@type/, "type"],
182
+ [/[(){}]/, "@brackets"],
183
+ [/[[\]]/, "operator.square"],
184
+ [/[\.,]/, "delimiter"]
185
+ ],
186
+ allowMethod: [
187
+ [/^|$/, "", "@pop"],
188
+ [/[ \t]+/, "white"],
189
+ [/[\n\r]+/, "white", "@pop"],
190
+ [/\/\*/, "comment", "@comment"],
191
+ [/(?==>[\s\w([{])/, "keyword", "@pop"],
192
+ [
193
+ /(@name|@symbols)(?=[ \t]*[[({"'`]|[ \t]+(?:[+-]?\.?\d|\w))/,
194
+ {
195
+ cases: {
196
+ "@keywords": { token: "keyword", next: "@pop" },
197
+ "->|<-|>:|<:|<%": { token: "keyword", next: "@pop" },
198
+ "@default": { token: "@rematch", next: "@pop" }
199
+ }
200
+ }
201
+ ],
202
+ ["", "", "@pop"]
203
+ ],
204
+ comment: [
205
+ [/[^\/*]+/, "comment"],
206
+ [/\/\*/, "comment", "@push"],
207
+ // nested comment
208
+ [/\*\//, "comment", "@pop"],
209
+ [/[\/*]/, "comment"]
210
+ ],
211
+ case: [
212
+ [/\b_\*/, "key"],
213
+ [/\b(_|true|false|null|this|super)\b/, "keyword", "@allowMethod"],
214
+ [/\bif\b|=>/, "keyword", "@pop"],
215
+ [/`[^`]+`/, "identifier", "@allowMethod"],
216
+ [/@name/, "variable", "@allowMethod"],
217
+ [/:::?|\||@(?![a-z_$])/, "keyword"],
218
+ { include: "@root" }
219
+ ],
220
+ vardef: [
221
+ [/\b_\*/, "key"],
222
+ [/\b(_|true|false|null|this|super)\b/, "keyword"],
223
+ [/@name/, "variable"],
224
+ [/:::?|\||@(?![a-z_$])/, "keyword"],
225
+ [/=|:(?!:)/, "operator", "@pop"],
226
+ [/$/, "white", "@pop"],
227
+ { include: "@root" }
228
+ ],
229
+ string: [
230
+ [/[^\\"\n\r]+/, "string"],
231
+ [/@escapes/, "string.escape"],
232
+ [/\\./, "string.escape.invalid"],
233
+ [
234
+ /"/,
235
+ {
236
+ token: "string.quote",
237
+ bracket: "@close",
238
+ switchTo: "@allowMethod"
239
+ }
240
+ ]
241
+ ],
242
+ stringt: [
243
+ [/[^\\"\n\r]+/, "string"],
244
+ [/@escapes/, "string.escape"],
245
+ [/\\./, "string.escape.invalid"],
246
+ [/"(?=""")/, "string"],
247
+ [
248
+ /"""/,
249
+ {
250
+ token: "string.quote",
251
+ bracket: "@close",
252
+ switchTo: "@allowMethod"
253
+ }
254
+ ],
255
+ [/"/, "string"]
256
+ ],
257
+ fstring: [
258
+ [/@escapes/, "string.escape"],
259
+ [
260
+ /"/,
261
+ {
262
+ token: "string.quote",
263
+ bracket: "@close",
264
+ switchTo: "@allowMethod"
265
+ }
266
+ ],
267
+ [/\$\$/, "string"],
268
+ [/(\$)([a-z_]\w*)/, ["operator", "identifier"]],
269
+ [/\$\{/, "operator", "@interp"],
270
+ [/%%/, "string"],
271
+ [
272
+ /(%)([\-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,
273
+ ["metatag", "keyword.modifier", "number", "metatag"]
274
+ ],
275
+ [/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/, ["metatag", "number", "metatag"]],
276
+ [/(%)([\-#+ 0,(])(@fstring_conv)/, ["metatag", "keyword.modifier", "metatag"]],
277
+ [/(%)(@fstring_conv)/, ["metatag", "metatag"]],
278
+ [/./, "string"]
279
+ ],
280
+ fstringt: [
281
+ [/@escapes/, "string.escape"],
282
+ [/"(?=""")/, "string"],
283
+ [
284
+ /"""/,
285
+ {
286
+ token: "string.quote",
287
+ bracket: "@close",
288
+ switchTo: "@allowMethod"
289
+ }
290
+ ],
291
+ [/\$\$/, "string"],
292
+ [/(\$)([a-z_]\w*)/, ["operator", "identifier"]],
293
+ [/\$\{/, "operator", "@interp"],
294
+ [/%%/, "string"],
295
+ [
296
+ /(%)([\-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,
297
+ ["metatag", "keyword.modifier", "number", "metatag"]
298
+ ],
299
+ [/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/, ["metatag", "number", "metatag"]],
300
+ [/(%)([\-#+ 0,(])(@fstring_conv)/, ["metatag", "keyword.modifier", "metatag"]],
301
+ [/(%)(@fstring_conv)/, ["metatag", "metatag"]],
302
+ [/./, "string"]
303
+ ],
304
+ sstring: [
305
+ [/@escapes/, "string.escape"],
306
+ [
307
+ /"/,
308
+ {
309
+ token: "string.quote",
310
+ bracket: "@close",
311
+ switchTo: "@allowMethod"
312
+ }
313
+ ],
314
+ [/\$\$/, "string"],
315
+ [/(\$)([a-z_]\w*)/, ["operator", "identifier"]],
316
+ [/\$\{/, "operator", "@interp"],
317
+ [/./, "string"]
318
+ ],
319
+ sstringt: [
320
+ [/@escapes/, "string.escape"],
321
+ [/"(?=""")/, "string"],
322
+ [
323
+ /"""/,
324
+ {
325
+ token: "string.quote",
326
+ bracket: "@close",
327
+ switchTo: "@allowMethod"
328
+ }
329
+ ],
330
+ [/\$\$/, "string"],
331
+ [/(\$)([a-z_]\w*)/, ["operator", "identifier"]],
332
+ [/\$\{/, "operator", "@interp"],
333
+ [/./, "string"]
334
+ ],
335
+ interp: [[/{/, "operator", "@push"], [/}/, "operator", "@pop"], { include: "@root" }],
336
+ rawstring: [
337
+ [/[^"]/, "string"],
338
+ [
339
+ /"/,
340
+ {
341
+ token: "string.quote",
342
+ bracket: "@close",
343
+ switchTo: "@allowMethod"
344
+ }
345
+ ]
346
+ ],
347
+ rawstringt: [
348
+ [/[^"]/, "string"],
349
+ [/"(?=""")/, "string"],
350
+ [
351
+ /"""/,
352
+ {
353
+ token: "string.quote",
354
+ bracket: "@close",
355
+ switchTo: "@allowMethod"
356
+ }
357
+ ],
358
+ [/"/, "string"]
359
+ ],
360
+ whitespace: [
361
+ [/[ \t\r\n]+/, "white"],
362
+ [/\/\*/, "comment", "@comment"],
363
+ [/\/\/.*$/, "comment"]
364
+ ]
365
+ }
366
+ };
367
+ export {
368
+ e as conf,
369
+ t as language
370
+ };
@@ -0,0 +1,108 @@
1
+ const e = {
2
+ comments: {
3
+ lineComment: ";",
4
+ blockComment: ["#|", "|#"]
5
+ },
6
+ brackets: [
7
+ ["(", ")"],
8
+ ["{", "}"],
9
+ ["[", "]"]
10
+ ],
11
+ autoClosingPairs: [
12
+ { open: "{", close: "}" },
13
+ { open: "[", close: "]" },
14
+ { open: "(", close: ")" },
15
+ { open: '"', close: '"' }
16
+ ],
17
+ surroundingPairs: [
18
+ { open: "{", close: "}" },
19
+ { open: "[", close: "]" },
20
+ { open: "(", close: ")" },
21
+ { open: '"', close: '"' }
22
+ ]
23
+ }, o = {
24
+ defaultToken: "",
25
+ ignoreCase: !0,
26
+ tokenPostfix: ".scheme",
27
+ brackets: [
28
+ { open: "(", close: ")", token: "delimiter.parenthesis" },
29
+ { open: "{", close: "}", token: "delimiter.curly" },
30
+ { open: "[", close: "]", token: "delimiter.square" }
31
+ ],
32
+ keywords: [
33
+ "case",
34
+ "do",
35
+ "let",
36
+ "loop",
37
+ "if",
38
+ "else",
39
+ "when",
40
+ "cons",
41
+ "car",
42
+ "cdr",
43
+ "cond",
44
+ "lambda",
45
+ "lambda*",
46
+ "syntax-rules",
47
+ "format",
48
+ "set!",
49
+ "quote",
50
+ "eval",
51
+ "append",
52
+ "list",
53
+ "list?",
54
+ "member?",
55
+ "load"
56
+ ],
57
+ constants: ["#t", "#f"],
58
+ operators: ["eq?", "eqv?", "equal?", "and", "or", "not", "null?"],
59
+ tokenizer: {
60
+ root: [
61
+ [/#[xXoObB][0-9a-fA-F]+/, "number.hex"],
62
+ [/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?/, "number.float"],
63
+ [
64
+ /(?:\b(?:(define|define-syntax|define-macro))\b)(\s+)((?:\w|\-|\!|\?)*)/,
65
+ ["keyword", "white", "variable"]
66
+ ],
67
+ { include: "@whitespace" },
68
+ { include: "@strings" },
69
+ [
70
+ /[a-zA-Z_#][a-zA-Z0-9_\-\?\!\*]*/,
71
+ {
72
+ cases: {
73
+ "@keywords": "keyword",
74
+ "@constants": "constant",
75
+ "@operators": "operators",
76
+ "@default": "identifier"
77
+ }
78
+ }
79
+ ]
80
+ ],
81
+ comment: [
82
+ [/[^\|#]+/, "comment"],
83
+ [/#\|/, "comment", "@push"],
84
+ [/\|#/, "comment", "@pop"],
85
+ [/[\|#]/, "comment"]
86
+ ],
87
+ whitespace: [
88
+ [/[ \t\r\n]+/, "white"],
89
+ [/#\|/, "comment", "@comment"],
90
+ [/;.*$/, "comment"]
91
+ ],
92
+ strings: [
93
+ [/"$/, "string", "@popall"],
94
+ [/"(?=.)/, "string", "@multiLineString"]
95
+ ],
96
+ multiLineString: [
97
+ [/[^\\"]+$/, "string", "@popall"],
98
+ [/[^\\"]+/, "string"],
99
+ [/\\./, "string.escape"],
100
+ [/"/, "string", "@popall"],
101
+ [/\\$/, "string"]
102
+ ]
103
+ }
104
+ };
105
+ export {
106
+ e as conf,
107
+ o as language
108
+ };