@nubase/terminal 0.0.0-stage → 0.1.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.
Files changed (119) hide show
  1. package/bin/nubase.js +11 -0
  2. package/out/main/index.js +3240 -0
  3. package/out/preload/index.cjs +23 -0
  4. package/out/renderer/assets/BinaryPreviews-Dvmgctgl.js +262 -0
  5. package/out/renderer/assets/CodeEditor-BKx61p9c.js +2034 -0
  6. package/out/renderer/assets/DocumentPreviews-BA1gL-ZJ.js +66 -0
  7. package/out/renderer/assets/DocxPreview-CiY-SNbh.js +6955 -0
  8. package/out/renderer/assets/ImagePreview-DpnKfbxj.js +120 -0
  9. package/out/renderer/assets/PdfPreview-6oeuYaqY.js +24399 -0
  10. package/out/renderer/assets/PdfPreview-BT-DZbCt.css +6483 -0
  11. package/out/renderer/assets/SpreadsheetPreviews-B4Qby88A.js +23987 -0
  12. package/out/renderer/assets/abap-Cel38df4.js +1317 -0
  13. package/out/renderer/assets/apex-DzOmV_zF.js +355 -0
  14. package/out/renderer/assets/azcli-Xvapx-7p.js +56 -0
  15. package/out/renderer/assets/bat-BGMSIlWY.js +126 -0
  16. package/out/renderer/assets/bicep-CcpV5qxk.js +228 -0
  17. package/out/renderer/assets/cameligo-BfMDXVEx.js +233 -0
  18. package/out/renderer/assets/clojure-DFgIAJGu.js +801 -0
  19. package/out/renderer/assets/codicon-DF1abBS2.ttf +0 -0
  20. package/out/renderer/assets/coffee-Db4q5aZ8.js +308 -0
  21. package/out/renderer/assets/cpp-CEvPJv6f.js +450 -0
  22. package/out/renderer/assets/csharp-CVoBr97X.js +405 -0
  23. package/out/renderer/assets/csp-Cgzd5gxo.js +49 -0
  24. package/out/renderer/assets/css-D3M-RRVi.js +287 -0
  25. package/out/renderer/assets/css.worker-AXSlELAq.js +50031 -0
  26. package/out/renderer/assets/cssMode-CrMQfSUN.js +101 -0
  27. package/out/renderer/assets/cursor-editorTextHighlight-kG3uUOwL.svg +8 -0
  28. package/out/renderer/assets/cypher-DJJgZ_3Q.js +326 -0
  29. package/out/renderer/assets/dart-Bkg7I-Qe.js +341 -0
  30. package/out/renderer/assets/dockerfile-B1r36HyK.js +194 -0
  31. package/out/renderer/assets/ecl-C1Ji6tZG.js +531 -0
  32. package/out/renderer/assets/editor-CXfYqUZ6.css +4816 -0
  33. package/out/renderer/assets/editor.api-zF37fz_e.js +127071 -0
  34. package/out/renderer/assets/elixir-D_-n8lGJ.js +526 -0
  35. package/out/renderer/assets/fileTypes-nBt-Y6NI.js +56306 -0
  36. package/out/renderer/assets/flow9-CCdkJPNN.js +179 -0
  37. package/out/renderer/assets/freemarker2-CBlvIP9I.js +733 -0
  38. package/out/renderer/assets/fsharp-D5KoOpm3.js +248 -0
  39. package/out/renderer/assets/go-B7BFdMAL.js +264 -0
  40. package/out/renderer/assets/graphql-BqIezLde.js +177 -0
  41. package/out/renderer/assets/handlebars-CG4DAk5_.js +414 -0
  42. package/out/renderer/assets/hcl-C1GQCKC0.js +222 -0
  43. package/out/renderer/assets/html-C-_R4s2w.js +335 -0
  44. package/out/renderer/assets/html.worker-vQ8gO4kF.js +30584 -0
  45. package/out/renderer/assets/htmlMode-mGTQJ-lr.js +125 -0
  46. package/out/renderer/assets/index-CQHlaLTi.js +46080 -0
  47. package/out/renderer/assets/index-DBYJcRdn.css +3124 -0
  48. package/out/renderer/assets/ini-DDFxEGYN.js +97 -0
  49. package/out/renderer/assets/java-BqvgSBNj.js +272 -0
  50. package/out/renderer/assets/javascript-BuIet4p-.js +69 -0
  51. package/out/renderer/assets/json.worker-DBhrCMTN.js +23259 -0
  52. package/out/renderer/assets/jsonMode-OAArikPQ.js +769 -0
  53. package/out/renderer/assets/julia-D30HQT3I.js +688 -0
  54. package/out/renderer/assets/kotlin-Bql4-FwM.js +303 -0
  55. package/out/renderer/assets/less-D_rhcFqZ.js +245 -0
  56. package/out/renderer/assets/lexon-CjhVPeai.js +188 -0
  57. package/out/renderer/assets/liquid-DJNDWhYP.js +277 -0
  58. package/out/renderer/assets/lspLanguageFeatures-BIH0_3rO.css +24 -0
  59. package/out/renderer/assets/lspLanguageFeatures-Bvh4jxNk.js +2583 -0
  60. package/out/renderer/assets/lua-HQuy0vuU.js +203 -0
  61. package/out/renderer/assets/m3-CIJ7obE2.js +287 -0
  62. package/out/renderer/assets/markdown-I0GroHKS.js +265 -0
  63. package/out/renderer/assets/mdx-B4We-zdi.js +330 -0
  64. package/out/renderer/assets/mips-DY_Z1uin.js +190 -0
  65. package/out/renderer/assets/msdax-YkUW9rXl.js +416 -0
  66. package/out/renderer/assets/mysql-CIm9uV8f.js +921 -0
  67. package/out/renderer/assets/objective-c-JkhNEfNv.js +233 -0
  68. package/out/renderer/assets/pascal-Dvq-PxOC.js +289 -0
  69. package/out/renderer/assets/pascaligo-A9tZTvdV.js +204 -0
  70. package/out/renderer/assets/pdf_viewer-8SNFor7s.js +7639 -0
  71. package/out/renderer/assets/perl-C2Ujz2HB.js +720 -0
  72. package/out/renderer/assets/pgsql-BHB-cYm3.js +879 -0
  73. package/out/renderer/assets/php-DkNik5Vk.js +548 -0
  74. package/out/renderer/assets/pla-DQ-RrdDE.js +149 -0
  75. package/out/renderer/assets/postiats-f1cpw-r_.js +702 -0
  76. package/out/renderer/assets/powerquery-CwYp-rYn.js +940 -0
  77. package/out/renderer/assets/powershell-DNVb682q.js +252 -0
  78. package/out/renderer/assets/protobuf-C73bXEb8.js +663 -0
  79. package/out/renderer/assets/pug-BxvM69yY.js +419 -0
  80. package/out/renderer/assets/python-Hlw9kU7X.js +389 -0
  81. package/out/renderer/assets/qsharp-BCs2AvEL.js +335 -0
  82. package/out/renderer/assets/r-B7wnzr1V.js +282 -0
  83. package/out/renderer/assets/razor-BswxUzye.js +615 -0
  84. package/out/renderer/assets/redis-BQXcxMfX.js +324 -0
  85. package/out/renderer/assets/redshift-2dZdIUPH.js +838 -0
  86. package/out/renderer/assets/restructuredtext-CVT2zSWP.js +290 -0
  87. package/out/renderer/assets/ruby-DjmMI5Dp.js +612 -0
  88. package/out/renderer/assets/rust-BhSCZj0F.js +382 -0
  89. package/out/renderer/assets/sb-DaUIZery.js +146 -0
  90. package/out/renderer/assets/scala-CYIN7D7O.js +589 -0
  91. package/out/renderer/assets/scheme-DanUmhC2.js +173 -0
  92. package/out/renderer/assets/scss-BVILLTDt.js +420 -0
  93. package/out/renderer/assets/shell-Bpairu2a.js +293 -0
  94. package/out/renderer/assets/solidity-OLm4MSRm.js +1395 -0
  95. package/out/renderer/assets/sophia-DJz2Vk1M.js +234 -0
  96. package/out/renderer/assets/sparql-Bk5uRAQt.js +237 -0
  97. package/out/renderer/assets/sql-DQBN9zz5.js +858 -0
  98. package/out/renderer/assets/st-50mV4H0S.js +657 -0
  99. package/out/renderer/assets/swift-Yc0Q28XL.js +376 -0
  100. package/out/renderer/assets/systemverilog-Du7vdcmu.js +616 -0
  101. package/out/renderer/assets/tcl-DG7u3TBj.js +312 -0
  102. package/out/renderer/assets/toggleHighContrast-CKRp-vZ7.css +3691 -0
  103. package/out/renderer/assets/toggleHighContrast-NyS1pk1Z.js +51247 -0
  104. package/out/renderer/assets/twig-C49MsNA9.js +438 -0
  105. package/out/renderer/assets/typescript-F2yeVXIn.js +382 -0
  106. package/out/renderer/assets/typespec-DA1dz9gQ.js +245 -0
  107. package/out/renderer/assets/useAsync-Bi56CNnI.js +30 -0
  108. package/out/renderer/assets/vb-BDNIgfQk.js +447 -0
  109. package/out/renderer/assets/wgsl-j-0nJ_62.js +457 -0
  110. package/out/renderer/assets/xml-BfG5_Ah8.js +131 -0
  111. package/out/renderer/assets/yaml-7gp9FQUG.js +224 -0
  112. package/out/renderer/index.html +14 -0
  113. package/package.json +66 -4
  114. package/resources/skills/nubase-extension-authoring/SKILL.md +273 -0
  115. package/resources/templates/extension/package.json.template +13 -0
  116. package/resources/templates/extension/src/host.ts.template +12 -0
  117. package/resources/templates/extension/src/ui.tsx.template +26 -0
  118. package/resources/templates/extension/tsconfig.json.template +4 -0
  119. package/README.md +0 -3
