ace-oqc 1.4.13

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 (401) hide show
  1. package/package.json +7 -0
  2. package/src-noconflict/ace.js +21402 -0
  3. package/src-noconflict/ext-beautify.js +331 -0
  4. package/src-noconflict/ext-elastic_tabstops_lite.js +277 -0
  5. package/src-noconflict/ext-emmet.js +1331 -0
  6. package/src-noconflict/ext-error_marker.js +9 -0
  7. package/src-noconflict/ext-keybinding_menu.js +193 -0
  8. package/src-noconflict/ext-language_tools.js +2166 -0
  9. package/src-noconflict/ext-linking.js +64 -0
  10. package/src-noconflict/ext-modelist.js +248 -0
  11. package/src-noconflict/ext-options.js +799 -0
  12. package/src-noconflict/ext-prompt.js +2806 -0
  13. package/src-noconflict/ext-rtl.js +122 -0
  14. package/src-noconflict/ext-searchbox.js +514 -0
  15. package/src-noconflict/ext-settings_menu.js +820 -0
  16. package/src-noconflict/ext-spellcheck.js +73 -0
  17. package/src-noconflict/ext-split.js +207 -0
  18. package/src-noconflict/ext-static_highlight.js +229 -0
  19. package/src-noconflict/ext-statusbar.js +56 -0
  20. package/src-noconflict/ext-textarea.js +430 -0
  21. package/src-noconflict/ext-themelist.js +67 -0
  22. package/src-noconflict/ext-whitespace.js +213 -0
  23. package/src-noconflict/keybinding-emacs.js +1169 -0
  24. package/src-noconflict/keybinding-sublime.js +422 -0
  25. package/src-noconflict/keybinding-vim.js +6198 -0
  26. package/src-noconflict/mode-abap.js +221 -0
  27. package/src-noconflict/mode-abc.js +271 -0
  28. package/src-noconflict/mode-actionscript.js +275 -0
  29. package/src-noconflict/mode-ada.js +137 -0
  30. package/src-noconflict/mode-apache_conf.js +363 -0
  31. package/src-noconflict/mode-apex.js +457 -0
  32. package/src-noconflict/mode-applescript.js +278 -0
  33. package/src-noconflict/mode-aql.js +102 -0
  34. package/src-noconflict/mode-asciidoc.js +349 -0
  35. package/src-noconflict/mode-asl.js +422 -0
  36. package/src-noconflict/mode-assembly_x86.js +193 -0
  37. package/src-noconflict/mode-autohotkey.js +244 -0
  38. package/src-noconflict/mode-batchfile.js +230 -0
  39. package/src-noconflict/mode-c9search.js +293 -0
  40. package/src-noconflict/mode-c_cpp.js +503 -0
  41. package/src-noconflict/mode-cirru.js +210 -0
  42. package/src-noconflict/mode-clojure.js +315 -0
  43. package/src-noconflict/mode-cobol.js +101 -0
  44. package/src-noconflict/mode-coffee.js +400 -0
  45. package/src-noconflict/mode-coldfusion.js +2596 -0
  46. package/src-noconflict/mode-crystal.js +642 -0
  47. package/src-noconflict/mode-csharp.js +502 -0
  48. package/src-noconflict/mode-csound_document.js +4105 -0
  49. package/src-noconflict/mode-csound_orchestra.js +3035 -0
  50. package/src-noconflict/mode-csound_score.js +462 -0
  51. package/src-noconflict/mode-csp.js +59 -0
  52. package/src-noconflict/mode-css.js +720 -0
  53. package/src-noconflict/mode-curly.js +2564 -0
  54. package/src-noconflict/mode-d.js +520 -0
  55. package/src-noconflict/mode-dart.js +715 -0
  56. package/src-noconflict/mode-diff.js +147 -0
  57. package/src-noconflict/mode-django.js +2595 -0
  58. package/src-noconflict/mode-dockerfile.js +500 -0
  59. package/src-noconflict/mode-dot.js +417 -0
  60. package/src-noconflict/mode-drools.js +498 -0
  61. package/src-noconflict/mode-edifact.js +166 -0
  62. package/src-noconflict/mode-eiffel.js +135 -0
  63. package/src-noconflict/mode-ejs.js +3533 -0
  64. package/src-noconflict/mode-elixir.js +501 -0
  65. package/src-noconflict/mode-elm.js +306 -0
  66. package/src-noconflict/mode-erlang.js +1010 -0
  67. package/src-noconflict/mode-forth.js +297 -0
  68. package/src-noconflict/mode-fortran.js +430 -0
  69. package/src-noconflict/mode-fsharp.js +316 -0
  70. package/src-noconflict/mode-fsl.js +259 -0
  71. package/src-noconflict/mode-ftl.js +1193 -0
  72. package/src-noconflict/mode-gcode.js +93 -0
  73. package/src-noconflict/mode-gherkin.js +168 -0
  74. package/src-noconflict/mode-gitignore.js +59 -0
  75. package/src-noconflict/mode-glsl.js +580 -0
  76. package/src-noconflict/mode-gobstones.js +1090 -0
  77. package/src-noconflict/mode-golang.js +413 -0
  78. package/src-noconflict/mode-graphqlschema.js +214 -0
  79. package/src-noconflict/mode-groovy.js +989 -0
  80. package/src-noconflict/mode-haml.js +1873 -0
  81. package/src-noconflict/mode-handlebars.js +2622 -0
  82. package/src-noconflict/mode-haskell.js +380 -0
  83. package/src-noconflict/mode-haskell_cabal.js +141 -0
  84. package/src-noconflict/mode-haxe.js +386 -0
  85. package/src-noconflict/mode-hjson.js +353 -0
  86. package/src-noconflict/mode-html.js +2509 -0
  87. package/src-noconflict/mode-html_elixir.js +3088 -0
  88. package/src-noconflict/mode-html_ruby.js +3550 -0
  89. package/src-noconflict/mode-ini.js +162 -0
  90. package/src-noconflict/mode-io.js +248 -0
  91. package/src-noconflict/mode-jack.js +346 -0
  92. package/src-noconflict/mode-jade.js +2025 -0
  93. package/src-noconflict/mode-java.js +1038 -0
  94. package/src-noconflict/mode-javascript.js +798 -0
  95. package/src-noconflict/mode-json.js +329 -0
  96. package/src-noconflict/mode-jsoniq.js +2632 -0
  97. package/src-noconflict/mode-jsp.js +1433 -0
  98. package/src-noconflict/mode-jssm.js +325 -0
  99. package/src-noconflict/mode-jsx.js +411 -0
  100. package/src-noconflict/mode-julia.js +303 -0
  101. package/src-noconflict/mode-kotlin.js +797 -0
  102. package/src-noconflict/mode-latex.js +296 -0
  103. package/src-noconflict/mode-less.js +839 -0
  104. package/src-noconflict/mode-liquid.js +2742 -0
  105. package/src-noconflict/mode-lisp.js +112 -0
  106. package/src-noconflict/mode-livescript.js +279 -0
  107. package/src-noconflict/mode-logiql.js +317 -0
  108. package/src-noconflict/mode-logtalk.js +352 -0
  109. package/src-noconflict/mode-lsl.js +343 -0
  110. package/src-noconflict/mode-lua.js +452 -0
  111. package/src-noconflict/mode-luapage.js +3028 -0
  112. package/src-noconflict/mode-lucene.js +154 -0
  113. package/src-noconflict/mode-makefile.js +412 -0
  114. package/src-noconflict/mode-markdown.js +3194 -0
  115. package/src-noconflict/mode-mask.js +1803 -0
  116. package/src-noconflict/mode-matlab.js +263 -0
  117. package/src-noconflict/mode-maze.js +292 -0
  118. package/src-noconflict/mode-mel.js +263 -0
  119. package/src-noconflict/mode-mixal.js +122 -0
  120. package/src-noconflict/mode-mushcode.js +681 -0
  121. package/src-noconflict/mode-mysql.js +167 -0
  122. package/src-noconflict/mode-nginx.js +298 -0
  123. package/src-noconflict/mode-nim.js +363 -0
  124. package/src-noconflict/mode-nix.js +647 -0
  125. package/src-noconflict/mode-nsis.js +312 -0
  126. package/src-noconflict/mode-objectivec.js +740 -0
  127. package/src-noconflict/mode-ocaml.js +421 -0
  128. package/src-noconflict/mode-pascal.js +223 -0
  129. package/src-noconflict/mode-perl.js +381 -0
  130. package/src-noconflict/mode-pgsql.js +1743 -0
  131. package/src-noconflict/mode-php.js +13110 -0
  132. package/src-noconflict/mode-php_laravel_blade.js +13311 -0
  133. package/src-noconflict/mode-pig.js +310 -0
  134. package/src-noconflict/mode-plain_text.js +32 -0
  135. package/src-noconflict/mode-powershell.js +418 -0
  136. package/src-noconflict/mode-praat.js +478 -0
  137. package/src-noconflict/mode-prolog.js +371 -0
  138. package/src-noconflict/mode-properties.js +80 -0
  139. package/src-noconflict/mode-protobuf.js +593 -0
  140. package/src-noconflict/mode-puppet.js +368 -0
  141. package/src-noconflict/mode-python.js +508 -0
  142. package/src-noconflict/mode-r.js +312 -0
  143. package/src-noconflict/mode-razor.js +2875 -0
  144. package/src-noconflict/mode-rdoc.js +243 -0
  145. package/src-noconflict/mode-red.js +450 -0
  146. package/src-noconflict/mode-redshift.js +360 -0
  147. package/src-noconflict/mode-rhtml.js +2808 -0
  148. package/src-noconflict/mode-rst.js +257 -0
  149. package/src-noconflict/mode-ruby.js +1003 -0
  150. package/src-noconflict/mode-rust.js +282 -0
  151. package/src-noconflict/mode-sass.js +529 -0
  152. package/src-noconflict/mode-scad.js +414 -0
  153. package/src-noconflict/mode-scala.js +984 -0
  154. package/src-noconflict/mode-scheme.js +232 -0
  155. package/src-noconflict/mode-scss.js +873 -0
  156. package/src-noconflict/mode-sh.js +449 -0
  157. package/src-noconflict/mode-sjs.js +1015 -0
  158. package/src-noconflict/mode-slim.js +5240 -0
  159. package/src-noconflict/mode-smarty.js +2635 -0
  160. package/src-noconflict/mode-snippets.js +207 -0
  161. package/src-noconflict/mode-soy_template.js +2848 -0
  162. package/src-noconflict/mode-space.js +167 -0
  163. package/src-noconflict/mode-sparql.js +320 -0
  164. package/src-noconflict/mode-sql.js +271 -0
  165. package/src-noconflict/mode-sqlserver.js +445 -0
  166. package/src-noconflict/mode-stylus.js +472 -0
  167. package/src-noconflict/mode-svg.js +1582 -0
  168. package/src-noconflict/mode-swift.js +395 -0
  169. package/src-noconflict/mode-tcl.js +387 -0
  170. package/src-noconflict/mode-terraform.js +400 -0
  171. package/src-noconflict/mode-tex.js +160 -0
  172. package/src-noconflict/mode-text.js +9 -0
  173. package/src-noconflict/mode-textile.js +150 -0
  174. package/src-noconflict/mode-toml.js +153 -0
  175. package/src-noconflict/mode-tsx.js +888 -0
  176. package/src-noconflict/mode-turtle.js +296 -0
  177. package/src-noconflict/mode-twig.js +2693 -0
  178. package/src-noconflict/mode-typescript.js +869 -0
  179. package/src-noconflict/mode-vala.js +677 -0
  180. package/src-noconflict/mode-vbscript.js +635 -0
  181. package/src-noconflict/mode-velocity.js +2792 -0
  182. package/src-noconflict/mode-verilog.js +118 -0
  183. package/src-noconflict/mode-vhdl.js +116 -0
  184. package/src-noconflict/mode-visualforce.js +2640 -0
  185. package/src-noconflict/mode-wollok.js +914 -0
  186. package/src-noconflict/mode-xml.js +676 -0
  187. package/src-noconflict/mode-xquery.js +2644 -0
  188. package/src-noconflict/mode-yaml.js +330 -0
  189. package/src-noconflict/mode-zeek.js +539 -0
  190. package/src-noconflict/qurator-mode.js +120 -0
  191. package/src-noconflict/qurator-worker.js +91 -0
  192. package/src-noconflict/snippets/abap.js +9 -0
  193. package/src-noconflict/snippets/abc.js +45 -0
  194. package/src-noconflict/snippets/actionscript.js +171 -0
  195. package/src-noconflict/snippets/ada.js +9 -0
  196. package/src-noconflict/snippets/apache_conf.js +9 -0
  197. package/src-noconflict/snippets/apex.js +9 -0
  198. package/src-noconflict/snippets/applescript.js +9 -0
  199. package/src-noconflict/snippets/aql.js +9 -0
  200. package/src-noconflict/snippets/asciidoc.js +9 -0
  201. package/src-noconflict/snippets/asl.js +9 -0
  202. package/src-noconflict/snippets/assembly_x86.js +9 -0
  203. package/src-noconflict/snippets/autohotkey.js +9 -0
  204. package/src-noconflict/snippets/batchfile.js +9 -0
  205. package/src-noconflict/snippets/c9search.js +9 -0
  206. package/src-noconflict/snippets/c_cpp.js +145 -0
  207. package/src-noconflict/snippets/cirru.js +9 -0
  208. package/src-noconflict/snippets/clojure.js +104 -0
  209. package/src-noconflict/snippets/cobol.js +9 -0
  210. package/src-noconflict/snippets/coffee.js +109 -0
  211. package/src-noconflict/snippets/coldfusion.js +9 -0
  212. package/src-noconflict/snippets/crystal.js +9 -0
  213. package/src-noconflict/snippets/csharp.js +9 -0
  214. package/src-noconflict/snippets/csound_document.js +24 -0
  215. package/src-noconflict/snippets/csound_orchestra.js +61 -0
  216. package/src-noconflict/snippets/csound_score.js +9 -0
  217. package/src-noconflict/snippets/csp.js +9 -0
  218. package/src-noconflict/snippets/css.js +981 -0
  219. package/src-noconflict/snippets/curly.js +9 -0
  220. package/src-noconflict/snippets/d.js +9 -0
  221. package/src-noconflict/snippets/dart.js +97 -0
  222. package/src-noconflict/snippets/diff.js +25 -0
  223. package/src-noconflict/snippets/django.js +122 -0
  224. package/src-noconflict/snippets/dockerfile.js +9 -0
  225. package/src-noconflict/snippets/dot.js +9 -0
  226. package/src-noconflict/snippets/drools.js +33 -0
  227. package/src-noconflict/snippets/edifact.js +254 -0
  228. package/src-noconflict/snippets/eiffel.js +9 -0
  229. package/src-noconflict/snippets/ejs.js +9 -0
  230. package/src-noconflict/snippets/elixir.js +9 -0
  231. package/src-noconflict/snippets/elm.js +9 -0
  232. package/src-noconflict/snippets/erlang.js +174 -0
  233. package/src-noconflict/snippets/forth.js +9 -0
  234. package/src-noconflict/snippets/fortran.js +9 -0
  235. package/src-noconflict/snippets/fsharp.js +9 -0
  236. package/src-noconflict/snippets/fsl.js +14 -0
  237. package/src-noconflict/snippets/ftl.js +9 -0
  238. package/src-noconflict/snippets/gcode.js +9 -0
  239. package/src-noconflict/snippets/gherkin.js +9 -0
  240. package/src-noconflict/snippets/gitignore.js +9 -0
  241. package/src-noconflict/snippets/glsl.js +9 -0
  242. package/src-noconflict/snippets/gobstones.js +1718 -0
  243. package/src-noconflict/snippets/golang.js +9 -0
  244. package/src-noconflict/snippets/graphqlschema.js +46 -0
  245. package/src-noconflict/snippets/groovy.js +9 -0
  246. package/src-noconflict/snippets/haml.js +34 -0
  247. package/src-noconflict/snippets/handlebars.js +9 -0
  248. package/src-noconflict/snippets/haskell.js +96 -0
  249. package/src-noconflict/snippets/haskell_cabal.js +9 -0
  250. package/src-noconflict/snippets/haxe.js +9 -0
  251. package/src-noconflict/snippets/hjson.js +9 -0
  252. package/src-noconflict/snippets/html.js +867 -0
  253. package/src-noconflict/snippets/html_elixir.js +9 -0
  254. package/src-noconflict/snippets/html_ruby.js +9 -0
  255. package/src-noconflict/snippets/ini.js +9 -0
  256. package/src-noconflict/snippets/io.js +76 -0
  257. package/src-noconflict/snippets/jack.js +9 -0
  258. package/src-noconflict/snippets/jade.js +9 -0
  259. package/src-noconflict/snippets/java.js +254 -0
  260. package/src-noconflict/snippets/javascript.js +209 -0
  261. package/src-noconflict/snippets/json.js +9 -0
  262. package/src-noconflict/snippets/jsoniq.js +75 -0
  263. package/src-noconflict/snippets/jsp.js +113 -0
  264. package/src-noconflict/snippets/jssm.js +9 -0
  265. package/src-noconflict/snippets/jsx.js +9 -0
  266. package/src-noconflict/snippets/julia.js +9 -0
  267. package/src-noconflict/snippets/kotlin.js +9 -0
  268. package/src-noconflict/snippets/latex.js +9 -0
  269. package/src-noconflict/snippets/less.js +9 -0
  270. package/src-noconflict/snippets/liquid.js +895 -0
  271. package/src-noconflict/snippets/lisp.js +9 -0
  272. package/src-noconflict/snippets/livescript.js +9 -0
  273. package/src-noconflict/snippets/logiql.js +9 -0
  274. package/src-noconflict/snippets/logtalk.js +9 -0
  275. package/src-noconflict/snippets/lsl.js +1246 -0
  276. package/src-noconflict/snippets/lua.js +35 -0
  277. package/src-noconflict/snippets/luapage.js +9 -0
  278. package/src-noconflict/snippets/lucene.js +9 -0
  279. package/src-noconflict/snippets/makefile.js +18 -0
  280. package/src-noconflict/snippets/markdown.js +102 -0
  281. package/src-noconflict/snippets/mask.js +9 -0
  282. package/src-noconflict/snippets/matlab.js +9 -0
  283. package/src-noconflict/snippets/maze.js +23 -0
  284. package/src-noconflict/snippets/mel.js +9 -0
  285. package/src-noconflict/snippets/mixal.js +9 -0
  286. package/src-noconflict/snippets/mushcode.js +9 -0
  287. package/src-noconflict/snippets/mysql.js +9 -0
  288. package/src-noconflict/snippets/nginx.js +9 -0
  289. package/src-noconflict/snippets/nim.js +9 -0
  290. package/src-noconflict/snippets/nix.js +9 -0
  291. package/src-noconflict/snippets/nsis.js +9 -0
  292. package/src-noconflict/snippets/objectivec.js +9 -0
  293. package/src-noconflict/snippets/ocaml.js +9 -0
  294. package/src-noconflict/snippets/pascal.js +9 -0
  295. package/src-noconflict/snippets/perl.js +361 -0
  296. package/src-noconflict/snippets/pgsql.js +9 -0
  297. package/src-noconflict/snippets/php.js +397 -0
  298. package/src-noconflict/snippets/php_laravel_blade.js +9 -0
  299. package/src-noconflict/snippets/pig.js +9 -0
  300. package/src-noconflict/snippets/plain_text.js +9 -0
  301. package/src-noconflict/snippets/powershell.js +9 -0
  302. package/src-noconflict/snippets/praat.js +9 -0
  303. package/src-noconflict/snippets/prolog.js +9 -0
  304. package/src-noconflict/snippets/properties.js +9 -0
  305. package/src-noconflict/snippets/protobuf.js +9 -0
  306. package/src-noconflict/snippets/puppet.js +9 -0
  307. package/src-noconflict/snippets/python.js +172 -0
  308. package/src-noconflict/snippets/r.js +135 -0
  309. package/src-noconflict/snippets/razor.js +17 -0
  310. package/src-noconflict/snippets/rdoc.js +9 -0
  311. package/src-noconflict/snippets/red.js +9 -0
  312. package/src-noconflict/snippets/redshift.js +9 -0
  313. package/src-noconflict/snippets/rhtml.js +9 -0
  314. package/src-noconflict/snippets/rst.js +36 -0
  315. package/src-noconflict/snippets/ruby.js +942 -0
  316. package/src-noconflict/snippets/rust.js +9 -0
  317. package/src-noconflict/snippets/sass.js +9 -0
  318. package/src-noconflict/snippets/scad.js +9 -0
  319. package/src-noconflict/snippets/scala.js +9 -0
  320. package/src-noconflict/snippets/scheme.js +9 -0
  321. package/src-noconflict/snippets/scss.js +9 -0
  322. package/src-noconflict/snippets/sh.js +97 -0
  323. package/src-noconflict/snippets/sjs.js +9 -0
  324. package/src-noconflict/snippets/slim.js +9 -0
  325. package/src-noconflict/snippets/smarty.js +9 -0
  326. package/src-noconflict/snippets/snippets.js +23 -0
  327. package/src-noconflict/snippets/soy_template.js +9 -0
  328. package/src-noconflict/snippets/space.js +9 -0
  329. package/src-noconflict/snippets/sparql.js +9 -0
  330. package/src-noconflict/snippets/sql.js +40 -0
  331. package/src-noconflict/snippets/sqlserver.js +83 -0
  332. package/src-noconflict/snippets/stylus.js +9 -0
  333. package/src-noconflict/snippets/svg.js +9 -0
  334. package/src-noconflict/snippets/swift.js +9 -0
  335. package/src-noconflict/snippets/tcl.js +106 -0
  336. package/src-noconflict/snippets/terraform.js +9 -0
  337. package/src-noconflict/snippets/tex.js +204 -0
  338. package/src-noconflict/snippets/text.js +9 -0
  339. package/src-noconflict/snippets/textile.js +44 -0
  340. package/src-noconflict/snippets/toml.js +9 -0
  341. package/src-noconflict/snippets/tsx.js +9 -0
  342. package/src-noconflict/snippets/turtle.js +9 -0
  343. package/src-noconflict/snippets/twig.js +9 -0
  344. package/src-noconflict/snippets/typescript.js +9 -0
  345. package/src-noconflict/snippets/vala.js +200 -0
  346. package/src-noconflict/snippets/vbscript.js +9 -0
  347. package/src-noconflict/snippets/velocity.js +43 -0
  348. package/src-noconflict/snippets/verilog.js +9 -0
  349. package/src-noconflict/snippets/vhdl.js +9 -0
  350. package/src-noconflict/snippets/visualforce.js +9 -0
  351. package/src-noconflict/snippets/wollok.js +98 -0
  352. package/src-noconflict/snippets/xml.js +9 -0
  353. package/src-noconflict/snippets/xquery.js +75 -0
  354. package/src-noconflict/snippets/yaml.js +9 -0
  355. package/src-noconflict/snippets/zeek.js +9 -0
  356. package/src-noconflict/theme-ambiance.js +185 -0
  357. package/src-noconflict/theme-chaos.js +163 -0
  358. package/src-noconflict/theme-chrome.js +135 -0
  359. package/src-noconflict/theme-clouds.js +102 -0
  360. package/src-noconflict/theme-clouds_midnight.js +103 -0
  361. package/src-noconflict/theme-cobalt.js +120 -0
  362. package/src-noconflict/theme-crimson_editor.js +125 -0
  363. package/src-noconflict/theme-dawn.js +115 -0
  364. package/src-noconflict/theme-dracula.js +135 -0
  365. package/src-noconflict/theme-dreamweaver.js +148 -0
  366. package/src-noconflict/theme-eclipse.js +105 -0
  367. package/src-noconflict/theme-github.js +110 -0
  368. package/src-noconflict/theme-gob.js +119 -0
  369. package/src-noconflict/theme-gruvbox.js +89 -0
  370. package/src-noconflict/theme-idle_fingers.js +103 -0
  371. package/src-noconflict/theme-iplastic.js +128 -0
  372. package/src-noconflict/theme-katzenmilch.js +128 -0
  373. package/src-noconflict/theme-kr_theme.js +111 -0
  374. package/src-noconflict/theme-kuroir.js +68 -0
  375. package/src-noconflict/theme-merbivore.js +102 -0
  376. package/src-noconflict/theme-merbivore_soft.js +103 -0
  377. package/src-noconflict/theme-mono_industrial.js +114 -0
  378. package/src-noconflict/theme-monokai.js +112 -0
  379. package/src-noconflict/theme-pastel_on_dark.js +115 -0
  380. package/src-noconflict/theme-solarized_dark.js +95 -0
  381. package/src-noconflict/theme-solarized_light.js +98 -0
  382. package/src-noconflict/theme-sqlserver.js +145 -0
  383. package/src-noconflict/theme-terminal.js +121 -0
  384. package/src-noconflict/theme-textmate.js +137 -0
  385. package/src-noconflict/theme-tomorrow.js +115 -0
  386. package/src-noconflict/theme-tomorrow_night.js +115 -0
  387. package/src-noconflict/theme-tomorrow_night_blue.js +113 -0
  388. package/src-noconflict/theme-tomorrow_night_bright.js +128 -0
  389. package/src-noconflict/theme-tomorrow_night_eighties.js +115 -0
  390. package/src-noconflict/theme-twilight.js +116 -0
  391. package/src-noconflict/theme-vibrant_ink.js +101 -0
  392. package/src-noconflict/theme-xcode.js +95 -0
  393. package/src-noconflict/worker-coffee.js +1470 -0
  394. package/src-noconflict/worker-css.js +9000 -0
  395. package/src-noconflict/worker-html.js +10922 -0
  396. package/src-noconflict/worker-javascript.js +15001 -0
  397. package/src-noconflict/worker-json.js +1715 -0
  398. package/src-noconflict/worker-lua.js +3608 -0
  399. package/src-noconflict/worker-php.js +3687 -0
  400. package/src-noconflict/worker-xml.js +3208 -0
  401. package/src-noconflict/worker-xquery.js +57668 -0
