@vc-shell/framework 1.1.2 → 1.1.4

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 (271) hide show
  1. package/CHANGELOG.md +18 -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-BKF-A58l.js → index-BBYKbiRX.js} +79 -92
  39. package/dist/index-BDm0tcWn.js +145680 -0
  40. package/dist/{assets/index-CeeaNa4F.js → index-BDqUaIyQ.js} +136 -167
  41. package/dist/index-BdflTsg6.js +308 -0
  42. package/dist/{assets/index-CtmpJVwa.js → index-BpBTtmQ6.js} +270 -312
  43. package/dist/index-Br0y2YMn.js +58 -0
  44. package/dist/index-CIcET-ZI.js +71 -0
  45. package/dist/index-CYAMpxnu.js +341 -0
  46. package/dist/index-Cf2H7YZ1.js +98 -0
  47. package/dist/{assets/index-Bv_z_qRq.js → index-Ck055pN8.js} +121 -124
  48. package/dist/index-D-fPN3yf.js +75 -0
  49. package/dist/{assets/index-BT8o9-M5.js → index-DJOis7Nc.js} +267 -386
  50. package/dist/index-DKtQMsy4.js +538 -0
  51. package/dist/{assets/index-DMTL7O1s.js → index-DWTsz5bC.js} +570 -586
  52. package/dist/{assets/index-C7zlEJy8.js → index-DuY7BIGm.js} +229 -302
  53. package/dist/{assets/index-B1srGfDb.js → index-o6aSdNED.js} +119 -165
  54. package/dist/index-wfv8ehcx.js +249 -0
  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/tsconfig.tsbuildinfo +1 -1
  106. package/dist/ttcn-Bsa4sfRm.js +123 -0
  107. package/dist/ttcn-cfg-Bac_acMi.js +88 -0
  108. package/dist/turtle-xwJUxoPV.js +80 -0
  109. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
  110. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts.map +1 -1
  111. package/dist/vb-c2kQGd6-.js +74 -0
  112. package/dist/vbscript-Dz1TtKsy.js +324 -0
  113. package/dist/velocity-DJd0pTTC.js +96 -0
  114. package/dist/verilog-C4VGD9n1.js +263 -0
  115. package/dist/vhdl-T9HkrbI2.js +106 -0
  116. package/dist/webidl-CjfDENEo.js +155 -0
  117. package/dist/xquery-BUQdORAS.js +422 -0
  118. package/dist/yacas-C0absKBh.js +73 -0
  119. package/dist/z80-C8rPtw-0.js +61 -0
  120. package/package.json +4 -4
  121. package/ui/components/atoms/vc-widget/vc-widget.vue +2 -0
  122. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +65 -32
  123. package/dist/assets/apl-NdZ6-T1z.js +0 -142
  124. package/dist/assets/asciiarmor-CmJEbAuq.js +0 -56
  125. package/dist/assets/asn1-Ctc8K72v.js +0 -192
  126. package/dist/assets/asterisk-D6r__RMF.js +0 -187
  127. package/dist/assets/brainfuck-COwWCBpq.js +0 -70
  128. package/dist/assets/clike-C-PtfL50.js +0 -1019
  129. package/dist/assets/clojure-C2XPrGCa.js +0 -274
  130. package/dist/assets/cmake-BGrEgXCL.js +0 -81
  131. package/dist/assets/cobol-DShPmpZe.js +0 -234
  132. package/dist/assets/coffeescript-BG8vTfSz.js +0 -329
  133. package/dist/assets/commonlisp-8oE2EpEe.js +0 -108
  134. package/dist/assets/core-api-BMLS9FrT.js +0 -8288
  135. package/dist/assets/core-composables-DYxpIWyY.js +0 -1799
  136. package/dist/assets/core-constants-DiKDBbnD.js +0 -83
  137. package/dist/assets/core-directives-QhJx9kWh.js +0 -41
  138. package/dist/assets/core-interceptors-CSjUvxQ0.js +0 -78
  139. package/dist/assets/core-plugins-wv2bDZ0l.js +0 -4919
  140. package/dist/assets/core-services-CAfJRsjs.js +0 -4
  141. package/dist/assets/core-utilities-BTktq_a-.js +0 -33
  142. package/dist/assets/crystal--rIRMl16.js +0 -419
  143. package/dist/assets/css/core-directives-FL4vIIkN.css +0 -73
  144. package/dist/assets/css/fonts-M1mtyV8L.css +0 -305
  145. package/dist/assets/css/icons-css-DbCVsovz.css +0 -41
  146. package/dist/assets/css/shared-components-bnLHdCtf.css +0 -429
  147. package/dist/assets/css/shared-modules-CNOICmYQ.css +0 -45
  148. package/dist/assets/css/styles-C62nDZwV.css +0 -4096
  149. package/dist/assets/css/ui-app-Bh9hmlIB.css +0 -1287
  150. package/dist/assets/css/ui-content-B29jsmK7.css +0 -1187
  151. package/dist/assets/css/ui-controls-CRtfFczw.css +0 -387
  152. package/dist/assets/css/ui-data-CYLxfdUa.css +0 -1555
  153. package/dist/assets/css/ui-form-C3WrWfVl.css +0 -71
  154. package/dist/assets/css/ui-form-fields-DOtHhDeM.css +0 -1360
  155. package/dist/assets/css/ui-helpers-bOoNv5dS.css +0 -37
  156. package/dist/assets/css/ui-indicators-CybQnCoU.css +0 -628
  157. package/dist/assets/css/ui-layout-DyGKgizy.css +0 -251
  158. package/dist/assets/css/ui-media-TWYep8js.css +0 -298
  159. package/dist/assets/css/ui-media-advanced-BGxy3VSB.css +0 -183
  160. package/dist/assets/css/ui-navigation-DcPRn8SB.css +0 -1693
  161. package/dist/assets/css-C_ZeEwz2.js +0 -847
  162. package/dist/assets/cypher-Bayei42D.js +0 -122
  163. package/dist/assets/d-B0hhz6be.js +0 -205
  164. package/dist/assets/diff-DQutOIXs.js +0 -30
  165. package/dist/assets/dtd-C1CeYVnM.js +0 -121
  166. package/dist/assets/dylan-Dm9-uD-A.js +0 -337
  167. package/dist/assets/ebnf-jWG_1Yly.js +0 -151
  168. package/dist/assets/ecl-CgJPA6z9.js +0 -190
  169. package/dist/assets/eiffel-lj7uLahq.js +0 -146
  170. package/dist/assets/elm-Cz7o1ijk.js +0 -230
  171. package/dist/assets/erlang-CyL5QOyR.js +0 -581
  172. package/dist/assets/factor-BVWHwYpu.js +0 -65
  173. package/dist/assets/fcl-DiozYjc8.js +0 -154
  174. package/dist/assets/forth-B7vn5ze0.js +0 -164
  175. package/dist/assets/fortran-D2XNEnBT.js +0 -172
  176. package/dist/assets/gas-B_Tj57Ve.js +0 -343
  177. package/dist/assets/gherkin-CJ6Qk4EZ.js +0 -147
  178. package/dist/assets/groovy-ioGz2WSV.js +0 -228
  179. package/dist/assets/haskell-BHnm1B83.js +0 -239
  180. package/dist/assets/haxe-Bn6Yo6N3.js +0 -490
  181. package/dist/assets/http-BOd5SYCT.js +0 -89
  182. package/dist/assets/idl-FSFk8_xX.js +0 -274
  183. package/dist/assets/index--5fKpGeN.js +0 -792
  184. package/dist/assets/index-0lME64YH.js +0 -342
  185. package/dist/assets/index-B6Ip0FgO.js +0 -437
  186. package/dist/assets/index-BmV05E5M.js +0 -479
  187. package/dist/assets/index-C6MavZDA.js +0 -131
  188. package/dist/assets/index-CwKpgcYl.js +0 -85
  189. package/dist/assets/index-DRUmDL0J.js +0 -59
  190. package/dist/assets/index-DgFC-M9G.js +0 -96
  191. package/dist/assets/javascript-DGrAs70C.js +0 -922
  192. package/dist/assets/jinja2-D9k5QrXv.js +0 -171
  193. package/dist/assets/julia-DM42tOPB.js +0 -369
  194. package/dist/assets/livescript-Dci8HnOi.js +0 -259
  195. package/dist/assets/lua-CByQu4v6.js +0 -137
  196. package/dist/assets/lucide-icons-af0BY3bi.js +0 -34555
  197. package/dist/assets/mathematica-Dkv0uCYF.js +0 -153
  198. package/dist/assets/mbox-CYTvs5kC.js +0 -114
  199. package/dist/assets/mirc-DpgP3GCo.js +0 -176
  200. package/dist/assets/mllike-C6tNn2Yt.js +0 -343
  201. package/dist/assets/modelica-CR6hTSce.js +0 -192
  202. package/dist/assets/mscgen-D0GXtzMS.js +0 -149
  203. package/dist/assets/mumps-Bf1EyDa6.js +0 -129
  204. package/dist/assets/nginx-By9Phklj.js +0 -163
  205. package/dist/assets/nsis-B5ggMLQ9.js +0 -80
  206. package/dist/assets/ntriples-C7VJ7pnm.js +0 -141
  207. package/dist/assets/octave-6yR_ix15.js +0 -112
  208. package/dist/assets/oz-CEUnktiQ.js +0 -235
  209. package/dist/assets/pascal-Dksf1EyF.js +0 -124
  210. package/dist/assets/perl-B99DUQQt.js +0 -819
  211. package/dist/assets/pig-DFeDRta6.js +0 -149
  212. package/dist/assets/powershell-DhwsNWMx.js +0 -381
  213. package/dist/assets/properties-o21uErwC.js +0 -62
  214. package/dist/assets/protobuf-YxlANsmD.js +0 -54
  215. package/dist/assets/pug-bUgjeODZ.js +0 -504
  216. package/dist/assets/puppet-B8WICGYE.js +0 -205
  217. package/dist/assets/python-D3FFx1Id.js +0 -389
  218. package/dist/assets/q-D2Hjhl2C.js +0 -123
  219. package/dist/assets/r-D73k5lac.js +0 -174
  220. package/dist/assets/rpm-Duv_WH0z.js +0 -89
  221. package/dist/assets/ruby-DGCVqZDt.js +0 -287
  222. package/dist/assets/sas-XjPv1Vy5.js +0 -268
  223. package/dist/assets/scheme-DeaA28vt.js +0 -263
  224. package/dist/assets/shared-components-CfAt2hC6.js +0 -1501
  225. package/dist/assets/shared-composables-v9NkNuAe.js +0 -35
  226. package/dist/assets/shared-modules-CDP-H5ZB.js +0 -3588
  227. package/dist/assets/shared-pages-BGRRA5WB.js +0 -20
  228. package/dist/assets/shell-Bx6QZTgx.js +0 -145
  229. package/dist/assets/sieve-CWCD62sW.js +0 -178
  230. package/dist/assets/simple-mode-BAO9cD7H.js +0 -136
  231. package/dist/assets/smalltalk-DSQbF4MF.js +0 -153
  232. package/dist/assets/solr-v_XRf31C.js +0 -80
  233. package/dist/assets/sparql-BrfDqf0-.js +0 -170
  234. package/dist/assets/spreadsheet-Csn84Pef.js +0 -98
  235. package/dist/assets/sql-D4utlq1l.js +0 -480
  236. package/dist/assets/stex-DBkktma-.js +0 -246
  237. package/dist/assets/stylus-ByG-Fd6f.js +0 -750
  238. package/dist/assets/swift-CHbTprt3.js +0 -202
  239. package/dist/assets/tcl-BRlMUELr.js +0 -125
  240. package/dist/assets/textile-CqfTUjd4.js +0 -441
  241. package/dist/assets/tiddlywiki-BrsoM8KB.js +0 -278
  242. package/dist/assets/tiki-D-ivWPkc.js +0 -289
  243. package/dist/assets/toml-t_IhJu83.js +0 -75
  244. package/dist/assets/troff-DckGF2AE.js +0 -64
  245. package/dist/assets/ttcn-B8TAFbRR.js +0 -253
  246. package/dist/assets/ttcn-cfg-NHh25oCM.js +0 -197
  247. package/dist/assets/turtle-D9Js0BlL.js +0 -141
  248. package/dist/assets/ui-app-D31Pr1WY.js +0 -1993
  249. package/dist/assets/ui-content-B7SxH8y9.js +0 -52887
  250. package/dist/assets/ui-controls-nmDJYLmC.js +0 -348
  251. package/dist/assets/ui-data-Ci3b1ye0.js +0 -22901
  252. package/dist/assets/ui-form-Cs5ooOo7.js +0 -159
  253. package/dist/assets/ui-form-fields-DFQi31jT.js +0 -40575
  254. package/dist/assets/ui-helpers-CF-EUlOg.js +0 -1736
  255. package/dist/assets/ui-indicators-mIQeEqha.js +0 -199
  256. package/dist/assets/ui-layout-v2XBQky3.js +0 -320
  257. package/dist/assets/ui-media-WWYrwmZw.js +0 -1259
  258. package/dist/assets/ui-media-advanced-T8ibi153.js +0 -492
  259. package/dist/assets/ui-modals-BdZXzI85.js +0 -2
  260. package/dist/assets/ui-navigation-BtHa6ovW.js +0 -24269
  261. package/dist/assets/utils-DZK5fu48.js +0 -17216
  262. package/dist/assets/vb-CbIGLrpY.js +0 -249
  263. package/dist/assets/vbscript-8ANWle9n.js +0 -320
  264. package/dist/assets/velocity-D6hz3Hzw.js +0 -186
  265. package/dist/assets/verilog-DIV442at.js +0 -565
  266. package/dist/assets/vhdl-BlTiZo_v.js +0 -174
  267. package/dist/assets/vueuse-CTQm4Zh0.js +0 -9308
  268. package/dist/assets/webidl-Cp3tcqdk.js +0 -179
  269. package/dist/assets/xquery-Dd4TBzXv.js +0 -411
  270. package/dist/assets/yacas-DQ1WucF0.js +0 -182
  271. package/dist/assets/z80-P1j44jDI.js +0 -102
