@openui5/sap.ui.codeeditor 1.132.1 → 1.134.0

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 (452) hide show
  1. package/.reuse/dep5 +2 -9
  2. package/LICENSES/LicenseRef-Unicode-3.0.txt +39 -0
  3. package/THIRDPARTY.txt +45 -78
  4. package/package.json +2 -2
  5. package/src/sap/ui/codeeditor/.library +2 -2
  6. package/src/sap/ui/codeeditor/CodeEditor.js +4 -4
  7. package/src/sap/ui/codeeditor/js/ace/ace.js +6564 -6162
  8. package/src/sap/ui/codeeditor/js/ace/css/ace.css +55 -23
  9. package/src/sap/ui/codeeditor/js/ace/css/github_light_default-1.png +0 -0
  10. package/src/sap/ui/codeeditor/js/ace/css/github_light_default-2.png +0 -0
  11. package/src/sap/ui/codeeditor/js/ace/css/main-10.svg +4 -0
  12. package/src/sap/ui/codeeditor/js/ace/css/main-11.svg +5 -0
  13. package/src/sap/ui/codeeditor/js/ace/css/main-12.svg +4 -0
  14. package/src/sap/ui/codeeditor/js/ace/css/main-13.png +0 -0
  15. package/src/sap/ui/codeeditor/js/ace/css/main-14.png +0 -0
  16. package/src/sap/ui/codeeditor/js/ace/css/main-15.png +0 -0
  17. package/src/sap/ui/codeeditor/js/ace/css/main-16.png +0 -0
  18. package/src/sap/ui/codeeditor/js/ace/css/main-17.png +0 -0
  19. package/src/sap/ui/codeeditor/js/ace/css/main-18.png +0 -0
  20. package/src/sap/ui/codeeditor/js/ace/css/main-19.png +0 -0
  21. package/src/sap/ui/codeeditor/js/ace/css/main-20.png +0 -0
  22. package/src/sap/ui/codeeditor/js/ace/css/main-21.png +0 -0
  23. package/src/sap/ui/codeeditor/js/ace/css/main-22.png +0 -0
  24. package/src/sap/ui/codeeditor/js/ace/css/main-23.png +0 -0
  25. package/src/sap/ui/codeeditor/js/ace/css/main-24.png +0 -0
  26. package/src/sap/ui/codeeditor/js/ace/css/main-25.svg +1 -0
  27. package/src/sap/ui/codeeditor/js/ace/css/main-26.png +0 -0
  28. package/src/sap/ui/codeeditor/js/ace/css/main-6.svg +8 -6
  29. package/src/sap/ui/codeeditor/js/ace/css/main-7.svg +4 -6
  30. package/src/sap/ui/codeeditor/js/ace/css/main-8.svg +8 -3
  31. package/src/sap/ui/codeeditor/js/ace/css/main-9.svg +5 -3
  32. package/src/sap/ui/codeeditor/js/ace/css/theme/cloud_editor.css +221 -0
  33. package/src/sap/ui/codeeditor/js/ace/css/theme/cloud_editor_dark.css +224 -0
  34. package/src/sap/ui/codeeditor/js/ace/css/theme/github_light_default.css +164 -0
  35. package/src/sap/ui/codeeditor/js/ace/css/theme/solarized_dark.css +2 -2
  36. package/src/sap/ui/codeeditor/js/ace/ext-beautify.js +0 -0
  37. package/src/sap/ui/codeeditor/js/ace/ext-code_lens.js +1 -6
  38. package/src/sap/ui/codeeditor/js/ace/ext-command_bar.js +4 -2
  39. package/src/sap/ui/codeeditor/js/ace/ext-elastic_tabstops_lite.js +0 -0
  40. package/src/sap/ui/codeeditor/js/ace/ext-emmet.js +24 -6
  41. package/src/sap/ui/codeeditor/js/ace/ext-error_marker.js +0 -0
  42. package/src/sap/ui/codeeditor/js/ace/ext-inline_autocomplete.js +198 -87
  43. package/src/sap/ui/codeeditor/js/ace/ext-keybinding_menu.js +8 -5
  44. package/src/sap/ui/codeeditor/js/ace/ext-language_tools.js +180 -79
  45. package/src/sap/ui/codeeditor/js/ace/ext-linking.js +0 -0
  46. package/src/sap/ui/codeeditor/js/ace/ext-modelist.js +7 -3
  47. package/src/sap/ui/codeeditor/js/ace/ext-options.js +12 -5
  48. package/src/sap/ui/codeeditor/js/ace/ext-prompt.js +202 -116
  49. package/src/sap/ui/codeeditor/js/ace/ext-rtl.js +0 -0
  50. package/src/sap/ui/codeeditor/js/ace/ext-searchbox.js +14 -12
  51. package/src/sap/ui/codeeditor/js/ace/ext-settings_menu.js +12 -5
  52. package/src/sap/ui/codeeditor/js/ace/ext-spellcheck.js +0 -0
  53. package/src/sap/ui/codeeditor/js/ace/ext-split.js +2 -1
  54. package/src/sap/ui/codeeditor/js/ace/ext-static_highlight.js +0 -0
  55. package/src/sap/ui/codeeditor/js/ace/ext-statusbar.js +0 -0
  56. package/src/sap/ui/codeeditor/js/ace/ext-textarea.js +476 -3
  57. package/src/sap/ui/codeeditor/js/ace/ext-themelist.js +6 -2
  58. package/src/sap/ui/codeeditor/js/ace/ext-whitespace.js +0 -0
  59. package/src/sap/ui/codeeditor/js/ace/keybinding-emacs.js +13 -6
  60. package/src/sap/ui/codeeditor/js/ace/keybinding-vim.js +748 -373
  61. package/src/sap/ui/codeeditor/js/ace/mode-abap.js +0 -0
  62. package/src/sap/ui/codeeditor/js/ace/mode-abc.js +0 -0
  63. package/src/sap/ui/codeeditor/js/ace/mode-actionscript.js +0 -0
  64. package/src/sap/ui/codeeditor/js/ace/mode-ada.js +3 -3
  65. package/src/sap/ui/codeeditor/js/ace/mode-apache_conf.js +0 -0
  66. package/src/sap/ui/codeeditor/js/ace/mode-apex.js +6 -6
  67. package/src/sap/ui/codeeditor/js/ace/mode-applescript.js +3 -3
  68. package/src/sap/ui/codeeditor/js/ace/mode-aql.js +3 -3
  69. package/src/sap/ui/codeeditor/js/ace/mode-asciidoc.js +0 -0
  70. package/src/sap/ui/codeeditor/js/ace/mode-asl.js +14 -14
  71. package/src/sap/ui/codeeditor/js/ace/mode-assembly_arm32.js +185 -0
  72. package/src/sap/ui/codeeditor/js/ace/mode-assembly_x86.js +0 -0
  73. package/src/sap/ui/codeeditor/js/ace/mode-astro.js +377 -317
  74. package/src/sap/ui/codeeditor/js/ace/mode-autohotkey.js +0 -0
  75. package/src/sap/ui/codeeditor/js/ace/mode-basic.js +201 -0
  76. package/src/sap/ui/codeeditor/js/ace/mode-batchfile.js +0 -0
  77. package/src/sap/ui/codeeditor/js/ace/mode-c9search.js +1 -1
  78. package/src/sap/ui/codeeditor/js/ace/mode-c_cpp.js +13 -13
  79. package/src/sap/ui/codeeditor/js/ace/mode-cirru.js +0 -0
  80. package/src/sap/ui/codeeditor/js/ace/mode-clojure.js +13 -13
  81. package/src/sap/ui/codeeditor/js/ace/mode-cobol.js +3 -3
  82. package/src/sap/ui/codeeditor/js/ace/mode-coffee.js +0 -0
  83. package/src/sap/ui/codeeditor/js/ace/mode-coldfusion.js +377 -317
  84. package/src/sap/ui/codeeditor/js/ace/mode-crystal.js +6 -6
  85. package/src/sap/ui/codeeditor/js/ace/mode-csharp.js +9 -9
  86. package/src/sap/ui/codeeditor/js/ace/mode-csound_document.js +75 -78
  87. package/src/sap/ui/codeeditor/js/ace/mode-csound_orchestra.js +22 -22
  88. package/src/sap/ui/codeeditor/js/ace/mode-csound_score.js +0 -0
  89. package/src/sap/ui/codeeditor/js/ace/mode-csp.js +0 -0
  90. package/src/sap/ui/codeeditor/js/ace/mode-css.js +6 -3
  91. package/src/sap/ui/codeeditor/js/ace/mode-curly.js +377 -317
  92. package/src/sap/ui/codeeditor/js/ace/mode-d.js +12 -12
  93. package/src/sap/ui/codeeditor/js/ace/mode-dart.js +17 -17
  94. package/src/sap/ui/codeeditor/js/ace/mode-diff.js +0 -0
  95. package/src/sap/ui/codeeditor/js/ace/mode-django.js +377 -317
  96. package/src/sap/ui/codeeditor/js/ace/mode-dockerfile.js +3 -3
  97. package/src/sap/ui/codeeditor/js/ace/mode-dot.js +6 -6
  98. package/src/sap/ui/codeeditor/js/ace/mode-drools.js +18 -18
  99. package/src/sap/ui/codeeditor/js/ace/mode-edifact.js +4 -4
  100. package/src/sap/ui/codeeditor/js/ace/mode-eiffel.js +4 -4
  101. package/src/sap/ui/codeeditor/js/ace/mode-ejs.js +402 -342
  102. package/src/sap/ui/codeeditor/js/ace/mode-elixir.js +0 -0
  103. package/src/sap/ui/codeeditor/js/ace/mode-elm.js +0 -0
  104. package/src/sap/ui/codeeditor/js/ace/mode-erlang.js +15 -15
  105. package/src/sap/ui/codeeditor/js/ace/mode-flix.js +7 -7
  106. package/src/sap/ui/codeeditor/js/ace/mode-forth.js +0 -0
  107. package/src/sap/ui/codeeditor/js/ace/mode-fortran.js +12 -12
  108. package/src/sap/ui/codeeditor/js/ace/mode-fsharp.js +0 -0
  109. package/src/sap/ui/codeeditor/js/ace/mode-ftl.js +54 -57
  110. package/src/sap/ui/codeeditor/js/ace/mode-gcode.js +4 -4
  111. package/src/sap/ui/codeeditor/js/ace/mode-gherkin.js +3 -3
  112. package/src/sap/ui/codeeditor/js/ace/mode-gitignore.js +1 -1
  113. package/src/sap/ui/codeeditor/js/ace/mode-glsl.js +13 -13
  114. package/src/sap/ui/codeeditor/js/ace/mode-gobstones.js +371 -65
  115. package/src/sap/ui/codeeditor/js/ace/mode-golang.js +10 -10
  116. package/src/sap/ui/codeeditor/js/ace/mode-graphqlschema.js +0 -0
  117. package/src/sap/ui/codeeditor/js/ace/mode-groovy.js +381 -75
  118. package/src/sap/ui/codeeditor/js/ace/mode-haml.js +84 -87
  119. package/src/sap/ui/codeeditor/js/ace/mode-handlebars.js +379 -319
  120. package/src/sap/ui/codeeditor/js/ace/mode-haskell.js +0 -0
  121. package/src/sap/ui/codeeditor/js/ace/mode-haskell_cabal.js +1 -1
  122. package/src/sap/ui/codeeditor/js/ace/mode-haxe.js +10 -10
  123. package/src/sap/ui/codeeditor/js/ace/mode-hjson.js +0 -0
  124. package/src/sap/ui/codeeditor/js/ace/mode-html.js +377 -317
  125. package/src/sap/ui/codeeditor/js/ace/mode-html_elixir.js +472 -412
  126. package/src/sap/ui/codeeditor/js/ace/mode-html_ruby.js +484 -424
  127. package/src/sap/ui/codeeditor/js/ace/mode-ini.js +0 -0
  128. package/src/sap/ui/codeeditor/js/ace/mode-io.js +0 -0
  129. package/src/sap/ui/codeeditor/js/ace/mode-jack.js +2 -2
  130. package/src/sap/ui/codeeditor/js/ace/mode-jade.js +67 -70
  131. package/src/sap/ui/codeeditor/js/ace/mode-java.js +383 -77
  132. package/src/sap/ui/codeeditor/js/ace/mode-javascript.js +371 -65
  133. package/src/sap/ui/codeeditor/js/ace/mode-jexl.js +7 -7
  134. package/src/sap/ui/codeeditor/js/ace/mode-json.js +8 -8
  135. package/src/sap/ui/codeeditor/js/ace/mode-json5.js +8 -8
  136. package/src/sap/ui/codeeditor/js/ace/mode-jsoniq.js +4 -5
  137. package/src/sap/ui/codeeditor/js/ace/mode-jsp.js +67 -70
  138. package/src/sap/ui/codeeditor/js/ace/mode-jssm.js +0 -0
  139. package/src/sap/ui/codeeditor/js/ace/mode-jsx.js +960 -89
  140. package/src/sap/ui/codeeditor/js/ace/mode-julia.js +0 -0
  141. package/src/sap/ui/codeeditor/js/ace/mode-kotlin.js +0 -0
  142. package/src/sap/ui/codeeditor/js/ace/mode-latex.js +0 -0
  143. package/src/sap/ui/codeeditor/js/ace/mode-latte.js +381 -321
  144. package/src/sap/ui/codeeditor/js/ace/mode-less.js +12 -9
  145. package/src/sap/ui/codeeditor/js/ace/mode-liquid.js +385 -325
  146. package/src/sap/ui/codeeditor/js/ace/mode-lisp.js +2 -2
  147. package/src/sap/ui/codeeditor/js/ace/mode-livescript.js +0 -0
  148. package/src/sap/ui/codeeditor/js/ace/mode-logiql.js +0 -0
  149. package/src/sap/ui/codeeditor/js/ace/mode-logtalk.js +6 -9
  150. package/src/sap/ui/codeeditor/js/ace/mode-lsl.js +0 -0
  151. package/src/sap/ui/codeeditor/js/ace/mode-lua.js +5 -5
  152. package/src/sap/ui/codeeditor/js/ace/mode-luapage.js +382 -322
  153. package/src/sap/ui/codeeditor/js/ace/mode-lucene.js +0 -0
  154. package/src/sap/ui/codeeditor/js/ace/mode-makefile.js +3 -3
  155. package/src/sap/ui/codeeditor/js/ace/mode-markdown.js +474 -414
  156. package/src/sap/ui/codeeditor/js/ace/mode-mask.js +53 -56
  157. package/src/sap/ui/codeeditor/js/ace/mode-matlab.js +1 -1
  158. package/src/sap/ui/codeeditor/js/ace/mode-maze.js +0 -0
  159. package/src/sap/ui/codeeditor/js/ace/mode-mel.js +0 -0
  160. package/src/sap/ui/codeeditor/js/ace/mode-mips.js +1 -1
  161. package/src/sap/ui/codeeditor/js/ace/mode-mixal.js +0 -0
  162. package/src/sap/ui/codeeditor/js/ace/mode-mushcode.js +7 -7
  163. package/src/sap/ui/codeeditor/js/ace/mode-mysql.js +7 -7
  164. package/src/sap/ui/codeeditor/js/ace/mode-nix.js +16 -16
  165. package/src/sap/ui/codeeditor/js/ace/mode-nsis.js +0 -0
  166. package/src/sap/ui/codeeditor/js/ace/mode-nunjucks.js +379 -319
  167. package/src/sap/ui/codeeditor/js/ace/mode-objectivec.js +15 -15
  168. package/src/sap/ui/codeeditor/js/ace/mode-ocaml.js +7 -7
  169. package/src/sap/ui/codeeditor/js/ace/mode-odin.js +10 -10
  170. package/src/sap/ui/codeeditor/js/ace/mode-pascal.js +0 -0
  171. package/src/sap/ui/codeeditor/js/ace/mode-perl.js +6 -6
  172. package/src/sap/ui/codeeditor/js/ace/mode-pgsql.js +98 -104
  173. package/src/sap/ui/codeeditor/js/ace/mode-php.js +797 -616
  174. package/src/sap/ui/codeeditor/js/ace/mode-php_laravel_blade.js +797 -616
  175. package/src/sap/ui/codeeditor/js/ace/mode-pig.js +0 -0
  176. package/src/sap/ui/codeeditor/js/ace/mode-plain_text.js +0 -0
  177. package/src/sap/ui/codeeditor/js/ace/mode-plsql.js +3 -3
  178. package/src/sap/ui/codeeditor/js/ace/mode-powershell.js +6 -6
  179. package/src/sap/ui/codeeditor/js/ace/mode-praat.js +0 -0
  180. package/src/sap/ui/codeeditor/js/ace/mode-prolog.js +0 -0
  181. package/src/sap/ui/codeeditor/js/ace/mode-properties.js +0 -0
  182. package/src/sap/ui/codeeditor/js/ace/mode-protobuf.js +18 -18
  183. package/src/sap/ui/codeeditor/js/ace/mode-prql.js +7 -4
  184. package/src/sap/ui/codeeditor/js/ace/mode-puppet.js +0 -0
  185. package/src/sap/ui/codeeditor/js/ace/mode-python.js +17 -17
  186. package/src/sap/ui/codeeditor/js/ace/mode-qml.js +5 -5
  187. package/src/sap/ui/codeeditor/js/ace/mode-r.js +13 -13
  188. package/src/sap/ui/codeeditor/js/ace/mode-raku.js +8 -8
  189. package/src/sap/ui/codeeditor/js/ace/mode-razor.js +386 -326
  190. package/src/sap/ui/codeeditor/js/ace/mode-rdoc.js +6 -6
  191. package/src/sap/ui/codeeditor/js/ace/mode-red.js +0 -0
  192. package/src/sap/ui/codeeditor/js/ace/mode-redshift.js +32 -32
  193. package/src/sap/ui/codeeditor/js/ace/mode-rhtml.js +390 -330
  194. package/src/sap/ui/codeeditor/js/ace/mode-rst.js +0 -0
  195. package/src/sap/ui/codeeditor/js/ace/mode-ruby.js +25 -25
  196. package/src/sap/ui/codeeditor/js/ace/mode-rust.js +39 -32
  197. package/src/sap/ui/codeeditor/js/ace/mode-sac.js +13 -13
  198. package/src/sap/ui/codeeditor/js/ace/mode-sass.js +14 -11
  199. package/src/sap/ui/codeeditor/js/ace/mode-scad.js +14 -14
  200. package/src/sap/ui/codeeditor/js/ace/mode-scala.js +381 -75
  201. package/src/sap/ui/codeeditor/js/ace/mode-scheme.js +2 -2
  202. package/src/sap/ui/codeeditor/js/ace/mode-scrypt.js +10 -10
  203. package/src/sap/ui/codeeditor/js/ace/mode-scss.js +14 -11
  204. package/src/sap/ui/codeeditor/js/ace/mode-sh.js +3 -3
  205. package/src/sap/ui/codeeditor/js/ace/mode-sjs.js +371 -65
  206. package/src/sap/ui/codeeditor/js/ace/mode-slim.js +521 -461
  207. package/src/sap/ui/codeeditor/js/ace/mode-smarty.js +377 -317
  208. package/src/sap/ui/codeeditor/js/ace/mode-snippets.js +0 -0
  209. package/src/sap/ui/codeeditor/js/ace/mode-soy_template.js +377 -317
  210. package/src/sap/ui/codeeditor/js/ace/mode-space.js +0 -0
  211. package/src/sap/ui/codeeditor/js/ace/mode-sparql.js +0 -0
  212. package/src/sap/ui/codeeditor/js/ace/mode-sql.js +12 -6
  213. package/src/sap/ui/codeeditor/js/ace/mode-sqlserver.js +5 -5
  214. package/src/sap/ui/codeeditor/js/ace/mode-stylus.js +10 -7
  215. package/src/sap/ui/codeeditor/js/ace/mode-svg.js +132 -75
  216. package/src/sap/ui/codeeditor/js/ace/mode-swift.js +5 -4
  217. package/src/sap/ui/codeeditor/js/ace/mode-tcl.js +7 -7
  218. package/src/sap/ui/codeeditor/js/ace/mode-terraform.js +0 -0
  219. package/src/sap/ui/codeeditor/js/ace/mode-tex.js +6 -6
  220. package/src/sap/ui/codeeditor/js/ace/mode-text.js +0 -0
  221. package/src/sap/ui/codeeditor/js/ace/mode-textile.js +0 -0
  222. package/src/sap/ui/codeeditor/js/ace/mode-toml.js +0 -0
  223. package/src/sap/ui/codeeditor/js/ace/mode-tsx.js +492 -182
  224. package/src/sap/ui/codeeditor/js/ace/mode-turtle.js +0 -0
  225. package/src/sap/ui/codeeditor/js/ace/mode-twig.js +379 -319
  226. package/src/sap/ui/codeeditor/js/ace/mode-typescript.js +371 -65
  227. package/src/sap/ui/codeeditor/js/ace/mode-vala.js +0 -0
  228. package/src/sap/ui/codeeditor/js/ace/mode-vbscript.js +0 -0
  229. package/src/sap/ui/codeeditor/js/ace/mode-velocity.js +387 -327
  230. package/src/sap/ui/codeeditor/js/ace/mode-verilog.js +1 -1
  231. package/src/sap/ui/codeeditor/js/ace/mode-vhdl.js +4 -4
  232. package/src/sap/ui/codeeditor/js/ace/mode-visualforce.js +377 -317
  233. package/src/sap/ui/codeeditor/js/ace/mode-vue.js +3834 -0
  234. package/src/sap/ui/codeeditor/js/ace/mode-wollok.js +382 -76
  235. package/src/sap/ui/codeeditor/js/ace/mode-xml.js +18 -10
  236. package/src/sap/ui/codeeditor/js/ace/mode-xquery.js +4 -5
  237. package/src/sap/ui/codeeditor/js/ace/mode-yaml.js +5 -5
  238. package/src/sap/ui/codeeditor/js/ace/mode-zeek.js +2 -2
  239. package/src/sap/ui/codeeditor/js/ace/mode-zig.js +585 -0
  240. package/src/sap/ui/codeeditor/js/ace/snippets/abap.js +0 -0
  241. package/src/sap/ui/codeeditor/js/ace/snippets/abc.js +0 -0
  242. package/src/sap/ui/codeeditor/js/ace/snippets/actionscript.js +0 -0
  243. package/src/sap/ui/codeeditor/js/ace/snippets/ada.js +0 -0
  244. package/src/sap/ui/codeeditor/js/ace/snippets/apache_conf.js +0 -0
  245. package/src/sap/ui/codeeditor/js/ace/snippets/applescript.js +0 -0
  246. package/src/sap/ui/codeeditor/js/ace/snippets/asciidoc.js +0 -0
  247. package/src/sap/ui/codeeditor/js/ace/snippets/asl.js +0 -0
  248. package/src/sap/ui/codeeditor/js/ace/snippets/assembly_arm32.js +9 -0
  249. package/src/sap/ui/codeeditor/js/ace/snippets/assembly_x86.js +0 -0
  250. package/src/sap/ui/codeeditor/js/ace/snippets/autohotkey.js +0 -0
  251. package/src/sap/ui/codeeditor/js/ace/snippets/basic.js +9 -0
  252. package/src/sap/ui/codeeditor/js/ace/snippets/batchfile.js +0 -0
  253. package/src/sap/ui/codeeditor/js/ace/snippets/c9search.js +0 -0
  254. package/src/sap/ui/codeeditor/js/ace/snippets/c_cpp.js +0 -0
  255. package/src/sap/ui/codeeditor/js/ace/snippets/cirru.js +0 -0
  256. package/src/sap/ui/codeeditor/js/ace/snippets/clojure.js +0 -0
  257. package/src/sap/ui/codeeditor/js/ace/snippets/cobol.js +0 -0
  258. package/src/sap/ui/codeeditor/js/ace/snippets/coffee.js +0 -0
  259. package/src/sap/ui/codeeditor/js/ace/snippets/coldfusion.js +0 -0
  260. package/src/sap/ui/codeeditor/js/ace/snippets/csharp.js +0 -0
  261. package/src/sap/ui/codeeditor/js/ace/snippets/csound_document.js +0 -0
  262. package/src/sap/ui/codeeditor/js/ace/snippets/csound_orchestra.js +0 -0
  263. package/src/sap/ui/codeeditor/js/ace/snippets/csound_score.js +0 -0
  264. package/src/sap/ui/codeeditor/js/ace/snippets/csp.js +0 -0
  265. package/src/sap/ui/codeeditor/js/ace/snippets/css.js +0 -0
  266. package/src/sap/ui/codeeditor/js/ace/snippets/curly.js +0 -0
  267. package/src/sap/ui/codeeditor/js/ace/snippets/d.js +0 -0
  268. package/src/sap/ui/codeeditor/js/ace/snippets/dart.js +0 -0
  269. package/src/sap/ui/codeeditor/js/ace/snippets/diff.js +0 -0
  270. package/src/sap/ui/codeeditor/js/ace/snippets/django.js +0 -0
  271. package/src/sap/ui/codeeditor/js/ace/snippets/dockerfile.js +0 -0
  272. package/src/sap/ui/codeeditor/js/ace/snippets/dot.js +0 -0
  273. package/src/sap/ui/codeeditor/js/ace/snippets/drools.js +0 -0
  274. package/src/sap/ui/codeeditor/js/ace/snippets/edifact.js +0 -0
  275. package/src/sap/ui/codeeditor/js/ace/snippets/eiffel.js +0 -0
  276. package/src/sap/ui/codeeditor/js/ace/snippets/ejs.js +0 -0
  277. package/src/sap/ui/codeeditor/js/ace/snippets/elixir.js +0 -0
  278. package/src/sap/ui/codeeditor/js/ace/snippets/elm.js +0 -0
  279. package/src/sap/ui/codeeditor/js/ace/snippets/erlang.js +0 -0
  280. package/src/sap/ui/codeeditor/js/ace/snippets/forth.js +0 -0
  281. package/src/sap/ui/codeeditor/js/ace/snippets/fortran.js +0 -0
  282. package/src/sap/ui/codeeditor/js/ace/snippets/fsharp.js +0 -0
  283. package/src/sap/ui/codeeditor/js/ace/snippets/ftl.js +0 -0
  284. package/src/sap/ui/codeeditor/js/ace/snippets/gcode.js +0 -0
  285. package/src/sap/ui/codeeditor/js/ace/snippets/gherkin.js +0 -0
  286. package/src/sap/ui/codeeditor/js/ace/snippets/gitignore.js +0 -0
  287. package/src/sap/ui/codeeditor/js/ace/snippets/glsl.js +0 -0
  288. package/src/sap/ui/codeeditor/js/ace/snippets/gobstones.js +0 -0
  289. package/src/sap/ui/codeeditor/js/ace/snippets/golang.js +0 -0
  290. package/src/sap/ui/codeeditor/js/ace/snippets/graphqlschema.js +0 -0
  291. package/src/sap/ui/codeeditor/js/ace/snippets/groovy.js +0 -0
  292. package/src/sap/ui/codeeditor/js/ace/snippets/haml.js +0 -0
  293. package/src/sap/ui/codeeditor/js/ace/snippets/handlebars.js +0 -0
  294. package/src/sap/ui/codeeditor/js/ace/snippets/haskell.js +0 -0
  295. package/src/sap/ui/codeeditor/js/ace/snippets/haskell_cabal.js +0 -0
  296. package/src/sap/ui/codeeditor/js/ace/snippets/haxe.js +0 -0
  297. package/src/sap/ui/codeeditor/js/ace/snippets/hjson.js +0 -0
  298. package/src/sap/ui/codeeditor/js/ace/snippets/html.js +0 -0
  299. package/src/sap/ui/codeeditor/js/ace/snippets/html_elixir.js +0 -0
  300. package/src/sap/ui/codeeditor/js/ace/snippets/html_ruby.js +0 -0
  301. package/src/sap/ui/codeeditor/js/ace/snippets/ini.js +0 -0
  302. package/src/sap/ui/codeeditor/js/ace/snippets/io.js +0 -0
  303. package/src/sap/ui/codeeditor/js/ace/snippets/jack.js +0 -0
  304. package/src/sap/ui/codeeditor/js/ace/snippets/jade.js +0 -0
  305. package/src/sap/ui/codeeditor/js/ace/snippets/java.js +0 -0
  306. package/src/sap/ui/codeeditor/js/ace/snippets/javascript.js +0 -0
  307. package/src/sap/ui/codeeditor/js/ace/snippets/json.js +0 -0
  308. package/src/sap/ui/codeeditor/js/ace/snippets/jsoniq.js +0 -0
  309. package/src/sap/ui/codeeditor/js/ace/snippets/jsp.js +0 -0
  310. package/src/sap/ui/codeeditor/js/ace/snippets/jssm.js +0 -0
  311. package/src/sap/ui/codeeditor/js/ace/snippets/jsx.js +0 -0
  312. package/src/sap/ui/codeeditor/js/ace/snippets/julia.js +0 -0
  313. package/src/sap/ui/codeeditor/js/ace/snippets/kotlin.js +0 -0
  314. package/src/sap/ui/codeeditor/js/ace/snippets/latex.js +0 -0
  315. package/src/sap/ui/codeeditor/js/ace/snippets/less.js +0 -0
  316. package/src/sap/ui/codeeditor/js/ace/snippets/liquid.js +0 -0
  317. package/src/sap/ui/codeeditor/js/ace/snippets/lisp.js +0 -0
  318. package/src/sap/ui/codeeditor/js/ace/snippets/livescript.js +0 -0
  319. package/src/sap/ui/codeeditor/js/ace/snippets/logiql.js +0 -0
  320. package/src/sap/ui/codeeditor/js/ace/snippets/lsl.js +0 -0
  321. package/src/sap/ui/codeeditor/js/ace/snippets/lua.js +0 -0
  322. package/src/sap/ui/codeeditor/js/ace/snippets/luapage.js +0 -0
  323. package/src/sap/ui/codeeditor/js/ace/snippets/lucene.js +0 -0
  324. package/src/sap/ui/codeeditor/js/ace/snippets/makefile.js +0 -0
  325. package/src/sap/ui/codeeditor/js/ace/snippets/markdown.js +0 -0
  326. package/src/sap/ui/codeeditor/js/ace/snippets/mask.js +0 -0
  327. package/src/sap/ui/codeeditor/js/ace/snippets/matlab.js +0 -0
  328. package/src/sap/ui/codeeditor/js/ace/snippets/maze.js +0 -0
  329. package/src/sap/ui/codeeditor/js/ace/snippets/mel.js +0 -0
  330. package/src/sap/ui/codeeditor/js/ace/snippets/mixal.js +0 -0
  331. package/src/sap/ui/codeeditor/js/ace/snippets/mushcode.js +0 -0
  332. package/src/sap/ui/codeeditor/js/ace/snippets/mysql.js +0 -0
  333. package/src/sap/ui/codeeditor/js/ace/snippets/nix.js +0 -0
  334. package/src/sap/ui/codeeditor/js/ace/snippets/nsis.js +0 -0
  335. package/src/sap/ui/codeeditor/js/ace/snippets/objectivec.js +0 -0
  336. package/src/sap/ui/codeeditor/js/ace/snippets/ocaml.js +0 -0
  337. package/src/sap/ui/codeeditor/js/ace/snippets/pascal.js +0 -0
  338. package/src/sap/ui/codeeditor/js/ace/snippets/perl.js +0 -0
  339. package/src/sap/ui/codeeditor/js/ace/snippets/pgsql.js +0 -0
  340. package/src/sap/ui/codeeditor/js/ace/snippets/php.js +0 -0
  341. package/src/sap/ui/codeeditor/js/ace/snippets/php_laravel_blade.js +0 -0
  342. package/src/sap/ui/codeeditor/js/ace/snippets/pig.js +0 -0
  343. package/src/sap/ui/codeeditor/js/ace/snippets/plain_text.js +0 -0
  344. package/src/sap/ui/codeeditor/js/ace/snippets/powershell.js +0 -0
  345. package/src/sap/ui/codeeditor/js/ace/snippets/praat.js +0 -0
  346. package/src/sap/ui/codeeditor/js/ace/snippets/prolog.js +0 -0
  347. package/src/sap/ui/codeeditor/js/ace/snippets/properties.js +0 -0
  348. package/src/sap/ui/codeeditor/js/ace/snippets/protobuf.js +0 -0
  349. package/src/sap/ui/codeeditor/js/ace/snippets/puppet.js +0 -0
  350. package/src/sap/ui/codeeditor/js/ace/snippets/python.js +0 -0
  351. package/src/sap/ui/codeeditor/js/ace/snippets/r.js +0 -0
  352. package/src/sap/ui/codeeditor/js/ace/snippets/razor.js +0 -0
  353. package/src/sap/ui/codeeditor/js/ace/snippets/rdoc.js +0 -0
  354. package/src/sap/ui/codeeditor/js/ace/snippets/red.js +0 -0
  355. package/src/sap/ui/codeeditor/js/ace/snippets/redshift.js +0 -0
  356. package/src/sap/ui/codeeditor/js/ace/snippets/rhtml.js +0 -0
  357. package/src/sap/ui/codeeditor/js/ace/snippets/rst.js +0 -0
  358. package/src/sap/ui/codeeditor/js/ace/snippets/ruby.js +0 -0
  359. package/src/sap/ui/codeeditor/js/ace/snippets/rust.js +0 -0
  360. package/src/sap/ui/codeeditor/js/ace/snippets/sass.js +0 -0
  361. package/src/sap/ui/codeeditor/js/ace/snippets/scad.js +0 -0
  362. package/src/sap/ui/codeeditor/js/ace/snippets/scala.js +0 -0
  363. package/src/sap/ui/codeeditor/js/ace/snippets/scheme.js +0 -0
  364. package/src/sap/ui/codeeditor/js/ace/snippets/scss.js +0 -0
  365. package/src/sap/ui/codeeditor/js/ace/snippets/sh.js +0 -0
  366. package/src/sap/ui/codeeditor/js/ace/snippets/sjs.js +0 -0
  367. package/src/sap/ui/codeeditor/js/ace/snippets/slim.js +0 -0
  368. package/src/sap/ui/codeeditor/js/ace/snippets/smarty.js +0 -0
  369. package/src/sap/ui/codeeditor/js/ace/snippets/snippets.js +0 -0
  370. package/src/sap/ui/codeeditor/js/ace/snippets/soy_template.js +0 -0
  371. package/src/sap/ui/codeeditor/js/ace/snippets/space.js +0 -0
  372. package/src/sap/ui/codeeditor/js/ace/snippets/sparql.js +0 -0
  373. package/src/sap/ui/codeeditor/js/ace/snippets/sql.js +0 -0
  374. package/src/sap/ui/codeeditor/js/ace/snippets/sqlserver.js +0 -0
  375. package/src/sap/ui/codeeditor/js/ace/snippets/stylus.js +0 -0
  376. package/src/sap/ui/codeeditor/js/ace/snippets/svg.js +0 -0
  377. package/src/sap/ui/codeeditor/js/ace/snippets/swift.js +0 -0
  378. package/src/sap/ui/codeeditor/js/ace/snippets/tcl.js +0 -0
  379. package/src/sap/ui/codeeditor/js/ace/snippets/terraform.js +0 -0
  380. package/src/sap/ui/codeeditor/js/ace/snippets/tex.js +0 -0
  381. package/src/sap/ui/codeeditor/js/ace/snippets/text.js +0 -0
  382. package/src/sap/ui/codeeditor/js/ace/snippets/textile.js +0 -0
  383. package/src/sap/ui/codeeditor/js/ace/snippets/toml.js +0 -0
  384. package/src/sap/ui/codeeditor/js/ace/snippets/tsx.js +0 -0
  385. package/src/sap/ui/codeeditor/js/ace/snippets/turtle.js +0 -0
  386. package/src/sap/ui/codeeditor/js/ace/snippets/twig.js +0 -0
  387. package/src/sap/ui/codeeditor/js/ace/snippets/typescript.js +0 -0
  388. package/src/sap/ui/codeeditor/js/ace/snippets/vala.js +0 -0
  389. package/src/sap/ui/codeeditor/js/ace/snippets/vbscript.js +0 -0
  390. package/src/sap/ui/codeeditor/js/ace/snippets/velocity.js +0 -0
  391. package/src/sap/ui/codeeditor/js/ace/snippets/verilog.js +0 -0
  392. package/src/sap/ui/codeeditor/js/ace/snippets/vhdl.js +0 -0
  393. package/src/sap/ui/codeeditor/js/ace/snippets/vue.js +9 -0
  394. package/src/sap/ui/codeeditor/js/ace/snippets/wollok.js +0 -0
  395. package/src/sap/ui/codeeditor/js/ace/snippets/xml.js +0 -0
  396. package/src/sap/ui/codeeditor/js/ace/snippets/xquery.js +0 -0
  397. package/src/sap/ui/codeeditor/js/ace/snippets/yaml.js +0 -0
  398. package/src/sap/ui/codeeditor/js/ace/snippets/zig.js +9 -0
  399. package/src/sap/ui/codeeditor/js/ace/theme-ambiance.js +0 -0
  400. package/src/sap/ui/codeeditor/js/ace/theme-chaos.js +0 -0
  401. package/src/sap/ui/codeeditor/js/ace/theme-chrome.js +0 -0
  402. package/src/sap/ui/codeeditor/js/ace/theme-cloud_editor.js +18 -0
  403. package/src/sap/ui/codeeditor/js/ace/theme-cloud_editor_dark.js +18 -0
  404. package/src/sap/ui/codeeditor/js/ace/theme-clouds.js +0 -0
  405. package/src/sap/ui/codeeditor/js/ace/theme-clouds_midnight.js +0 -0
  406. package/src/sap/ui/codeeditor/js/ace/theme-cobalt.js +0 -0
  407. package/src/sap/ui/codeeditor/js/ace/theme-crimson_editor.js +0 -0
  408. package/src/sap/ui/codeeditor/js/ace/theme-dawn.js +0 -0
  409. package/src/sap/ui/codeeditor/js/ace/theme-dracula.js +0 -0
  410. package/src/sap/ui/codeeditor/js/ace/theme-dreamweaver.js +0 -0
  411. package/src/sap/ui/codeeditor/js/ace/theme-eclipse.js +0 -0
  412. package/src/sap/ui/codeeditor/js/ace/theme-github.js +0 -0
  413. package/src/sap/ui/codeeditor/js/ace/theme-github_light_default.js +18 -0
  414. package/src/sap/ui/codeeditor/js/ace/theme-gob.js +0 -0
  415. package/src/sap/ui/codeeditor/js/ace/theme-gruvbox.js +0 -0
  416. package/src/sap/ui/codeeditor/js/ace/theme-idle_fingers.js +0 -0
  417. package/src/sap/ui/codeeditor/js/ace/theme-iplastic.js +0 -0
  418. package/src/sap/ui/codeeditor/js/ace/theme-katzenmilch.js +0 -0
  419. package/src/sap/ui/codeeditor/js/ace/theme-kr_theme.js +0 -0
  420. package/src/sap/ui/codeeditor/js/ace/theme-kuroir.js +0 -0
  421. package/src/sap/ui/codeeditor/js/ace/theme-merbivore.js +0 -0
  422. package/src/sap/ui/codeeditor/js/ace/theme-merbivore_soft.js +0 -0
  423. package/src/sap/ui/codeeditor/js/ace/theme-mono_industrial.js +0 -0
  424. package/src/sap/ui/codeeditor/js/ace/theme-monokai.js +0 -0
  425. package/src/sap/ui/codeeditor/js/ace/theme-pastel_on_dark.js +0 -0
  426. package/src/sap/ui/codeeditor/js/ace/theme-solarized_dark.js +1 -1
  427. package/src/sap/ui/codeeditor/js/ace/theme-solarized_light.js +0 -0
  428. package/src/sap/ui/codeeditor/js/ace/theme-sqlserver.js +0 -0
  429. package/src/sap/ui/codeeditor/js/ace/theme-terminal.js +0 -0
  430. package/src/sap/ui/codeeditor/js/ace/theme-textmate.js +0 -0
  431. package/src/sap/ui/codeeditor/js/ace/theme-tomorrow.js +0 -0
  432. package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night.js +0 -0
  433. package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night_blue.js +0 -0
  434. package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night_bright.js +0 -0
  435. package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night_eighties.js +0 -0
  436. package/src/sap/ui/codeeditor/js/ace/theme-twilight.js +0 -0
  437. package/src/sap/ui/codeeditor/js/ace/theme-vibrant_ink.js +0 -0
  438. package/src/sap/ui/codeeditor/js/ace/theme-xcode.js +0 -0
  439. package/src/sap/ui/codeeditor/js/ace/worker-base.js +3 -13
  440. package/src/sap/ui/codeeditor/js/ace/worker-coffee.js +3 -13
  441. package/src/sap/ui/codeeditor/js/ace/worker-css.js +3 -13
  442. package/src/sap/ui/codeeditor/js/ace/worker-html.js +3 -13
  443. package/src/sap/ui/codeeditor/js/ace/worker-javascript.js +3 -13
  444. package/src/sap/ui/codeeditor/js/ace/worker-json.js +3 -13
  445. package/src/sap/ui/codeeditor/js/ace/worker-lua.js +3 -13
  446. package/src/sap/ui/codeeditor/js/ace/worker-php.js +3 -13
  447. package/src/sap/ui/codeeditor/js/ace/worker-xml.js +8 -15
  448. package/src/sap/ui/codeeditor/js/ace/worker-xquery.js +3 -13
  449. package/src/sap/ui/codeeditor/js/ace/worker-yaml.js +6 -16
  450. package/src/sap/ui/codeeditor/library.js +2 -2
  451. package/LICENSES/LicenseRef-tzdata-PublicDomain.txt +0 -5
  452. package/LICENSES/Unicode-DFS-2015.txt +0 -51