@@ -0,0 +1,635 @@
1
+ ace.define("ace/mode/vbscript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(require, exports, module) {
2
+ "use strict";
3
+
4
+ var oop = require("../lib/oop");
5
+ var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
6
+
7
+ var VBScriptHighlightRules = function() {
8
+
9
+ var keywordMapper = this.createKeywordMapper({
10
+ "keyword.control.asp": "If|Then|Else|ElseIf|End|While|Wend|For|To|Each|Case|Select|Return"
11
+ + "|Continue|Do|Until|Loop|Next|With|Exit|Function|Property|Type|Enum|Sub|IIf|Class",
12
+ "storage.type.asp": "Dim|Call|Const|Redim|Set|Let|Get|New|Randomize|Option|Explicit|Preserve|Erase|Execute|ExecuteGlobal",
13
+ "storage.modifier.asp": "Private|Public|Default",
14
+ "keyword.operator.asp": "Mod|And|Not|Or|Xor|As|Eqv|Imp|Is",
15
+ "constant.language.asp": "Empty|False|Nothing|Null|True",
16
+ "variable.language.vb.asp": "Me",
17
+ "support.class.vb.asp": "RegExp",
18
+ "support.class.asp": "Application|ObjectContext|Request|Response|Server|Session",
19
+ "support.class.collection.asp": "Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables",
20
+ "support.constant.asp": "TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute"
21
+ + "|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout",
22
+ "support.function.asp": "Lock|Unlock|SetAbort|SetComplete|BinaryRead|AddHeader|AppendToLog"
23
+ + "|BinaryWrite|Clear|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon|Convert|Regex",
24
+ "support.function.event.asp": "Application_OnEnd|Application_OnStart"
25
+ + "|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart",
26
+ "support.function.vb.asp": "Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng"
27
+ + "|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial"
28
+ + "|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency"
29
+ + "|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex"
30
+ + "|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric"
31
+ + "|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim"
32
+ + "|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace"
33
+ + "|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion"
34
+ + "|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse"
35
+ + "|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year"
36
+ + "|AscB|AscW|ChrB|ChrW|InStrB|LeftB|LenB|MidB|RightB|Abs|GetUILanguage",
37
+ "support.type.vb.asp": "vbTrue|vbFalse|vbCr|vbCrLf|vbFormFeed|vbLf|vbNewLine|vbNullChar|vbNullString"
38
+ + "|vbTab|vbVerticalTab|vbBinaryCompare|vbTextCompare|vbSunday|vbMonday|vbTuesday|vbWednesday"
39
+ + "|vbThursday|vbFriday|vbSaturday|vbUseSystemDayOfWeek|vbFirstJan1|vbFirstFourDays|vbFirstFullWeek"
40
+ + "|vbGeneralDate|vbLongDate|vbShortDate|vbLongTime|vbShortTime|vbObjectError|vbEmpty|vbNull|vbInteger"
41
+ + "|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant"
42
+ + "|vbDataObject|vbDecimal|vbByte|vbArray|vbOKOnly|vbOKCancel|vbAbortRetryIgnore|vbYesNoCancel|vbYesNo"
43
+ + "|vbRetryCancel|vbCritical|vbQuestion|vbExclamation|vbInformation|vbDefaultButton1|vbDefaultButton2"
44
+ + "|vbDefaultButton3|vbDefaultButton4|vbApplicationModal|vbSystemModal|vbOK|vbCancel|vbAbort|vbRetry|vbIgnore|vbYes|vbNo"
45
+ + "|vbUseDefault"
46
+ }, "identifier", true);
47
+
48
+ this.$rules = {
49
+ "start": [
50
+ {
51
+ token: [
52
+ "meta.ending-space"
53
+ ],
54
+ regex: "$"
55
+ },
56
+ {
57
+ token: [null],
58
+ regex: "^(?=\\t)",
59
+ next: "state_3"
60
+ },
61
+ {
62
+ token: [null],
63
+ regex: "^(?= )",
64
+ next: "state_4"
65
+ },
66
+ {
67
+ token: [
68
+ "text",
69
+ "storage.type.function.asp",
70
+ "text",
71
+ "entity.name.function.asp",
72
+ "text",
73
+ "punctuation.definition.parameters.asp",
74
+ "variable.parameter.function.asp",
75
+ "punctuation.definition.parameters.asp"
76
+ ],
77
+ regex: "^(\\s*)(Function|Sub)(\\s+)([a-zA-Z_]\\w*)(\\s*)(\\()([^)]*)(\\))"
78
+ },
79
+ {
80
+ token: "punctuation.definition.comment.asp",
81
+ regex: "'|REM(?=\\s|$)",
82
+ next: "comment",
83
+ caseInsensitive: true
84
+ },
85
+ {
86
+ token: "storage.type.asp",
87
+ regex: "On\\s+Error\\s+(?:Resume\\s+Next|GoTo)\\b",
88
+ caseInsensitive: true
89
+ },
90
+ {
91
+ token: "punctuation.definition.string.begin.asp",
92
+ regex: '"',
93
+ next: "string"
94
+ },
95
+ {
96
+ token: [
97
+ "punctuation.definition.variable.asp"
98
+ ],
99
+ regex: "(\\$)[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\b\\s*"
100
+ },
101
+ {
102
+ token: "constant.numeric.asp",
103
+ regex: "-?\\b(?:(?:0(?:x|X)[0-9a-fA-F]*)|(?:(?:[0-9]+\\.?[0-9]*)|(?:\\.[0-9]+))(?:(?:e|E)(?:\\+|-)?[0-9]+)?)(?:L|l|UL|ul|u|U|F|f)?\\b"
104
+ },
105
+ {
106
+ regex: "\\w+",
107
+ token: keywordMapper
108
+ },
109
+ {
110
+ token: ["entity.name.function.asp"],
111
+ regex: "(?:(\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\b)(?=\\(\\)?))"
112
+ },
113
+ {
114
+ token: ["keyword.operator.asp"],
115
+ regex: "\\-|\\+|\\*|\\/|\\>|\\<|\\=|\\&|\\\\|\\^"
116
+ }
117
+ ],
118
+ "state_3": [
119
+ {
120
+ token: [
121
+ "meta.odd-tab.tabs",
122
+ "meta.even-tab.tabs"
123
+ ],
124
+ regex: "(\\t)(\\t)?"
125
+ },
126
+ {
127
+ token: "meta.leading-space",
128
+ regex: "(?=[^\\t])",
129
+ next: "start"
130
+ },
131
+ {
132
+ token: "meta.leading-space",
133
+ regex: ".",
134
+ next: "state_3"
135
+ }
136
+ ],
137
+ "state_4": [
138
+ {
139
+ token: ["meta.odd-tab.spaces", "meta.even-tab.spaces"],
140
+ regex: "( )( )?"
141
+ },
142
+ {
143
+ token: "meta.leading-space",
144
+ regex: "(?=[^ ])",
145
+ next: "start"
146
+ },
147
+ {
148
+ defaultToken: "meta.leading-space"
149
+ }
150
+ ],
151
+ "comment": [
152
+ {
153
+ token: "comment.line.apostrophe.asp",
154
+ regex: "$",
155
+ next: "start"
156
+ },
157
+ {
158
+ defaultToken: "comment.line.apostrophe.asp"
159
+ }
160
+ ],
161
+ "string": [
162
+ {
163
+ token: "constant.character.escape.apostrophe.asp",
164
+ regex: '""'
165
+ },
166
+ {
167
+ token: "string.quoted.double.asp",
168
+ regex: '"',
169
+ next: "start"
170
+ },
171
+ {
172
+ defaultToken: "string.quoted.double.asp"
173
+ }
174
+ ]
175
+ };
176
+
177
+ };
178
+
179
+ oop.inherits(VBScriptHighlightRules, TextHighlightRules);
180
+
181
+ exports.VBScriptHighlightRules = VBScriptHighlightRules;
182
+ });
183
+
184
+ ace.define("ace/mode/folding/vbscript",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range","ace/token_iterator"], function(require, exports, module) {
185
+ "use strict";
186
+
187
+ var oop = require("../../lib/oop");
188
+ var BaseFoldMode = require("./fold_mode").FoldMode;
189
+ var Range = require("../../range").Range;
190
+ var TokenIterator = require("../../token_iterator").TokenIterator;
191
+
192
+
193
+ var FoldMode = exports.FoldMode = function() {};
194
+
195
+ oop.inherits(FoldMode, BaseFoldMode);
196
+
197
+ (function() {
198
+ this.indentKeywords = {
199
+ "class": 1,
200
+ "function": 1,
201
+ "sub": 1,
202
+ "if": 1,
203
+ "select": 1,
204
+ "do": 1,
205
+ "for": 1,
206
+ "while": 1,
207
+ "with": 1,
208
+ "property": 1,
209
+ "else": 1,
210
+ "elseif": 1,
211
+ "end": -1,
212
+ "loop": -1,
213
+ "next": -1,
214
+ "wend": -1
215
+ };
216
+
217
+ this.foldingStartMarker = /(?:\s|^)(class|function|sub|if|select|do|for|while|with|property|else|elseif)\b/i;
218
+ this.foldingStopMarker = /\b(end|loop|next|wend)\b/i;
219
+
220
+ this.getFoldWidgetRange = function (session, foldStyle, row) {
221
+ var line = session.getLine(row);
222
+ var isStart = this.foldingStartMarker.test(line);
223
+ var isEnd = this.foldingStopMarker.test(line);
224
+ if (isStart || isEnd) {
225
+ var match = (isEnd) ? this.foldingStopMarker.exec(line) : this.foldingStartMarker.exec(line);
226
+ var keyword = match && match[1].toLowerCase();
227
+ if (keyword) {
228
+ var type = session.getTokenAt(row, match.index + 2).type;
229
+ if (type === "keyword.control.asp" || type === "storage.type.function.asp")
230
+ return this.vbsBlock(session, row, match.index + 2);
231
+ }
232
+ }
233
+ };
234
+ this.getFoldWidget = function(session, foldStyle, row) {
235
+ var line = session.getLine(row);
236
+ var isStart = this.foldingStartMarker.test(line);
237
+ var isEnd = this.foldingStopMarker.test(line);
238
+ if (isStart && !isEnd) {
239
+ var match = this.foldingStartMarker.exec(line);
240
+ var keyword = match && match[1].toLowerCase();
241
+ if (keyword) {
242
+ var type = session.getTokenAt(row, match.index + 2).type;
243
+ if (type == "keyword.control.asp" || type == "storage.type.function.asp") {
244
+ if (keyword == "if" && !/then\s*('|$)/i.test(line))
245
+ return "";
246
+ return "start";
247
+ }
248
+ }
249
+ }
250
+ return "";
251
+ };
252
+
253
+ this.vbsBlock = function(session, row, column, tokenRange) {
254
+ var stream = new TokenIterator(session, row, column);
255
+
256
+ var endOpenings = {
257
+ "class": 1,
258
+ "function": 1,
259
+ "sub": 1,
260
+ "if": 1,
261
+ "select": 1,
262
+ "with": 1,
263
+ "property": 1,
264
+ "else": 1,
265
+ "elseif": 1
266
+ };
267
+
268
+ var token = stream.getCurrentToken();
269
+ if (!token || (token.type != "keyword.control.asp" && token.type != "storage.type.function.asp"))
270
+ return;
271
+
272
+ var startTokenValue = token.value.toLowerCase();
273
+ var val = token.value.toLowerCase();
274
+
275
+ var stack = [val];
276
+ var dir = this.indentKeywords[val];
277
+
278
+ if (!dir)
279
+ return;
280
+
281
+ var firstRange = stream.getCurrentTokenRange();
282
+ switch (val) {
283
+ case "property":
284
+ case "sub":
285
+ case "function":
286
+ case "if":
287
+ case "select":
288
+ case "do":
289
+ case "for":
290
+ case "class":
291
+ case "while":
292
+ case "with":
293
+ var line = session.getLine(row);
294
+ var singleLineCondition = /^\s*If\s+.*\s+Then(?!')\s+(?!')\S/i.test(line);
295
+ if (singleLineCondition)
296
+ return;
297
+ var checkToken = new RegExp("(?:^|\\s)" + val, "i");
298
+ var endTest = /^\s*End\s(If|Sub|Select|Function|Class|With|Property)\s*/i.test(line);
299
+ if (!checkToken.test(line) && !endTest) {
300
+ return;
301
+ }
302
+ if (endTest) {
303
+ var tokenRange = stream.getCurrentTokenRange();
304
+ stream.step = stream.stepBackward;
305
+ stream.step();
306
+ stream.step();
307
+ token = stream.getCurrentToken();
308
+ if (token) {
309
+ val = token.value.toLowerCase();
310
+ if (val == "end") {
311
+ firstRange = stream.getCurrentTokenRange();
312
+ firstRange = new Range(firstRange.start.row, firstRange.start.column, tokenRange.start.row, tokenRange.end.column);
313
+ }
314
+ }
315
+ dir = -1;
316
+ }
317
+ break;
318
+ case "end":
319
+ var tokenPos = stream.getCurrentTokenPosition();
320
+ firstRange = stream.getCurrentTokenRange();
321
+ stream.step = stream.stepForward;
322
+ stream.step();
323
+ stream.step();
324
+ token = stream.getCurrentToken();
325
+ if (token) {
326
+ val = token.value.toLowerCase();
327
+ if (val in endOpenings) {
328
+ startTokenValue = val;
329
+ var nextTokenPos = stream.getCurrentTokenPosition();
330
+ var endColumn = nextTokenPos.column + val.length;
331
+ firstRange = new Range(tokenPos.row, tokenPos.column, nextTokenPos.row, endColumn);
332
+ }
333
+ }
334
+ stream.step = stream.stepBackward;
335
+ stream.step();
336
+ stream.step();
337
+ break;
338
+ }
339
+ var startColumn = dir === -1 ? session.getLine(row - 1).length : session.getLine(row).length;
340
+ var startRow = row;
341
+ var ranges = [];
342
+ ranges.push(firstRange);
343
+
344
+ stream.step = dir === -1 ? stream.stepBackward : stream.stepForward;
345
+ while(token = stream.step()) {
346
+ var outputRange = null;
347
+ var ignore = false;
348
+ if (token.type != "keyword.control.asp" && token.type != "storage.type.function.asp")
349
+ continue;
350
+ val = token.value.toLowerCase();
351
+ var level = dir * this.indentKeywords[val];
352
+
353
+ switch (val) {
354
+ case "property":
355
+ case "sub":
356
+ case "function":
357
+ case "if":
358
+ case "select":
359
+ case "do":
360
+ case "for":
361
+ case "class":
362
+ case "while":
363
+ case "with":
364
+ var line = session.getLine(stream.getCurrentTokenRow());
365
+ var singleLineCondition = /^\s*If\s+.*\s+Then(?!')\s+(?!')\S/i.test(line);
366
+ if (singleLineCondition) {
367
+ level = 0;
368
+ ignore = true;
369
+ }
370
+ var checkToken = new RegExp("^\\s* end\\s+" + val, "i");
371
+ if (checkToken.test(line)) {
372
+ level = 0;
373
+ ignore = true;
374
+ }
375
+ break;
376
+ case "elseif":
377
+ case "else":
378
+ level = 0;
379
+ if (startTokenValue != "elseif") {
380
+ ignore = true;
381
+ }
382
+ break;
383
+ }
384
+
385
+ if (level > 0) {
386
+ stack.unshift(val);
387
+ } else if (level <= 0 && ignore === false) {
388
+ stack.shift();
389
+ if (!stack.length) {
390
+ switch (val) {
391
+ case "end":
392
+ var tokenPos = stream.getCurrentTokenPosition();
393
+ outputRange = stream.getCurrentTokenRange();
394
+ stream.step();
395
+ stream.step();
396
+ token = stream.getCurrentToken();
397
+ if (token) {
398
+ val = token.value.toLowerCase();
399
+ if (val in endOpenings) {
400
+ if ((startTokenValue == "else" || startTokenValue == "elseif")) {
401
+ if (val !== "if") {
402
+ ranges.shift();
403
+ }
404
+ } else {
405
+ if (val != startTokenValue)
406
+ ranges.shift();
407
+ }
408
+ var nextTokenPos = stream.getCurrentTokenPosition();
409
+ var endColumn = nextTokenPos.column + val.length;
410
+ outputRange = new Range(tokenPos.row, tokenPos.column, nextTokenPos.row, endColumn);
411
+ } else {
412
+ ranges.shift();
413
+ }
414
+ } else {
415
+ ranges.shift();
416
+ }
417
+ stream.step = stream.stepBackward;
418
+ stream.step();
419
+ stream.step();
420
+ token = stream.getCurrentToken();
421
+ val = token.value.toLowerCase();
422
+ break;
423
+ case "select":
424
+ case "sub":
425
+ case "if":
426
+ case "function":
427
+ case "class":
428
+ case "with":
429
+ case "property":
430
+ if (val != startTokenValue)
431
+ ranges.shift();
432
+ break;
433
+ case "do":
434
+ if (startTokenValue != "loop")
435
+ ranges.shift();
436
+ break;
437
+ case "loop":
438
+ if (startTokenValue != "do")
439
+ ranges.shift();
440
+ break;
441
+ case "for":
442
+ if (startTokenValue != "next")
443
+ ranges.shift();
444
+ break;
445
+ case "next":
446
+ if (startTokenValue != "for")
447
+ ranges.shift();
448
+ break;
449
+ case "while":
450
+ if (startTokenValue != "wend")
451
+ ranges.shift();
452
+ break;
453
+ case "wend":
454
+ if (startTokenValue != "while")
455
+ ranges.shift();
456
+ break;
457
+ }
458
+ break;
459
+ }
460
+
461
+ if (level === 0){
462
+ stack.unshift(val);
463
+ }
464
+ }
465
+ }
466
+
467
+ if (!token)
468
+ return null;
469
+
470
+ if (tokenRange) {
471
+ if (!outputRange) {
472
+ ranges.push(stream.getCurrentTokenRange());
473
+ } else {
474
+ ranges.push(outputRange);
475
+ }
476
+ return ranges;
477
+ }
478
+
479
+ var row = stream.getCurrentTokenRow();
480
+ if (dir === -1) {
481
+ var endColumn = session.getLine(row).length;
482
+ return new Range(row, endColumn, startRow - 1, startColumn);
483
+ } else
484
+ return new Range(startRow, startColumn, row - 1, session.getLine(row - 1).length);
485
+ };
486
+
487
+ }).call(FoldMode.prototype);
488
+
489
+ });
490
+
491
+ ace.define("ace/mode/vbscript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/vbscript_highlight_rules","ace/mode/folding/vbscript","ace/range"], function(require, exports, module) {
492
+ "use strict";
493
+
494
+ var oop = require("../lib/oop");
495
+ var TextMode = require("./text").Mode;
496
+ var VBScriptHighlightRules = require("./vbscript_highlight_rules").VBScriptHighlightRules;
497
+ var FoldMode = require("./folding/vbscript").FoldMode;
498
+ var Range = require("../range").Range;
499
+
500
+ var Mode = function() {
501
+ this.HighlightRules = VBScriptHighlightRules;
502
+ this.foldingRules = new FoldMode();
503
+ this.$behaviour = this.$defaultBehaviour;
504
+ this.indentKeywords = this.foldingRules.indentKeywords;
505
+ };
506
+ oop.inherits(Mode, TextMode);
507
+
508
+ (function() {
509
+
510
+ this.lineCommentStart = ["'", "REM"];
511
+
512
+ var outdentKeywords = [
513
+ "else",
514
+ "elseif",
515
+ "end",
516
+ "loop",
517
+ "next",
518
+ "wend"
519
+ ];
520
+
521
+ function getNetIndentLevel(tokens, line, indentKeywords) {
522
+ var level = 0;
523
+ for (var i = 0; i < tokens.length; i++) {
524
+ var token = tokens[i];
525
+ if (token.type == "keyword.control.asp" || token.type == "storage.type.function.asp") {
526
+ var val = token.value.toLowerCase();
527
+ if (val in indentKeywords) {
528
+ switch (val) {
529
+ case "property":
530
+ case "sub":
531
+ case "function":
532
+ case "select":
533
+ case "do":
534
+ case "for":
535
+ case "class":
536
+ case "while":
537
+ case "with":
538
+ case "if":
539
+ var checkToken = new RegExp("^\\s* end\\s+" + val, "i");
540
+ var singleLineCondition = /^\s*If\s+.*\s+Then(?!')\s+(?!')\S/i.test(line);
541
+ if (!singleLineCondition && !checkToken.test(line))
542
+ level += indentKeywords[val];
543
+ break;
544
+ default:
545
+ level += indentKeywords[val];
546
+ break;
547
+ }
548
+ }
549
+ }
550
+ }
551
+ if (level < 0) {
552
+ return -1;
553
+ } else if (level > 0) {
554
+ return 1;
555
+ } else {
556
+ return 0;
557
+ }
558
+ }
559
+
560
+ this.getNextLineIndent = function(state, line, tab) {
561
+ var indent = this.$getIndent(line);
562
+ var level = 0;
563
+
564
+ var tokenizedLine = this.getTokenizer().getLineTokens(line, state);
565
+ var tokens = tokenizedLine.tokens;
566
+
567
+ if (state == "start") {
568
+ level = getNetIndentLevel(tokens, line, this.indentKeywords);
569
+ }
570
+ if (level > 0) {
571
+ return indent + tab;
572
+ } else if (level < 0 && indent.substr(indent.length - tab.length) == tab) {
573
+ if (!this.checkOutdent(state, line, "\n")) {
574
+ return indent.substr(0, indent.length - tab.length);
575
+ }
576
+ }
577
+ return indent;
578
+ };
579
+
580
+ this.checkOutdent = function(state, line, input) {
581
+ if (input != "\n" && input != "\r" && input != "\r\n")
582
+ return false;
583
+
584
+ var tokens = this.getTokenizer().getLineTokens(line.trim(), state).tokens;
585
+
586
+ if (!tokens || !tokens.length)
587
+ return false;
588
+ var val = tokens[0].value.toLowerCase();
589
+ return ((tokens[0].type == "keyword.control.asp" || tokens[0].type == "storage.type.function.asp") && outdentKeywords.indexOf(val) != -1);
590
+ };
591
+
592
+ this.getMatching = function(session, row, column, tokenRange) {
593
+ if (row == undefined) {
594
+ var pos = session.selection.lead;
595
+ column = pos.column;
596
+ row = pos.row;
597
+ }
598
+ if (tokenRange == undefined)
599
+ tokenRange = true;
600
+
601
+ var startToken = session.getTokenAt(row, column);
602
+ if (startToken) {
603
+ var val = startToken.value.toLowerCase();
604
+ if (val in this.indentKeywords)
605
+ return this.foldingRules.vbsBlock(session, row, column, tokenRange);
606
+ }
607
+ };
608
+
609
+ this.autoOutdent = function(state, session, row) {
610
+ var line = session.getLine(row);
611
+ var column = line.match(/^\s*/)[0].length;
612
+ if (!column || !row) return;
613
+
614
+ var startRange = this.getMatching(session, row, column + 1, false);
615
+ if (!startRange || startRange.start.row == row)
616
+ return;
617
+ var indent = this.$getIndent(session.getLine(startRange.start.row));
618
+ if (indent.length != column) {
619
+ session.replace(new Range(row, 0, row, column), indent);
620
+ session.outdentRows(new Range(row + 1, 0, row + 1, 0));
621
+ }
622
+ };
623
+
624
+ this.$id = "ace/mode/vbscript";
625
+ }).call(Mode.prototype);
626
+
627
+ exports.Mode = Mode;
628
+ }); (function() {
629
+ ace.require(["ace/mode/vbscript"], function(m) {
630
+ if (typeof module == "object" && typeof exports == "object" && module) {
631
+ module.exports = m;
632
+ }
633
+ });
634
+ })();
635
+