@@ -0,0 +1,526 @@
1
+ //#region node_modules/monaco-editor/esm/vs/languages/definitions/elixir/elixir.js
2
+ var conf = {
3
+ comments: { lineComment: "#" },
4
+ brackets: [
5
+ ["{", "}"],
6
+ ["[", "]"],
7
+ ["(", ")"]
8
+ ],
9
+ surroundingPairs: [
10
+ {
11
+ open: "{",
12
+ close: "}"
13
+ },
14
+ {
15
+ open: "[",
16
+ close: "]"
17
+ },
18
+ {
19
+ open: "(",
20
+ close: ")"
21
+ },
22
+ {
23
+ open: "'",
24
+ close: "'"
25
+ },
26
+ {
27
+ open: "\"",
28
+ close: "\""
29
+ }
30
+ ],
31
+ autoClosingPairs: [
32
+ {
33
+ open: "'",
34
+ close: "'",
35
+ notIn: ["string", "comment"]
36
+ },
37
+ {
38
+ open: "\"",
39
+ close: "\"",
40
+ notIn: ["comment"]
41
+ },
42
+ {
43
+ open: "\"\"\"",
44
+ close: "\"\"\""
45
+ },
46
+ {
47
+ open: "`",
48
+ close: "`",
49
+ notIn: ["string", "comment"]
50
+ },
51
+ {
52
+ open: "(",
53
+ close: ")"
54
+ },
55
+ {
56
+ open: "{",
57
+ close: "}"
58
+ },
59
+ {
60
+ open: "[",
61
+ close: "]"
62
+ },
63
+ {
64
+ open: "<<",
65
+ close: ">>"
66
+ }
67
+ ],
68
+ indentationRules: {
69
+ increaseIndentPattern: /^\s*(after|else|catch|rescue|fn|[^#]*(do|<\-|\->|\{|\[|\=))\s*$/,
70
+ decreaseIndentPattern: /^\s*((\}|\])\s*$|(after|else|catch|rescue|end)\b)/
71
+ }
72
+ };
73
+ var language = {
74
+ defaultToken: "source",
75
+ tokenPostfix: ".elixir",
76
+ brackets: [
77
+ {
78
+ open: "[",
79
+ close: "]",
80
+ token: "delimiter.square"
81
+ },
82
+ {
83
+ open: "(",
84
+ close: ")",
85
+ token: "delimiter.parenthesis"
86
+ },
87
+ {
88
+ open: "{",
89
+ close: "}",
90
+ token: "delimiter.curly"
91
+ },
92
+ {
93
+ open: "<<",
94
+ close: ">>",
95
+ token: "delimiter.angle.special"
96
+ }
97
+ ],
98
+ declarationKeywords: [
99
+ "def",
100
+ "defp",
101
+ "defn",
102
+ "defnp",
103
+ "defguard",
104
+ "defguardp",
105
+ "defmacro",
106
+ "defmacrop",
107
+ "defdelegate",
108
+ "defcallback",
109
+ "defmacrocallback",
110
+ "defmodule",
111
+ "defprotocol",
112
+ "defexception",
113
+ "defimpl",
114
+ "defstruct"
115
+ ],
116
+ operatorKeywords: [
117
+ "and",
118
+ "in",
119
+ "not",
120
+ "or",
121
+ "when"
122
+ ],
123
+ namespaceKeywords: [
124
+ "alias",
125
+ "import",
126
+ "require",
127
+ "use"
128
+ ],
129
+ otherKeywords: [
130
+ "after",
131
+ "case",
132
+ "catch",
133
+ "cond",
134
+ "do",
135
+ "else",
136
+ "end",
137
+ "fn",
138
+ "for",
139
+ "if",
140
+ "quote",
141
+ "raise",
142
+ "receive",
143
+ "rescue",
144
+ "super",
145
+ "throw",
146
+ "try",
147
+ "unless",
148
+ "unquote_splicing",
149
+ "unquote",
150
+ "with"
151
+ ],
152
+ constants: [
153
+ "true",
154
+ "false",
155
+ "nil"
156
+ ],
157
+ nameBuiltin: [
158
+ "__MODULE__",
159
+ "__DIR__",
160
+ "__ENV__",
161
+ "__CALLER__",
162
+ "__STACKTRACE__"
163
+ ],
164
+ operator: /-[->]?|!={0,2}|\*{1,2}|\/|\\\\|&{1,3}|\.\.?|\^(?:\^\^)?|\+\+?|<(?:-|<<|=|>|\|>|~>?)?|=~|={1,3}|>(?:=|>>)?|\|~>|\|>|\|{1,3}|~>>?|~~~|::/,
165
+ variableName: /[a-z_][a-zA-Z0-9_]*[?!]?/,
166
+ atomName: /[a-zA-Z_][a-zA-Z0-9_@]*[?!]?|@specialAtomName|@operator/,
167
+ specialAtomName: /\.\.\.|<<>>|%\{\}|%|\{\}/,
168
+ aliasPart: /[A-Z][a-zA-Z0-9_]*/,
169
+ moduleName: /@aliasPart(?:\.@aliasPart)*/,
170
+ sigilSymmetricDelimiter: /"""|'''|"|'|\/|\|/,
171
+ sigilStartDelimiter: /@sigilSymmetricDelimiter|<|\{|\[|\(/,
172
+ sigilEndDelimiter: /@sigilSymmetricDelimiter|>|\}|\]|\)/,
173
+ sigilModifiers: /[a-zA-Z0-9]*/,
174
+ decimal: /\d(?:_?\d)*/,
175
+ hex: /[0-9a-fA-F](_?[0-9a-fA-F])*/,
176
+ octal: /[0-7](_?[0-7])*/,
177
+ binary: /[01](_?[01])*/,
178
+ escape: /\\u[0-9a-fA-F]{4}|\\x[0-9a-fA-F]{2}|\\./,
179
+ tokenizer: {
180
+ root: [
181
+ { include: "@whitespace" },
182
+ { include: "@comments" },
183
+ { include: "@keywordsShorthand" },
184
+ { include: "@numbers" },
185
+ { include: "@identifiers" },
186
+ { include: "@strings" },
187
+ { include: "@atoms" },
188
+ { include: "@sigils" },
189
+ { include: "@attributes" },
190
+ { include: "@symbols" }
191
+ ],
192
+ whitespace: [[/\s+/, "white"]],
193
+ comments: [[/(#)(.*)/, ["comment.punctuation", "comment"]]],
194
+ keywordsShorthand: [
195
+ [/(@atomName)(:)(\s+)/, [
196
+ "constant",
197
+ "constant.punctuation",
198
+ "white"
199
+ ]],
200
+ [/"(?=([^"]|#\{.*?\}|\\")*":)/, {
201
+ token: "constant.delimiter",
202
+ next: "@doubleQuotedStringKeyword"
203
+ }],
204
+ [/'(?=([^']|#\{.*?\}|\\')*':)/, {
205
+ token: "constant.delimiter",
206
+ next: "@singleQuotedStringKeyword"
207
+ }]
208
+ ],
209
+ doubleQuotedStringKeyword: [[/":/, {
210
+ token: "constant.delimiter",
211
+ next: "@pop"
212
+ }], { include: "@stringConstantContentInterpol" }],
213
+ singleQuotedStringKeyword: [[/':/, {
214
+ token: "constant.delimiter",
215
+ next: "@pop"
216
+ }], { include: "@stringConstantContentInterpol" }],
217
+ numbers: [
218
+ [/0b@binary/, "number.binary"],
219
+ [/0o@octal/, "number.octal"],
220
+ [/0x@hex/, "number.hex"],
221
+ [/@decimal\.@decimal([eE]-?@decimal)?/, "number.float"],
222
+ [/@decimal/, "number"]
223
+ ],
224
+ identifiers: [
225
+ [/\b(defp?|defnp?|defmacrop?|defguardp?|defdelegate)(\s+)(@variableName)(?!\s+@operator)/, [
226
+ "keyword.declaration",
227
+ "white",
228
+ { cases: {
229
+ unquote: "keyword",
230
+ "@default": "function"
231
+ } }
232
+ ]],
233
+ [/(@variableName)(?=\s*\.?\s*\()/, { cases: {
234
+ "@declarationKeywords": "keyword.declaration",
235
+ "@namespaceKeywords": "keyword",
236
+ "@otherKeywords": "keyword",
237
+ "@default": "function.call"
238
+ } }],
239
+ [/(@moduleName)(\s*)(\.)(\s*)(@variableName)/, [
240
+ "type.identifier",
241
+ "white",
242
+ "operator",
243
+ "white",
244
+ "function.call"
245
+ ]],
246
+ [/(:)(@atomName)(\s*)(\.)(\s*)(@variableName)/, [
247
+ "constant.punctuation",
248
+ "constant",
249
+ "white",
250
+ "operator",
251
+ "white",
252
+ "function.call"
253
+ ]],
254
+ [/(\|>)(\s*)(@variableName)/, [
255
+ "operator",
256
+ "white",
257
+ { cases: {
258
+ "@otherKeywords": "keyword",
259
+ "@default": "function.call"
260
+ } }
261
+ ]],
262
+ [/(&)(\s*)(@variableName)/, [
263
+ "operator",
264
+ "white",
265
+ "function.call"
266
+ ]],
267
+ [/@variableName/, { cases: {
268
+ "@declarationKeywords": "keyword.declaration",
269
+ "@operatorKeywords": "keyword.operator",
270
+ "@namespaceKeywords": "keyword",
271
+ "@otherKeywords": "keyword",
272
+ "@constants": "constant.language",
273
+ "@nameBuiltin": "variable.language",
274
+ "_.*": "comment.unused",
275
+ "@default": "identifier"
276
+ } }],
277
+ [/@moduleName/, "type.identifier"]
278
+ ],
279
+ strings: [
280
+ [/"""/, {
281
+ token: "string.delimiter",
282
+ next: "@doubleQuotedHeredoc"
283
+ }],
284
+ [/'''/, {
285
+ token: "string.delimiter",
286
+ next: "@singleQuotedHeredoc"
287
+ }],
288
+ [/"/, {
289
+ token: "string.delimiter",
290
+ next: "@doubleQuotedString"
291
+ }],
292
+ [/'/, {
293
+ token: "string.delimiter",
294
+ next: "@singleQuotedString"
295
+ }]
296
+ ],
297
+ doubleQuotedHeredoc: [[/"""/, {
298
+ token: "string.delimiter",
299
+ next: "@pop"
300
+ }], { include: "@stringContentInterpol" }],
301
+ singleQuotedHeredoc: [[/'''/, {
302
+ token: "string.delimiter",
303
+ next: "@pop"
304
+ }], { include: "@stringContentInterpol" }],
305
+ doubleQuotedString: [[/"/, {
306
+ token: "string.delimiter",
307
+ next: "@pop"
308
+ }], { include: "@stringContentInterpol" }],
309
+ singleQuotedString: [[/'/, {
310
+ token: "string.delimiter",
311
+ next: "@pop"
312
+ }], { include: "@stringContentInterpol" }],
313
+ atoms: [
314
+ [/(:)(@atomName)/, ["constant.punctuation", "constant"]],
315
+ [/:"/, {
316
+ token: "constant.delimiter",
317
+ next: "@doubleQuotedStringAtom"
318
+ }],
319
+ [/:'/, {
320
+ token: "constant.delimiter",
321
+ next: "@singleQuotedStringAtom"
322
+ }]
323
+ ],
324
+ doubleQuotedStringAtom: [[/"/, {
325
+ token: "constant.delimiter",
326
+ next: "@pop"
327
+ }], { include: "@stringConstantContentInterpol" }],
328
+ singleQuotedStringAtom: [[/'/, {
329
+ token: "constant.delimiter",
330
+ next: "@pop"
331
+ }], { include: "@stringConstantContentInterpol" }],
332
+ sigils: [[/~[a-z]@sigilStartDelimiter/, {
333
+ token: "@rematch",
334
+ next: "@sigil.interpol"
335
+ }], [/~([A-Z]+)@sigilStartDelimiter/, {
336
+ token: "@rematch",
337
+ next: "@sigil.noInterpol"
338
+ }]],
339
+ sigil: [
340
+ [/~([a-z]|[A-Z]+)\{/, {
341
+ token: "@rematch",
342
+ switchTo: "@sigilStart.$S2.$1.{.}"
343
+ }],
344
+ [/~([a-z]|[A-Z]+)\[/, {
345
+ token: "@rematch",
346
+ switchTo: "@sigilStart.$S2.$1.[.]"
347
+ }],
348
+ [/~([a-z]|[A-Z]+)\(/, {
349
+ token: "@rematch",
350
+ switchTo: "@sigilStart.$S2.$1.(.)"
351
+ }],
352
+ [/~([a-z]|[A-Z]+)\</, {
353
+ token: "@rematch",
354
+ switchTo: "@sigilStart.$S2.$1.<.>"
355
+ }],
356
+ [/~([a-z]|[A-Z]+)(@sigilSymmetricDelimiter)/, {
357
+ token: "@rematch",
358
+ switchTo: "@sigilStart.$S2.$1.$2.$2"
359
+ }]
360
+ ],
361
+ "sigilStart.interpol.s": [[/~s@sigilStartDelimiter/, {
362
+ token: "string.delimiter",
363
+ switchTo: "@sigilContinue.$S2.$S3.$S4.$S5"
364
+ }]],
365
+ "sigilContinue.interpol.s": [[/(@sigilEndDelimiter)@sigilModifiers/, { cases: {
366
+ "$1==$S5": {
367
+ token: "string.delimiter",
368
+ next: "@pop"
369
+ },
370
+ "@default": "string"
371
+ } }], { include: "@stringContentInterpol" }],
372
+ "sigilStart.noInterpol.S": [[/~S@sigilStartDelimiter/, {
373
+ token: "string.delimiter",
374
+ switchTo: "@sigilContinue.$S2.$S3.$S4.$S5"
375
+ }]],
376
+ "sigilContinue.noInterpol.S": [
377
+ [/(^|[^\\])\\@sigilEndDelimiter/, "string"],
378
+ [/(@sigilEndDelimiter)@sigilModifiers/, { cases: {
379
+ "$1==$S5": {
380
+ token: "string.delimiter",
381
+ next: "@pop"
382
+ },
383
+ "@default": "string"
384
+ } }],
385
+ { include: "@stringContent" }
386
+ ],
387
+ "sigilStart.interpol.r": [[/~r@sigilStartDelimiter/, {
388
+ token: "regexp.delimiter",
389
+ switchTo: "@sigilContinue.$S2.$S3.$S4.$S5"
390
+ }]],
391
+ "sigilContinue.interpol.r": [[/(@sigilEndDelimiter)@sigilModifiers/, { cases: {
392
+ "$1==$S5": {
393
+ token: "regexp.delimiter",
394
+ next: "@pop"
395
+ },
396
+ "@default": "regexp"
397
+ } }], { include: "@regexpContentInterpol" }],
398
+ "sigilStart.noInterpol.R": [[/~R@sigilStartDelimiter/, {
399
+ token: "regexp.delimiter",
400
+ switchTo: "@sigilContinue.$S2.$S3.$S4.$S5"
401
+ }]],
402
+ "sigilContinue.noInterpol.R": [
403
+ [/(^|[^\\])\\@sigilEndDelimiter/, "regexp"],
404
+ [/(@sigilEndDelimiter)@sigilModifiers/, { cases: {
405
+ "$1==$S5": {
406
+ token: "regexp.delimiter",
407
+ next: "@pop"
408
+ },
409
+ "@default": "regexp"
410
+ } }],
411
+ { include: "@regexpContent" }
412
+ ],
413
+ "sigilStart.interpol": [[/~([a-z]|[A-Z]+)@sigilStartDelimiter/, {
414
+ token: "sigil.delimiter",
415
+ switchTo: "@sigilContinue.$S2.$S3.$S4.$S5"
416
+ }]],
417
+ "sigilContinue.interpol": [[/(@sigilEndDelimiter)@sigilModifiers/, { cases: {
418
+ "$1==$S5": {
419
+ token: "sigil.delimiter",
420
+ next: "@pop"
421
+ },
422
+ "@default": "sigil"
423
+ } }], { include: "@sigilContentInterpol" }],
424
+ "sigilStart.noInterpol": [[/~([a-z]|[A-Z]+)@sigilStartDelimiter/, {
425
+ token: "sigil.delimiter",
426
+ switchTo: "@sigilContinue.$S2.$S3.$S4.$S5"
427
+ }]],
428
+ "sigilContinue.noInterpol": [
429
+ [/(^|[^\\])\\@sigilEndDelimiter/, "sigil"],
430
+ [/(@sigilEndDelimiter)@sigilModifiers/, { cases: {
431
+ "$1==$S5": {
432
+ token: "sigil.delimiter",
433
+ next: "@pop"
434
+ },
435
+ "@default": "sigil"
436
+ } }],
437
+ { include: "@sigilContent" }
438
+ ],
439
+ attributes: [
440
+ [/\@(module|type)?doc (~[sS])?"""/, {
441
+ token: "comment.block.documentation",
442
+ next: "@doubleQuotedHeredocDocstring"
443
+ }],
444
+ [/\@(module|type)?doc (~[sS])?'''/, {
445
+ token: "comment.block.documentation",
446
+ next: "@singleQuotedHeredocDocstring"
447
+ }],
448
+ [/\@(module|type)?doc (~[sS])?"/, {
449
+ token: "comment.block.documentation",
450
+ next: "@doubleQuotedStringDocstring"
451
+ }],
452
+ [/\@(module|type)?doc (~[sS])?'/, {
453
+ token: "comment.block.documentation",
454
+ next: "@singleQuotedStringDocstring"
455
+ }],
456
+ [/\@(module|type)?doc false/, "comment.block.documentation"],
457
+ [/\@(@variableName)/, "variable"]
458
+ ],
459
+ doubleQuotedHeredocDocstring: [[/"""/, {
460
+ token: "comment.block.documentation",
461
+ next: "@pop"
462
+ }], { include: "@docstringContent" }],
463
+ singleQuotedHeredocDocstring: [[/'''/, {
464
+ token: "comment.block.documentation",
465
+ next: "@pop"
466
+ }], { include: "@docstringContent" }],
467
+ doubleQuotedStringDocstring: [[/"/, {
468
+ token: "comment.block.documentation",
469
+ next: "@pop"
470
+ }], { include: "@docstringContent" }],
471
+ singleQuotedStringDocstring: [[/'/, {
472
+ token: "comment.block.documentation",
473
+ next: "@pop"
474
+ }], { include: "@docstringContent" }],
475
+ symbols: [
476
+ [/\?(\\.|[^\\\s])/, "number.constant"],
477
+ [/&\d+/, "operator"],
478
+ [/<<<|>>>/, "operator"],
479
+ [/[()\[\]\{\}]|<<|>>/, "@brackets"],
480
+ [/\.\.\./, "identifier"],
481
+ [/=>/, "punctuation"],
482
+ [/@operator/, "operator"],
483
+ [/[:;,.%]/, "punctuation"]
484
+ ],
485
+ stringContentInterpol: [
486
+ { include: "@interpolation" },
487
+ { include: "@escapeChar" },
488
+ { include: "@stringContent" }
489
+ ],
490
+ stringContent: [[/./, "string"]],
491
+ stringConstantContentInterpol: [
492
+ { include: "@interpolation" },
493
+ { include: "@escapeChar" },
494
+ { include: "@stringConstantContent" }
495
+ ],
496
+ stringConstantContent: [[/./, "constant"]],
497
+ regexpContentInterpol: [
498
+ { include: "@interpolation" },
499
+ { include: "@escapeChar" },
500
+ { include: "@regexpContent" }
501
+ ],
502
+ regexpContent: [[/(\s)(#)(\s.*)$/, [
503
+ "white",
504
+ "comment.punctuation",
505
+ "comment"
506
+ ]], [/./, "regexp"]],
507
+ sigilContentInterpol: [
508
+ { include: "@interpolation" },
509
+ { include: "@escapeChar" },
510
+ { include: "@sigilContent" }
511
+ ],
512
+ sigilContent: [[/./, "sigil"]],
513
+ docstringContent: [[/./, "comment.block.documentation"]],
514
+ escapeChar: [[/@escape/, "constant.character.escape"]],
515
+ interpolation: [[/#{/, {
516
+ token: "delimiter.bracket.embed",
517
+ next: "@interpolationContinue"
518
+ }]],
519
+ interpolationContinue: [[/}/, {
520
+ token: "delimiter.bracket.embed",
521
+ next: "@pop"
522
+ }], { include: "@root" }]
523
+ }
524
+ };
525
+ //#endregion
526
+ export { conf, language };