@vc-shell/framework 1.1.2 → 1.1.3

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 (266) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/apl-B2DGVGxc.js +76 -0
  3. package/dist/asciiarmor-2LVJmxlE.js +34 -0
  4. package/dist/asn1-jKiBa2Ya.js +95 -0
  5. package/dist/asterisk-DS281yxp.js +271 -0
  6. package/dist/brainfuck-C_p9pTT8.js +34 -0
  7. package/dist/clike-BUuHEmgZ.js +620 -0
  8. package/dist/clojure-CCKyeQKf.js +800 -0
  9. package/dist/cmake-CuaCgAKt.js +28 -0
  10. package/dist/cobol-BlTKFDRj.js +72 -0
  11. package/dist/coffeescript-BVCvwO8I.js +179 -0
  12. package/dist/commonlisp-D_kxz07b.js +75 -0
  13. package/dist/crystal-D309uH6_.js +217 -0
  14. package/dist/css-bIlmDBTK.js +1560 -0
  15. package/dist/cypher-BMq4Fwjl.js +68 -0
  16. package/dist/d-BZcgY6La.js +127 -0
  17. package/dist/diff-Cg9d_RX2.js +18 -0
  18. package/dist/{assets/dockerfile-D0MivFIF.js → dockerfile-DIy8NleC.js} +36 -41
  19. package/dist/dtd-CtLokQ-U.js +84 -0
  20. package/dist/dylan-QYeExnWK.js +234 -0
  21. package/dist/ebnf-DUPDuY4r.js +78 -0
  22. package/dist/ecl-CiXN-g_D.js +121 -0
  23. package/dist/eiffel-yQhjl4T1.js +110 -0
  24. package/dist/elm-CNT9vbN0.js +108 -0
  25. package/dist/erlang-CFOYdy9e.js +487 -0
  26. package/dist/factor-DDOC7X6P.js +65 -0
  27. package/dist/fcl-CPC2WYrI.js +103 -0
  28. package/dist/forth-BmxRyE9S.js +60 -0
  29. package/dist/fortran-9bvPyrOW.js +442 -0
  30. package/dist/framework.js +288 -29
  31. package/dist/gas-BdfkXJT_.js +183 -0
  32. package/dist/gherkin-CJuwpceU.js +34 -0
  33. package/dist/groovy-DZeT_VM-.js +146 -0
  34. package/dist/haskell-Bvt3Qq1t.js +375 -0
  35. package/dist/haxe-70NVW1pR.js +359 -0
  36. package/dist/http-D9LttvKF.js +44 -0
  37. package/dist/idl-B6TRFYjl.js +947 -0
  38. package/dist/{assets/index-C7zlEJy8.js → index-B83didIY.js} +229 -302
  39. package/dist/{assets/index-BT8o9-M5.js → index-BKR3ecN5.js} +267 -386
  40. package/dist/{assets/index-B1srGfDb.js → index-BN-_cebP.js} +119 -165
  41. package/dist/index-BUHouW8T.js +249 -0
  42. package/dist/index-BW3krAiY.js +341 -0
  43. package/dist/index-C6tcHNVl.js +75 -0
  44. package/dist/index-CGyGGihY.js +538 -0
  45. package/dist/{assets/index-DMTL7O1s.js → index-CnQ56kqq.js} +570 -586
  46. package/dist/index-Cv6c_1IG.js +71 -0
  47. package/dist/{assets/index-CeeaNa4F.js → index-CxMfHOup.js} +136 -167
  48. package/dist/index-DRL7VovM.js +308 -0
  49. package/dist/index-Dfcy8w9c.js +58 -0
  50. package/dist/{assets/index-CtmpJVwa.js → index-DyGIijU2.js} +270 -312
  51. package/dist/index-Ek7_XgGk.js +98 -0
  52. package/dist/{assets/index-Bv_z_qRq.js → index-TSGli7LX.js} +121 -124
  53. package/dist/index-UnPPbmRc.js +145659 -0
  54. package/dist/{assets/index-BKF-A58l.js → index-xFQltarK.js} +79 -92
  55. package/dist/index.css +9 -18
  56. package/dist/javascript-WMWNx-Vj.js +690 -0
  57. package/dist/jinja2-DnB6dQmV.js +154 -0
  58. package/dist/julia-DpvXAuO6.js +241 -0
  59. package/dist/livescript-CanGTf8u.js +272 -0
  60. package/dist/lua-XplVlWi_.js +217 -0
  61. package/dist/mathematica-jaRHnSxC.js +35 -0
  62. package/dist/mbox-BctzC1hL.js +76 -0
  63. package/dist/mirc-CFBPAOaF.js +72 -0
  64. package/dist/mllike-BSnXJBGA.js +272 -0
  65. package/dist/modelica-vUgVs--1.js +93 -0
  66. package/dist/mscgen-Cpl0NYLN.js +104 -0
  67. package/dist/mumps-CQoS1kWX.js +25 -0
  68. package/dist/nginx-zDPm3Z74.js +89 -0
  69. package/dist/nsis-fePjrhq7.js +62 -0
  70. package/dist/ntriples-CsNjv2QF.js +79 -0
  71. package/dist/octave-C8PmmSRH.js +143 -0
  72. package/dist/oz-Ce8aN8oE.js +151 -0
  73. package/dist/pascal-De0D6mP7.js +77 -0
  74. package/dist/perl-B4bSCe1C.js +915 -0
  75. package/dist/pig-D24Z8EXi.js +54 -0
  76. package/dist/powershell-DkYVfTzP.js +249 -0
  77. package/dist/properties-Dn9wna3M.js +26 -0
  78. package/dist/protobuf-BPIjwpzm.js +49 -0
  79. package/dist/pug-BqUR2bBq.js +248 -0
  80. package/dist/puppet-nyd4dhjf.js +45 -0
  81. package/dist/python-B5QdSKoL.js +313 -0
  82. package/dist/q-DXjKs-tC.js +83 -0
  83. package/dist/r-LKEuhEGI.js +104 -0
  84. package/dist/rpm-IznJm2Xc.js +57 -0
  85. package/dist/ruby-CcYfvIk6.js +228 -0
  86. package/dist/sas-7E8yHoCW.js +105 -0
  87. package/dist/scheme-DjibxsNh.js +124 -0
  88. package/dist/shell-C0C2sNA_.js +182 -0
  89. package/dist/sieve-Bwz7vjP5.js +72 -0
  90. package/dist/simple-mode-B0dvCdAA.js +89 -0
  91. package/dist/smalltalk-Bhddl2pB.js +48 -0
  92. package/dist/solr-BNlsLglM.js +41 -0
  93. package/dist/sparql-FarWu_Gb.js +197 -0
  94. package/dist/spreadsheet-C-cy4P5N.js +49 -0
  95. package/dist/sql-mMre1Bo3.js +282 -0
  96. package/dist/stex-92raWT1r.js +129 -0
  97. package/dist/stylus-CAdqWld3.js +250 -0
  98. package/dist/swift-DSxqR9R6.js +230 -0
  99. package/dist/tcl-xfoLljhY.js +81 -0
  100. package/dist/textile-D1AWE-pc.js +295 -0
  101. package/dist/tiddlywiki-5wqsXtSk.js +155 -0
  102. package/dist/tiki-__Kn3CeS.js +181 -0
  103. package/dist/toml-BHiuTcfn.js +49 -0
  104. package/dist/troff-D2UO-fKf.js +35 -0
  105. package/dist/ttcn-Bsa4sfRm.js +123 -0
  106. package/dist/ttcn-cfg-Bac_acMi.js +88 -0
  107. package/dist/turtle-xwJUxoPV.js +80 -0
  108. package/dist/vb-c2kQGd6-.js +74 -0
  109. package/dist/vbscript-Dz1TtKsy.js +324 -0
  110. package/dist/velocity-DJd0pTTC.js +96 -0
  111. package/dist/verilog-C4VGD9n1.js +263 -0
  112. package/dist/vhdl-T9HkrbI2.js +106 -0
  113. package/dist/webidl-CjfDENEo.js +155 -0
  114. package/dist/xquery-BUQdORAS.js +422 -0
  115. package/dist/yacas-C0absKBh.js +73 -0
  116. package/dist/z80-C8rPtw-0.js +61 -0
  117. package/package.json +4 -4
  118. package/dist/assets/apl-NdZ6-T1z.js +0 -142
  119. package/dist/assets/asciiarmor-CmJEbAuq.js +0 -56
  120. package/dist/assets/asn1-Ctc8K72v.js +0 -192
  121. package/dist/assets/asterisk-D6r__RMF.js +0 -187
  122. package/dist/assets/brainfuck-COwWCBpq.js +0 -70
  123. package/dist/assets/clike-C-PtfL50.js +0 -1019
  124. package/dist/assets/clojure-C2XPrGCa.js +0 -274
  125. package/dist/assets/cmake-BGrEgXCL.js +0 -81
  126. package/dist/assets/cobol-DShPmpZe.js +0 -234
  127. package/dist/assets/coffeescript-BG8vTfSz.js +0 -329
  128. package/dist/assets/commonlisp-8oE2EpEe.js +0 -108
  129. package/dist/assets/core-api-BMLS9FrT.js +0 -8288
  130. package/dist/assets/core-composables-DYxpIWyY.js +0 -1799
  131. package/dist/assets/core-constants-DiKDBbnD.js +0 -83
  132. package/dist/assets/core-directives-QhJx9kWh.js +0 -41
  133. package/dist/assets/core-interceptors-CSjUvxQ0.js +0 -78
  134. package/dist/assets/core-plugins-wv2bDZ0l.js +0 -4919
  135. package/dist/assets/core-services-CAfJRsjs.js +0 -4
  136. package/dist/assets/core-utilities-BTktq_a-.js +0 -33
  137. package/dist/assets/crystal--rIRMl16.js +0 -419
  138. package/dist/assets/css/core-directives-FL4vIIkN.css +0 -73
  139. package/dist/assets/css/fonts-M1mtyV8L.css +0 -305
  140. package/dist/assets/css/icons-css-DbCVsovz.css +0 -41
  141. package/dist/assets/css/shared-components-bnLHdCtf.css +0 -429
  142. package/dist/assets/css/shared-modules-CNOICmYQ.css +0 -45
  143. package/dist/assets/css/styles-C62nDZwV.css +0 -4096
  144. package/dist/assets/css/ui-app-Bh9hmlIB.css +0 -1287
  145. package/dist/assets/css/ui-content-B29jsmK7.css +0 -1187
  146. package/dist/assets/css/ui-controls-CRtfFczw.css +0 -387
  147. package/dist/assets/css/ui-data-CYLxfdUa.css +0 -1555
  148. package/dist/assets/css/ui-form-C3WrWfVl.css +0 -71
  149. package/dist/assets/css/ui-form-fields-DOtHhDeM.css +0 -1360
  150. package/dist/assets/css/ui-helpers-bOoNv5dS.css +0 -37
  151. package/dist/assets/css/ui-indicators-CybQnCoU.css +0 -628
  152. package/dist/assets/css/ui-layout-DyGKgizy.css +0 -251
  153. package/dist/assets/css/ui-media-TWYep8js.css +0 -298
  154. package/dist/assets/css/ui-media-advanced-BGxy3VSB.css +0 -183
  155. package/dist/assets/css/ui-navigation-DcPRn8SB.css +0 -1693
  156. package/dist/assets/css-C_ZeEwz2.js +0 -847
  157. package/dist/assets/cypher-Bayei42D.js +0 -122
  158. package/dist/assets/d-B0hhz6be.js +0 -205
  159. package/dist/assets/diff-DQutOIXs.js +0 -30
  160. package/dist/assets/dtd-C1CeYVnM.js +0 -121
  161. package/dist/assets/dylan-Dm9-uD-A.js +0 -337
  162. package/dist/assets/ebnf-jWG_1Yly.js +0 -151
  163. package/dist/assets/ecl-CgJPA6z9.js +0 -190
  164. package/dist/assets/eiffel-lj7uLahq.js +0 -146
  165. package/dist/assets/elm-Cz7o1ijk.js +0 -230
  166. package/dist/assets/erlang-CyL5QOyR.js +0 -581
  167. package/dist/assets/factor-BVWHwYpu.js +0 -65
  168. package/dist/assets/fcl-DiozYjc8.js +0 -154
  169. package/dist/assets/forth-B7vn5ze0.js +0 -164
  170. package/dist/assets/fortran-D2XNEnBT.js +0 -172
  171. package/dist/assets/gas-B_Tj57Ve.js +0 -343
  172. package/dist/assets/gherkin-CJ6Qk4EZ.js +0 -147
  173. package/dist/assets/groovy-ioGz2WSV.js +0 -228
  174. package/dist/assets/haskell-BHnm1B83.js +0 -239
  175. package/dist/assets/haxe-Bn6Yo6N3.js +0 -490
  176. package/dist/assets/http-BOd5SYCT.js +0 -89
  177. package/dist/assets/idl-FSFk8_xX.js +0 -274
  178. package/dist/assets/index--5fKpGeN.js +0 -792
  179. package/dist/assets/index-0lME64YH.js +0 -342
  180. package/dist/assets/index-B6Ip0FgO.js +0 -437
  181. package/dist/assets/index-BmV05E5M.js +0 -479
  182. package/dist/assets/index-C6MavZDA.js +0 -131
  183. package/dist/assets/index-CwKpgcYl.js +0 -85
  184. package/dist/assets/index-DRUmDL0J.js +0 -59
  185. package/dist/assets/index-DgFC-M9G.js +0 -96
  186. package/dist/assets/javascript-DGrAs70C.js +0 -922
  187. package/dist/assets/jinja2-D9k5QrXv.js +0 -171
  188. package/dist/assets/julia-DM42tOPB.js +0 -369
  189. package/dist/assets/livescript-Dci8HnOi.js +0 -259
  190. package/dist/assets/lua-CByQu4v6.js +0 -137
  191. package/dist/assets/lucide-icons-af0BY3bi.js +0 -34555
  192. package/dist/assets/mathematica-Dkv0uCYF.js +0 -153
  193. package/dist/assets/mbox-CYTvs5kC.js +0 -114
  194. package/dist/assets/mirc-DpgP3GCo.js +0 -176
  195. package/dist/assets/mllike-C6tNn2Yt.js +0 -343
  196. package/dist/assets/modelica-CR6hTSce.js +0 -192
  197. package/dist/assets/mscgen-D0GXtzMS.js +0 -149
  198. package/dist/assets/mumps-Bf1EyDa6.js +0 -129
  199. package/dist/assets/nginx-By9Phklj.js +0 -163
  200. package/dist/assets/nsis-B5ggMLQ9.js +0 -80
  201. package/dist/assets/ntriples-C7VJ7pnm.js +0 -141
  202. package/dist/assets/octave-6yR_ix15.js +0 -112
  203. package/dist/assets/oz-CEUnktiQ.js +0 -235
  204. package/dist/assets/pascal-Dksf1EyF.js +0 -124
  205. package/dist/assets/perl-B99DUQQt.js +0 -819
  206. package/dist/assets/pig-DFeDRta6.js +0 -149
  207. package/dist/assets/powershell-DhwsNWMx.js +0 -381
  208. package/dist/assets/properties-o21uErwC.js +0 -62
  209. package/dist/assets/protobuf-YxlANsmD.js +0 -54
  210. package/dist/assets/pug-bUgjeODZ.js +0 -504
  211. package/dist/assets/puppet-B8WICGYE.js +0 -205
  212. package/dist/assets/python-D3FFx1Id.js +0 -389
  213. package/dist/assets/q-D2Hjhl2C.js +0 -123
  214. package/dist/assets/r-D73k5lac.js +0 -174
  215. package/dist/assets/rpm-Duv_WH0z.js +0 -89
  216. package/dist/assets/ruby-DGCVqZDt.js +0 -287
  217. package/dist/assets/sas-XjPv1Vy5.js +0 -268
  218. package/dist/assets/scheme-DeaA28vt.js +0 -263
  219. package/dist/assets/shared-components-CfAt2hC6.js +0 -1501
  220. package/dist/assets/shared-composables-v9NkNuAe.js +0 -35
  221. package/dist/assets/shared-modules-CDP-H5ZB.js +0 -3588
  222. package/dist/assets/shared-pages-BGRRA5WB.js +0 -20
  223. package/dist/assets/shell-Bx6QZTgx.js +0 -145
  224. package/dist/assets/sieve-CWCD62sW.js +0 -178
  225. package/dist/assets/simple-mode-BAO9cD7H.js +0 -136
  226. package/dist/assets/smalltalk-DSQbF4MF.js +0 -153
  227. package/dist/assets/solr-v_XRf31C.js +0 -80
  228. package/dist/assets/sparql-BrfDqf0-.js +0 -170
  229. package/dist/assets/spreadsheet-Csn84Pef.js +0 -98
  230. package/dist/assets/sql-D4utlq1l.js +0 -480
  231. package/dist/assets/stex-DBkktma-.js +0 -246
  232. package/dist/assets/stylus-ByG-Fd6f.js +0 -750
  233. package/dist/assets/swift-CHbTprt3.js +0 -202
  234. package/dist/assets/tcl-BRlMUELr.js +0 -125
  235. package/dist/assets/textile-CqfTUjd4.js +0 -441
  236. package/dist/assets/tiddlywiki-BrsoM8KB.js +0 -278
  237. package/dist/assets/tiki-D-ivWPkc.js +0 -289
  238. package/dist/assets/toml-t_IhJu83.js +0 -75
  239. package/dist/assets/troff-DckGF2AE.js +0 -64
  240. package/dist/assets/ttcn-B8TAFbRR.js +0 -253
  241. package/dist/assets/ttcn-cfg-NHh25oCM.js +0 -197
  242. package/dist/assets/turtle-D9Js0BlL.js +0 -141
  243. package/dist/assets/ui-app-D31Pr1WY.js +0 -1993
  244. package/dist/assets/ui-content-B7SxH8y9.js +0 -52887
  245. package/dist/assets/ui-controls-nmDJYLmC.js +0 -348
  246. package/dist/assets/ui-data-Ci3b1ye0.js +0 -22901
  247. package/dist/assets/ui-form-Cs5ooOo7.js +0 -159
  248. package/dist/assets/ui-form-fields-DFQi31jT.js +0 -40575
  249. package/dist/assets/ui-helpers-CF-EUlOg.js +0 -1736
  250. package/dist/assets/ui-indicators-mIQeEqha.js +0 -199
  251. package/dist/assets/ui-layout-v2XBQky3.js +0 -320
  252. package/dist/assets/ui-media-WWYrwmZw.js +0 -1259
  253. package/dist/assets/ui-media-advanced-T8ibi153.js +0 -492
  254. package/dist/assets/ui-modals-BdZXzI85.js +0 -2
  255. package/dist/assets/ui-navigation-BtHa6ovW.js +0 -24269
  256. package/dist/assets/utils-DZK5fu48.js +0 -17216
  257. package/dist/assets/vb-CbIGLrpY.js +0 -249
  258. package/dist/assets/vbscript-8ANWle9n.js +0 -320
  259. package/dist/assets/velocity-D6hz3Hzw.js +0 -186
  260. package/dist/assets/verilog-DIV442at.js +0 -565
  261. package/dist/assets/vhdl-BlTiZo_v.js +0 -174
  262. package/dist/assets/vueuse-CTQm4Zh0.js +0 -9308
  263. package/dist/assets/webidl-Cp3tcqdk.js +0 -179
  264. package/dist/assets/xquery-Dd4TBzXv.js +0 -411
  265. package/dist/assets/yacas-DQ1WucF0.js +0 -182
  266. package/dist/assets/z80-P1j44jDI.js +0 -102