@@ -74,7 +74,7 @@ var CssHighlightRules = function () {
74
74
  + "|swash|ornaments|annotation|stylistic|styleset|character-variant)"
75
75
  }],
76
76
  "comments": [{
77
- token: "comment",
77
+ token: "comment", // multi line comment
78
78
  regex: "\\/\\*",
79
79
  push: [{
80
80
  token: "comment",
@@ -103,10 +103,10 @@ var CssHighlightRules = function () {
103
103
  token: "constant.numeric",
104
104
  regex: numRe
105
105
  }, {
106
- token: "constant.numeric",
106
+ token: "constant.numeric", // hex6 color
107
107
  regex: "#[a-f0-9]{6}"
108
108
  }, {
109
- token: "constant.numeric",
109
+ token: "constant.numeric", // hex3 color
110
110
  regex: "#[a-f0-9]{3}"
111
111
  }, {
112
112
  token: ["punctuation", "entity.other.attribute-name.pseudo-element.css"],
@@ -119,6 +119,9 @@ var CssHighlightRules = function () {
119
119
  }, {
120
120
  token: keywordMapper,
121
121
  regex: "\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"
122
+ }, {
123
+ token: "paren.lparen",
124
+ regex: "\\{"
122
125
  }, {
123
126
  caseInsensitive: true
124
127
  }],
@@ -202,7 +205,7 @@ var JsDocCommentHighlightRules = function () {
202
205
  ]
203
206
  }, {
204
207
  token: ["rparen.doc", "text.doc", "variable.parameter.doc", "lparen.doc", "variable.parameter.doc", "rparen.doc"],
205
- regex: /(})(\s*)(?:([\w=:\/\.]+)|(?:(\[)([\w=:\/\.]+)(\])))/,
208
+ regex: /(})(\s*)(?:([\w=:\/\.]+)|(?:(\[)([\w=:\/\.\-\'\" ]+)(\])))/,
206
209
  next: "pop"
207
210
  }, {
208
211
  token: "rparen.doc",
@@ -262,7 +265,7 @@ var JsDocCommentHighlightRules = function () {
262
265
  },
263
266
  JsDocCommentHighlightRules.getTagRule(),
264
267
  {
265
- defaultToken: "comment.doc",
268
+ defaultToken: "comment.doc.body",
266
269
  caseInsensitive: true
267
270
  }
268
271
  ],
@@ -285,14 +288,14 @@ JsDocCommentHighlightRules.getTagRule = function (start) {
285
288
  };
286
289
  JsDocCommentHighlightRules.getStartRule = function (start) {
287
290
  return {
288
- token: "comment.doc",
289
- regex: "\\/\\*(?=\\*)",
291
+ token: "comment.doc", // doc comment
292
+ regex: /\/\*\*(?!\/)/,
290
293
  next: start
291
294
  };
292
295
  };
293
296
  JsDocCommentHighlightRules.getEndRule = function (start) {
294
297
  return {
295
- token: "comment.doc",
298
+ token: "comment.doc", // closing comment
296
299
  regex: "\\*\\/",
297
300
  next: start
298
301
  };
@@ -307,7 +310,7 @@ var DocCommentHighlightRules = require("./jsdoc_comment_highlight_rules").JsDocC
307
310
  var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
308
311
  var identifierRe = "[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*";
309
312
  var JavaScriptHighlightRules = function (options) {
310
- var keywordMapper = this.createKeywordMapper({
313
+ var keywords = {
311
314
  "variable.language": "Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Symbol|" + // Constructors
312
315
  "Namespace|QName|XML|XMLList|" + // E4X
313
316
  "ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|" +
@@ -317,9 +320,9 @@ var JavaScriptHighlightRules = function (options) {
317
320
  "decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|" + // Non-constructor functions
318
321
  "isNaN|parseFloat|parseInt|" +
319
322
  "JSON|Math|" + // Other
320
- "this|arguments|prototype|window|document",
323
+ "this|arguments|prototype|window|document", // Pseudo
321
324
  "keyword": "const|yield|import|get|set|async|await|" +
322
- "break|case|catch|continue|default|delete|do|else|finally|for|function|" +
325
+ "break|case|catch|continue|default|delete|do|else|finally|for|" +
323
326
  "if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|" +
324
327
  "__parent__|__count__|escape|unescape|with|__proto__|" +
325
328
  "class|enum|extends|super|export|implements|private|public|interface|package|protected|static|constructor",
@@ -327,7 +330,8 @@ var JavaScriptHighlightRules = function (options) {
327
330
  "constant.language": "null|Infinity|NaN|undefined",
328
331
  "support.function": "alert",
329
332
  "constant.language.boolean": "true|false"
330
- }, "identifier");
333
+ };
334
+ var keywordMapper = this.createKeywordMapper(keywords, "identifier");
331
335
  var kwBeforeRe = "case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void";
332
336
  var escapedRe = "\\\\(?:x[0-9a-fA-F]{2}|" + // hex
333
337
  "u[0-9a-fA-F]{4}|" + // unicode
@@ -336,10 +340,16 @@ var JavaScriptHighlightRules = function (options) {
336
340
  "3[0-7][0-7]?|" + // oct
337
341
  "[4-7][0-7]?|" + //oct
338
342
  ".)";
343
+ var anonymousFunctionRe = "(function)(\\s*)(\\*?)";
344
+ var functionCallStartRule = {
345
+ token: ["identifier", "text", "paren.lparen"],
346
+ regex: "(\\b(?!" + Object.values(keywords).join("|") + "\\b)" + identifierRe + ")(\\s*)(\\()"
347
+ };
339
348
  this.$rules = {
340
349
  "no_regex": [
341
350
  DocCommentHighlightRules.getStartRule("doc-start"),
342
351
  comments("no_regex"),
352
+ functionCallStartRule,
343
353
  {
344
354
  token: "string",
345
355
  regex: "'(?=.)",
@@ -349,58 +359,36 @@ var JavaScriptHighlightRules = function (options) {
349
359
  regex: '"(?=.)',
350
360
  next: "qqstring"
351
361
  }, {
352
- token: "constant.numeric",
362
+ token: "constant.numeric", // hexadecimal, octal and binary
353
363
  regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/
354
364
  }, {
355
- token: "constant.numeric",
365
+ token: "constant.numeric", // decimal integers and floats
356
366
  regex: /(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/
357
- }, {
358
- token: [
359
- "storage.type", "punctuation.operator", "support.function",
360
- "punctuation.operator", "entity.name.function", "text", "keyword.operator"
361
- ],
362
- regex: "(" + identifierRe + ")(\\.)(prototype)(\\.)(" + identifierRe + ")(\\s*)(=)",
363
- next: "function_arguments"
364
- }, {
365
- token: [
366
- "storage.type", "punctuation.operator", "entity.name.function", "text",
367
- "keyword.operator", "text", "storage.type", "text", "paren.lparen"
368
- ],
369
- regex: "(" + identifierRe + ")(\\.)(" + identifierRe + ")(\\s*)(=)(\\s*)(function\\*?)(\\s*)(\\()",
370
- next: "function_arguments"
371
367
  }, {
372
368
  token: [
373
369
  "entity.name.function", "text", "keyword.operator", "text", "storage.type",
374
- "text", "paren.lparen"
375
- ],
376
- regex: "(" + identifierRe + ")(\\s*)(=)(\\s*)(function\\*?)(\\s*)(\\()",
377
- next: "function_arguments"
378
- }, {
379
- token: [
380
- "storage.type", "punctuation.operator", "entity.name.function", "text",
381
- "keyword.operator", "text",
382
- "storage.type", "text", "entity.name.function", "text", "paren.lparen"
370
+ "text", "storage.type", "text", "paren.lparen"
383
371
  ],
384
- regex: "(" + identifierRe + ")(\\.)(" + identifierRe + ")(\\s*)(=)(\\s*)(function\\*?)(\\s+)(\\w+)(\\s*)(\\()",
372
+ regex: "(" + identifierRe + ")(\\s*)(=)(\\s*)" + anonymousFunctionRe + "(\\s*)(\\()",
385
373
  next: "function_arguments"
386
374
  }, {
387
375
  token: [
388
- "storage.type", "text", "entity.name.function", "text", "paren.lparen"
376
+ "storage.type", "text", "storage.type", "text", "text", "entity.name.function", "text", "paren.lparen"
389
377
  ],
390
- regex: "(function\\*?)(\\s+)(" + identifierRe + ")(\\s*)(\\()",
378
+ regex: "(function)(?:(?:(\\s*)(\\*)(\\s*))|(\\s+))(" + identifierRe + ")(\\s*)(\\()",
391
379
  next: "function_arguments"
392
380
  }, {
393
381
  token: [
394
382
  "entity.name.function", "text", "punctuation.operator",
395
- "text", "storage.type", "text", "paren.lparen"
383
+ "text", "storage.type", "text", "storage.type", "text", "paren.lparen"
396
384
  ],
397
- regex: "(" + identifierRe + ")(\\s*)(:)(\\s*)(function\\*?)(\\s*)(\\()",
385
+ regex: "(" + identifierRe + ")(\\s*)(:)(\\s*)" + anonymousFunctionRe + "(\\s*)(\\()",
398
386
  next: "function_arguments"
399
387
  }, {
400
388
  token: [
401
- "text", "text", "storage.type", "text", "paren.lparen"
389
+ "text", "text", "storage.type", "text", "storage.type", "text", "paren.lparen"
402
390
  ],
403
- regex: "(:)(\\s*)(function\\*?)(\\s*)(\\()",
391
+ regex: "(:)(\\s*)" + anonymousFunctionRe + "(\\s*)(\\()",
404
392
  next: "function_arguments"
405
393
  }, {
406
394
  token: "keyword",
@@ -414,7 +402,7 @@ var JavaScriptHighlightRules = function (options) {
414
402
  regex: /that\b/
415
403
  }, {
416
404
  token: ["storage.type", "punctuation.operator", "support.function.firebug"],
417
- regex: /(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/
405
+ regex: /(console)(\.)(warn|info|log|error|debug|time|trace|timeEnd|assert)\b/
418
406
  }, {
419
407
  token: keywordMapper,
420
408
  regex: identifierRe
@@ -449,17 +437,27 @@ var JavaScriptHighlightRules = function (options) {
449
437
  property: [{
450
438
  token: "text",
451
439
  regex: "\\s+"
440
+ }, {
441
+ token: "keyword.operator",
442
+ regex: /=/
443
+ }, {
444
+ token: [
445
+ "storage.type", "text", "storage.type", "text", "paren.lparen"
446
+ ],
447
+ regex: anonymousFunctionRe + "(\\s*)(\\()",
448
+ next: "function_arguments"
452
449
  }, {
453
450
  token: [
454
- "storage.type", "punctuation.operator", "entity.name.function", "text",
455
- "keyword.operator", "text",
456
- "storage.type", "text", "entity.name.function", "text", "paren.lparen"
451
+ "storage.type", "text", "storage.type", "text", "text", "entity.name.function", "text", "paren.lparen"
457
452
  ],
458
- regex: "(" + identifierRe + ")(\\.)(" + identifierRe + ")(\\s*)(=)(\\s*)(function\\*?)(?:(\\s+)(\\w+))?(\\s*)(\\()",
453
+ regex: "(function)(?:(?:(\\s*)(\\*)(\\s*))|(\\s+))(\\w+)(\\s*)(\\()",
459
454
  next: "function_arguments"
460
455
  }, {
461
456
  token: "punctuation.operator",
462
457
  regex: /[.](?![.])/
458
+ }, {
459
+ token: "support.function",
460
+ regex: "prototype"
463
461
  }, {
464
462
  token: "support.function",
465
463
  regex: /(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|lter|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward|rEach)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/
@@ -572,10 +570,10 @@ var JavaScriptHighlightRules = function (options) {
572
570
  token: "constant.language",
573
571
  regex: "null|Infinity|NaN|undefined"
574
572
  }, {
575
- token: "constant.numeric",
573
+ token: "constant.numeric", // hexadecimal, octal and binary
576
574
  regex: /0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/
577
575
  }, {
578
- token: "constant.numeric",
576
+ token: "constant.numeric", // decimal integers and floats
579
577
  regex: /(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/
580
578
  }, {
581
579
  token: "punctuation.operator",
@@ -684,7 +682,7 @@ var JavaScriptHighlightRules = function (options) {
684
682
  regex: "(" + identifierRe + ")(\\s*)(?=\\=>)"
685
683
  }, {
686
684
  token: "paren.lparen",
687
- regex: "(\\()(?=.+\\s*=>)",
685
+ regex: "(\\()(?=[^\\(]+\\s*=>)",
688
686
  next: "function_arguments"
689
687
  }, {
690
688
  token: "variable.language",
@@ -742,7 +740,7 @@ function JSX() {
742
740
  value: val.substr(offset)
743
741
  }];
744
742
  },
745
- regex: "</?" + tagRegex + "",
743
+ regex: "</?(?:" + tagRegex + "|(?=>))",
746
744
  next: "jsxAttributes",
747
745
  nextState: "jsx"
748
746
  };
@@ -755,8 +753,7 @@ function JSX() {
755
753
  this.$rules.jsx = [
756
754
  jsxJsRule,
757
755
  jsxTag,
758
- { include: "reference" },
759
- { defaultToken: "string" }
756
+ { include: "reference" }, { defaultToken: "string.xml" }
760
757
  ];
761
758
  this.$rules.jsxAttributes = [{
762
759
  token: "meta.tag.punctuation.tag-close.xml",
@@ -816,7 +813,7 @@ function JSX() {
816
813
  function comments(next) {
817
814
  return [
818
815
  {
819
- token: "comment",
816
+ token: "comment", // multi line comment
820
817
  regex: /\/\*/,
821
818
  next: [
822
819
  DocCommentHighlightRules.getTagRule(),
@@ -1373,110 +1370,397 @@ exports.MatchingBraceOutdent = MatchingBraceOutdent;
1373
1370
 
1374
1371
  });
1375
1372
 
1376
- ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"], function(require, exports, module){"use strict";
1373
+ ace.define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator"], function(require, exports, module){"use strict";
1377
1374
  var oop = require("../../lib/oop");
1378
- var Range = require("../../range").Range;
1379
- var BaseFoldMode = require("./fold_mode").FoldMode;
1380
- var FoldMode = exports.FoldMode = function (commentRegex) {
1381
- if (commentRegex) {
1382
- this.foldingStartMarker = new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/, "|" + commentRegex.start));
1383
- this.foldingStopMarker = new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/, "|" + commentRegex.end));
1384
- }
1385
- };
1386
- oop.inherits(FoldMode, BaseFoldMode);
1387
- (function () {
1388
- this.foldingStartMarker = /([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/;
1389
- this.foldingStopMarker = /^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/;
1390
- this.singleLineBlockCommentRe = /^\s*(\/\*).*\*\/\s*$/;
1391
- this.tripleStarBlockCommentRe = /^\s*(\/\*\*\*).*\*\/\s*$/;
1392
- this.startRegionRe = /^\s*(\/\*|\/\/)#?region\b/;
1393
- this._getFoldWidgetBase = this.getFoldWidget;
1394
- this.getFoldWidget = function (session, foldStyle, row) {
1395
- var line = session.getLine(row);
1396
- if (this.singleLineBlockCommentRe.test(line)) {
1397
- if (!this.startRegionRe.test(line) && !this.tripleStarBlockCommentRe.test(line))
1398
- return "";
1399
- }
1400
- var fw = this._getFoldWidgetBase(session, foldStyle, row);
1401
- if (!fw && this.startRegionRe.test(line))
1402
- return "start"; // lineCommentRegionStart
1403
- return fw;
1404
- };
1405
- this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {
1406
- var line = session.getLine(row);
1407
- if (this.startRegionRe.test(line))
1408
- return this.getCommentRegionBlock(session, line, row);
1409
- var match = line.match(this.foldingStartMarker);
1410
- if (match) {
1411
- var i = match.index;
1412
- if (match[1])
1413
- return this.openingBracketBlock(session, match[1], row, i);
1414
- var range = session.getCommentFoldRange(row, i + match[0].length, 1);
1415
- if (range && !range.isMultiLine()) {
1416
- if (forceMultiline) {
1417
- range = this.getSectionRange(session, row);
1418
- }
1419
- else if (foldStyle != "all")
1420
- range = null;
1375
+ var Behaviour = require("../behaviour").Behaviour;
1376
+ var TokenIterator = require("../../token_iterator").TokenIterator;
1377
+ function is(token, type) {
1378
+ return token && token.type.lastIndexOf(type + ".xml") > -1;
1379
+ }
1380
+ var XmlBehaviour = function () {
1381
+ this.add("string_dquotes", "insertion", function (state, action, editor, session, text) {
1382
+ if (text == '"' || text == "'") {
1383
+ var quote = text;
1384
+ var selected = session.doc.getTextRange(editor.getSelectionRange());
1385
+ if (selected !== "" && selected !== "'" && selected != '"' && editor.getWrapBehavioursEnabled()) {
1386
+ return {
1387
+ text: quote + selected + quote,
1388
+ selection: false
1389
+ };
1390
+ }
1391
+ var cursor = editor.getCursorPosition();
1392
+ var line = session.doc.getLine(cursor.row);
1393
+ var rightChar = line.substring(cursor.column, cursor.column + 1);
1394
+ var iterator = new TokenIterator(session, cursor.row, cursor.column);
1395
+ var token = iterator.getCurrentToken();
1396
+ if (rightChar == quote && (is(token, "attribute-value") || is(token, "string"))) {
1397
+ return {
1398
+ text: "",
1399
+ selection: [1, 1]
1400
+ };
1401
+ }
1402
+ if (!token)
1403
+ token = iterator.stepBackward();
1404
+ if (!token)
1405
+ return;
1406
+ while (is(token, "tag-whitespace") || is(token, "whitespace")) {
1407
+ token = iterator.stepBackward();
1408
+ }
1409
+ var rightSpace = !rightChar || rightChar.match(/\s/);
1410
+ if (is(token, "attribute-equals") && (rightSpace || rightChar == '>') || (is(token, "decl-attribute-equals") && (rightSpace || rightChar == '?'))) {
1411
+ return {
1412
+ text: quote + quote,
1413
+ selection: [1, 1]
1414
+ };
1421
1415
  }
1422
- return range;
1423
1416
  }
1424
- if (foldStyle === "markbegin")
1425
- return;
1426
- var match = line.match(this.foldingStopMarker);
1427
- if (match) {
1428
- var i = match.index + match[0].length;
1429
- if (match[1])
1430
- return this.closingBracketBlock(session, match[1], row, i);
1431
- return session.getCommentFoldRange(row, i, -1);
1417
+ });
1418
+ this.add("string_dquotes", "deletion", function (state, action, editor, session, range) {
1419
+ var selected = session.doc.getTextRange(range);
1420
+ if (!range.isMultiLine() && (selected == '"' || selected == "'")) {
1421
+ var line = session.doc.getLine(range.start.row);
1422
+ var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
1423
+ if (rightChar == selected) {
1424
+ range.end.column++;
1425
+ return range;
1426
+ }
1432
1427
  }
1433
- };
1434
- this.getSectionRange = function (session, row) {
1435
- var line = session.getLine(row);
1436
- var startIndent = line.search(/\S/);
1437
- var startRow = row;
1438
- var startColumn = line.length;
1439
- row = row + 1;
1440
- var endRow = row;
1441
- var maxRow = session.getLength();
1442
- while (++row < maxRow) {
1443
- line = session.getLine(row);
1444
- var indent = line.search(/\S/);
1445
- if (indent === -1)
1446
- continue;
1447
- if (startIndent > indent)
1448
- break;
1449
- var subRange = this.getFoldWidgetRange(session, "all", row);
1450
- if (subRange) {
1451
- if (subRange.start.row <= startRow) {
1428
+ });
1429
+ this.add("autoclosing", "insertion", function (state, action, editor, session, text) {
1430
+ if (text == '>') {
1431
+ var position = editor.getSelectionRange().start;
1432
+ var iterator = new TokenIterator(session, position.row, position.column);
1433
+ var token = iterator.getCurrentToken() || iterator.stepBackward();
1434
+ if (!token || !(is(token, "tag-name") || is(token, "tag-whitespace") || is(token, "attribute-name") || is(token, "attribute-equals") || is(token, "attribute-value")))
1435
+ return;
1436
+ if (is(token, "reference.attribute-value"))
1437
+ return;
1438
+ if (is(token, "attribute-value")) {
1439
+ var tokenEndColumn = iterator.getCurrentTokenColumn() + token.value.length;
1440
+ if (position.column < tokenEndColumn)
1441
+ return;
1442
+ if (position.column == tokenEndColumn) {
1443
+ var nextToken = iterator.stepForward();
1444
+ if (nextToken && is(nextToken, "attribute-value"))
1445
+ return;
1446
+ iterator.stepBackward();
1447
+ }
1448
+ }
1449
+ if (/^\s*>/.test(session.getLine(position.row).slice(position.column)))
1450
+ return;
1451
+ while (!is(token, "tag-name")) {
1452
+ token = iterator.stepBackward();
1453
+ if (token.value == "<") {
1454
+ token = iterator.stepForward();
1452
1455
  break;
1453
1456
  }
1454
- else if (subRange.isMultiLine()) {
1455
- row = subRange.end.row;
1457
+ }
1458
+ var tokenRow = iterator.getCurrentTokenRow();
1459
+ var tokenColumn = iterator.getCurrentTokenColumn();
1460
+ if (is(iterator.stepBackward(), "end-tag-open"))
1461
+ return;
1462
+ var element = token.value;
1463
+ if (tokenRow == position.row)
1464
+ element = element.substring(0, position.column - tokenColumn);
1465
+ if (this.voidElements && this.voidElements.hasOwnProperty(element.toLowerCase()))
1466
+ return;
1467
+ return {
1468
+ text: ">" + "</" + element + ">",
1469
+ selection: [1, 1]
1470
+ };
1471
+ }
1472
+ });
1473
+ this.add("autoindent", "insertion", function (state, action, editor, session, text) {
1474
+ if (text == "\n") {
1475
+ var cursor = editor.getCursorPosition();
1476
+ var line = session.getLine(cursor.row);
1477
+ var iterator = new TokenIterator(session, cursor.row, cursor.column);
1478
+ var token = iterator.getCurrentToken();
1479
+ if (is(token, "") && token.type.indexOf("tag-close") !== -1) {
1480
+ if (token.value == "/>")
1481
+ return;
1482
+ while (token && token.type.indexOf("tag-name") === -1) {
1483
+ token = iterator.stepBackward();
1456
1484
  }
1457
- else if (startIndent == indent) {
1458
- break;
1485
+ if (!token) {
1486
+ return;
1487
+ }
1488
+ var tag = token.value;
1489
+ var row = iterator.getCurrentTokenRow();
1490
+ token = iterator.stepBackward();
1491
+ if (!token || token.type.indexOf("end-tag") !== -1) {
1492
+ return;
1493
+ }
1494
+ if (this.voidElements && !this.voidElements[tag] || !this.voidElements) {
1495
+ var nextToken = session.getTokenAt(cursor.row, cursor.column + 1);
1496
+ var line = session.getLine(row);
1497
+ var nextIndent = this.$getIndent(line);
1498
+ var indent = nextIndent + session.getTabString();
1499
+ if (nextToken && nextToken.value === "</") {
1500
+ return {
1501
+ text: "\n" + indent + "\n" + nextIndent,
1502
+ selection: [1, indent.length, 1, indent.length]
1503
+ };
1504
+ }
1505
+ else {
1506
+ return {
1507
+ text: "\n" + indent
1508
+ };
1509
+ }
1459
1510
  }
1460
1511
  }
1461
- endRow = row;
1462
1512
  }
1463
- return new Range(startRow, startColumn, endRow, session.getLine(endRow).length);
1464
- };
1465
- this.getCommentRegionBlock = function (session, line, row) {
1466
- var startColumn = line.search(/\s*$/);
1467
- var maxRow = session.getLength();
1468
- var startRow = row;
1469
- var re = /^\s*(?:\/\*|\/\/|--)#?(end)?region\b/;
1470
- var depth = 1;
1471
- while (++row < maxRow) {
1472
- line = session.getLine(row);
1473
- var m = re.exec(line);
1474
- if (!m)
1475
- continue;
1476
- if (m[1])
1477
- depth--;
1478
- else
1479
- depth++;
1513
+ });
1514
+ };
1515
+ oop.inherits(XmlBehaviour, Behaviour);
1516
+ exports.XmlBehaviour = XmlBehaviour;
1517
+
1518
+ });
1519
+
1520
+ ace.define("ace/mode/behaviour/javascript",["require","exports","module","ace/lib/oop","ace/token_iterator","ace/mode/behaviour/cstyle","ace/mode/behaviour/xml"], function(require, exports, module){"use strict";
1521
+ var oop = require("../../lib/oop");
1522
+ var TokenIterator = require("../../token_iterator").TokenIterator;
1523
+ var CstyleBehaviour = require("../behaviour/cstyle").CstyleBehaviour;
1524
+ var XmlBehaviour = require("../behaviour/xml").XmlBehaviour;
1525
+ var JavaScriptBehaviour = function () {
1526
+ var xmlBehaviours = new XmlBehaviour({ closeCurlyBraces: true }).getBehaviours();
1527
+ this.addBehaviours(xmlBehaviours);
1528
+ this.inherit(CstyleBehaviour);
1529
+ this.add("autoclosing-fragment", "insertion", function (state, action, editor, session, text) {
1530
+ if (text == '>') {
1531
+ var position = editor.getSelectionRange().start;
1532
+ var iterator = new TokenIterator(session, position.row, position.column);
1533
+ var token = iterator.getCurrentToken() || iterator.stepBackward();
1534
+ if (!token)
1535
+ return;
1536
+ if (token.value == '<') {
1537
+ return {
1538
+ text: "></>",
1539
+ selection: [1, 1]
1540
+ };
1541
+ }
1542
+ }
1543
+ });
1544
+ };
1545
+ oop.inherits(JavaScriptBehaviour, CstyleBehaviour);
1546
+ exports.JavaScriptBehaviour = JavaScriptBehaviour;
1547
+
1548
+ });
1549
+
1550
+ ace.define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"], function(require, exports, module){"use strict";
1551
+ var oop = require("../../lib/oop");
1552
+ var Range = require("../../range").Range;
1553
+ var BaseFoldMode = require("./fold_mode").FoldMode;
1554
+ var FoldMode = exports.FoldMode = function (voidElements, optionalEndTags) {
1555
+ BaseFoldMode.call(this);
1556
+ this.voidElements = voidElements || {};
1557
+ this.optionalEndTags = oop.mixin({}, this.voidElements);
1558
+ if (optionalEndTags)
1559
+ oop.mixin(this.optionalEndTags, optionalEndTags);
1560
+ };
1561
+ oop.inherits(FoldMode, BaseFoldMode);
1562
+ var Tag = function () {
1563
+ this.tagName = "";
1564
+ this.closing = false;
1565
+ this.selfClosing = false;
1566
+ this.start = { row: 0, column: 0 };
1567
+ this.end = { row: 0, column: 0 };
1568
+ };
1569
+ function is(token, type) {
1570
+ return token.type.lastIndexOf(type + ".xml") > -1;
1571
+ }
1572
+ (function () {
1573
+ this.getFoldWidget = function (session, foldStyle, row) {
1574
+ var tag = this._getFirstTagInLine(session, row);
1575
+ if (!tag)
1576
+ return this.getCommentFoldWidget(session, row);
1577
+ if (tag.closing || (!tag.tagName && tag.selfClosing))
1578
+ return foldStyle === "markbeginend" ? "end" : "";
1579
+ if (!tag.tagName || tag.selfClosing || this.voidElements.hasOwnProperty(tag.tagName.toLowerCase()))
1580
+ return "";
1581
+ if (this._findEndTagInLine(session, row, tag.tagName, tag.end.column))
1582
+ return "";
1583
+ return "start";
1584
+ };
1585
+ this.getCommentFoldWidget = function (session, row) {
1586
+ if (/comment/.test(session.getState(row)) && /<!-/.test(session.getLine(row)))
1587
+ return "start";
1588
+ return "";
1589
+ };
1590
+ this._getFirstTagInLine = function (session, row) {
1591
+ var tokens = session.getTokens(row);
1592
+ var tag = new Tag();
1593
+ for (var i = 0; i < tokens.length; i++) {
1594
+ var token = tokens[i];
1595
+ if (is(token, "tag-open")) {
1596
+ tag.end.column = tag.start.column + token.value.length;
1597
+ tag.closing = is(token, "end-tag-open");
1598
+ token = tokens[++i];
1599
+ if (!token)
1600
+ return null;
1601
+ tag.tagName = token.value;
1602
+ if (token.value === "") { //skip empty tag name token for fragment
1603
+ token = tokens[++i];
1604
+ if (!token)
1605
+ return null;
1606
+ tag.tagName = token.value;
1607
+ }
1608
+ tag.end.column += token.value.length;
1609
+ for (i++; i < tokens.length; i++) {
1610
+ token = tokens[i];
1611
+ tag.end.column += token.value.length;
1612
+ if (is(token, "tag-close")) {
1613
+ tag.selfClosing = token.value == '/>';
1614
+ break;
1615
+ }
1616
+ }
1617
+ return tag;
1618
+ }
1619
+ else if (is(token, "tag-close")) {
1620
+ tag.selfClosing = token.value == '/>';
1621
+ return tag;
1622
+ }
1623
+ tag.start.column += token.value.length;
1624
+ }
1625
+ return null;
1626
+ };
1627
+ this._findEndTagInLine = function (session, row, tagName, startColumn) {
1628
+ var tokens = session.getTokens(row);
1629
+ var column = 0;
1630
+ for (var i = 0; i < tokens.length; i++) {
1631
+ var token = tokens[i];
1632
+ column += token.value.length;
1633
+ if (column < startColumn - 1)
1634
+ continue;
1635
+ if (is(token, "end-tag-open")) {
1636
+ token = tokens[i + 1];
1637
+ if (is(token, "tag-name") && token.value === "") {
1638
+ token = tokens[i + 2];
1639
+ }
1640
+ if (token && token.value == tagName)
1641
+ return true;
1642
+ }
1643
+ }
1644
+ return false;
1645
+ };
1646
+ this.getFoldWidgetRange = function (session, foldStyle, row) {
1647
+ var firstTag = this._getFirstTagInLine(session, row);
1648
+ if (!firstTag) {
1649
+ return this.getCommentFoldWidget(session, row) && session.getCommentFoldRange(row, session.getLine(row).length);
1650
+ }
1651
+ var tags = session.getMatchingTags({ row: row, column: 0 });
1652
+ if (tags) {
1653
+ return new Range(tags.openTag.end.row, tags.openTag.end.column, tags.closeTag.start.row, tags.closeTag.start.column);
1654
+ }
1655
+ };
1656
+ }).call(FoldMode.prototype);
1657
+
1658
+ });
1659
+
1660
+ ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"], function(require, exports, module){"use strict";
1661
+ var oop = require("../../lib/oop");
1662
+ var Range = require("../../range").Range;
1663
+ var BaseFoldMode = require("./fold_mode").FoldMode;
1664
+ var FoldMode = exports.FoldMode = function (commentRegex) {
1665
+ if (commentRegex) {
1666
+ this.foldingStartMarker = new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/, "|" + commentRegex.start));
1667
+ this.foldingStopMarker = new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/, "|" + commentRegex.end));
1668
+ }
1669
+ };
1670
+ oop.inherits(FoldMode, BaseFoldMode);
1671
+ (function () {
1672
+ this.foldingStartMarker = /([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/;
1673
+ this.foldingStopMarker = /^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/;
1674
+ this.singleLineBlockCommentRe = /^\s*(\/\*).*\*\/\s*$/;
1675
+ this.tripleStarBlockCommentRe = /^\s*(\/\*\*\*).*\*\/\s*$/;
1676
+ this.startRegionRe = /^\s*(\/\*|\/\/)#?region\b/;
1677
+ this._getFoldWidgetBase = this.getFoldWidget;
1678
+ this.getFoldWidget = function (session, foldStyle, row) {
1679
+ var line = session.getLine(row);
1680
+ if (this.singleLineBlockCommentRe.test(line)) {
1681
+ if (!this.startRegionRe.test(line) && !this.tripleStarBlockCommentRe.test(line))
1682
+ return "";
1683
+ }
1684
+ var fw = this._getFoldWidgetBase(session, foldStyle, row);
1685
+ if (!fw && this.startRegionRe.test(line))
1686
+ return "start"; // lineCommentRegionStart
1687
+ return fw;
1688
+ };
1689
+ this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {
1690
+ var line = session.getLine(row);
1691
+ if (this.startRegionRe.test(line))
1692
+ return this.getCommentRegionBlock(session, line, row);
1693
+ var match = line.match(this.foldingStartMarker);
1694
+ if (match) {
1695
+ var i = match.index;
1696
+ if (match[1])
1697
+ return this.openingBracketBlock(session, match[1], row, i);
1698
+ var range = session.getCommentFoldRange(row, i + match[0].length, 1);
1699
+ if (range && !range.isMultiLine()) {
1700
+ if (forceMultiline) {
1701
+ range = this.getSectionRange(session, row);
1702
+ }
1703
+ else if (foldStyle != "all")
1704
+ range = null;
1705
+ }
1706
+ return range;
1707
+ }
1708
+ if (foldStyle === "markbegin")
1709
+ return;
1710
+ var match = line.match(this.foldingStopMarker);
1711
+ if (match) {
1712
+ var i = match.index + match[0].length;
1713
+ if (match[1])
1714
+ return this.closingBracketBlock(session, match[1], row, i);
1715
+ return session.getCommentFoldRange(row, i, -1);
1716
+ }
1717
+ };
1718
+ this.getSectionRange = function (session, row) {
1719
+ var line = session.getLine(row);
1720
+ var startIndent = line.search(/\S/);
1721
+ var startRow = row;
1722
+ var startColumn = line.length;
1723
+ row = row + 1;
1724
+ var endRow = row;
1725
+ var maxRow = session.getLength();
1726
+ while (++row < maxRow) {
1727
+ line = session.getLine(row);
1728
+ var indent = line.search(/\S/);
1729
+ if (indent === -1)
1730
+ continue;
1731
+ if (startIndent > indent)
1732
+ break;
1733
+ var subRange = this.getFoldWidgetRange(session, "all", row);
1734
+ if (subRange) {
1735
+ if (subRange.start.row <= startRow) {
1736
+ break;
1737
+ }
1738
+ else if (subRange.isMultiLine()) {
1739
+ row = subRange.end.row;
1740
+ }
1741
+ else if (startIndent == indent) {
1742
+ break;
1743
+ }
1744
+ }
1745
+ endRow = row;
1746
+ }
1747
+ return new Range(startRow, startColumn, endRow, session.getLine(endRow).length);
1748
+ };
1749
+ this.getCommentRegionBlock = function (session, line, row) {
1750
+ var startColumn = line.search(/\s*$/);
1751
+ var maxRow = session.getLength();
1752
+ var startRow = row;
1753
+ var re = /^\s*(?:\/\*|\/\/|--)#?(end)?region\b/;
1754
+ var depth = 1;
1755
+ while (++row < maxRow) {
1756
+ line = session.getLine(row);
1757
+ var m = re.exec(line);
1758
+ if (!m)
1759
+ continue;
1760
+ if (m[1])
1761
+ depth--;
1762
+ else
1763
+ depth++;
1480
1764
  if (!depth)
1481
1765
  break;
1482
1766
  }
@@ -1489,19 +1773,51 @@ oop.inherits(FoldMode, BaseFoldMode);
1489
1773
 
1490
1774
  });
1491
1775
 
1492
- ace.define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"], function(require, exports, module){"use strict";
1776
+ ace.define("ace/mode/folding/javascript",["require","exports","module","ace/lib/oop","ace/mode/folding/xml","ace/mode/folding/cstyle"], function(require, exports, module){"use strict";
1777
+ var oop = require("../../lib/oop");
1778
+ var XmlFoldMode = require("./xml").FoldMode;
1779
+ var CFoldMode = require("./cstyle").FoldMode;
1780
+ var FoldMode = exports.FoldMode = function (commentRegex) {
1781
+ if (commentRegex) {
1782
+ this.foldingStartMarker = new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/, "|" + commentRegex.start));
1783
+ this.foldingStopMarker = new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/, "|" + commentRegex.end));
1784
+ }
1785
+ this.xmlFoldMode = new XmlFoldMode();
1786
+ };
1787
+ oop.inherits(FoldMode, CFoldMode);
1788
+ (function () {
1789
+ this.getFoldWidgetRangeBase = this.getFoldWidgetRange;
1790
+ this.getFoldWidgetBase = this.getFoldWidget;
1791
+ this.getFoldWidget = function (session, foldStyle, row) {
1792
+ var fw = this.getFoldWidgetBase(session, foldStyle, row);
1793
+ if (!fw) {
1794
+ return this.xmlFoldMode.getFoldWidget(session, foldStyle, row);
1795
+ }
1796
+ return fw;
1797
+ };
1798
+ this.getFoldWidgetRange = function (session, foldStyle, row, forceMultiline) {
1799
+ var range = this.getFoldWidgetRangeBase(session, foldStyle, row, forceMultiline);
1800
+ if (range)
1801
+ return range;
1802
+ return this.xmlFoldMode.getFoldWidgetRange(session, foldStyle, row);
1803
+ };
1804
+ }).call(FoldMode.prototype);
1805
+
1806
+ });
1807
+
1808
+ ace.define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/javascript","ace/mode/folding/javascript"], function(require, exports, module){"use strict";
1493
1809
  var oop = require("../lib/oop");
1494
1810
  var TextMode = require("./text").Mode;
1495
1811
  var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules;
1496
1812
  var MatchingBraceOutdent = require("./matching_brace_outdent").MatchingBraceOutdent;
1497
1813
  var WorkerClient = require("../worker/worker_client").WorkerClient;
1498
- var CstyleBehaviour = require("./behaviour/cstyle").CstyleBehaviour;
1499
- var CStyleFoldMode = require("./folding/cstyle").FoldMode;
1814
+ var JavaScriptBehaviour = require("./behaviour/javascript").JavaScriptBehaviour;
1815
+ var JavaScriptFoldMode = require("./folding/javascript").FoldMode;
1500
1816
  var Mode = function () {
1501
1817
  this.HighlightRules = JavaScriptHighlightRules;
1502
1818
  this.$outdent = new MatchingBraceOutdent();
1503
- this.$behaviour = new CstyleBehaviour();
1504
- this.foldingRules = new CStyleFoldMode();
1819
+ this.$behaviour = new JavaScriptBehaviour();
1820
+ this.foldingRules = new JavaScriptFoldMode();
1505
1821
  };
1506
1822
  oop.inherits(Mode, TextMode);
1507
1823
  (function () {
@@ -1529,13 +1845,6 @@ oop.inherits(Mode, TextMode);
1529
1845
  if (endState == "start" || endState == "no_regex") {
1530
1846
  return "";
1531
1847
  }
1532
- var match = line.match(/^\s*(\/?)\*/);
1533
- if (match) {
1534
- if (match[1]) {
1535
- indent += " ";
1536
- }
1537
- indent += "* ";
1538
- }
1539
1848
  }
1540
1849
  return indent;
1541
1850
  };
@@ -1861,154 +2170,6 @@ exports.Mode = Mode;
1861
2170
 
1862
2171
  });
1863
2172
 
1864
- ace.define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"], function(require, exports, module){"use strict";
1865
- var oop = require("../../lib/oop");
1866
- var Behaviour = require("../behaviour").Behaviour;
1867
- var TokenIterator = require("../../token_iterator").TokenIterator;
1868
- var lang = require("../../lib/lang");
1869
- function is(token, type) {
1870
- return token && token.type.lastIndexOf(type + ".xml") > -1;
1871
- }
1872
- var XmlBehaviour = function () {
1873
- this.add("string_dquotes", "insertion", function (state, action, editor, session, text) {
1874
- if (text == '"' || text == "'") {
1875
- var quote = text;
1876
- var selected = session.doc.getTextRange(editor.getSelectionRange());
1877
- if (selected !== "" && selected !== "'" && selected != '"' && editor.getWrapBehavioursEnabled()) {
1878
- return {
1879
- text: quote + selected + quote,
1880
- selection: false
1881
- };
1882
- }
1883
- var cursor = editor.getCursorPosition();
1884
- var line = session.doc.getLine(cursor.row);
1885
- var rightChar = line.substring(cursor.column, cursor.column + 1);
1886
- var iterator = new TokenIterator(session, cursor.row, cursor.column);
1887
- var token = iterator.getCurrentToken();
1888
- if (rightChar == quote && (is(token, "attribute-value") || is(token, "string"))) {
1889
- return {
1890
- text: "",
1891
- selection: [1, 1]
1892
- };
1893
- }
1894
- if (!token)
1895
- token = iterator.stepBackward();
1896
- if (!token)
1897
- return;
1898
- while (is(token, "tag-whitespace") || is(token, "whitespace")) {
1899
- token = iterator.stepBackward();
1900
- }
1901
- var rightSpace = !rightChar || rightChar.match(/\s/);
1902
- if (is(token, "attribute-equals") && (rightSpace || rightChar == '>') || (is(token, "decl-attribute-equals") && (rightSpace || rightChar == '?'))) {
1903
- return {
1904
- text: quote + quote,
1905
- selection: [1, 1]
1906
- };
1907
- }
1908
- }
1909
- });
1910
- this.add("string_dquotes", "deletion", function (state, action, editor, session, range) {
1911
- var selected = session.doc.getTextRange(range);
1912
- if (!range.isMultiLine() && (selected == '"' || selected == "'")) {
1913
- var line = session.doc.getLine(range.start.row);
1914
- var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
1915
- if (rightChar == selected) {
1916
- range.end.column++;
1917
- return range;
1918
- }
1919
- }
1920
- });
1921
- this.add("autoclosing", "insertion", function (state, action, editor, session, text) {
1922
- if (text == '>') {
1923
- var position = editor.getSelectionRange().start;
1924
- var iterator = new TokenIterator(session, position.row, position.column);
1925
- var token = iterator.getCurrentToken() || iterator.stepBackward();
1926
- if (!token || !(is(token, "tag-name") || is(token, "tag-whitespace") || is(token, "attribute-name") || is(token, "attribute-equals") || is(token, "attribute-value")))
1927
- return;
1928
- if (is(token, "reference.attribute-value"))
1929
- return;
1930
- if (is(token, "attribute-value")) {
1931
- var tokenEndColumn = iterator.getCurrentTokenColumn() + token.value.length;
1932
- if (position.column < tokenEndColumn)
1933
- return;
1934
- if (position.column == tokenEndColumn) {
1935
- var nextToken = iterator.stepForward();
1936
- if (nextToken && is(nextToken, "attribute-value"))
1937
- return;
1938
- iterator.stepBackward();
1939
- }
1940
- }
1941
- if (/^\s*>/.test(session.getLine(position.row).slice(position.column)))
1942
- return;
1943
- while (!is(token, "tag-name")) {
1944
- token = iterator.stepBackward();
1945
- if (token.value == "<") {
1946
- token = iterator.stepForward();
1947
- break;
1948
- }
1949
- }
1950
- var tokenRow = iterator.getCurrentTokenRow();
1951
- var tokenColumn = iterator.getCurrentTokenColumn();
1952
- if (is(iterator.stepBackward(), "end-tag-open"))
1953
- return;
1954
- var element = token.value;
1955
- if (tokenRow == position.row)
1956
- element = element.substring(0, position.column - tokenColumn);
1957
- if (this.voidElements.hasOwnProperty(element.toLowerCase()))
1958
- return;
1959
- return {
1960
- text: ">" + "</" + element + ">",
1961
- selection: [1, 1]
1962
- };
1963
- }
1964
- });
1965
- this.add("autoindent", "insertion", function (state, action, editor, session, text) {
1966
- if (text == "\n") {
1967
- var cursor = editor.getCursorPosition();
1968
- var line = session.getLine(cursor.row);
1969
- var iterator = new TokenIterator(session, cursor.row, cursor.column);
1970
- var token = iterator.getCurrentToken();
1971
- if (token && token.type.indexOf("tag-close") !== -1) {
1972
- if (token.value == "/>")
1973
- return;
1974
- while (token && token.type.indexOf("tag-name") === -1) {
1975
- token = iterator.stepBackward();
1976
- }
1977
- if (!token) {
1978
- return;
1979
- }
1980
- var tag = token.value;
1981
- var row = iterator.getCurrentTokenRow();
1982
- token = iterator.stepBackward();
1983
- if (!token || token.type.indexOf("end-tag") !== -1) {
1984
- return;
1985
- }
1986
- if (this.voidElements && !this.voidElements[tag]) {
1987
- var nextToken = session.getTokenAt(cursor.row, cursor.column + 1);
1988
- var line = session.getLine(row);
1989
- var nextIndent = this.$getIndent(line);
1990
- var indent = nextIndent + session.getTabString();
1991
- if (nextToken && nextToken.value === "</") {
1992
- return {
1993
- text: "\n" + indent + "\n" + nextIndent,
1994
- selection: [1, indent.length, 1, indent.length]
1995
- };
1996
- }
1997
- else {
1998
- return {
1999
- text: "\n" + indent
2000
- };
2001
- }
2002
- }
2003
- }
2004
- }
2005
- });
2006
- };
2007
- oop.inherits(XmlBehaviour, Behaviour);
2008
- exports.XmlBehaviour = XmlBehaviour;
2009
-
2010
- });
2011
-
2012
2173
  ace.define("ace/mode/folding/mixed",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"], function(require, exports, module){"use strict";
2013
2174
  var oop = require("../../lib/oop");
2014
2175
  var BaseFoldMode = require("./fold_mode").FoldMode;
@@ -2048,107 +2209,6 @@ oop.inherits(FoldMode, BaseFoldMode);
2048
2209
 
2049
2210
  });
2050
2211
 
2051
- ace.define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"], function(require, exports, module){"use strict";
2052
- var oop = require("../../lib/oop");
2053
- var Range = require("../../range").Range;
2054
- var BaseFoldMode = require("./fold_mode").FoldMode;
2055
- var FoldMode = exports.FoldMode = function (voidElements, optionalEndTags) {
2056
- BaseFoldMode.call(this);
2057
- this.voidElements = voidElements || {};
2058
- this.optionalEndTags = oop.mixin({}, this.voidElements);
2059
- if (optionalEndTags)
2060
- oop.mixin(this.optionalEndTags, optionalEndTags);
2061
- };
2062
- oop.inherits(FoldMode, BaseFoldMode);
2063
- var Tag = function () {
2064
- this.tagName = "";
2065
- this.closing = false;
2066
- this.selfClosing = false;
2067
- this.start = { row: 0, column: 0 };
2068
- this.end = { row: 0, column: 0 };
2069
- };
2070
- function is(token, type) {
2071
- return token.type.lastIndexOf(type + ".xml") > -1;
2072
- }
2073
- (function () {
2074
- this.getFoldWidget = function (session, foldStyle, row) {
2075
- var tag = this._getFirstTagInLine(session, row);
2076
- if (!tag)
2077
- return this.getCommentFoldWidget(session, row);
2078
- if (tag.closing || (!tag.tagName && tag.selfClosing))
2079
- return foldStyle === "markbeginend" ? "end" : "";
2080
- if (!tag.tagName || tag.selfClosing || this.voidElements.hasOwnProperty(tag.tagName.toLowerCase()))
2081
- return "";
2082
- if (this._findEndTagInLine(session, row, tag.tagName, tag.end.column))
2083
- return "";
2084
- return "start";
2085
- };
2086
- this.getCommentFoldWidget = function (session, row) {
2087
- if (/comment/.test(session.getState(row)) && /<!-/.test(session.getLine(row)))
2088
- return "start";
2089
- return "";
2090
- };
2091
- this._getFirstTagInLine = function (session, row) {
2092
- var tokens = session.getTokens(row);
2093
- var tag = new Tag();
2094
- for (var i = 0; i < tokens.length; i++) {
2095
- var token = tokens[i];
2096
- if (is(token, "tag-open")) {
2097
- tag.end.column = tag.start.column + token.value.length;
2098
- tag.closing = is(token, "end-tag-open");
2099
- token = tokens[++i];
2100
- if (!token)
2101
- return null;
2102
- tag.tagName = token.value;
2103
- tag.end.column += token.value.length;
2104
- for (i++; i < tokens.length; i++) {
2105
- token = tokens[i];
2106
- tag.end.column += token.value.length;
2107
- if (is(token, "tag-close")) {
2108
- tag.selfClosing = token.value == '/>';
2109
- break;
2110
- }
2111
- }
2112
- return tag;
2113
- }
2114
- else if (is(token, "tag-close")) {
2115
- tag.selfClosing = token.value == '/>';
2116
- return tag;
2117
- }
2118
- tag.start.column += token.value.length;
2119
- }
2120
- return null;
2121
- };
2122
- this._findEndTagInLine = function (session, row, tagName, startColumn) {
2123
- var tokens = session.getTokens(row);
2124
- var column = 0;
2125
- for (var i = 0; i < tokens.length; i++) {
2126
- var token = tokens[i];
2127
- column += token.value.length;
2128
- if (column < startColumn)
2129
- continue;
2130
- if (is(token, "end-tag-open")) {
2131
- token = tokens[i + 1];
2132
- if (token && token.value == tagName)
2133
- return true;
2134
- }
2135
- }
2136
- return false;
2137
- };
2138
- this.getFoldWidgetRange = function (session, foldStyle, row) {
2139
- var tags = session.getMatchingTags({ row: row, column: 0 });
2140
- if (tags) {
2141
- return new Range(tags.openTag.end.row, tags.openTag.end.column, tags.closeTag.start.row, tags.closeTag.start.column);
2142
- }
2143
- else {
2144
- return this.getCommentFoldWidget(session, row)
2145
- && session.getCommentFoldRange(row, session.getLine(row).length);
2146
- }
2147
- };
2148
- }).call(FoldMode.prototype);
2149
-
2150
- });
2151
-
2152
2212
  ace.define("ace/mode/folding/html",["require","exports","module","ace/lib/oop","ace/mode/folding/mixed","ace/mode/folding/xml","ace/mode/folding/cstyle"], function(require, exports, module){"use strict";
2153
2213
  var oop = require("../../lib/oop");
2154
2214
  var MixedFoldMode = require("./mixed").FoldMode;
@@ -2670,13 +2730,13 @@ var ShHighlightRules = function () {
2670
2730
  token: "support.function",
2671
2731
  regex: fileDescriptor
2672
2732
  }, {
2673
- token: "string",
2733
+ token: "string", // ' string
2674
2734
  start: "'", end: "'"
2675
2735
  }, {
2676
- token: "constant.numeric",
2736
+ token: "constant.numeric", // float
2677
2737
  regex: floatNumber
2678
2738
  }, {
2679
- token: "constant.numeric",
2739
+ token: "constant.numeric", // integer
2680
2740
  regex: integer + "\\b"
2681
2741
  }, {
2682
2742
  token: keywordMapper,