@@ -1,581 +0,0 @@
1
- /////////////////////////////////////////////////////////////////////////////
2
- // constants
3
-
4
- var typeWords = [
5
- "-type", "-spec", "-export_type", "-opaque"];
6
-
7
- var keywordWords = [
8
- "after","begin","catch","case","cond","end","fun","if",
9
- "let","of","query","receive","try","when"];
10
-
11
- var separatorRE = /[\->,;]/;
12
- var separatorWords = [
13
- "->",";",","];
14
-
15
- var operatorAtomWords = [
16
- "and","andalso","band","bnot","bor","bsl","bsr","bxor",
17
- "div","not","or","orelse","rem","xor"];
18
-
19
- var operatorSymbolRE = /[\+\-\*\/<>=\|:!]/;
20
- var operatorSymbolWords = [
21
- "=","+","-","*","/",">",">=","<","=<","=:=","==","=/=","/=","||","<-","!"];
22
-
23
- var openParenRE = /[<\(\[\{]/;
24
- var openParenWords = [
25
- "<<","(","[","{"];
26
-
27
- var closeParenRE = /[>\)\]\}]/;
28
- var closeParenWords = [
29
- "}","]",")",">>"];
30
-
31
- var guardWords = [
32
- "is_atom","is_binary","is_bitstring","is_boolean","is_float",
33
- "is_function","is_integer","is_list","is_number","is_pid",
34
- "is_port","is_record","is_reference","is_tuple",
35
- "atom","binary","bitstring","boolean","function","integer","list",
36
- "number","pid","port","record","reference","tuple"];
37
-
38
- var bifWords = [
39
- "abs","adler32","adler32_combine","alive","apply","atom_to_binary",
40
- "atom_to_list","binary_to_atom","binary_to_existing_atom",
41
- "binary_to_list","binary_to_term","bit_size","bitstring_to_list",
42
- "byte_size","check_process_code","contact_binary","crc32",
43
- "crc32_combine","date","decode_packet","delete_module",
44
- "disconnect_node","element","erase","exit","float","float_to_list",
45
- "garbage_collect","get","get_keys","group_leader","halt","hd",
46
- "integer_to_list","internal_bif","iolist_size","iolist_to_binary",
47
- "is_alive","is_atom","is_binary","is_bitstring","is_boolean",
48
- "is_float","is_function","is_integer","is_list","is_number","is_pid",
49
- "is_port","is_process_alive","is_record","is_reference","is_tuple",
50
- "length","link","list_to_atom","list_to_binary","list_to_bitstring",
51
- "list_to_existing_atom","list_to_float","list_to_integer",
52
- "list_to_pid","list_to_tuple","load_module","make_ref","module_loaded",
53
- "monitor_node","node","node_link","node_unlink","nodes","notalive",
54
- "now","open_port","pid_to_list","port_close","port_command",
55
- "port_connect","port_control","pre_loaded","process_flag",
56
- "process_info","processes","purge_module","put","register",
57
- "registered","round","self","setelement","size","spawn","spawn_link",
58
- "spawn_monitor","spawn_opt","split_binary","statistics",
59
- "term_to_binary","time","throw","tl","trunc","tuple_size",
60
- "tuple_to_list","unlink","unregister","whereis"];
61
-
62
- // upper case: [A-Z] [Ø-Þ] [À-Ö]
63
- // lower case: [a-z] [ß-ö] [ø-ÿ]
64
- var anumRE = /[\w@Ø-ÞÀ-Öß-öø-ÿ]/;
65
- var escapesRE =
66
- /[0-7]{1,3}|[bdefnrstv\\"']|\^[a-zA-Z]|x[0-9a-zA-Z]{2}|x{[0-9a-zA-Z]+}/;
67
-
68
- /////////////////////////////////////////////////////////////////////////////
69
- // tokenizer
70
-
71
- function tokenizer(stream,state) {
72
- // in multi-line string
73
- if (state.in_string) {
74
- state.in_string = (!doubleQuote(stream));
75
- return rval(state,stream,"string");
76
- }
77
-
78
- // in multi-line atom
79
- if (state.in_atom) {
80
- state.in_atom = (!singleQuote(stream));
81
- return rval(state,stream,"atom");
82
- }
83
-
84
- // whitespace
85
- if (stream.eatSpace()) {
86
- return rval(state,stream,"whitespace");
87
- }
88
-
89
- // attributes and type specs
90
- if (!peekToken(state) &&
91
- stream.match(/-\s*[a-zß-öø-ÿ][\wØ-ÞÀ-Öß-öø-ÿ]*/)) {
92
- if (is_member(stream.current(),typeWords)) {
93
- return rval(state,stream,"type");
94
- }else {
95
- return rval(state,stream,"attribute");
96
- }
97
- }
98
-
99
- var ch = stream.next();
100
-
101
- // comment
102
- if (ch == '%') {
103
- stream.skipToEnd();
104
- return rval(state,stream,"comment");
105
- }
106
-
107
- // colon
108
- if (ch == ":") {
109
- return rval(state,stream,"colon");
110
- }
111
-
112
- // macro
113
- if (ch == '?') {
114
- stream.eatSpace();
115
- stream.eatWhile(anumRE);
116
- return rval(state,stream,"macro");
117
- }
118
-
119
- // record
120
- if (ch == "#") {
121
- stream.eatSpace();
122
- stream.eatWhile(anumRE);
123
- return rval(state,stream,"record");
124
- }
125
-
126
- // dollar escape
127
- if (ch == "$") {
128
- if (stream.next() == "\\" && !stream.match(escapesRE)) {
129
- return rval(state,stream,"error");
130
- }
131
- return rval(state,stream,"number");
132
- }
133
-
134
- // dot
135
- if (ch == ".") {
136
- return rval(state,stream,"dot");
137
- }
138
-
139
- // quoted atom
140
- if (ch == '\'') {
141
- if (!(state.in_atom = (!singleQuote(stream)))) {
142
- if (stream.match(/\s*\/\s*[0-9]/,false)) {
143
- stream.match(/\s*\/\s*[0-9]/,true);
144
- return rval(state,stream,"fun"); // 'f'/0 style fun
145
- }
146
- if (stream.match(/\s*\(/,false) || stream.match(/\s*:/,false)) {
147
- return rval(state,stream,"function");
148
- }
149
- }
150
- return rval(state,stream,"atom");
151
- }
152
-
153
- // string
154
- if (ch == '"') {
155
- state.in_string = (!doubleQuote(stream));
156
- return rval(state,stream,"string");
157
- }
158
-
159
- // variable
160
- if (/[A-Z_Ø-ÞÀ-Ö]/.test(ch)) {
161
- stream.eatWhile(anumRE);
162
- return rval(state,stream,"variable");
163
- }
164
-
165
- // atom/keyword/BIF/function
166
- if (/[a-z_ß-öø-ÿ]/.test(ch)) {
167
- stream.eatWhile(anumRE);
168
-
169
- if (stream.match(/\s*\/\s*[0-9]/,false)) {
170
- stream.match(/\s*\/\s*[0-9]/,true);
171
- return rval(state,stream,"fun"); // f/0 style fun
172
- }
173
-
174
- var w = stream.current();
175
-
176
- if (is_member(w,keywordWords)) {
177
- return rval(state,stream,"keyword");
178
- }else if (is_member(w,operatorAtomWords)) {
179
- return rval(state,stream,"operator");
180
- }else if (stream.match(/\s*\(/,false)) {
181
- // 'put' and 'erlang:put' are bifs, 'foo:put' is not
182
- if (is_member(w,bifWords) &&
183
- ((peekToken(state).token != ":") ||
184
- (peekToken(state,2).token == "erlang"))) {
185
- return rval(state,stream,"builtin");
186
- }else if (is_member(w,guardWords)) {
187
- return rval(state,stream,"guard");
188
- }else {
189
- return rval(state,stream,"function");
190
- }
191
- }else if (lookahead(stream) == ":") {
192
- if (w == "erlang") {
193
- return rval(state,stream,"builtin");
194
- } else {
195
- return rval(state,stream,"function");
196
- }
197
- }else if (is_member(w,["true","false"])) {
198
- return rval(state,stream,"boolean");
199
- }else {
200
- return rval(state,stream,"atom");
201
- }
202
- }
203
-
204
- // number
205
- var digitRE = /[0-9]/;
206
- var radixRE = /[0-9a-zA-Z]/; // 36#zZ style int
207
- if (digitRE.test(ch)) {
208
- stream.eatWhile(digitRE);
209
- if (stream.eat('#')) { // 36#aZ style integer
210
- if (!stream.eatWhile(radixRE)) {
211
- stream.backUp(1); //"36#" - syntax error
212
- }
213
- } else if (stream.eat('.')) { // float
214
- if (!stream.eatWhile(digitRE)) {
215
- stream.backUp(1); // "3." - probably end of function
216
- } else {
217
- if (stream.eat(/[eE]/)) { // float with exponent
218
- if (stream.eat(/[-+]/)) {
219
- if (!stream.eatWhile(digitRE)) {
220
- stream.backUp(2); // "2e-" - syntax error
221
- }
222
- } else {
223
- if (!stream.eatWhile(digitRE)) {
224
- stream.backUp(1); // "2e" - syntax error
225
- }
226
- }
227
- }
228
- }
229
- }
230
- return rval(state,stream,"number"); // normal integer
231
- }
232
-
233
- // open parens
234
- if (nongreedy(stream,openParenRE,openParenWords)) {
235
- return rval(state,stream,"open_paren");
236
- }
237
-
238
- // close parens
239
- if (nongreedy(stream,closeParenRE,closeParenWords)) {
240
- return rval(state,stream,"close_paren");
241
- }
242
-
243
- // separators
244
- if (greedy(stream,separatorRE,separatorWords)) {
245
- return rval(state,stream,"separator");
246
- }
247
-
248
- // operators
249
- if (greedy(stream,operatorSymbolRE,operatorSymbolWords)) {
250
- return rval(state,stream,"operator");
251
- }
252
-
253
- return rval(state,stream,null);
254
- }
255
-
256
- /////////////////////////////////////////////////////////////////////////////
257
- // utilities
258
- function nongreedy(stream,re,words) {
259
- if (stream.current().length == 1 && re.test(stream.current())) {
260
- stream.backUp(1);
261
- while (re.test(stream.peek())) {
262
- stream.next();
263
- if (is_member(stream.current(),words)) {
264
- return true;
265
- }
266
- }
267
- stream.backUp(stream.current().length-1);
268
- }
269
- return false;
270
- }
271
-
272
- function greedy(stream,re,words) {
273
- if (stream.current().length == 1 && re.test(stream.current())) {
274
- while (re.test(stream.peek())) {
275
- stream.next();
276
- }
277
- while (0 < stream.current().length) {
278
- if (is_member(stream.current(),words)) {
279
- return true;
280
- }else {
281
- stream.backUp(1);
282
- }
283
- }
284
- stream.next();
285
- }
286
- return false;
287
- }
288
-
289
- function doubleQuote(stream) {
290
- return quote(stream, '"', '\\');
291
- }
292
-
293
- function singleQuote(stream) {
294
- return quote(stream,'\'','\\');
295
- }
296
-
297
- function quote(stream,quoteChar,escapeChar) {
298
- while (!stream.eol()) {
299
- var ch = stream.next();
300
- if (ch == quoteChar) {
301
- return true;
302
- }else if (ch == escapeChar) {
303
- stream.next();
304
- }
305
- }
306
- return false;
307
- }
308
-
309
- function lookahead(stream) {
310
- var m = stream.match(/^\s*([^\s%])/, false);
311
- return m ? m[1] : "";
312
- }
313
-
314
- function is_member(element,list) {
315
- return (-1 < list.indexOf(element));
316
- }
317
-
318
- function rval(state,stream,type) {
319
-
320
- // parse stack
321
- pushToken(state,realToken(type,stream));
322
-
323
- // map erlang token type to CodeMirror style class
324
- // erlang -> CodeMirror tag
325
- switch (type) {
326
- case "atom": return "atom";
327
- case "attribute": return "attribute";
328
- case "boolean": return "atom";
329
- case "builtin": return "builtin";
330
- case "close_paren": return null;
331
- case "colon": return null;
332
- case "comment": return "comment";
333
- case "dot": return null;
334
- case "error": return "error";
335
- case "fun": return "meta";
336
- case "function": return "tag";
337
- case "guard": return "property";
338
- case "keyword": return "keyword";
339
- case "macro": return "macroName";
340
- case "number": return "number";
341
- case "open_paren": return null;
342
- case "operator": return "operator";
343
- case "record": return "bracket";
344
- case "separator": return null;
345
- case "string": return "string";
346
- case "type": return "def";
347
- case "variable": return "variable";
348
- default: return null;
349
- }
350
- }
351
-
352
- function aToken(tok,col,ind,typ) {
353
- return {token: tok,
354
- column: col,
355
- indent: ind,
356
- type: typ};
357
- }
358
-
359
- function realToken(type,stream) {
360
- return aToken(stream.current(),
361
- stream.column(),
362
- stream.indentation(),
363
- type);
364
- }
365
-
366
- function fakeToken(type) {
367
- return aToken(type,0,0,type);
368
- }
369
-
370
- function peekToken(state,depth) {
371
- var len = state.tokenStack.length;
372
- var dep = (depth ? depth : 1);
373
-
374
- if (len < dep) {
375
- return false;
376
- }else {
377
- return state.tokenStack[len-dep];
378
- }
379
- }
380
-
381
- function pushToken(state,token) {
382
-
383
- if (!(token.type == "comment" || token.type == "whitespace")) {
384
- state.tokenStack = maybe_drop_pre(state.tokenStack,token);
385
- state.tokenStack = maybe_drop_post(state.tokenStack);
386
- }
387
- }
388
-
389
- function maybe_drop_pre(s,token) {
390
- var last = s.length-1;
391
-
392
- if (0 < last && s[last].type === "record" && token.type === "dot") {
393
- s.pop();
394
- }else if (0 < last && s[last].type === "group") {
395
- s.pop();
396
- s.push(token);
397
- }else {
398
- s.push(token);
399
- }
400
- return s;
401
- }
402
-
403
- function maybe_drop_post(s) {
404
- if (!s.length) return s
405
- var last = s.length-1;
406
-
407
- if (s[last].type === "dot") {
408
- return [];
409
- }
410
- if (last > 1 && s[last].type === "fun" && s[last-1].token === "fun") {
411
- return s.slice(0,last-1);
412
- }
413
- switch (s[last].token) {
414
- case "}": return d(s,{g:["{"]});
415
- case "]": return d(s,{i:["["]});
416
- case ")": return d(s,{i:["("]});
417
- case ">>": return d(s,{i:["<<"]});
418
- case "end": return d(s,{i:["begin","case","fun","if","receive","try"]});
419
- case ",": return d(s,{e:["begin","try","when","->",
420
- ",","(","[","{","<<"]});
421
- case "->": return d(s,{r:["when"],
422
- m:["try","if","case","receive"]});
423
- case ";": return d(s,{E:["case","fun","if","receive","try","when"]});
424
- case "catch":return d(s,{e:["try"]});
425
- case "of": return d(s,{e:["case"]});
426
- case "after":return d(s,{e:["receive","try"]});
427
- default: return s;
428
- }
429
- }
430
-
431
- function d(stack,tt) {
432
- // stack is a stack of Token objects.
433
- // tt is an object; {type:tokens}
434
- // type is a char, tokens is a list of token strings.
435
- // The function returns (possibly truncated) stack.
436
- // It will descend the stack, looking for a Token such that Token.token
437
- // is a member of tokens. If it does not find that, it will normally (but
438
- // see "E" below) return stack. If it does find a match, it will remove
439
- // all the Tokens between the top and the matched Token.
440
- // If type is "m", that is all it does.
441
- // If type is "i", it will also remove the matched Token and the top Token.
442
- // If type is "g", like "i", but add a fake "group" token at the top.
443
- // If type is "r", it will remove the matched Token, but not the top Token.
444
- // If type is "e", it will keep the matched Token but not the top Token.
445
- // If type is "E", it behaves as for type "e", except if there is no match,
446
- // in which case it will return an empty stack.
447
-
448
- for (var type in tt) {
449
- var len = stack.length-1;
450
- var tokens = tt[type];
451
- for (var i = len-1; -1 < i ; i--) {
452
- if (is_member(stack[i].token,tokens)) {
453
- var ss = stack.slice(0,i);
454
- switch (type) {
455
- case "m": return ss.concat(stack[i]).concat(stack[len]);
456
- case "r": return ss.concat(stack[len]);
457
- case "i": return ss;
458
- case "g": return ss.concat(fakeToken("group"));
459
- case "E": return ss.concat(stack[i]);
460
- case "e": return ss.concat(stack[i]);
461
- }
462
- }
463
- }
464
- }
465
- return (type == "E" ? [] : stack);
466
- }
467
-
468
- /////////////////////////////////////////////////////////////////////////////
469
- // indenter
470
-
471
- function indenter(state, textAfter, cx) {
472
- var t;
473
- var wordAfter = wordafter(textAfter);
474
- var currT = peekToken(state,1);
475
- var prevT = peekToken(state,2);
476
-
477
- if (state.in_string || state.in_atom) {
478
- return null;
479
- }else if (!prevT) {
480
- return 0;
481
- }else if (currT.token == "when") {
482
- return currT.column + cx.unit;
483
- }else if (wordAfter === "when" && prevT.type === "function") {
484
- return prevT.indent+cx.unit;
485
- }else if (wordAfter === "(" && currT.token === "fun") {
486
- return currT.column+3;
487
- }else if (wordAfter === "catch" && (t = getToken(state,["try"]))) {
488
- return t.column;
489
- }else if (is_member(wordAfter,["end","after","of"])) {
490
- t = getToken(state,["begin","case","fun","if","receive","try"]);
491
- return t ? t.column : null;
492
- }else if (is_member(wordAfter,closeParenWords)) {
493
- t = getToken(state,openParenWords);
494
- return t ? t.column : null;
495
- }else if (is_member(currT.token,[",","|","||"]) ||
496
- is_member(wordAfter,[",","|","||"])) {
497
- t = postcommaToken(state);
498
- return t ? t.column+t.token.length : cx.unit;
499
- }else if (currT.token == "->") {
500
- if (is_member(prevT.token, ["receive","case","if","try"])) {
501
- return prevT.column+cx.unit+cx.unit;
502
- }else {
503
- return prevT.column+cx.unit;
504
- }
505
- }else if (is_member(currT.token,openParenWords)) {
506
- return currT.column+currT.token.length;
507
- }else {
508
- t = defaultToken(state);
509
- return truthy(t) ? t.column+cx.unit : 0;
510
- }
511
- }
512
-
513
- function wordafter(str) {
514
- var m = str.match(/,|[a-z]+|\}|\]|\)|>>|\|+|\(/);
515
-
516
- return truthy(m) && (m.index === 0) ? m[0] : "";
517
- }
518
-
519
- function postcommaToken(state) {
520
- var objs = state.tokenStack.slice(0,-1);
521
- var i = getTokenIndex(objs,"type",["open_paren"]);
522
-
523
- return truthy(objs[i]) ? objs[i] : false;
524
- }
525
-
526
- function defaultToken(state) {
527
- var objs = state.tokenStack;
528
- var stop = getTokenIndex(objs,"type",["open_paren","separator","keyword"]);
529
- var oper = getTokenIndex(objs,"type",["operator"]);
530
-
531
- if (truthy(stop) && truthy(oper) && stop < oper) {
532
- return objs[stop+1];
533
- } else if (truthy(stop)) {
534
- return objs[stop];
535
- } else {
536
- return false;
537
- }
538
- }
539
-
540
- function getToken(state,tokens) {
541
- var objs = state.tokenStack;
542
- var i = getTokenIndex(objs,"token",tokens);
543
-
544
- return truthy(objs[i]) ? objs[i] : false;
545
- }
546
-
547
- function getTokenIndex(objs,propname,propvals) {
548
-
549
- for (var i = objs.length-1; -1 < i ; i--) {
550
- if (is_member(objs[i][propname],propvals)) {
551
- return i;
552
- }
553
- }
554
- return false;
555
- }
556
-
557
- function truthy(x) {
558
- return (x !== false) && (x != null);
559
- }
560
-
561
- /////////////////////////////////////////////////////////////////////////////
562
- // this object defines the mode
563
-
564
- const erlang = {
565
- name: "erlang",
566
- startState() {
567
- return {tokenStack: [],
568
- in_string: false,
569
- in_atom: false};
570
- },
571
-
572
- token: tokenizer,
573
-
574
- indent: indenter,
575
-
576
- languageData: {
577
- commentTokens: {line: "%"}
578
- }
579
- };
580
-
581
- export { erlang };
@@ -1,65 +0,0 @@
1
- import { s as simpleMode } from './simple-mode-BAO9cD7H.js';
2
-
3
- const factor = simpleMode({
4
- start: [
5
- // comments
6
- {regex: /#?!.*/, token: "comment"},
7
- // strings """, multiline --> state
8
- {regex: /"""/, token: "string", next: "string3"},
9
- {regex: /(STRING:)(\s)/, token: ["keyword", null], next: "string2"},
10
- {regex: /\S*?"/, token: "string", next: "string"},
11
- // numbers: dec, hex, unicode, bin, fractional, complex
12
- {regex: /(?:0x[\d,a-f]+)|(?:0o[0-7]+)|(?:0b[0,1]+)|(?:\-?\d+.?\d*)(?=\s)/, token: "number"},
13
- //{regex: /[+-]?/} //fractional
14
- // definition: defining word, defined word, etc
15
- {regex: /((?:GENERIC)|\:?\:)(\s+)(\S+)(\s+)(\()/, token: ["keyword", null, "def", null, "bracket"], next: "stack"},
16
- // method definition: defining word, type, defined word, etc
17
- {regex: /(M\:)(\s+)(\S+)(\s+)(\S+)/, token: ["keyword", null, "def", null, "tag"]},
18
- // vocabulary using --> state
19
- {regex: /USING\:/, token: "keyword", next: "vocabulary"},
20
- // vocabulary definition/use
21
- {regex: /(USE\:|IN\:)(\s+)(\S+)(?=\s|$)/, token: ["keyword", null, "tag"]},
22
- // definition: a defining word, defined word
23
- {regex: /(\S+\:)(\s+)(\S+)(?=\s|$)/, token: ["keyword", null, "def"]},
24
- // "keywords", incl. ; t f . [ ] { } defining words
25
- {regex: /(?:;|\\|t|f|if|loop|while|until|do|PRIVATE>|<PRIVATE|\.|\S*\[|\]|\S*\{|\})(?=\s|$)/, token: "keyword"},
26
- // <constructors> and the like
27
- {regex: /\S+[\)>\.\*\?]+(?=\s|$)/, token: "builtin"},
28
- {regex: /[\)><]+\S+(?=\s|$)/, token: "builtin"},
29
- // operators
30
- {regex: /(?:[\+\-\=\/\*<>])(?=\s|$)/, token: "keyword"},
31
- // any id (?)
32
- {regex: /\S+/, token: "variable"},
33
- {regex: /\s+|./, token: null}
34
- ],
35
- vocabulary: [
36
- {regex: /;/, token: "keyword", next: "start"},
37
- {regex: /\S+/, token: "tag"},
38
- {regex: /\s+|./, token: null}
39
- ],
40
- string: [
41
- {regex: /(?:[^\\]|\\.)*?"/, token: "string", next: "start"},
42
- {regex: /.*/, token: "string"}
43
- ],
44
- string2: [
45
- {regex: /^;/, token: "keyword", next: "start"},
46
- {regex: /.*/, token: "string"}
47
- ],
48
- string3: [
49
- {regex: /(?:[^\\]|\\.)*?"""/, token: "string", next: "start"},
50
- {regex: /.*/, token: "string"}
51
- ],
52
- stack: [
53
- {regex: /\)/, token: "bracket", next: "start"},
54
- {regex: /--/, token: "bracket"},
55
- {regex: /\S+/, token: "meta"},
56
- {regex: /\s+|./, token: null}
57
- ],
58
- languageData: {
59
- name: "factor",
60
- dontIndentStates: ["start", "vocabulary", "string", "string3", "stack"],
61
- commentTokens: {line: "!"}
62
- }
63
- });
64
-
65
- export { factor };