@@ -1,329 +0,0 @@
1
- var ERRORCLASS = "error";
2
-
3
- function wordRegexp(words) {
4
- return new RegExp("^((" + words.join(")|(") + "))\\b");
5
- }
6
-
7
- var operators = /^(?:->|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/;
8
- var delimiters = /^(?:[()\[\]{},:`=;]|\.\.?\.?)/;
9
- var identifiers = /^[_A-Za-z$][_A-Za-z$0-9]*/;
10
- var atProp = /^@[_A-Za-z$][_A-Za-z$0-9]*/;
11
-
12
- var wordOperators = wordRegexp(["and", "or", "not",
13
- "is", "isnt", "in",
14
- "instanceof", "typeof"]);
15
- var indentKeywords = ["for", "while", "loop", "if", "unless", "else",
16
- "switch", "try", "catch", "finally", "class"];
17
- var commonKeywords = ["break", "by", "continue", "debugger", "delete",
18
- "do", "in", "of", "new", "return", "then",
19
- "this", "@", "throw", "when", "until", "extends"];
20
-
21
- var keywords = wordRegexp(indentKeywords.concat(commonKeywords));
22
-
23
- indentKeywords = wordRegexp(indentKeywords);
24
-
25
-
26
- var stringPrefixes = /^('{3}|\"{3}|['\"])/;
27
- var regexPrefixes = /^(\/{3}|\/)/;
28
- var commonConstants = ["Infinity", "NaN", "undefined", "null", "true", "false", "on", "off", "yes", "no"];
29
- var constants = wordRegexp(commonConstants);
30
-
31
- // Tokenizers
32
- function tokenBase(stream, state) {
33
- // Handle scope changes
34
- if (stream.sol()) {
35
- if (state.scope.align === null) state.scope.align = false;
36
- var scopeOffset = state.scope.offset;
37
- if (stream.eatSpace()) {
38
- var lineOffset = stream.indentation();
39
- if (lineOffset > scopeOffset && state.scope.type == "coffee") {
40
- return "indent";
41
- } else if (lineOffset < scopeOffset) {
42
- return "dedent";
43
- }
44
- return null;
45
- } else {
46
- if (scopeOffset > 0) {
47
- dedent(stream, state);
48
- }
49
- }
50
- }
51
- if (stream.eatSpace()) {
52
- return null;
53
- }
54
-
55
- var ch = stream.peek();
56
-
57
- // Handle docco title comment (single line)
58
- if (stream.match("####")) {
59
- stream.skipToEnd();
60
- return "comment";
61
- }
62
-
63
- // Handle multi line comments
64
- if (stream.match("###")) {
65
- state.tokenize = longComment;
66
- return state.tokenize(stream, state);
67
- }
68
-
69
- // Single line comment
70
- if (ch === "#") {
71
- stream.skipToEnd();
72
- return "comment";
73
- }
74
-
75
- // Handle number literals
76
- if (stream.match(/^-?[0-9\.]/, false)) {
77
- var floatLiteral = false;
78
- // Floats
79
- if (stream.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)) {
80
- floatLiteral = true;
81
- }
82
- if (stream.match(/^-?\d+\.\d*/)) {
83
- floatLiteral = true;
84
- }
85
- if (stream.match(/^-?\.\d+/)) {
86
- floatLiteral = true;
87
- }
88
-
89
- if (floatLiteral) {
90
- // prevent from getting extra . on 1..
91
- if (stream.peek() == "."){
92
- stream.backUp(1);
93
- }
94
- return "number";
95
- }
96
- // Integers
97
- var intLiteral = false;
98
- // Hex
99
- if (stream.match(/^-?0x[0-9a-f]+/i)) {
100
- intLiteral = true;
101
- }
102
- // Decimal
103
- if (stream.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)) {
104
- intLiteral = true;
105
- }
106
- // Zero by itself with no other piece of number.
107
- if (stream.match(/^-?0(?![\dx])/i)) {
108
- intLiteral = true;
109
- }
110
- if (intLiteral) {
111
- return "number";
112
- }
113
- }
114
-
115
- // Handle strings
116
- if (stream.match(stringPrefixes)) {
117
- state.tokenize = tokenFactory(stream.current(), false, "string");
118
- return state.tokenize(stream, state);
119
- }
120
- // Handle regex literals
121
- if (stream.match(regexPrefixes)) {
122
- if (stream.current() != "/" || stream.match(/^.*\//, false)) { // prevent highlight of division
123
- state.tokenize = tokenFactory(stream.current(), true, "string.special");
124
- return state.tokenize(stream, state);
125
- } else {
126
- stream.backUp(1);
127
- }
128
- }
129
-
130
-
131
-
132
- // Handle operators and delimiters
133
- if (stream.match(operators) || stream.match(wordOperators)) {
134
- return "operator";
135
- }
136
- if (stream.match(delimiters)) {
137
- return "punctuation";
138
- }
139
-
140
- if (stream.match(constants)) {
141
- return "atom";
142
- }
143
-
144
- if (stream.match(atProp) || state.prop && stream.match(identifiers)) {
145
- return "property";
146
- }
147
-
148
- if (stream.match(keywords)) {
149
- return "keyword";
150
- }
151
-
152
- if (stream.match(identifiers)) {
153
- return "variable";
154
- }
155
-
156
- // Handle non-detected items
157
- stream.next();
158
- return ERRORCLASS;
159
- }
160
-
161
- function tokenFactory(delimiter, singleline, outclass) {
162
- return function(stream, state) {
163
- while (!stream.eol()) {
164
- stream.eatWhile(/[^'"\/\\]/);
165
- if (stream.eat("\\")) {
166
- stream.next();
167
- if (singleline && stream.eol()) {
168
- return outclass;
169
- }
170
- } else if (stream.match(delimiter)) {
171
- state.tokenize = tokenBase;
172
- return outclass;
173
- } else {
174
- stream.eat(/['"\/]/);
175
- }
176
- }
177
- if (singleline) {
178
- state.tokenize = tokenBase;
179
- }
180
- return outclass;
181
- };
182
- }
183
-
184
- function longComment(stream, state) {
185
- while (!stream.eol()) {
186
- stream.eatWhile(/[^#]/);
187
- if (stream.match("###")) {
188
- state.tokenize = tokenBase;
189
- break;
190
- }
191
- stream.eatWhile("#");
192
- }
193
- return "comment";
194
- }
195
-
196
- function indent(stream, state, type = "coffee") {
197
- var offset = 0, align = false, alignOffset = null;
198
- for (var scope = state.scope; scope; scope = scope.prev) {
199
- if (scope.type === "coffee" || scope.type == "}") {
200
- offset = scope.offset + stream.indentUnit;
201
- break;
202
- }
203
- }
204
- if (type !== "coffee") {
205
- align = null;
206
- alignOffset = stream.column() + stream.current().length;
207
- } else if (state.scope.align) {
208
- state.scope.align = false;
209
- }
210
- state.scope = {
211
- offset: offset,
212
- type: type,
213
- prev: state.scope,
214
- align: align,
215
- alignOffset: alignOffset
216
- };
217
- }
218
-
219
- function dedent(stream, state) {
220
- if (!state.scope.prev) return;
221
- if (state.scope.type === "coffee") {
222
- var _indent = stream.indentation();
223
- var matched = false;
224
- for (var scope = state.scope; scope; scope = scope.prev) {
225
- if (_indent === scope.offset) {
226
- matched = true;
227
- break;
228
- }
229
- }
230
- if (!matched) {
231
- return true;
232
- }
233
- while (state.scope.prev && state.scope.offset !== _indent) {
234
- state.scope = state.scope.prev;
235
- }
236
- return false;
237
- } else {
238
- state.scope = state.scope.prev;
239
- return false;
240
- }
241
- }
242
-
243
- function tokenLexer(stream, state) {
244
- var style = state.tokenize(stream, state);
245
- var current = stream.current();
246
-
247
- // Handle scope changes.
248
- if (current === "return") {
249
- state.dedent = true;
250
- }
251
- if (((current === "->" || current === "=>") && stream.eol())
252
- || style === "indent") {
253
- indent(stream, state);
254
- }
255
- var delimiter_index = "[({".indexOf(current);
256
- if (delimiter_index !== -1) {
257
- indent(stream, state, "])}".slice(delimiter_index, delimiter_index+1));
258
- }
259
- if (indentKeywords.exec(current)){
260
- indent(stream, state);
261
- }
262
- if (current == "then"){
263
- dedent(stream, state);
264
- }
265
-
266
-
267
- if (style === "dedent") {
268
- if (dedent(stream, state)) {
269
- return ERRORCLASS;
270
- }
271
- }
272
- delimiter_index = "])}".indexOf(current);
273
- if (delimiter_index !== -1) {
274
- while (state.scope.type == "coffee" && state.scope.prev)
275
- state.scope = state.scope.prev;
276
- if (state.scope.type == current)
277
- state.scope = state.scope.prev;
278
- }
279
- if (state.dedent && stream.eol()) {
280
- if (state.scope.type == "coffee" && state.scope.prev)
281
- state.scope = state.scope.prev;
282
- state.dedent = false;
283
- }
284
-
285
- return style == "indent" || style == "dedent" ? null : style;
286
- }
287
-
288
- const coffeeScript = {
289
- name: "coffeescript",
290
- startState: function() {
291
- return {
292
- tokenize: tokenBase,
293
- scope: {offset: 0, type:"coffee", prev: null, align: false},
294
- prop: false,
295
- dedent: 0
296
- };
297
- },
298
-
299
- token: function(stream, state) {
300
- var fillAlign = state.scope.align === null && state.scope;
301
- if (fillAlign && stream.sol()) fillAlign.align = false;
302
-
303
- var style = tokenLexer(stream, state);
304
- if (style && style != "comment") {
305
- if (fillAlign) fillAlign.align = true;
306
- state.prop = style == "punctuation" && stream.current() == ".";
307
- }
308
-
309
- return style;
310
- },
311
-
312
- indent: function(state, text) {
313
- if (state.tokenize != tokenBase) return 0;
314
- var scope = state.scope;
315
- var closer = text && "])}".indexOf(text.charAt(0)) > -1;
316
- if (closer) while (scope.type == "coffee" && scope.prev) scope = scope.prev;
317
- var closes = closer && scope.type === text.charAt(0);
318
- if (scope.align)
319
- return scope.alignOffset - (closes ? 1 : 0);
320
- else
321
- return (closes ? scope.prev : scope).offset;
322
- },
323
-
324
- languageData: {
325
- commentTokens: {line: "#"}
326
- }
327
- };
328
-
329
- export { coffeeScript };
@@ -1,108 +0,0 @@
1
- var specialForm = /^(block|let*|return-from|catch|load-time-value|setq|eval-when|locally|symbol-macrolet|flet|macrolet|tagbody|function|multiple-value-call|the|go|multiple-value-prog1|throw|if|progn|unwind-protect|labels|progv|let|quote)$/;
2
- var assumeBody = /^with|^def|^do|^prog|case$|^cond$|bind$|when$|unless$/;
3
- var numLiteral = /^(?:[+\-]?(?:\d+|\d*\.\d+)(?:[efd][+\-]?\d+)?|[+\-]?\d+(?:\/[+\-]?\d+)?|#b[+\-]?[01]+|#o[+\-]?[0-7]+|#x[+\-]?[\da-f]+)/;
4
- var symbol = /[^\s'`,@()\[\]";]/;
5
- var type;
6
-
7
- function readSym(stream) {
8
- var ch;
9
- while (ch = stream.next()) {
10
- if (ch == "\\") stream.next();
11
- else if (!symbol.test(ch)) { stream.backUp(1); break; }
12
- }
13
- return stream.current();
14
- }
15
-
16
- function base(stream, state) {
17
- if (stream.eatSpace()) {type = "ws"; return null;}
18
- if (stream.match(numLiteral)) return "number";
19
- var ch = stream.next();
20
- if (ch == "\\") ch = stream.next();
21
-
22
- if (ch == '"') return (state.tokenize = inString)(stream, state);
23
- else if (ch == "(") { type = "open"; return "bracket"; }
24
- else if (ch == ")") { type = "close"; return "bracket"; }
25
- else if (ch == ";") { stream.skipToEnd(); type = "ws"; return "comment"; }
26
- else if (/['`,@]/.test(ch)) return null;
27
- else if (ch == "|") {
28
- if (stream.skipTo("|")) { stream.next(); return "variableName"; }
29
- else { stream.skipToEnd(); return "error"; }
30
- } else if (ch == "#") {
31
- var ch = stream.next();
32
- if (ch == "(") { type = "open"; return "bracket"; }
33
- else if (/[+\-=\.']/.test(ch)) return null;
34
- else if (/\d/.test(ch) && stream.match(/^\d*#/)) return null;
35
- else if (ch == "|") return (state.tokenize = inComment)(stream, state);
36
- else if (ch == ":") { readSym(stream); return "meta"; }
37
- else if (ch == "\\") { stream.next(); readSym(stream); return "string.special" }
38
- else return "error";
39
- } else {
40
- var name = readSym(stream);
41
- if (name == ".") return null;
42
- type = "symbol";
43
- if (name == "nil" || name == "t" || name.charAt(0) == ":") return "atom";
44
- if (state.lastType == "open" && (specialForm.test(name) || assumeBody.test(name))) return "keyword";
45
- if (name.charAt(0) == "&") return "variableName.special";
46
- return "variableName";
47
- }
48
- }
49
-
50
- function inString(stream, state) {
51
- var escaped = false, next;
52
- while (next = stream.next()) {
53
- if (next == '"' && !escaped) { state.tokenize = base; break; }
54
- escaped = !escaped && next == "\\";
55
- }
56
- return "string";
57
- }
58
-
59
- function inComment(stream, state) {
60
- var next, last;
61
- while (next = stream.next()) {
62
- if (next == "#" && last == "|") { state.tokenize = base; break; }
63
- last = next;
64
- }
65
- type = "ws";
66
- return "comment";
67
- }
68
-
69
- const commonLisp = {
70
- name: "commonlisp",
71
- startState: function () {
72
- return {ctx: {prev: null, start: 0, indentTo: 0}, lastType: null, tokenize: base};
73
- },
74
-
75
- token: function (stream, state) {
76
- if (stream.sol() && typeof state.ctx.indentTo != "number")
77
- state.ctx.indentTo = state.ctx.start + 1;
78
-
79
- type = null;
80
- var style = state.tokenize(stream, state);
81
- if (type != "ws") {
82
- if (state.ctx.indentTo == null) {
83
- if (type == "symbol" && assumeBody.test(stream.current()))
84
- state.ctx.indentTo = state.ctx.start + stream.indentUnit;
85
- else
86
- state.ctx.indentTo = "next";
87
- } else if (state.ctx.indentTo == "next") {
88
- state.ctx.indentTo = stream.column();
89
- }
90
- state.lastType = type;
91
- }
92
- if (type == "open") state.ctx = {prev: state.ctx, start: stream.column(), indentTo: null};
93
- else if (type == "close") state.ctx = state.ctx.prev || state.ctx;
94
- return style;
95
- },
96
-
97
- indent: function (state) {
98
- var i = state.ctx.indentTo;
99
- return typeof i == "number" ? i : state.ctx.start + 1;
100
- },
101
-
102
- languageData: {
103
- commentTokens: {line: ";;", block: {open: "#|", close: "|#"}},
104
- closeBrackets: {brackets: ["(", "[", "{", '"']}
105
- }
106
- };
107
-
108
- export { commonLisp };