@kerebron/extension-codemirror 0.4.27 → 0.4.29

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 (92) hide show
  1. package/esm/ExtensionCodeMirror.d.ts +17 -0
  2. package/esm/ExtensionCodeMirror.d.ts.map +1 -0
  3. package/esm/ExtensionCodeMirror.js +62 -0
  4. package/esm/ExtensionCodeMirror.js.map +1 -0
  5. package/esm/NodeCodeMirror.d.ts +20 -0
  6. package/esm/NodeCodeMirror.d.ts.map +1 -0
  7. package/esm/NodeCodeMirror.js +96 -0
  8. package/esm/NodeCodeMirror.js.map +1 -0
  9. package/esm/codeMirrorBlockNodeView.d.ts +7 -0
  10. package/esm/codeMirrorBlockNodeView.d.ts.map +1 -0
  11. package/esm/codeMirrorBlockNodeView.js +269 -0
  12. package/esm/codeMirrorBlockNodeView.js.map +1 -0
  13. package/esm/defaults.d.ts +6 -0
  14. package/esm/defaults.d.ts.map +1 -0
  15. package/esm/defaults.js +59 -0
  16. package/esm/defaults.js.map +1 -0
  17. package/esm/languageLoaders.d.ts +5 -0
  18. package/esm/languageLoaders.d.ts.map +1 -0
  19. package/esm/languageLoaders.js +113 -0
  20. package/esm/languageLoaders.js.map +1 -0
  21. package/esm/languages.d.ts +109 -0
  22. package/esm/languages.d.ts.map +1 -0
  23. package/esm/languages.js +111 -0
  24. package/esm/languages.js.map +1 -0
  25. package/esm/lsp/LSPExtension.d.ts +14 -0
  26. package/esm/lsp/LSPExtension.d.ts.map +1 -0
  27. package/esm/lsp/LSPExtension.js +30 -0
  28. package/esm/lsp/LSPExtension.js.map +1 -0
  29. package/esm/lsp/completion.d.ts +8 -0
  30. package/esm/lsp/completion.d.ts.map +1 -0
  31. package/esm/lsp/completion.js +180 -0
  32. package/esm/lsp/completion.js.map +1 -0
  33. package/esm/lsp/hover.d.ts +5 -0
  34. package/esm/lsp/hover.d.ts.map +1 -0
  35. package/esm/lsp/hover.js +82 -0
  36. package/esm/lsp/hover.js.map +1 -0
  37. package/esm/lsp/index.d.ts +7 -0
  38. package/esm/lsp/index.d.ts.map +1 -0
  39. package/esm/lsp/index.js +50 -0
  40. package/esm/lsp/index.js.map +1 -0
  41. package/esm/lsp/plugin.d.ts +37 -0
  42. package/esm/lsp/plugin.d.ts.map +1 -0
  43. package/esm/lsp/plugin.js +87 -0
  44. package/esm/lsp/plugin.js.map +1 -0
  45. package/esm/lsp/pos.d.ts +5 -0
  46. package/esm/lsp/pos.d.ts.map +1 -0
  47. package/esm/lsp/pos.js +9 -0
  48. package/esm/lsp/pos.js.map +1 -0
  49. package/esm/lsp/text.d.ts +2 -0
  50. package/esm/lsp/text.d.ts.map +1 -0
  51. package/esm/lsp/text.js +48 -0
  52. package/esm/lsp/text.js.map +1 -0
  53. package/esm/lsp/theme.d.ts +2 -0
  54. package/esm/lsp/theme.d.ts.map +1 -0
  55. package/esm/lsp/theme.js +77 -0
  56. package/esm/lsp/theme.js.map +1 -0
  57. package/esm/package.json +3 -0
  58. package/esm/remote-selections.d.ts +15 -0
  59. package/esm/remote-selections.d.ts.map +1 -0
  60. package/esm/remote-selections.js +226 -0
  61. package/esm/remote-selections.js.map +1 -0
  62. package/esm/remote-sync.d.ts +11 -0
  63. package/esm/remote-sync.d.ts.map +1 -0
  64. package/esm/remote-sync.js +18 -0
  65. package/esm/remote-sync.js.map +1 -0
  66. package/esm/types.d.ts +30 -0
  67. package/esm/types.d.ts.map +1 -0
  68. package/esm/types.js +2 -0
  69. package/esm/types.js.map +1 -0
  70. package/esm/utils.d.ts +40 -0
  71. package/esm/utils.d.ts.map +1 -0
  72. package/esm/utils.js +211 -0
  73. package/esm/utils.js.map +1 -0
  74. package/package.json +9 -6
  75. package/src/ExtensionCodeMirror.ts +84 -0
  76. package/src/NodeCodeMirror.ts +135 -0
  77. package/src/codeMirrorBlockNodeView.ts +400 -0
  78. package/src/defaults.ts +80 -0
  79. package/src/languageLoaders.ts +401 -0
  80. package/src/languages.ts +109 -0
  81. package/src/lsp/LSPExtension.ts +42 -0
  82. package/src/lsp/completion.ts +231 -0
  83. package/src/lsp/hover.ts +100 -0
  84. package/src/lsp/index.ts +55 -0
  85. package/src/lsp/plugin.ts +128 -0
  86. package/src/lsp/pos.ts +12 -0
  87. package/src/lsp/text.ts +63 -0
  88. package/src/lsp/theme.ts +81 -0
  89. package/src/remote-selections.ts +263 -0
  90. package/src/remote-sync.ts +23 -0
  91. package/src/types.ts +55 -0
  92. package/src/utils.ts +336 -0
