ace-rails-ap 2.0.1 → 3.0.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.
- checksums.yaml +4 -4
- data/README.md +5 -4
- data/lib/ace/rails/version.rb +1 -1
- data/vendor/assets/javascripts/ace/ace.js +14194 -13349
- data/vendor/assets/javascripts/ace/ext-beautify.js +335 -0
- data/vendor/assets/javascripts/ace/ext-chromevox.js +6 -1
- data/vendor/assets/javascripts/ace/ext-elastic_tabstops_lite.js +8 -33
- data/vendor/assets/javascripts/ace/ext-emmet.js +487 -424
- data/vendor/assets/javascripts/ace/ext-error_marker.js +6 -0
- data/vendor/assets/javascripts/ace/ext-keybinding_menu.js +45 -72
- data/vendor/assets/javascripts/ace/ext-language_tools.js +734 -578
- data/vendor/assets/javascripts/ace/ext-linking.js +53 -0
- data/vendor/assets/javascripts/ace/ext-modelist.js +25 -10
- data/vendor/assets/javascripts/ace/ext-old_ie.js +93 -120
- data/vendor/assets/javascripts/ace/ext-searchbox.js +8 -41
- data/vendor/assets/javascripts/ace/ext-settings_menu.js +229 -234
- data/vendor/assets/javascripts/ace/ext-spellcheck.js +7 -3
- data/vendor/assets/javascripts/ace/ext-split.js +13 -37
- data/vendor/assets/javascripts/ace/ext-static_highlight.js +16 -39
- data/vendor/assets/javascripts/ace/ext-statusbar.js +8 -2
- data/vendor/assets/javascripts/ace/ext-textarea.js +254 -99
- data/vendor/assets/javascripts/ace/ext-themelist.js +13 -40
- data/vendor/assets/javascripts/ace/ext-whitespace.js +17 -41
- data/vendor/assets/javascripts/ace/keybinding-emacs.js +803 -788
- data/vendor/assets/javascripts/ace/keybinding-vim.js +1559 -1560
- data/vendor/assets/javascripts/ace/mode-abap.js +52 -83
- data/vendor/assets/javascripts/ace/mode-actionscript.js +27 -63
- data/vendor/assets/javascripts/ace/mode-ada.js +27 -58
- data/vendor/assets/javascripts/ace/mode-apache_conf.js +310 -0
- data/vendor/assets/javascripts/ace/mode-applescript.js +226 -0
- data/vendor/assets/javascripts/ace/mode-asciidoc.js +39 -70
- data/vendor/assets/javascripts/ace/mode-assembly_x86.js +26 -58
- data/vendor/assets/javascripts/ace/mode-autohotkey.js +27 -63
- data/vendor/assets/javascripts/ace/mode-batchfile.js +27 -63
- data/vendor/assets/javascripts/ace/mode-c9search.js +92 -112
- data/vendor/assets/javascripts/ace/mode-c_cpp.js +224 -223
- data/vendor/assets/javascripts/ace/mode-cirru.js +202 -0
- data/vendor/assets/javascripts/ace/mode-clojure.js +98 -92
- data/vendor/assets/javascripts/ace/mode-cobol.js +27 -58
- data/vendor/assets/javascripts/ace/mode-coffee.js +90 -122
- data/vendor/assets/javascripts/ace/mode-coldfusion.js +1908 -1464
- data/vendor/assets/javascripts/ace/mode-csharp.js +291 -264
- data/vendor/assets/javascripts/ace/mode-css.js +266 -267
- data/vendor/assets/javascripts/ace/mode-curly.js +796 -815
- data/vendor/assets/javascripts/ace/mode-d.js +64 -95
- data/vendor/assets/javascripts/ace/mode-dart.js +254 -256
- data/vendor/assets/javascripts/ace/mode-diff.js +27 -58
- data/vendor/assets/javascripts/ace/mode-django.js +856 -866
- data/vendor/assets/javascripts/ace/mode-dockerfile.js +759 -0
- data/vendor/assets/javascripts/ace/mode-dot.js +106 -106
- data/vendor/assets/javascripts/ace/mode-eiffel.js +135 -0
- data/vendor/assets/javascripts/ace/mode-ejs.js +931 -938
- data/vendor/assets/javascripts/ace/mode-erlang.js +27 -58
- data/vendor/assets/javascripts/ace/mode-forth.js +27 -63
- data/vendor/assets/javascripts/ace/mode-ftl.js +457 -508
- data/vendor/assets/javascripts/ace/mode-gcode.js +85 -0
- data/vendor/assets/javascripts/ace/mode-gherkin.js +129 -0
- data/vendor/assets/javascripts/ace/mode-gitignore.js +50 -0
- data/vendor/assets/javascripts/ace/mode-glsl.js +252 -248
- data/vendor/assets/javascripts/ace/mode-golang.js +206 -179
- data/vendor/assets/javascripts/ace/mode-groovy.js +310 -242
- data/vendor/assets/javascripts/ace/mode-haml.js +156 -190
- data/vendor/assets/javascripts/ace/mode-handlebars.js +815 -784
- data/vendor/assets/javascripts/ace/mode-haskell.js +27 -63
- data/vendor/assets/javascripts/ace/mode-haxe.js +206 -176
- data/vendor/assets/javascripts/ace/mode-html.js +779 -792
- data/vendor/assets/javascripts/ace/mode-html_ruby.js +916 -923
- data/vendor/assets/javascripts/ace/mode-ini.js +27 -58
- data/vendor/assets/javascripts/ace/mode-io.js +201 -0
- data/vendor/assets/javascripts/ace/mode-jack.js +169 -170
- data/vendor/assets/javascripts/ace/mode-jade.js +722 -774
- data/vendor/assets/javascripts/ace/mode-java.js +310 -245
- data/vendor/assets/javascripts/ace/mode-javascript.js +285 -247
- data/vendor/assets/javascripts/ace/mode-json.js +183 -184
- data/vendor/assets/javascripts/ace/mode-jsoniq.js +3211 -1274
- data/vendor/assets/javascripts/ace/mode-jsp.js +481 -504
- data/vendor/assets/javascripts/ace/mode-jsx.js +206 -176
- data/vendor/assets/javascripts/ace/mode-julia.js +33 -69
- data/vendor/assets/javascripts/ace/mode-latex.js +74 -41
- data/vendor/assets/javascripts/ace/mode-less.js +250 -251
- data/vendor/assets/javascripts/ace/mode-liquid.js +424 -475
- data/vendor/assets/javascripts/ace/mode-lisp.js +24 -57
- data/vendor/assets/javascripts/ace/mode-livescript.js +42 -41
- data/vendor/assets/javascripts/ace/mode-logiql.js +229 -230
- data/vendor/assets/javascripts/ace/mode-lsl.js +200 -441
- data/vendor/assets/javascripts/ace/mode-lua.js +136 -167
- data/vendor/assets/javascripts/ace/mode-luapage.js +904 -884
- data/vendor/assets/javascripts/ace/mode-lucene.js +22 -17
- data/vendor/assets/javascripts/ace/mode-makefile.js +162 -137
- data/vendor/assets/javascripts/ace/mode-markdown.js +846 -854
- data/vendor/assets/javascripts/ace/mode-matlab.js +98 -72
- data/vendor/assets/javascripts/ace/mode-mel.js +569 -0
- data/vendor/assets/javascripts/ace/mode-mushcode.js +84 -115
- data/vendor/assets/javascripts/ace/mode-mysql.js +49 -80
- data/vendor/assets/javascripts/ace/mode-nix.js +252 -256
- data/vendor/assets/javascripts/ace/mode-objectivec.js +242 -274
- data/vendor/assets/javascripts/ace/mode-ocaml.js +71 -102
- data/vendor/assets/javascripts/ace/mode-pascal.js +32 -68
- data/vendor/assets/javascripts/ace/mode-perl.js +67 -98
- data/vendor/assets/javascripts/ace/mode-pgsql.js +990 -982
- data/vendor/assets/javascripts/ace/mode-php.js +1878 -1900
- data/vendor/assets/javascripts/ace/mode-plain_text.js +3 -34
- data/vendor/assets/javascripts/ace/mode-powershell.js +181 -151
- data/vendor/assets/javascripts/ace/mode-praat.js +418 -0
- data/vendor/assets/javascripts/ace/mode-prolog.js +27 -63
- data/vendor/assets/javascripts/ace/mode-properties.js +20 -48
- data/vendor/assets/javascripts/ace/mode-protobuf.js +252 -259
- data/vendor/assets/javascripts/ace/mode-python.js +84 -115
- data/vendor/assets/javascripts/ace/mode-r.js +105 -140
- data/vendor/assets/javascripts/ace/mode-rdoc.js +84 -89
- data/vendor/assets/javascripts/ace/mode-rhtml.js +892 -908
- data/vendor/assets/javascripts/ace/mode-ruby.js +434 -98
- data/vendor/assets/javascripts/ace/mode-rust.js +27 -63
- data/vendor/assets/javascripts/ace/mode-sass.js +75 -106
- data/vendor/assets/javascripts/ace/mode-scad.js +219 -220
- data/vendor/assets/javascripts/ace/mode-scala.js +311 -243
- data/vendor/assets/javascripts/ace/mode-scheme.js +24 -60
- data/vendor/assets/javascripts/ace/mode-scss.js +250 -251
- data/vendor/assets/javascripts/ace/mode-sh.js +506 -118
- data/vendor/assets/javascripts/ace/mode-sjs.js +314 -280
- data/vendor/assets/javascripts/ace/mode-smarty.js +2474 -0
- data/vendor/assets/javascripts/ace/mode-snippets.js +89 -89
- data/vendor/assets/javascripts/ace/mode-soy_template.js +792 -811
- data/vendor/assets/javascripts/ace/mode-space.js +22 -23
- data/vendor/assets/javascripts/ace/mode-sql.js +31 -58
- data/vendor/assets/javascripts/ace/mode-stylus.js +161 -197
- data/vendor/assets/javascripts/ace/mode-svg.js +906 -836
- data/vendor/assets/javascripts/ace/mode-tcl.js +61 -92
- data/vendor/assets/javascripts/ace/mode-tex.js +36 -73
- data/vendor/assets/javascripts/ace/mode-text.js +1 -0
- data/vendor/assets/javascripts/ace/mode-textile.js +41 -72
- data/vendor/assets/javascripts/ace/mode-toml.js +26 -62
- data/vendor/assets/javascripts/ace/mode-twig.js +1196 -892
- data/vendor/assets/javascripts/ace/mode-typescript.js +313 -277
- data/vendor/assets/javascripts/ace/mode-vala.js +982 -0
- data/vendor/assets/javascripts/ace/mode-vbscript.js +25 -62
- data/vendor/assets/javascripts/ace/mode-velocity.js +2251 -1242
- data/vendor/assets/javascripts/ace/mode-verilog.js +27 -59
- data/vendor/assets/javascripts/ace/mode-vhdl.js +26 -55
- data/vendor/assets/javascripts/ace/mode-xml.js +319 -644
- data/vendor/assets/javascripts/ace/mode-xquery.js +2503 -588
- data/vendor/assets/javascripts/ace/mode-yaml.js +56 -90
- data/vendor/assets/javascripts/ace/snippets/abap.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/actionscript.js +159 -0
- data/vendor/assets/javascripts/ace/snippets/ada.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/apache_conf.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/applescript.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/asciidoc.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/assembly_x86.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/autohotkey.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/batchfile.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/c9search.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/c_cpp.js +138 -0
- data/vendor/assets/javascripts/ace/snippets/cirru.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/clojure.js +97 -0
- data/vendor/assets/javascripts/ace/snippets/cobol.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/coffee.js +102 -0
- data/vendor/assets/javascripts/ace/snippets/coldfusion.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/csharp.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/css.js +974 -0
- data/vendor/assets/javascripts/ace/snippets/curly.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/d.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/dart.js +90 -0
- data/vendor/assets/javascripts/ace/snippets/diff.js +18 -0
- data/vendor/assets/javascripts/ace/snippets/django.js +115 -0
- data/vendor/assets/javascripts/ace/snippets/dockerfile.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/dot.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/eiffel.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/ejs.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/erlang.js +167 -0
- data/vendor/assets/javascripts/ace/snippets/forth.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/ftl.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/gcode.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/gherkin.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/gitignore.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/glsl.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/golang.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/groovy.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/haml.js +27 -0
- data/vendor/assets/javascripts/ace/snippets/handlebars.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/haskell.js +89 -0
- data/vendor/assets/javascripts/ace/snippets/haxe.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/html.js +835 -0
- data/vendor/assets/javascripts/ace/snippets/html_ruby.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/ini.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/io.js +69 -0
- data/vendor/assets/javascripts/ace/snippets/jack.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/jade.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/java.js +241 -0
- data/vendor/assets/javascripts/ace/snippets/javascript.js +189 -0
- data/vendor/assets/javascripts/ace/snippets/json.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/jsoniq.js +68 -0
- data/vendor/assets/javascripts/ace/snippets/jsp.js +106 -0
- data/vendor/assets/javascripts/ace/snippets/jsx.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/julia.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/latex.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/less.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/liquid.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/lisp.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/livescript.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/logiql.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/lsl.js +1073 -0
- data/vendor/assets/javascripts/ace/snippets/lua.js +28 -0
- data/vendor/assets/javascripts/ace/snippets/luapage.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/lucene.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/makefile.js +11 -0
- data/vendor/assets/javascripts/ace/snippets/markdown.js +95 -0
- data/vendor/assets/javascripts/ace/snippets/matlab.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/mel.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/mushcode.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/mysql.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/nix.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/objectivec.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/ocaml.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/pascal.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/perl.js +354 -0
- data/vendor/assets/javascripts/ace/snippets/pgsql.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/php.js +283 -0
- data/vendor/assets/javascripts/ace/snippets/plain_text.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/powershell.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/praat.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/prolog.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/properties.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/protobuf.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/python.js +165 -0
- data/vendor/assets/javascripts/ace/snippets/r.js +128 -0
- data/vendor/assets/javascripts/ace/snippets/rdoc.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/rhtml.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/ruby.js +935 -0
- data/vendor/assets/javascripts/ace/snippets/rust.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/sass.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/scad.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/scala.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/scheme.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/scss.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/sh.js +90 -0
- data/vendor/assets/javascripts/ace/snippets/sjs.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/smarty.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/snippets.js +16 -0
- data/vendor/assets/javascripts/ace/snippets/soy_template.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/space.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/sql.js +33 -0
- data/vendor/assets/javascripts/ace/snippets/stylus.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/svg.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/tcl.js +99 -0
- data/vendor/assets/javascripts/ace/snippets/tex.js +197 -0
- data/vendor/assets/javascripts/ace/snippets/text.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/textile.js +37 -0
- data/vendor/assets/javascripts/ace/snippets/toml.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/twig.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/typescript.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/vala.js +193 -0
- data/vendor/assets/javascripts/ace/snippets/vbscript.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/velocity.js +36 -0
- data/vendor/assets/javascripts/ace/snippets/verilog.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/vhdl.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/xml.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/xquery.js +68 -0
- data/vendor/assets/javascripts/ace/snippets/yaml.js +7 -0
- data/vendor/assets/javascripts/ace/theme-ambiance.js +4 -24
- data/vendor/assets/javascripts/ace/theme-chaos.js +2 -25
- data/vendor/assets/javascripts/ace/theme-chrome.js +2 -31
- data/vendor/assets/javascripts/ace/theme-clouds.js +1 -31
- data/vendor/assets/javascripts/ace/theme-clouds_midnight.js +1 -31
- data/vendor/assets/javascripts/ace/theme-cobalt.js +1 -31
- data/vendor/assets/javascripts/ace/theme-crimson_editor.js +1 -31
- data/vendor/assets/javascripts/ace/theme-dawn.js +1 -31
- data/vendor/assets/javascripts/ace/theme-dreamweaver.js +5 -31
- data/vendor/assets/javascripts/ace/theme-eclipse.js +7 -33
- data/vendor/assets/javascripts/ace/theme-github.js +2 -35
- data/vendor/assets/javascripts/ace/theme-idle_fingers.js +1 -31
- data/vendor/assets/javascripts/ace/theme-katzenmilch.js +119 -0
- data/vendor/assets/javascripts/ace/theme-kr.js +1 -31
- data/vendor/assets/javascripts/ace/theme-kr_theme.js +57 -141
- data/vendor/assets/javascripts/ace/theme-kuroir.js +59 -0
- data/vendor/assets/javascripts/ace/theme-merbivore.js +1 -31
- data/vendor/assets/javascripts/ace/theme-merbivore_soft.js +1 -31
- data/vendor/assets/javascripts/ace/theme-mono_industrial.js +1 -31
- data/vendor/assets/javascripts/ace/theme-monokai.js +1 -31
- data/vendor/assets/javascripts/ace/theme-pastel_on_dark.js +1 -31
- data/vendor/assets/javascripts/ace/theme-solarized_dark.js +1 -31
- data/vendor/assets/javascripts/ace/theme-solarized_light.js +1 -31
- data/vendor/assets/javascripts/ace/theme-terminal.js +1 -31
- data/vendor/assets/javascripts/ace/theme-textmate.js +3 -32
- data/vendor/assets/javascripts/ace/theme-tomorrow.js +1 -31
- data/vendor/assets/javascripts/ace/theme-tomorrow_night.js +1 -31
- data/vendor/assets/javascripts/ace/theme-tomorrow_night_blue.js +1 -31
- data/vendor/assets/javascripts/ace/theme-tomorrow_night_bright.js +1 -31
- data/vendor/assets/javascripts/ace/theme-tomorrow_night_eighties.js +1 -31
- data/vendor/assets/javascripts/ace/theme-twilight.js +1 -31
- data/vendor/assets/javascripts/ace/theme-vibrant_ink.js +1 -31
- data/vendor/assets/javascripts/ace/theme-xcode.js +2 -33
- data/vendor/assets/javascripts/ace/worker-coffee.js +5026 -5008
- data/vendor/assets/javascripts/ace/worker-css.js +5489 -5134
- data/vendor/assets/javascripts/ace/worker-html.js +11517 -0
- data/vendor/assets/javascripts/ace/worker-javascript.js +9810 -9501
- data/vendor/assets/javascripts/ace/worker-json.js +1583 -1564
- data/vendor/assets/javascripts/ace/worker-lua.js +2631 -2612
- data/vendor/assets/javascripts/ace/worker-php.js +2385 -2341
- data/vendor/assets/javascripts/ace/worker-xquery.js +31643 -3993
- metadata +147 -11
|
@@ -1,60 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* Copyright (c) 2012, Ajax.org B.V.
|
|
5
|
-
* All rights reserved.
|
|
6
|
-
*
|
|
7
|
-
* Redistribution and use in source and binary forms, with or without
|
|
8
|
-
* modification, are permitted provided that the following conditions are met:
|
|
9
|
-
* * Redistributions of source code must retain the above copyright
|
|
10
|
-
* notice, this list of conditions and the following disclaimer.
|
|
11
|
-
* * Redistributions in binary form must reproduce the above copyright
|
|
12
|
-
* notice, this list of conditions and the following disclaimer in the
|
|
13
|
-
* documentation and/or other materials provided with the distribution.
|
|
14
|
-
* * Neither the name of Ajax.org B.V. nor the
|
|
15
|
-
* names of its contributors may be used to endorse or promote products
|
|
16
|
-
* derived from this software without specific prior written permission.
|
|
17
|
-
*
|
|
18
|
-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
19
|
-
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
20
|
-
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
21
|
-
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
|
|
22
|
-
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
23
|
-
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
24
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
25
|
-
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
26
|
-
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
27
|
-
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
* ***** END LICENSE BLOCK ***** */
|
|
31
|
-
|
|
32
|
-
define('ace/mode/lisp', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text', 'ace/tokenizer', 'ace/mode/lisp_highlight_rules'], function(require, exports, module) {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
var oop = require("../lib/oop");
|
|
36
|
-
var TextMode = require("./text").Mode;
|
|
37
|
-
var Tokenizer = require("../tokenizer").Tokenizer;
|
|
38
|
-
var LispHighlightRules = require("./lisp_highlight_rules").LispHighlightRules;
|
|
39
|
-
|
|
40
|
-
var Mode = function() {
|
|
41
|
-
this.HighlightRules = LispHighlightRules;
|
|
42
|
-
};
|
|
43
|
-
oop.inherits(Mode, TextMode);
|
|
44
|
-
|
|
45
|
-
(function() {
|
|
46
|
-
|
|
47
|
-
this.lineCommentStart = ";";
|
|
48
|
-
|
|
49
|
-
this.$id = "ace/mode/lisp";
|
|
50
|
-
}).call(Mode.prototype);
|
|
51
|
-
|
|
52
|
-
exports.Mode = Mode;
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
define('ace/mode/lisp_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
|
|
57
|
-
|
|
1
|
+
define("ace/mode/lisp_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(require, exports, module) {
|
|
2
|
+
"use strict";
|
|
58
3
|
|
|
59
4
|
var oop = require("../lib/oop");
|
|
60
5
|
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
|
|
@@ -135,3 +80,25 @@ oop.inherits(LispHighlightRules, TextHighlightRules);
|
|
|
135
80
|
|
|
136
81
|
exports.LispHighlightRules = LispHighlightRules;
|
|
137
82
|
});
|
|
83
|
+
|
|
84
|
+
define("ace/mode/lisp",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/lisp_highlight_rules"], function(require, exports, module) {
|
|
85
|
+
"use strict";
|
|
86
|
+
|
|
87
|
+
var oop = require("../lib/oop");
|
|
88
|
+
var TextMode = require("./text").Mode;
|
|
89
|
+
var LispHighlightRules = require("./lisp_highlight_rules").LispHighlightRules;
|
|
90
|
+
|
|
91
|
+
var Mode = function() {
|
|
92
|
+
this.HighlightRules = LispHighlightRules;
|
|
93
|
+
};
|
|
94
|
+
oop.inherits(Mode, TextMode);
|
|
95
|
+
|
|
96
|
+
(function() {
|
|
97
|
+
|
|
98
|
+
this.lineCommentStart = ";";
|
|
99
|
+
|
|
100
|
+
this.$id = "ace/mode/lisp";
|
|
101
|
+
}).call(Mode.prototype);
|
|
102
|
+
|
|
103
|
+
exports.Mode = Mode;
|
|
104
|
+
});
|
|
@@ -1,4 +1,44 @@
|
|
|
1
|
-
define(
|
|
1
|
+
define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"], function(require, exports, module) {
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var Range = require("../range").Range;
|
|
5
|
+
|
|
6
|
+
var MatchingBraceOutdent = function() {};
|
|
7
|
+
|
|
8
|
+
(function() {
|
|
9
|
+
|
|
10
|
+
this.checkOutdent = function(line, input) {
|
|
11
|
+
if (! /^\s+$/.test(line))
|
|
12
|
+
return false;
|
|
13
|
+
|
|
14
|
+
return /^\s*\}/.test(input);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
this.autoOutdent = function(doc, row) {
|
|
18
|
+
var line = doc.getLine(row);
|
|
19
|
+
var match = line.match(/^(\s*\})/);
|
|
20
|
+
|
|
21
|
+
if (!match) return 0;
|
|
22
|
+
|
|
23
|
+
var column = match[1].length;
|
|
24
|
+
var openBracePos = doc.findMatchingBracket({row: row, column: column});
|
|
25
|
+
|
|
26
|
+
if (!openBracePos || openBracePos.row == row) return 0;
|
|
27
|
+
|
|
28
|
+
var indent = this.$getIndent(doc.getLine(openBracePos.row));
|
|
29
|
+
doc.replace(new Range(row, 0, row, column-1), indent);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
this.$getIndent = function(line) {
|
|
33
|
+
return line.match(/^\s*/)[0];
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
}).call(MatchingBraceOutdent.prototype);
|
|
37
|
+
|
|
38
|
+
exports.MatchingBraceOutdent = MatchingBraceOutdent;
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
define("ace/mode/livescript",["require","exports","module","ace/tokenizer","ace/mode/matching_brace_outdent","ace/range","ace/mode/text"], function(require, exports, module){
|
|
2
42
|
var identifier, LiveScriptMode, keywordend, stringfill;
|
|
3
43
|
identifier = '(?![\\d\\s])[$\\w\\xAA-\\uFFDC](?:(?!\\s)[$\\w\\xAA-\\uFFDC]|-[A-Za-z])*';
|
|
4
44
|
exports.Mode = LiveScriptMode = (function(superclass){
|
|
@@ -9,6 +49,7 @@ define('ace/mode/livescript', ['require', 'exports', 'module' , 'ace/tokenizer',
|
|
|
9
49
|
if (that = require('../mode/matching_brace_outdent')) {
|
|
10
50
|
this.$outdent = new that.MatchingBraceOutdent;
|
|
11
51
|
}
|
|
52
|
+
this.$id = "ace/mode/livescript";
|
|
12
53
|
}
|
|
13
54
|
indenter = RegExp('(?:[({[=:]|[-~]>|\\b(?:e(?:lse|xport)|d(?:o|efault)|t(?:ry|hen)|finally|import(?:\\s*all)?|const|var|let|new|catch(?:\\s*' + identifier + ')?))\\s*$');
|
|
14
55
|
prototype.getNextLineIndent = function(state, line, tab){
|
|
@@ -246,43 +287,3 @@ function import$(obj, src){
|
|
|
246
287
|
return obj;
|
|
247
288
|
}
|
|
248
289
|
});
|
|
249
|
-
|
|
250
|
-
define('ace/mode/matching_brace_outdent', ['require', 'exports', 'module' , 'ace/range'], function(require, exports, module) {
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
var Range = require("../range").Range;
|
|
254
|
-
|
|
255
|
-
var MatchingBraceOutdent = function() {};
|
|
256
|
-
|
|
257
|
-
(function() {
|
|
258
|
-
|
|
259
|
-
this.checkOutdent = function(line, input) {
|
|
260
|
-
if (! /^\s+$/.test(line))
|
|
261
|
-
return false;
|
|
262
|
-
|
|
263
|
-
return /^\s*\}/.test(input);
|
|
264
|
-
};
|
|
265
|
-
|
|
266
|
-
this.autoOutdent = function(doc, row) {
|
|
267
|
-
var line = doc.getLine(row);
|
|
268
|
-
var match = line.match(/^(\s*\})/);
|
|
269
|
-
|
|
270
|
-
if (!match) return 0;
|
|
271
|
-
|
|
272
|
-
var column = match[1].length;
|
|
273
|
-
var openBracePos = doc.findMatchingBracket({row: row, column: column});
|
|
274
|
-
|
|
275
|
-
if (!openBracePos || openBracePos.row == row) return 0;
|
|
276
|
-
|
|
277
|
-
var indent = this.$getIndent(doc.getLine(openBracePos.row));
|
|
278
|
-
doc.replace(new Range(row, 0, row, column-1), indent);
|
|
279
|
-
};
|
|
280
|
-
|
|
281
|
-
this.$getIndent = function(line) {
|
|
282
|
-
return line.match(/^\s*/)[0];
|
|
283
|
-
};
|
|
284
|
-
|
|
285
|
-
}).call(MatchingBraceOutdent.prototype);
|
|
286
|
-
|
|
287
|
-
exports.MatchingBraceOutdent = MatchingBraceOutdent;
|
|
288
|
-
});
|
|
@@ -1,146 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* Copyright (c) 2012, Ajax.org B.V.
|
|
5
|
-
* All rights reserved.
|
|
6
|
-
*
|
|
7
|
-
* Redistribution and use in source and binary forms, with or without
|
|
8
|
-
* modification, are permitted provided that the following conditions are met:
|
|
9
|
-
* * Redistributions of source code must retain the above copyright
|
|
10
|
-
* notice, this list of conditions and the following disclaimer.
|
|
11
|
-
* * Redistributions in binary form must reproduce the above copyright
|
|
12
|
-
* notice, this list of conditions and the following disclaimer in the
|
|
13
|
-
* documentation and/or other materials provided with the distribution.
|
|
14
|
-
* * Neither the name of Ajax.org B.V. nor the
|
|
15
|
-
* names of its contributors may be used to endorse or promote products
|
|
16
|
-
* derived from this software without specific prior written permission.
|
|
17
|
-
*
|
|
18
|
-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
19
|
-
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
20
|
-
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
21
|
-
* DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
|
|
22
|
-
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
23
|
-
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
24
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
25
|
-
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
26
|
-
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
27
|
-
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
28
|
-
*
|
|
29
|
-
* ***** END LICENSE BLOCK ***** */
|
|
30
|
-
|
|
31
|
-
define('ace/mode/logiql', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text', 'ace/tokenizer', 'ace/mode/logiql_highlight_rules', 'ace/mode/folding/coffee', 'ace/token_iterator', 'ace/range', 'ace/mode/behaviour/cstyle', 'ace/mode/matching_brace_outdent'], function(require, exports, module) {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
var oop = require("../lib/oop");
|
|
35
|
-
var TextMode = require("./text").Mode;
|
|
36
|
-
var Tokenizer = require("../tokenizer").Tokenizer;
|
|
37
|
-
var LogiQLHighlightRules = require("./logiql_highlight_rules").LogiQLHighlightRules;
|
|
38
|
-
var FoldMode = require("./folding/coffee").FoldMode;
|
|
39
|
-
var TokenIterator = require("../token_iterator").TokenIterator;
|
|
40
|
-
var Range = require("../range").Range;
|
|
41
|
-
var CstyleBehaviour = require("./behaviour/cstyle").CstyleBehaviour;
|
|
42
|
-
var MatchingBraceOutdent = require("./matching_brace_outdent").MatchingBraceOutdent;
|
|
43
|
-
|
|
44
|
-
var Mode = function() {
|
|
45
|
-
this.HighlightRules = LogiQLHighlightRules;
|
|
46
|
-
this.foldingRules = new FoldMode();
|
|
47
|
-
this.$outdent = new MatchingBraceOutdent();
|
|
48
|
-
this.$behaviour = new CstyleBehaviour();
|
|
49
|
-
};
|
|
50
|
-
oop.inherits(Mode, TextMode);
|
|
51
|
-
|
|
52
|
-
(function() {
|
|
53
|
-
this.lineCommentStart = "//";
|
|
54
|
-
this.blockComment = {start: "/*", end: "*/"};
|
|
55
|
-
|
|
56
|
-
this.getNextLineIndent = function(state, line, tab) {
|
|
57
|
-
var indent = this.$getIndent(line);
|
|
58
|
-
|
|
59
|
-
var tokenizedLine = this.getTokenizer().getLineTokens(line, state);
|
|
60
|
-
var tokens = tokenizedLine.tokens;
|
|
61
|
-
var endState = tokenizedLine.state;
|
|
62
|
-
if (/comment|string/.test(endState))
|
|
63
|
-
return indent;
|
|
64
|
-
if (tokens.length && tokens[tokens.length - 1].type == "comment.single")
|
|
65
|
-
return indent;
|
|
66
|
-
|
|
67
|
-
var match = line.match();
|
|
68
|
-
if (/(-->|<--|<-|->|{)\s*$/.test(line))
|
|
69
|
-
indent += tab;
|
|
70
|
-
return indent;
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
this.checkOutdent = function(state, line, input) {
|
|
74
|
-
if (this.$outdent.checkOutdent(line, input))
|
|
75
|
-
return true;
|
|
76
|
-
|
|
77
|
-
if (input !== "\n" && input !== "\r\n")
|
|
78
|
-
return false;
|
|
79
|
-
|
|
80
|
-
if (!/^\s+/.test(line))
|
|
81
|
-
return false;
|
|
82
|
-
|
|
83
|
-
return true;
|
|
84
|
-
};
|
|
85
|
-
|
|
86
|
-
this.autoOutdent = function(state, doc, row) {
|
|
87
|
-
if (this.$outdent.autoOutdent(doc, row))
|
|
88
|
-
return;
|
|
89
|
-
var prevLine = doc.getLine(row);
|
|
90
|
-
var match = prevLine.match(/^\s+/);
|
|
91
|
-
var column = prevLine.lastIndexOf(".") + 1;
|
|
92
|
-
if (!match || !row || !column) return 0;
|
|
93
|
-
|
|
94
|
-
var line = doc.getLine(row + 1);
|
|
95
|
-
var startRange = this.getMatching(doc, {row: row, column: column});
|
|
96
|
-
if (!startRange || startRange.start.row == row) return 0;
|
|
97
|
-
|
|
98
|
-
column = match[0].length;
|
|
99
|
-
var indent = this.$getIndent(doc.getLine(startRange.start.row));
|
|
100
|
-
doc.replace(new Range(row + 1, 0, row + 1, column), indent);
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
this.getMatching = function(session, row, column) {
|
|
104
|
-
if (row == undefined)
|
|
105
|
-
row = session.selection.lead
|
|
106
|
-
if (typeof row == "object") {
|
|
107
|
-
column = row.column;
|
|
108
|
-
row = row.row;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
var startToken = session.getTokenAt(row, column);
|
|
112
|
-
var KW_START = "keyword.start", KW_END = "keyword.end";
|
|
113
|
-
var tok;
|
|
114
|
-
if (!startToken)
|
|
115
|
-
return;
|
|
116
|
-
if (startToken.type == KW_START) {
|
|
117
|
-
var it = new TokenIterator(session, row, column);
|
|
118
|
-
it.step = it.stepForward;
|
|
119
|
-
} else if (startToken.type == KW_END) {
|
|
120
|
-
var it = new TokenIterator(session, row, column);
|
|
121
|
-
it.step = it.stepBackward;
|
|
122
|
-
} else
|
|
123
|
-
return;
|
|
124
|
-
|
|
125
|
-
while (tok = it.step()) {
|
|
126
|
-
if (tok.type == KW_START || tok.type == KW_END)
|
|
127
|
-
break;
|
|
128
|
-
}
|
|
129
|
-
if (!tok || tok.type == startToken.type)
|
|
130
|
-
return;
|
|
131
|
-
|
|
132
|
-
var col = it.getCurrentTokenColumn();
|
|
133
|
-
var row = it.getCurrentTokenRow();
|
|
134
|
-
return new Range(row, col, row, col + tok.value.length);
|
|
135
|
-
};
|
|
136
|
-
this.$id = "ace/mode/logiql";
|
|
137
|
-
}).call(Mode.prototype);
|
|
138
|
-
|
|
139
|
-
exports.Mode = Mode;
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
define('ace/mode/logiql_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
|
|
143
|
-
|
|
1
|
+
define("ace/mode/logiql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(require, exports, module) {
|
|
2
|
+
"use strict";
|
|
144
3
|
|
|
145
4
|
var oop = require("../lib/oop");
|
|
146
5
|
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
|
|
@@ -213,8 +72,8 @@ oop.inherits(LogiQLHighlightRules, TextHighlightRules);
|
|
|
213
72
|
exports.LogiQLHighlightRules = LogiQLHighlightRules;
|
|
214
73
|
});
|
|
215
74
|
|
|
216
|
-
define(
|
|
217
|
-
|
|
75
|
+
define("ace/mode/folding/coffee",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"], function(require, exports, module) {
|
|
76
|
+
"use strict";
|
|
218
77
|
|
|
219
78
|
var oop = require("../../lib/oop");
|
|
220
79
|
var BaseFoldMode = require("./fold_mode").FoldMode;
|
|
@@ -300,8 +159,8 @@ oop.inherits(FoldMode, BaseFoldMode);
|
|
|
300
159
|
|
|
301
160
|
});
|
|
302
161
|
|
|
303
|
-
define(
|
|
304
|
-
|
|
162
|
+
define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"], function(require, exports, module) {
|
|
163
|
+
"use strict";
|
|
305
164
|
|
|
306
165
|
var oop = require("../../lib/oop");
|
|
307
166
|
var Behaviour = require("../behaviour").Behaviour;
|
|
@@ -313,83 +172,34 @@ var SAFE_INSERT_IN_TOKENS =
|
|
|
313
172
|
var SAFE_INSERT_BEFORE_TOKENS =
|
|
314
173
|
["text", "paren.rparen", "punctuation.operator", "comment"];
|
|
315
174
|
|
|
316
|
-
|
|
317
|
-
var
|
|
318
|
-
var
|
|
319
|
-
var
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
iterator.stepForward();
|
|
336
|
-
return iterator.getCurrentTokenRow() !== cursor.row ||
|
|
337
|
-
this.$matchTokenType(iterator.getCurrentToken() || "text", SAFE_INSERT_BEFORE_TOKENS);
|
|
338
|
-
};
|
|
339
|
-
|
|
340
|
-
CstyleBehaviour.$matchTokenType = function(token, types) {
|
|
341
|
-
return types.indexOf(token.type || token) > -1;
|
|
342
|
-
};
|
|
343
|
-
|
|
344
|
-
CstyleBehaviour.recordAutoInsert = function(editor, session, bracket) {
|
|
345
|
-
var cursor = editor.getCursorPosition();
|
|
346
|
-
var line = session.doc.getLine(cursor.row);
|
|
347
|
-
if (!this.isAutoInsertedClosing(cursor, line, autoInsertedLineEnd[0]))
|
|
348
|
-
autoInsertedBrackets = 0;
|
|
349
|
-
autoInsertedRow = cursor.row;
|
|
350
|
-
autoInsertedLineEnd = bracket + line.substr(cursor.column);
|
|
351
|
-
autoInsertedBrackets++;
|
|
352
|
-
};
|
|
353
|
-
|
|
354
|
-
CstyleBehaviour.recordMaybeInsert = function(editor, session, bracket) {
|
|
355
|
-
var cursor = editor.getCursorPosition();
|
|
356
|
-
var line = session.doc.getLine(cursor.row);
|
|
357
|
-
if (!this.isMaybeInsertedClosing(cursor, line))
|
|
358
|
-
maybeInsertedBrackets = 0;
|
|
359
|
-
maybeInsertedRow = cursor.row;
|
|
360
|
-
maybeInsertedLineStart = line.substr(0, cursor.column) + bracket;
|
|
361
|
-
maybeInsertedLineEnd = line.substr(cursor.column);
|
|
362
|
-
maybeInsertedBrackets++;
|
|
363
|
-
};
|
|
364
|
-
|
|
365
|
-
CstyleBehaviour.isAutoInsertedClosing = function(cursor, line, bracket) {
|
|
366
|
-
return autoInsertedBrackets > 0 &&
|
|
367
|
-
cursor.row === autoInsertedRow &&
|
|
368
|
-
bracket === autoInsertedLineEnd[0] &&
|
|
369
|
-
line.substr(cursor.column) === autoInsertedLineEnd;
|
|
370
|
-
};
|
|
371
|
-
|
|
372
|
-
CstyleBehaviour.isMaybeInsertedClosing = function(cursor, line) {
|
|
373
|
-
return maybeInsertedBrackets > 0 &&
|
|
374
|
-
cursor.row === maybeInsertedRow &&
|
|
375
|
-
line.substr(cursor.column) === maybeInsertedLineEnd &&
|
|
376
|
-
line.substr(0, cursor.column) == maybeInsertedLineStart;
|
|
377
|
-
};
|
|
378
|
-
|
|
379
|
-
CstyleBehaviour.popAutoInsertedClosing = function() {
|
|
380
|
-
autoInsertedLineEnd = autoInsertedLineEnd.substr(1);
|
|
381
|
-
autoInsertedBrackets--;
|
|
382
|
-
};
|
|
383
|
-
|
|
384
|
-
CstyleBehaviour.clearMaybeInsertedClosing = function() {
|
|
385
|
-
maybeInsertedBrackets = 0;
|
|
386
|
-
maybeInsertedRow = -1;
|
|
175
|
+
var context;
|
|
176
|
+
var contextCache = {}
|
|
177
|
+
var initContext = function(editor) {
|
|
178
|
+
var id = -1;
|
|
179
|
+
if (editor.multiSelect) {
|
|
180
|
+
id = editor.selection.id;
|
|
181
|
+
if (contextCache.rangeCount != editor.multiSelect.rangeCount)
|
|
182
|
+
contextCache = {rangeCount: editor.multiSelect.rangeCount};
|
|
183
|
+
}
|
|
184
|
+
if (contextCache[id])
|
|
185
|
+
return context = contextCache[id];
|
|
186
|
+
context = contextCache[id] = {
|
|
187
|
+
autoInsertedBrackets: 0,
|
|
188
|
+
autoInsertedRow: -1,
|
|
189
|
+
autoInsertedLineEnd: "",
|
|
190
|
+
maybeInsertedBrackets: 0,
|
|
191
|
+
maybeInsertedRow: -1,
|
|
192
|
+
maybeInsertedLineStart: "",
|
|
193
|
+
maybeInsertedLineEnd: ""
|
|
387
194
|
};
|
|
195
|
+
};
|
|
388
196
|
|
|
389
|
-
|
|
197
|
+
var CstyleBehaviour = function() {
|
|
198
|
+
this.add("braces", "insertion", function(state, action, editor, session, text) {
|
|
390
199
|
var cursor = editor.getCursorPosition();
|
|
391
200
|
var line = session.doc.getLine(cursor.row);
|
|
392
201
|
if (text == '{') {
|
|
202
|
+
initContext(editor);
|
|
393
203
|
var selection = editor.getSelectionRange();
|
|
394
204
|
var selected = session.doc.getTextRange(selection);
|
|
395
205
|
if (selected !== "" && selected !== "{" && editor.getWrapBehavioursEnabled()) {
|
|
@@ -413,6 +223,7 @@ var CstyleBehaviour = function () {
|
|
|
413
223
|
}
|
|
414
224
|
}
|
|
415
225
|
} else if (text == '}') {
|
|
226
|
+
initContext(editor);
|
|
416
227
|
var rightChar = line.substring(cursor.column, cursor.column + 1);
|
|
417
228
|
if (rightChar == '}') {
|
|
418
229
|
var matching = session.$findOpeningBracket('}', {column: cursor.column + 1, row: cursor.row});
|
|
@@ -425,9 +236,10 @@ var CstyleBehaviour = function () {
|
|
|
425
236
|
}
|
|
426
237
|
}
|
|
427
238
|
} else if (text == "\n" || text == "\r\n") {
|
|
239
|
+
initContext(editor);
|
|
428
240
|
var closing = "";
|
|
429
241
|
if (CstyleBehaviour.isMaybeInsertedClosing(cursor, line)) {
|
|
430
|
-
closing = lang.stringRepeat("}", maybeInsertedBrackets);
|
|
242
|
+
closing = lang.stringRepeat("}", context.maybeInsertedBrackets);
|
|
431
243
|
CstyleBehaviour.clearMaybeInsertedClosing();
|
|
432
244
|
}
|
|
433
245
|
var rightChar = line.substring(cursor.column, cursor.column + 1);
|
|
@@ -439,6 +251,7 @@ var CstyleBehaviour = function () {
|
|
|
439
251
|
} else if (closing) {
|
|
440
252
|
var next_indent = this.$getIndent(line);
|
|
441
253
|
} else {
|
|
254
|
+
CstyleBehaviour.clearMaybeInsertedClosing();
|
|
442
255
|
return;
|
|
443
256
|
}
|
|
444
257
|
var indent = next_indent + session.getTabString();
|
|
@@ -452,22 +265,24 @@ var CstyleBehaviour = function () {
|
|
|
452
265
|
}
|
|
453
266
|
});
|
|
454
267
|
|
|
455
|
-
this.add("braces", "deletion", function
|
|
268
|
+
this.add("braces", "deletion", function(state, action, editor, session, range) {
|
|
456
269
|
var selected = session.doc.getTextRange(range);
|
|
457
270
|
if (!range.isMultiLine() && selected == '{') {
|
|
271
|
+
initContext(editor);
|
|
458
272
|
var line = session.doc.getLine(range.start.row);
|
|
459
273
|
var rightChar = line.substring(range.end.column, range.end.column + 1);
|
|
460
274
|
if (rightChar == '}') {
|
|
461
275
|
range.end.column++;
|
|
462
276
|
return range;
|
|
463
277
|
} else {
|
|
464
|
-
maybeInsertedBrackets--;
|
|
278
|
+
context.maybeInsertedBrackets--;
|
|
465
279
|
}
|
|
466
280
|
}
|
|
467
281
|
});
|
|
468
282
|
|
|
469
|
-
this.add("parens", "insertion", function
|
|
283
|
+
this.add("parens", "insertion", function(state, action, editor, session, text) {
|
|
470
284
|
if (text == '(') {
|
|
285
|
+
initContext(editor);
|
|
471
286
|
var selection = editor.getSelectionRange();
|
|
472
287
|
var selected = session.doc.getTextRange(selection);
|
|
473
288
|
if (selected !== "" && editor.getWrapBehavioursEnabled()) {
|
|
@@ -483,6 +298,7 @@ var CstyleBehaviour = function () {
|
|
|
483
298
|
};
|
|
484
299
|
}
|
|
485
300
|
} else if (text == ')') {
|
|
301
|
+
initContext(editor);
|
|
486
302
|
var cursor = editor.getCursorPosition();
|
|
487
303
|
var line = session.doc.getLine(cursor.row);
|
|
488
304
|
var rightChar = line.substring(cursor.column, cursor.column + 1);
|
|
@@ -499,9 +315,10 @@ var CstyleBehaviour = function () {
|
|
|
499
315
|
}
|
|
500
316
|
});
|
|
501
317
|
|
|
502
|
-
this.add("parens", "deletion", function
|
|
318
|
+
this.add("parens", "deletion", function(state, action, editor, session, range) {
|
|
503
319
|
var selected = session.doc.getTextRange(range);
|
|
504
320
|
if (!range.isMultiLine() && selected == '(') {
|
|
321
|
+
initContext(editor);
|
|
505
322
|
var line = session.doc.getLine(range.start.row);
|
|
506
323
|
var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
|
|
507
324
|
if (rightChar == ')') {
|
|
@@ -511,8 +328,9 @@ var CstyleBehaviour = function () {
|
|
|
511
328
|
}
|
|
512
329
|
});
|
|
513
330
|
|
|
514
|
-
this.add("brackets", "insertion", function
|
|
331
|
+
this.add("brackets", "insertion", function(state, action, editor, session, text) {
|
|
515
332
|
if (text == '[') {
|
|
333
|
+
initContext(editor);
|
|
516
334
|
var selection = editor.getSelectionRange();
|
|
517
335
|
var selected = session.doc.getTextRange(selection);
|
|
518
336
|
if (selected !== "" && editor.getWrapBehavioursEnabled()) {
|
|
@@ -528,6 +346,7 @@ var CstyleBehaviour = function () {
|
|
|
528
346
|
};
|
|
529
347
|
}
|
|
530
348
|
} else if (text == ']') {
|
|
349
|
+
initContext(editor);
|
|
531
350
|
var cursor = editor.getCursorPosition();
|
|
532
351
|
var line = session.doc.getLine(cursor.row);
|
|
533
352
|
var rightChar = line.substring(cursor.column, cursor.column + 1);
|
|
@@ -544,9 +363,10 @@ var CstyleBehaviour = function () {
|
|
|
544
363
|
}
|
|
545
364
|
});
|
|
546
365
|
|
|
547
|
-
this.add("brackets", "deletion", function
|
|
366
|
+
this.add("brackets", "deletion", function(state, action, editor, session, range) {
|
|
548
367
|
var selected = session.doc.getTextRange(range);
|
|
549
368
|
if (!range.isMultiLine() && selected == '[') {
|
|
369
|
+
initContext(editor);
|
|
550
370
|
var line = session.doc.getLine(range.start.row);
|
|
551
371
|
var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
|
|
552
372
|
if (rightChar == ']') {
|
|
@@ -556,8 +376,9 @@ var CstyleBehaviour = function () {
|
|
|
556
376
|
}
|
|
557
377
|
});
|
|
558
378
|
|
|
559
|
-
this.add("string_dquotes", "insertion", function
|
|
379
|
+
this.add("string_dquotes", "insertion", function(state, action, editor, session, text) {
|
|
560
380
|
if (text == '"' || text == "'") {
|
|
381
|
+
initContext(editor);
|
|
561
382
|
var quote = text;
|
|
562
383
|
var selection = editor.getSelectionRange();
|
|
563
384
|
var selected = session.doc.getTextRange(selection);
|
|
@@ -609,9 +430,10 @@ var CstyleBehaviour = function () {
|
|
|
609
430
|
}
|
|
610
431
|
});
|
|
611
432
|
|
|
612
|
-
this.add("string_dquotes", "deletion", function
|
|
433
|
+
this.add("string_dquotes", "deletion", function(state, action, editor, session, range) {
|
|
613
434
|
var selected = session.doc.getTextRange(range);
|
|
614
435
|
if (!range.isMultiLine() && (selected == '"' || selected == "'")) {
|
|
436
|
+
initContext(editor);
|
|
615
437
|
var line = session.doc.getLine(range.start.row);
|
|
616
438
|
var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
|
|
617
439
|
if (rightChar == selected) {
|
|
@@ -623,13 +445,80 @@ var CstyleBehaviour = function () {
|
|
|
623
445
|
|
|
624
446
|
};
|
|
625
447
|
|
|
448
|
+
|
|
449
|
+
CstyleBehaviour.isSaneInsertion = function(editor, session) {
|
|
450
|
+
var cursor = editor.getCursorPosition();
|
|
451
|
+
var iterator = new TokenIterator(session, cursor.row, cursor.column);
|
|
452
|
+
if (!this.$matchTokenType(iterator.getCurrentToken() || "text", SAFE_INSERT_IN_TOKENS)) {
|
|
453
|
+
var iterator2 = new TokenIterator(session, cursor.row, cursor.column + 1);
|
|
454
|
+
if (!this.$matchTokenType(iterator2.getCurrentToken() || "text", SAFE_INSERT_IN_TOKENS))
|
|
455
|
+
return false;
|
|
456
|
+
}
|
|
457
|
+
iterator.stepForward();
|
|
458
|
+
return iterator.getCurrentTokenRow() !== cursor.row ||
|
|
459
|
+
this.$matchTokenType(iterator.getCurrentToken() || "text", SAFE_INSERT_BEFORE_TOKENS);
|
|
460
|
+
};
|
|
461
|
+
|
|
462
|
+
CstyleBehaviour.$matchTokenType = function(token, types) {
|
|
463
|
+
return types.indexOf(token.type || token) > -1;
|
|
464
|
+
};
|
|
465
|
+
|
|
466
|
+
CstyleBehaviour.recordAutoInsert = function(editor, session, bracket) {
|
|
467
|
+
var cursor = editor.getCursorPosition();
|
|
468
|
+
var line = session.doc.getLine(cursor.row);
|
|
469
|
+
if (!this.isAutoInsertedClosing(cursor, line, context.autoInsertedLineEnd[0]))
|
|
470
|
+
context.autoInsertedBrackets = 0;
|
|
471
|
+
context.autoInsertedRow = cursor.row;
|
|
472
|
+
context.autoInsertedLineEnd = bracket + line.substr(cursor.column);
|
|
473
|
+
context.autoInsertedBrackets++;
|
|
474
|
+
};
|
|
475
|
+
|
|
476
|
+
CstyleBehaviour.recordMaybeInsert = function(editor, session, bracket) {
|
|
477
|
+
var cursor = editor.getCursorPosition();
|
|
478
|
+
var line = session.doc.getLine(cursor.row);
|
|
479
|
+
if (!this.isMaybeInsertedClosing(cursor, line))
|
|
480
|
+
context.maybeInsertedBrackets = 0;
|
|
481
|
+
context.maybeInsertedRow = cursor.row;
|
|
482
|
+
context.maybeInsertedLineStart = line.substr(0, cursor.column) + bracket;
|
|
483
|
+
context.maybeInsertedLineEnd = line.substr(cursor.column);
|
|
484
|
+
context.maybeInsertedBrackets++;
|
|
485
|
+
};
|
|
486
|
+
|
|
487
|
+
CstyleBehaviour.isAutoInsertedClosing = function(cursor, line, bracket) {
|
|
488
|
+
return context.autoInsertedBrackets > 0 &&
|
|
489
|
+
cursor.row === context.autoInsertedRow &&
|
|
490
|
+
bracket === context.autoInsertedLineEnd[0] &&
|
|
491
|
+
line.substr(cursor.column) === context.autoInsertedLineEnd;
|
|
492
|
+
};
|
|
493
|
+
|
|
494
|
+
CstyleBehaviour.isMaybeInsertedClosing = function(cursor, line) {
|
|
495
|
+
return context.maybeInsertedBrackets > 0 &&
|
|
496
|
+
cursor.row === context.maybeInsertedRow &&
|
|
497
|
+
line.substr(cursor.column) === context.maybeInsertedLineEnd &&
|
|
498
|
+
line.substr(0, cursor.column) == context.maybeInsertedLineStart;
|
|
499
|
+
};
|
|
500
|
+
|
|
501
|
+
CstyleBehaviour.popAutoInsertedClosing = function() {
|
|
502
|
+
context.autoInsertedLineEnd = context.autoInsertedLineEnd.substr(1);
|
|
503
|
+
context.autoInsertedBrackets--;
|
|
504
|
+
};
|
|
505
|
+
|
|
506
|
+
CstyleBehaviour.clearMaybeInsertedClosing = function() {
|
|
507
|
+
if (context) {
|
|
508
|
+
context.maybeInsertedBrackets = 0;
|
|
509
|
+
context.maybeInsertedRow = -1;
|
|
510
|
+
}
|
|
511
|
+
};
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
|
|
626
515
|
oop.inherits(CstyleBehaviour, Behaviour);
|
|
627
516
|
|
|
628
517
|
exports.CstyleBehaviour = CstyleBehaviour;
|
|
629
518
|
});
|
|
630
519
|
|
|
631
|
-
define(
|
|
632
|
-
|
|
520
|
+
define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"], function(require, exports, module) {
|
|
521
|
+
"use strict";
|
|
633
522
|
|
|
634
523
|
var Range = require("../range").Range;
|
|
635
524
|
|
|
@@ -667,3 +556,113 @@ var MatchingBraceOutdent = function() {};
|
|
|
667
556
|
|
|
668
557
|
exports.MatchingBraceOutdent = MatchingBraceOutdent;
|
|
669
558
|
});
|
|
559
|
+
|
|
560
|
+
define("ace/mode/logiql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/logiql_highlight_rules","ace/mode/folding/coffee","ace/token_iterator","ace/range","ace/mode/behaviour/cstyle","ace/mode/matching_brace_outdent"], function(require, exports, module) {
|
|
561
|
+
"use strict";
|
|
562
|
+
|
|
563
|
+
var oop = require("../lib/oop");
|
|
564
|
+
var TextMode = require("./text").Mode;
|
|
565
|
+
var LogiQLHighlightRules = require("./logiql_highlight_rules").LogiQLHighlightRules;
|
|
566
|
+
var FoldMode = require("./folding/coffee").FoldMode;
|
|
567
|
+
var TokenIterator = require("../token_iterator").TokenIterator;
|
|
568
|
+
var Range = require("../range").Range;
|
|
569
|
+
var CstyleBehaviour = require("./behaviour/cstyle").CstyleBehaviour;
|
|
570
|
+
var MatchingBraceOutdent = require("./matching_brace_outdent").MatchingBraceOutdent;
|
|
571
|
+
|
|
572
|
+
var Mode = function() {
|
|
573
|
+
this.HighlightRules = LogiQLHighlightRules;
|
|
574
|
+
this.foldingRules = new FoldMode();
|
|
575
|
+
this.$outdent = new MatchingBraceOutdent();
|
|
576
|
+
this.$behaviour = new CstyleBehaviour();
|
|
577
|
+
};
|
|
578
|
+
oop.inherits(Mode, TextMode);
|
|
579
|
+
|
|
580
|
+
(function() {
|
|
581
|
+
this.lineCommentStart = "//";
|
|
582
|
+
this.blockComment = {start: "/*", end: "*/"};
|
|
583
|
+
|
|
584
|
+
this.getNextLineIndent = function(state, line, tab) {
|
|
585
|
+
var indent = this.$getIndent(line);
|
|
586
|
+
|
|
587
|
+
var tokenizedLine = this.getTokenizer().getLineTokens(line, state);
|
|
588
|
+
var tokens = tokenizedLine.tokens;
|
|
589
|
+
var endState = tokenizedLine.state;
|
|
590
|
+
if (/comment|string/.test(endState))
|
|
591
|
+
return indent;
|
|
592
|
+
if (tokens.length && tokens[tokens.length - 1].type == "comment.single")
|
|
593
|
+
return indent;
|
|
594
|
+
|
|
595
|
+
var match = line.match();
|
|
596
|
+
if (/(-->|<--|<-|->|{)\s*$/.test(line))
|
|
597
|
+
indent += tab;
|
|
598
|
+
return indent;
|
|
599
|
+
};
|
|
600
|
+
|
|
601
|
+
this.checkOutdent = function(state, line, input) {
|
|
602
|
+
if (this.$outdent.checkOutdent(line, input))
|
|
603
|
+
return true;
|
|
604
|
+
|
|
605
|
+
if (input !== "\n" && input !== "\r\n")
|
|
606
|
+
return false;
|
|
607
|
+
|
|
608
|
+
if (!/^\s+/.test(line))
|
|
609
|
+
return false;
|
|
610
|
+
|
|
611
|
+
return true;
|
|
612
|
+
};
|
|
613
|
+
|
|
614
|
+
this.autoOutdent = function(state, doc, row) {
|
|
615
|
+
if (this.$outdent.autoOutdent(doc, row))
|
|
616
|
+
return;
|
|
617
|
+
var prevLine = doc.getLine(row);
|
|
618
|
+
var match = prevLine.match(/^\s+/);
|
|
619
|
+
var column = prevLine.lastIndexOf(".") + 1;
|
|
620
|
+
if (!match || !row || !column) return 0;
|
|
621
|
+
|
|
622
|
+
var line = doc.getLine(row + 1);
|
|
623
|
+
var startRange = this.getMatching(doc, {row: row, column: column});
|
|
624
|
+
if (!startRange || startRange.start.row == row) return 0;
|
|
625
|
+
|
|
626
|
+
column = match[0].length;
|
|
627
|
+
var indent = this.$getIndent(doc.getLine(startRange.start.row));
|
|
628
|
+
doc.replace(new Range(row + 1, 0, row + 1, column), indent);
|
|
629
|
+
};
|
|
630
|
+
|
|
631
|
+
this.getMatching = function(session, row, column) {
|
|
632
|
+
if (row == undefined)
|
|
633
|
+
row = session.selection.lead
|
|
634
|
+
if (typeof row == "object") {
|
|
635
|
+
column = row.column;
|
|
636
|
+
row = row.row;
|
|
637
|
+
}
|
|
638
|
+
|
|
639
|
+
var startToken = session.getTokenAt(row, column);
|
|
640
|
+
var KW_START = "keyword.start", KW_END = "keyword.end";
|
|
641
|
+
var tok;
|
|
642
|
+
if (!startToken)
|
|
643
|
+
return;
|
|
644
|
+
if (startToken.type == KW_START) {
|
|
645
|
+
var it = new TokenIterator(session, row, column);
|
|
646
|
+
it.step = it.stepForward;
|
|
647
|
+
} else if (startToken.type == KW_END) {
|
|
648
|
+
var it = new TokenIterator(session, row, column);
|
|
649
|
+
it.step = it.stepBackward;
|
|
650
|
+
} else
|
|
651
|
+
return;
|
|
652
|
+
|
|
653
|
+
while (tok = it.step()) {
|
|
654
|
+
if (tok.type == KW_START || tok.type == KW_END)
|
|
655
|
+
break;
|
|
656
|
+
}
|
|
657
|
+
if (!tok || tok.type == startToken.type)
|
|
658
|
+
return;
|
|
659
|
+
|
|
660
|
+
var col = it.getCurrentTokenColumn();
|
|
661
|
+
var row = it.getCurrentTokenRow();
|
|
662
|
+
return new Range(row, col, row, col + tok.value.length);
|
|
663
|
+
};
|
|
664
|
+
this.$id = "ace/mode/logiql";
|
|
665
|
+
}).call(Mode.prototype);
|
|
666
|
+
|
|
667
|
+
exports.Mode = Mode;
|
|
668
|
+
});
|