@@ -0,0 +1,401 @@
1
+ // deno-lint-ignore-file
2
+
3
+ import { StreamLanguage } from '@codemirror/language';
4
+ import { CodeBlockLanguages, LegacyLanguages } from './languages.js';
5
+ import { LanguageLoaders } from './types.js';
6
+
7
+ const languageLoaders: LanguageLoaders = {
8
+ [CodeBlockLanguages.cpp]: () =>
9
+ import('@codemirror/lang-cpp').then((i) => i.cpp()),
10
+ [CodeBlockLanguages.css]: () =>
11
+ import('@codemirror/lang-css').then((i) => i.css()),
12
+ [CodeBlockLanguages.html]: () =>
13
+ import('@codemirror/lang-html').then((i) => i.html()),
14
+ [CodeBlockLanguages.php]: () =>
15
+ import('@codemirror/lang-php').then((i) => i.php()),
16
+ [CodeBlockLanguages.sql]: () =>
17
+ import('@codemirror/lang-sql').then((i) => i.sql()),
18
+ [CodeBlockLanguages.xml]: () =>
19
+ import('@codemirror/lang-xml').then((i) => i.xml()),
20
+ [CodeBlockLanguages.javascript]: () =>
21
+ import('@codemirror/lang-javascript').then((i) => i.javascript()),
22
+ [CodeBlockLanguages.java]: () =>
23
+ import('@codemirror/lang-java').then((i) => i.java()),
24
+ [CodeBlockLanguages.json]: () =>
25
+ import('@codemirror/lang-json').then((i) => i.json()),
26
+ [CodeBlockLanguages.lezer]: () =>
27
+ import('@codemirror/lang-lezer').then((i) => i.lezer()),
28
+ [CodeBlockLanguages.markdown]: () =>
29
+ import('@codemirror/lang-markdown').then((i) => i.markdown()),
30
+ [CodeBlockLanguages.python]: () =>
31
+ import('@codemirror/lang-python').then((i) => i.python()),
32
+ [CodeBlockLanguages.rust]: () =>
33
+ import('@codemirror/lang-rust').then((i) => i.rust()),
34
+ [CodeBlockLanguages.wast]: () =>
35
+ import('@codemirror/lang-wast').then((i) => i.wast()),
36
+ };
37
+
38
+ export const legacyLanguageLoaders: LanguageLoaders = {
39
+ [LegacyLanguages.apl]: () =>
40
+ import('@codemirror/legacy-modes/mode/apl').then(({ apl }) =>
41
+ StreamLanguage.define(apl)
42
+ ),
43
+ [LegacyLanguages.asciiarmor]: () =>
44
+ import('@codemirror/legacy-modes/mode/asciiarmor').then(({ asciiArmor }) =>
45
+ StreamLanguage.define(asciiArmor)
46
+ ),
47
+ [LegacyLanguages.asn1]: () =>
48
+ import('@codemirror/legacy-modes/mode/asn1').then(({ asn1 }) =>
49
+ StreamLanguage.define(asn1)
50
+ ),
51
+ [LegacyLanguages.asterisk]: () =>
52
+ import('@codemirror/legacy-modes/mode/asterisk').then(({ asterisk }) =>
53
+ StreamLanguage.define(asterisk)
54
+ ),
55
+ [LegacyLanguages.brainfuck]: () =>
56
+ import('@codemirror/legacy-modes/mode/brainfuck').then(({ brainfuck }) =>
57
+ StreamLanguage.define(brainfuck)
58
+ ),
59
+ [LegacyLanguages.clike]: () =>
60
+ import('@codemirror/legacy-modes/mode/clike').then(({ clike }) =>
61
+ StreamLanguage.define(clike)
62
+ ),
63
+ [LegacyLanguages.clojure]: () =>
64
+ import('@codemirror/legacy-modes/mode/clojure').then(({ clojure }) =>
65
+ StreamLanguage.define(clojure)
66
+ ),
67
+ [LegacyLanguages.cmake]: () =>
68
+ import('@codemirror/legacy-modes/mode/cmake').then(({ cmake }) =>
69
+ StreamLanguage.define(cmake)
70
+ ),
71
+ [LegacyLanguages.cobol]: () =>
72
+ import('@codemirror/legacy-modes/mode/cobol').then(({ cobol }) =>
73
+ StreamLanguage.define(cobol)
74
+ ),
75
+ [LegacyLanguages.coffeescript]: () =>
76
+ import('@codemirror/legacy-modes/mode/coffeescript').then(
77
+ ({ coffeeScript }) => StreamLanguage.define(coffeeScript),
78
+ ),
79
+ [LegacyLanguages.commonlisp]: () =>
80
+ import('@codemirror/legacy-modes/mode/commonlisp').then(({ commonLisp }) =>
81
+ StreamLanguage.define(commonLisp)
82
+ ),
83
+ [LegacyLanguages.crystal]: () =>
84
+ import('@codemirror/legacy-modes/mode/crystal').then(({ crystal }) =>
85
+ StreamLanguage.define(crystal)
86
+ ),
87
+ [LegacyLanguages.cypher]: () =>
88
+ import('@codemirror/legacy-modes/mode/cypher').then(({ cypher }) =>
89
+ StreamLanguage.define(cypher)
90
+ ),
91
+ [LegacyLanguages.d]: () =>
92
+ import('@codemirror/legacy-modes/mode/d').then(({ d }) =>
93
+ StreamLanguage.define(d)
94
+ ),
95
+ [LegacyLanguages.diff]: () =>
96
+ import('@codemirror/legacy-modes/mode/diff').then(({ diff }) =>
97
+ StreamLanguage.define(diff)
98
+ ),
99
+ [LegacyLanguages.dockerfile]: () =>
100
+ import('@codemirror/legacy-modes/mode/dockerfile').then(({ dockerFile }) =>
101
+ StreamLanguage.define(dockerFile)
102
+ ),
103
+ [LegacyLanguages.dtd]: () =>
104
+ import('@codemirror/legacy-modes/mode/dtd').then(({ dtd }) =>
105
+ StreamLanguage.define(dtd)
106
+ ),
107
+ [LegacyLanguages.dylan]: () =>
108
+ import('@codemirror/legacy-modes/mode/dylan').then(({ dylan }) =>
109
+ StreamLanguage.define(dylan)
110
+ ),
111
+ [LegacyLanguages.ebnf]: () =>
112
+ import('@codemirror/legacy-modes/mode/ebnf').then(({ ebnf }) =>
113
+ StreamLanguage.define(ebnf)
114
+ ),
115
+ [LegacyLanguages.ecl]: () =>
116
+ import('@codemirror/legacy-modes/mode/ecl').then(({ ecl }) =>
117
+ StreamLanguage.define(ecl)
118
+ ),
119
+ [LegacyLanguages.eiffel]: () =>
120
+ import('@codemirror/legacy-modes/mode/eiffel').then(({ eiffel }) =>
121
+ StreamLanguage.define(eiffel)
122
+ ),
123
+ [LegacyLanguages.elm]: () =>
124
+ import('@codemirror/legacy-modes/mode/elm').then(({ elm }) =>
125
+ StreamLanguage.define(elm)
126
+ ),
127
+ [LegacyLanguages.erlang]: () =>
128
+ import('@codemirror/legacy-modes/mode/erlang').then(({ erlang }) =>
129
+ StreamLanguage.define(erlang)
130
+ ),
131
+ [LegacyLanguages.factor]: () =>
132
+ import('@codemirror/legacy-modes/mode/factor').then(({ factor }) =>
133
+ StreamLanguage.define(factor)
134
+ ),
135
+ [LegacyLanguages.fcl]: () =>
136
+ import('@codemirror/legacy-modes/mode/fcl').then(({ fcl }) =>
137
+ StreamLanguage.define(fcl)
138
+ ),
139
+ [LegacyLanguages.forth]: () =>
140
+ import('@codemirror/legacy-modes/mode/forth').then(({ forth }) =>
141
+ StreamLanguage.define(forth)
142
+ ),
143
+ [LegacyLanguages.fortran]: () =>
144
+ import('@codemirror/legacy-modes/mode/fortran').then(({ fortran }) =>
145
+ StreamLanguage.define(fortran)
146
+ ),
147
+ [LegacyLanguages.gas]: () =>
148
+ import('@codemirror/legacy-modes/mode/gas').then(({ gas }) =>
149
+ StreamLanguage.define(gas)
150
+ ),
151
+ [LegacyLanguages.gherkin]: () =>
152
+ import('@codemirror/legacy-modes/mode/gherkin').then(({ gherkin }) =>
153
+ StreamLanguage.define(gherkin)
154
+ ),
155
+ [LegacyLanguages.go]: () =>
156
+ import('@codemirror/legacy-modes/mode/go').then(({ go }) =>
157
+ StreamLanguage.define(go)
158
+ ),
159
+ [LegacyLanguages.groovy]: () =>
160
+ import('@codemirror/legacy-modes/mode/groovy').then(({ groovy }) =>
161
+ StreamLanguage.define(groovy)
162
+ ),
163
+ [LegacyLanguages.haskell]: () =>
164
+ import('@codemirror/legacy-modes/mode/haskell').then(({ haskell }) =>
165
+ StreamLanguage.define(haskell)
166
+ ),
167
+ [LegacyLanguages.haxe]: () =>
168
+ import('@codemirror/legacy-modes/mode/haxe').then(({ haxe }) =>
169
+ StreamLanguage.define(haxe)
170
+ ),
171
+ [LegacyLanguages.http]: () =>
172
+ import('@codemirror/legacy-modes/mode/http').then(({ http }) =>
173
+ StreamLanguage.define(http)
174
+ ),
175
+ [LegacyLanguages.idl]: () =>
176
+ import('@codemirror/legacy-modes/mode/idl').then(({ idl }) =>
177
+ StreamLanguage.define(idl)
178
+ ),
179
+ [LegacyLanguages.jinja2]: () =>
180
+ import('@codemirror/legacy-modes/mode/jinja2').then(({ jinja2 }) =>
181
+ StreamLanguage.define(jinja2)
182
+ ),
183
+ [LegacyLanguages.julia]: () =>
184
+ import('@codemirror/legacy-modes/mode/julia').then(({ julia }) =>
185
+ StreamLanguage.define(julia)
186
+ ),
187
+ [LegacyLanguages.livescript]: () =>
188
+ import('@codemirror/legacy-modes/mode/livescript').then(({ liveScript }) =>
189
+ StreamLanguage.define(liveScript)
190
+ ),
191
+ [LegacyLanguages.lua]: () =>
192
+ import('@codemirror/legacy-modes/mode/lua').then(({ lua: legacyLua }) =>
193
+ StreamLanguage.define(legacyLua)
194
+ ),
195
+ [LegacyLanguages.mathematica]: () =>
196
+ import('@codemirror/legacy-modes/mode/mathematica').then(
197
+ ({ mathematica }) => StreamLanguage.define(mathematica),
198
+ ),
199
+ [LegacyLanguages.mbox]: () =>
200
+ import('@codemirror/legacy-modes/mode/mbox').then(({ mbox }) =>
201
+ StreamLanguage.define(mbox)
202
+ ),
203
+ [LegacyLanguages.mirc]: () =>
204
+ import('@codemirror/legacy-modes/mode/mirc').then(({ mirc }) =>
205
+ StreamLanguage.define(mirc)
206
+ ),
207
+ [LegacyLanguages.mllike]: () =>
208
+ import('@codemirror/legacy-modes/mode/mllike').then(({ oCaml }) =>
209
+ StreamLanguage.define(oCaml)
210
+ ),
211
+ [LegacyLanguages.modelica]: () =>
212
+ import('@codemirror/legacy-modes/mode/modelica').then(({ modelica }) =>
213
+ StreamLanguage.define(modelica)
214
+ ),
215
+ [LegacyLanguages.mscgen]: () =>
216
+ import('@codemirror/legacy-modes/mode/mscgen').then(({ mscgen }) =>
217
+ StreamLanguage.define(mscgen)
218
+ ),
219
+ [LegacyLanguages.mumps]: () =>
220
+ import('@codemirror/legacy-modes/mode/mumps').then(({ mumps }) =>
221
+ StreamLanguage.define(mumps)
222
+ ),
223
+ [LegacyLanguages.nginx]: () =>
224
+ import('@codemirror/legacy-modes/mode/nginx').then(({ nginx }) =>
225
+ StreamLanguage.define(nginx)
226
+ ),
227
+ [LegacyLanguages.nsis]: () =>
228
+ import('@codemirror/legacy-modes/mode/nsis').then(({ nsis }) =>
229
+ StreamLanguage.define(nsis)
230
+ ),
231
+ [LegacyLanguages.ntriples]: () =>
232
+ import('@codemirror/legacy-modes/mode/ntriples').then(({ ntriples }) =>
233
+ StreamLanguage.define(ntriples)
234
+ ),
235
+ [LegacyLanguages.octave]: () =>
236
+ import('@codemirror/legacy-modes/mode/octave').then(({ octave }) =>
237
+ StreamLanguage.define(octave)
238
+ ),
239
+ [LegacyLanguages.oz]: () =>
240
+ import('@codemirror/legacy-modes/mode/oz').then(({ oz }) =>
241
+ StreamLanguage.define(oz)
242
+ ),
243
+ [LegacyLanguages.pascal]: () =>
244
+ import('@codemirror/legacy-modes/mode/pascal').then(({ pascal }) =>
245
+ StreamLanguage.define(pascal)
246
+ ),
247
+ [LegacyLanguages.perl]: () =>
248
+ import('@codemirror/legacy-modes/mode/perl').then(({ perl }) =>
249
+ StreamLanguage.define(perl)
250
+ ),
251
+ [LegacyLanguages.pig]: () =>
252
+ import('@codemirror/legacy-modes/mode/pig').then(({ pig }) =>
253
+ StreamLanguage.define(pig)
254
+ ),
255
+ [LegacyLanguages.powershell]: () =>
256
+ import('@codemirror/legacy-modes/mode/powershell').then(({ powerShell }) =>
257
+ StreamLanguage.define(powerShell)
258
+ ),
259
+ [LegacyLanguages.properties]: () =>
260
+ import('@codemirror/legacy-modes/mode/properties').then(({ properties }) =>
261
+ StreamLanguage.define(properties)
262
+ ),
263
+ [LegacyLanguages.protobuf]: () =>
264
+ import('@codemirror/legacy-modes/mode/protobuf').then(({ protobuf }) =>
265
+ StreamLanguage.define(protobuf)
266
+ ),
267
+ [LegacyLanguages.puppet]: () =>
268
+ import('@codemirror/legacy-modes/mode/puppet').then(({ puppet }) =>
269
+ StreamLanguage.define(puppet)
270
+ ),
271
+ [LegacyLanguages.q]: () =>
272
+ import('@codemirror/legacy-modes/mode/q').then(({ q }) =>
273
+ StreamLanguage.define(q)
274
+ ),
275
+ [LegacyLanguages.r]: () =>
276
+ import('@codemirror/legacy-modes/mode/r').then(({ r }) =>
277
+ StreamLanguage.define(r)
278
+ ),
279
+ [LegacyLanguages.rpm]: () =>
280
+ import('@codemirror/legacy-modes/mode/rpm').then(({ rpmSpec }) =>
281
+ StreamLanguage.define(rpmSpec)
282
+ ),
283
+ [LegacyLanguages.ruby]: () =>
284
+ import('@codemirror/legacy-modes/mode/ruby').then(({ ruby }) =>
285
+ StreamLanguage.define(ruby)
286
+ ),
287
+ [LegacyLanguages.sas]: () =>
288
+ import('@codemirror/legacy-modes/mode/sas').then(({ sas }) =>
289
+ StreamLanguage.define(sas)
290
+ ),
291
+ [LegacyLanguages.scheme]: () =>
292
+ import('@codemirror/legacy-modes/mode/scheme').then(({ scheme }) =>
293
+ StreamLanguage.define(scheme)
294
+ ),
295
+ [LegacyLanguages.shell]: () =>
296
+ import('@codemirror/legacy-modes/mode/shell').then(({ shell }) =>
297
+ StreamLanguage.define(shell)
298
+ ),
299
+ [LegacyLanguages.smalltalk]: () =>
300
+ import('@codemirror/legacy-modes/mode/smalltalk').then(({ smalltalk }) =>
301
+ StreamLanguage.define(smalltalk)
302
+ ),
303
+ [LegacyLanguages.solr]: () =>
304
+ import('@codemirror/legacy-modes/mode/solr').then(({ solr }) =>
305
+ StreamLanguage.define(solr)
306
+ ),
307
+ [LegacyLanguages.sparql]: () =>
308
+ import('@codemirror/legacy-modes/mode/sparql').then(({ sparql }) =>
309
+ StreamLanguage.define(sparql)
310
+ ),
311
+ [LegacyLanguages.spreadsheet]: () =>
312
+ import('@codemirror/legacy-modes/mode/spreadsheet').then(
313
+ ({ spreadsheet }) => StreamLanguage.define(spreadsheet),
314
+ ),
315
+ [LegacyLanguages.stex]: () =>
316
+ import('@codemirror/legacy-modes/mode/stex').then(({ stex }) =>
317
+ StreamLanguage.define(stex)
318
+ ),
319
+ [LegacyLanguages.stylus]: () =>
320
+ import('@codemirror/legacy-modes/mode/stylus').then(({ stylus }) =>
321
+ StreamLanguage.define(stylus)
322
+ ),
323
+ [LegacyLanguages.swift]: () =>
324
+ import('@codemirror/legacy-modes/mode/swift').then(({ swift }) =>
325
+ StreamLanguage.define(swift)
326
+ ),
327
+ [LegacyLanguages.tcl]: () =>
328
+ import('@codemirror/legacy-modes/mode/tcl').then(({ tcl }) =>
329
+ StreamLanguage.define(tcl)
330
+ ),
331
+ [LegacyLanguages.textile]: () =>
332
+ import('@codemirror/legacy-modes/mode/textile').then(({ textile }) =>
333
+ StreamLanguage.define(textile)
334
+ ),
335
+ [LegacyLanguages.tiddlywiki]: () =>
336
+ import('@codemirror/legacy-modes/mode/tiddlywiki').then(({ tiddlyWiki }) =>
337
+ StreamLanguage.define(tiddlyWiki)
338
+ ),
339
+ [LegacyLanguages.tiki]: () =>
340
+ import('@codemirror/legacy-modes/mode/tiki').then(({ tiki }) =>
341
+ StreamLanguage.define(tiki)
342
+ ),
343
+ [LegacyLanguages.toml]: () =>
344
+ import('@codemirror/legacy-modes/mode/toml').then(({ toml }) =>
345
+ StreamLanguage.define(toml)
346
+ ),
347
+ [LegacyLanguages.troff]: () =>
348
+ import('@codemirror/legacy-modes/mode/troff').then(({ troff }) =>
349
+ StreamLanguage.define(troff)
350
+ ),
351
+ [LegacyLanguages.ttcn]: () =>
352
+ import('@codemirror/legacy-modes/mode/ttcn').then(({ ttcn }) =>
353
+ StreamLanguage.define(ttcn)
354
+ ),
355
+ [LegacyLanguages.turtle]: () =>
356
+ import('@codemirror/legacy-modes/mode/turtle').then(({ turtle }) =>
357
+ StreamLanguage.define(turtle)
358
+ ),
359
+ [LegacyLanguages.vb]: () =>
360
+ import('@codemirror/legacy-modes/mode/vb').then(({ vb }) =>
361
+ StreamLanguage.define(vb)
362
+ ),
363
+ [LegacyLanguages.vbscript]: () =>
364
+ import('@codemirror/legacy-modes/mode/vbscript').then(({ vbScript }) =>
365
+ StreamLanguage.define(vbScript)
366
+ ),
367
+ [LegacyLanguages.velocity]: () =>
368
+ import('@codemirror/legacy-modes/mode/velocity').then(({ velocity }) =>
369
+ StreamLanguage.define(velocity)
370
+ ),
371
+ [LegacyLanguages.verilog]: () =>
372
+ import('@codemirror/legacy-modes/mode/verilog').then(({ verilog }) =>
373
+ StreamLanguage.define(verilog)
374
+ ),
375
+ [LegacyLanguages.vhdl]: () =>
376
+ import('@codemirror/legacy-modes/mode/vhdl').then(({ vhdl }) =>
377
+ StreamLanguage.define(vhdl)
378
+ ),
379
+ [LegacyLanguages.webidl]: () =>
380
+ import('@codemirror/legacy-modes/mode/webidl').then(({ webIDL }) =>
381
+ StreamLanguage.define(webIDL)
382
+ ),
383
+ [LegacyLanguages.xquery]: () =>
384
+ import('@codemirror/legacy-modes/mode/xquery').then(({ xQuery }) =>
385
+ StreamLanguage.define(xQuery)
386
+ ),
387
+ [LegacyLanguages.yacas]: () =>
388
+ import('@codemirror/legacy-modes/mode/yacas').then(({ yacas }) =>
389
+ StreamLanguage.define(yacas)
390
+ ),
391
+ [LegacyLanguages.yaml]: () =>
392
+ import('@codemirror/legacy-modes/mode/yaml').then(({ yaml }) =>
393
+ StreamLanguage.define(yaml)
394
+ ),
395
+ [LegacyLanguages.z80]: () =>
396
+ import('@codemirror/legacy-modes/mode/z80').then(({ z80 }) =>
397
+ StreamLanguage.define(z80)
398
+ ),
399
+ };
400
+
401
+ export default languageLoaders;
@@ -0,0 +1,109 @@
1
+ export enum CodeBlockLanguages {
2
+ javascript = 'javascript',
3
+ html = 'html',
4
+ css = 'css',
5
+ sql = 'sql',
6
+ python = 'python',
7
+ rust = 'rust',
8
+ xml = 'xml',
9
+ json = 'json',
10
+ markdown = 'markdown',
11
+ java = 'java',
12
+ cpp = 'cpp',
13
+ lezer = 'lezer',
14
+ php = 'php',
15
+ wast = 'wast',
16
+ }
17
+
18
+ export enum LegacyLanguages {
19
+ apl = 'apl',
20
+ asciiarmor = 'asciiarmor',
21
+ asn1 = 'asn1',
22
+ asterisk = 'asterisk',
23
+ brainfuck = 'brainfuck',
24
+ clike = 'clike',
25
+ clojure = 'clojure',
26
+ cmake = 'cmake',
27
+ cobol = 'cobol',
28
+ coffeescript = 'coffeescript',
29
+ commonlisp = 'commonlisp',
30
+ crystal = 'crystal',
31
+ cypher = 'cypher',
32
+ d = 'd',
33
+ diff = 'diff',
34
+ dockerfile = 'dockerfile',
35
+ dtd = 'dtd',
36
+ dylan = 'dylan',
37
+ ebnf = 'ebnf',
38
+ ecl = 'ecl',
39
+ eiffel = 'eiffel',
40
+ elm = 'elm',
41
+ erlang = 'erlang',
42
+ factor = 'factor',
43
+ fcl = 'fcl',
44
+ forth = 'forth',
45
+ fortran = 'fortran',
46
+ gas = 'gas',
47
+ gherkin = 'gherkin',
48
+ go = 'go',
49
+ groovy = 'groovy',
50
+ haskell = 'haskell',
51
+ haxe = 'haxe',
52
+ http = 'http',
53
+ idl = 'idl',
54
+ jinja2 = 'jinja2',
55
+ julia = 'julia',
56
+ livescript = 'livescript',
57
+ lua = 'lua',
58
+ mathematica = 'mathematica',
59
+ mbox = 'mbox',
60
+ mirc = 'mirc',
61
+ mllike = 'mllike',
62
+ modelica = 'modelica',
63
+ mscgen = 'mscgen',
64
+ mumps = 'mumps',
65
+ nginx = 'nginx',
66
+ nsis = 'nsis',
67
+ ntriples = 'ntriples',
68
+ octave = 'octave',
69
+ oz = 'oz',
70
+ pascal = 'pascal',
71
+ perl = 'perl',
72
+ pig = 'pig',
73
+ powershell = 'powershell',
74
+ properties = 'properties',
75
+ protobuf = 'protobuf',
76
+ puppet = 'puppet',
77
+ q = 'q',
78
+ r = 'r',
79
+ rpm = 'rpm',
80
+ ruby = 'ruby',
81
+ sas = 'sas',
82
+ scheme = 'scheme',
83
+ shell = 'shell',
84
+ smalltalk = 'smalltalk',
85
+ solr = 'solr',
86
+ sparql = 'sparql',
87
+ spreadsheet = 'spreadsheet',
88
+ stex = 'stex',
89
+ stylus = 'stylus',
90
+ swift = 'swift',
91
+ tcl = 'tcl',
92
+ textile = 'textile',
93
+ tiddlywiki = 'tiddlywiki',
94
+ tiki = 'tiki',
95
+ toml = 'toml',
96
+ troff = 'troff',
97
+ ttcn = 'ttcn',
98
+ turtle = 'turtle',
99
+ vb = 'vb',
100
+ vbscript = 'vbscript',
101
+ velocity = 'velocity',
102
+ verilog = 'verilog',
103
+ vhdl = 'vhdl',
104
+ webidl = 'webidl',
105
+ xquery = 'xquery',
106
+ yacas = 'yacas',
107
+ yaml = 'yaml',
108
+ z80 = 'z80',
109
+ }
@@ -0,0 +1,42 @@
1
+ import { Extension } from '@codemirror/state';
2
+
3
+ import type { CoreEditor } from '@kerebron/editor';
4
+ import type { ExtensionLsp } from '@kerebron/extension-lsp';
5
+
6
+ import { lspPlugin } from './plugin.js';
7
+ import { lspTheme } from './theme.js';
8
+
9
+ export interface LSPExtensionConfig {
10
+ extensions?: readonly Extension[];
11
+ getPos: () => number | undefined;
12
+ }
13
+
14
+ export class LSPExtension {
15
+ extensions: Extension[] = [];
16
+
17
+ constructor(
18
+ readonly config: LSPExtensionConfig,
19
+ ) {
20
+ if (config.extensions) {
21
+ for (const ext of config.extensions) {
22
+ this.extensions.push(ext as Extension);
23
+ }
24
+ }
25
+ }
26
+
27
+ plugin(extensionLsp: ExtensionLsp, editor: CoreEditor): Extension {
28
+ if (!editor.config.uri) {
29
+ throw new Error('No editor.config.uri');
30
+ }
31
+ return [
32
+ lspPlugin.of({
33
+ extension: this,
34
+ editor,
35
+ extensionLsp,
36
+ uri: editor.config.uri,
37
+ }),
38
+ lspTheme,
39
+ this.extensions,
40
+ ];
41
+ }
42
+ }