@openui5/sap.ui.codeeditor 1.94.0 → 1.97.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.
- package/.reuse/dep5 +12 -12
- package/THIRDPARTY.txt +21 -17
- package/package.json +2 -2
- package/src/sap/ui/codeeditor/.library +6 -6
- package/src/sap/ui/codeeditor/CodeEditor.js +41 -15
- package/src/sap/ui/codeeditor/js/ace/ace.js +1705 -1669
- package/src/sap/ui/codeeditor/js/ace/css/ace.css +1025 -0
- package/src/sap/ui/codeeditor/js/ace/css/ambiance-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/ambiance-2.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/chrome-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/clouds-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/clouds_midnight-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/cobalt-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/crimson_editor-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/dawn-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/dracula-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/dreamweaver-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/eclipse-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/github-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/gob-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/gruvbox-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/idle_fingers-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/iplastic-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/iplastic-2.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/kr_theme-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-10.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-11.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-12.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-13.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-14.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-15.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-16.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-2.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-3.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-4.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-5.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-6.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-7.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-8.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/main-9.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/merbivore-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/merbivore_soft-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/mono_industrial-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/monokai-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/one_dark-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/pastel_on_dark-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/solarized_dark-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/solarized_light-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/sqlserver-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/terminal-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/textmate-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/ambiance.css +168 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/chaos.css +146 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/chrome.css +119 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/clouds.css +87 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/clouds_midnight.css +88 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/cobalt.css +104 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/crimson_editor.css +110 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/dawn.css +100 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/dracula.css +119 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/dreamweaver.css +134 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/eclipse.css +88 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/github.css +95 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/gob.css +103 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/gruvbox.css +73 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/idle_fingers.css +88 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/iplastic.css +113 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/katzenmilch.css +113 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/kr_theme.css +96 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/kuroir.css +52 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/merbivore.css +87 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/merbivore_soft.css +88 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/mono_industrial.css +99 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/monokai.css +97 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/nord_dark.css +85 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/one_dark.css +123 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/pastel_on_dark.css +100 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/solarized_dark.css +80 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/solarized_light.css +83 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/sqlserver.css +129 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/terminal.css +105 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/textmate.css +119 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/tomorrow.css +100 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/tomorrow_night.css +100 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/tomorrow_night_blue.css +98 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/tomorrow_night_bright.css +113 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/tomorrow_night_eighties.css +100 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/twilight.css +100 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/vibrant_ink.css +86 -0
- package/src/sap/ui/codeeditor/js/ace/css/theme/xcode.css +80 -0
- package/src/sap/ui/codeeditor/js/ace/css/tomorrow-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/tomorrow_night-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/tomorrow_night_blue-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/tomorrow_night_bright-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/tomorrow_night_eighties-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/twilight-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/vibrant_ink-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/css/xcode-1.png +0 -0
- package/src/sap/ui/codeeditor/js/ace/ext-beautify.js +17 -10
- package/src/sap/ui/codeeditor/js/ace/ext-code_lens.js +238 -0
- package/src/sap/ui/codeeditor/js/ace/ext-elastic_tabstops_lite.js +1 -1
- package/src/sap/ui/codeeditor/js/ace/ext-emmet.js +343 -238
- package/src/sap/ui/codeeditor/js/ace/ext-hardwrap.js +85 -0
- package/src/sap/ui/codeeditor/js/ace/ext-keybinding_menu.js +26 -11
- package/src/sap/ui/codeeditor/js/ace/ext-language_tools.js +435 -272
- package/src/sap/ui/codeeditor/js/ace/ext-linking.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/ext-modelist.js +22 -11
- package/src/sap/ui/codeeditor/js/ace/ext-options.js +85 -35
- package/src/sap/ui/codeeditor/js/ace/ext-prompt.js +510 -299
- package/src/sap/ui/codeeditor/js/ace/ext-rtl.js +1 -3
- package/src/sap/ui/codeeditor/js/ace/ext-searchbox.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/ext-settings_menu.js +89 -39
- package/src/sap/ui/codeeditor/js/ace/ext-spellcheck.js +1 -2
- package/src/sap/ui/codeeditor/js/ace/ext-split.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/ext-static_highlight.js +3 -229
- package/src/sap/ui/codeeditor/js/ace/ext-statusbar.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/ext-textarea.js +3 -563
- package/src/sap/ui/codeeditor/js/ace/ext-themelist.js +4 -2
- package/src/sap/ui/codeeditor/js/ace/ext-whitespace.js +1 -1
- package/src/sap/ui/codeeditor/js/ace/keybinding-emacs.js +29 -30
- package/src/sap/ui/codeeditor/js/ace/keybinding-sublime.js +2 -5
- package/src/sap/ui/codeeditor/js/ace/keybinding-vim.js +718 -184
- package/src/sap/ui/codeeditor/js/ace/keybinding-vscode.js +262 -0
- package/src/sap/ui/codeeditor/js/ace/mode-abap.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-abc.js +6 -3
- package/src/sap/ui/codeeditor/js/ace/mode-actionscript.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-ada.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-alda.js +311 -0
- package/src/sap/ui/codeeditor/js/ace/mode-apache_conf.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-apex.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-applescript.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-aql.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-asciidoc.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-asl.js +21 -20
- package/src/sap/ui/codeeditor/js/ace/mode-assembly_x86.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-autohotkey.js +6 -4
- package/src/sap/ui/codeeditor/js/ace/mode-batchfile.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-c9search.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-c_cpp.js +7 -6
- package/src/sap/ui/codeeditor/js/ace/mode-cirru.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-clojure.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-cobol.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-coffee.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/mode-coldfusion.js +22 -19
- package/src/sap/ui/codeeditor/js/ace/mode-crystal.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-csharp.js +6 -6
- package/src/sap/ui/codeeditor/js/ace/mode-csound_document.js +178 -61
- package/src/sap/ui/codeeditor/js/ace/mode-csound_orchestra.js +162 -51
- package/src/sap/ui/codeeditor/js/ace/mode-csound_score.js +34 -25
- package/src/sap/ui/codeeditor/js/ace/mode-csp.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-css.js +7 -6
- package/src/sap/ui/codeeditor/js/ace/mode-curly.js +22 -19
- package/src/sap/ui/codeeditor/js/ace/mode-d.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-dart.js +10 -8
- package/src/sap/ui/codeeditor/js/ace/mode-diff.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-django.js +22 -18
- package/src/sap/ui/codeeditor/js/ace/mode-dockerfile.js +6 -5
- package/src/sap/ui/codeeditor/js/ace/mode-dot.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-drools.js +7 -6
- package/src/sap/ui/codeeditor/js/ace/mode-edifact.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-eiffel.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-ejs.js +692 -184
- package/src/sap/ui/codeeditor/js/ace/mode-elixir.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-elm.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-erlang.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-forth.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-fortran.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-fsharp.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-fsl.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-ftl.js +7 -7
- package/src/sap/ui/codeeditor/js/ace/mode-gcode.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-gherkin.js +2 -4
- package/src/sap/ui/codeeditor/js/ace/mode-gitignore.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-glsl.js +9 -8
- package/src/sap/ui/codeeditor/js/ace/mode-gobstones.js +259 -99
- package/src/sap/ui/codeeditor/js/ace/mode-golang.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-graphqlschema.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-groovy.js +8 -7
- package/src/sap/ui/codeeditor/js/ace/mode-haml.js +428 -113
- package/src/sap/ui/codeeditor/js/ace/mode-handlebars.js +23 -20
- package/src/sap/ui/codeeditor/js/ace/mode-haskell.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-haskell_cabal.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-haxe.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-hjson.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-html.js +20 -17
- package/src/sap/ui/codeeditor/js/ace/mode-html_elixir.js +25 -22
- package/src/sap/ui/codeeditor/js/ace/mode-html_ruby.js +693 -185
- package/src/sap/ui/codeeditor/js/ace/mode-ini.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-io.js +5 -10
- package/src/sap/ui/codeeditor/js/ace/mode-jack.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-jade.js +13 -13
- package/src/sap/ui/codeeditor/js/ace/mode-java.js +11 -9
- package/src/sap/ui/codeeditor/js/ace/mode-javascript.js +6 -5
- package/src/sap/ui/codeeditor/js/ace/mode-json.js +7 -4
- package/src/sap/ui/codeeditor/js/ace/mode-json5.js +360 -0
- package/src/sap/ui/codeeditor/js/ace/mode-jsoniq.js +6 -5
- package/src/sap/ui/codeeditor/js/ace/mode-jsp.js +12 -11
- package/src/sap/ui/codeeditor/js/ace/mode-jssm.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-jsx.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-julia.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-kotlin.js +5 -3
- package/src/sap/ui/codeeditor/js/ace/mode-latex.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-latte.js +2708 -0
- package/src/sap/ui/codeeditor/js/ace/mode-less.js +7 -7
- package/src/sap/ui/codeeditor/js/ace/mode-liquid.js +24 -20
- package/src/sap/ui/codeeditor/js/ace/mode-lisp.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-livescript.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-logiql.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-logtalk.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-lsl.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/mode-lua.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-luapage.js +26 -22
- package/src/sap/ui/codeeditor/js/ace/mode-lucene.js +78 -10
- package/src/sap/ui/codeeditor/js/ace/mode-makefile.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/mode-markdown.js +30 -24
- package/src/sap/ui/codeeditor/js/ace/mode-mask.js +12 -12
- package/src/sap/ui/codeeditor/js/ace/mode-matlab.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-maze.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-mediawiki.js +592 -0
- package/src/sap/ui/codeeditor/js/ace/mode-mel.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/{mode-mipsassembler.js → mode-mips.js} +99 -31
- package/src/sap/ui/codeeditor/js/ace/mode-mixal.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-mushcode.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-mysql.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-nginx.js +13 -12
- package/src/sap/ui/codeeditor/js/ace/mode-nim.js +10 -9
- package/src/sap/ui/codeeditor/js/ace/mode-nix.js +9 -8
- package/src/sap/ui/codeeditor/js/ace/mode-nsis.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-nunjucks.js +2698 -0
- package/src/sap/ui/codeeditor/js/ace/mode-objectivec.js +6 -6
- package/src/sap/ui/codeeditor/js/ace/mode-ocaml.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-pascal.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-perl.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/mode-pgsql.js +9 -9
- package/src/sap/ui/codeeditor/js/ace/mode-php.js +513 -302
- package/src/sap/ui/codeeditor/js/ace/mode-php_laravel_blade.js +515 -304
- package/src/sap/ui/codeeditor/js/ace/mode-pig.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-plain_text.js +1 -1
- package/src/sap/ui/codeeditor/js/ace/mode-powershell.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-praat.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-prisma.js +489 -0
- package/src/sap/ui/codeeditor/js/ace/mode-prolog.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-properties.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-protobuf.js +9 -8
- package/src/sap/ui/codeeditor/js/ace/mode-puppet.js +12 -13
- package/src/sap/ui/codeeditor/js/ace/mode-python.js +6 -5
- package/src/sap/ui/codeeditor/js/ace/mode-qml.js +381 -0
- package/src/sap/ui/codeeditor/js/ace/mode-r.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/{mode-perl6.js → mode-raku.js} +13 -13
- package/src/sap/ui/codeeditor/js/ace/mode-razor.js +25 -21
- package/src/sap/ui/codeeditor/js/ace/mode-rdoc.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-red.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-redshift.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-rhtml.js +24 -21
- package/src/sap/ui/codeeditor/js/ace/mode-rst.js +3 -2
- package/src/sap/ui/codeeditor/js/ace/mode-ruby.js +672 -167
- package/src/sap/ui/codeeditor/js/ace/mode-rust.js +9 -8
- package/src/sap/ui/codeeditor/js/ace/mode-sass.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-scad.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/mode-scala.js +8 -7
- package/src/sap/ui/codeeditor/js/ace/mode-scheme.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-scrypt.js +364 -0
- package/src/sap/ui/codeeditor/js/ace/mode-scss.js +7 -7
- package/src/sap/ui/codeeditor/js/ace/mode-sh.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-sjs.js +8 -7
- package/src/sap/ui/codeeditor/js/ace/mode-slim.js +745 -146
- package/src/sap/ui/codeeditor/js/ace/mode-smarty.js +22 -19
- package/src/sap/ui/codeeditor/js/ace/mode-smithy.js +507 -0
- package/src/sap/ui/codeeditor/js/ace/mode-snippets.js +3 -2
- package/src/sap/ui/codeeditor/js/ace/mode-soy_template.js +22 -19
- package/src/sap/ui/codeeditor/js/ace/mode-space.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-sparql.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-sql.js +163 -2
- package/src/sap/ui/codeeditor/js/ace/mode-sqlserver.js +7 -6
- package/src/sap/ui/codeeditor/js/ace/mode-stylus.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-svg.js +13 -12
- package/src/sap/ui/codeeditor/js/ace/mode-swift.js +10 -4
- package/src/sap/ui/codeeditor/js/ace/mode-tcl.js +8 -4
- package/src/sap/ui/codeeditor/js/ace/mode-terraform.js +18 -15
- package/src/sap/ui/codeeditor/js/ace/mode-tex.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-textile.js +4 -3
- package/src/sap/ui/codeeditor/js/ace/mode-toml.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-tsx.js +9 -8
- package/src/sap/ui/codeeditor/js/ace/mode-turtle.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/mode-twig.js +22 -19
- package/src/sap/ui/codeeditor/js/ace/mode-typescript.js +8 -7
- package/src/sap/ui/codeeditor/js/ace/mode-vala.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/mode-vbscript.js +445 -16
- package/src/sap/ui/codeeditor/js/ace/mode-velocity.js +24 -20
- package/src/sap/ui/codeeditor/js/ace/mode-verilog.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/mode-vhdl.js +7 -8
- package/src/sap/ui/codeeditor/js/ace/mode-visualforce.js +22 -19
- package/src/sap/ui/codeeditor/js/ace/mode-wollok.js +9 -7
- package/src/sap/ui/codeeditor/js/ace/mode-xml.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-xquery.js +6 -5
- package/src/sap/ui/codeeditor/js/ace/mode-yaml.js +4 -4
- package/src/sap/ui/codeeditor/js/ace/mode-zeek.js +539 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/abap.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/abc.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/actionscript.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/ada.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/alda.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/apache_conf.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/apex.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/applescript.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/aql.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/asciidoc.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/asl.js +1 -6
- package/src/sap/ui/codeeditor/js/ace/snippets/assembly_x86.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/autohotkey.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/batchfile.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/c9search.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/c_cpp.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/cirru.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/clojure.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/cobol.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/coffee.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/coldfusion.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/crystal.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/csharp.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/csound_document.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/csound_orchestra.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/csound_score.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/csp.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/css.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/curly.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/d.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/dart.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/diff.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/django.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/dockerfile.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/dot.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/drools.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/edifact.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/eiffel.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/ejs.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/elixir.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/elm.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/erlang.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/forth.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/fortran.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/fsharp.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/fsl.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/snippets/ftl.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/gcode.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/gherkin.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/gitignore.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/glsl.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/gobstones.js +1695 -26
- package/src/sap/ui/codeeditor/js/ace/snippets/golang.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/graphqlschema.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/groovy.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/haml.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/handlebars.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/haskell.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/haskell_cabal.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/haxe.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/hjson.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/html.js +4 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/html_elixir.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/html_ruby.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/ini.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/io.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/jack.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/jade.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/java.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/javascript.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/json.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/json5.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/jsoniq.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/jsp.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/jssm.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/jsx.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/julia.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/kotlin.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/latex.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/latte.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/less.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/liquid.js +884 -4
- package/src/sap/ui/codeeditor/js/ace/snippets/lisp.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/livescript.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/logiql.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/logtalk.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/lsl.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/lua.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/luapage.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/lucene.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/makefile.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/markdown.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/mask.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/matlab.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/maze.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/mediawiki.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/mel.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/mips.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/mixal.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/mushcode.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/mysql.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/nginx.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/nim.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/nix.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/nsis.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/nunjucks.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/objectivec.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/ocaml.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/pascal.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/perl.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/pgsql.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/php.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/php_laravel_blade.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/pig.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/plain_text.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/powershell.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/praat.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/prisma.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/prolog.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/properties.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/protobuf.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/puppet.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/python.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/qml.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/r.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/raku.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/razor.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/rdoc.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/red.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/redshift.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/rhtml.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/rst.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/ruby.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/rust.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/sass.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/scad.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/scala.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/scheme.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/scrypt.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/scss.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/sh.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/sjs.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/slim.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/smarty.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/smithy.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/snippets/snippets.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/soy_template.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/space.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/sparql.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/sql.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/sqlserver.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/stylus.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/svg.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/swift.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/tcl.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/terraform.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/tex.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/text.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/textile.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/toml.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/tsx.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/turtle.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/twig.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/typescript.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/vala.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/vbscript.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/velocity.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/verilog.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/vhdl.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/visualforce.js +2 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/wollok.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/xml.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/xquery.js +2 -3
- package/src/sap/ui/codeeditor/js/ace/snippets/yaml.js +1 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/zeek.js +9 -0
- package/src/sap/ui/codeeditor/js/ace/theme-ambiance.js +5 -4
- package/src/sap/ui/codeeditor/js/ace/theme-chaos.js +3 -3
- package/src/sap/ui/codeeditor/js/ace/theme-chrome.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-clouds.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-clouds_midnight.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-cobalt.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-crimson_editor.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-dawn.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-dracula.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-dreamweaver.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-eclipse.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-github.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-gob.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-gruvbox.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-idle_fingers.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-iplastic.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-katzenmilch.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-kr_theme.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-kuroir.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-merbivore.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-merbivore_soft.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-mono_industrial.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-monokai.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-nord_dark.js +102 -0
- package/src/sap/ui/codeeditor/js/ace/theme-one_dark.js +139 -0
- package/src/sap/ui/codeeditor/js/ace/theme-pastel_on_dark.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-solarized_dark.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-solarized_light.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-sqlserver.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-terminal.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-textmate.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-tomorrow.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night_blue.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night_bright.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-tomorrow_night_eighties.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-twilight.js +5 -5
- package/src/sap/ui/codeeditor/js/ace/theme-vibrant_ink.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/theme-xcode.js +2 -2
- package/src/sap/ui/codeeditor/js/ace/worker-base.js +1421 -0
- package/src/sap/ui/codeeditor/js/ace/worker-coffee.js +17 -703
- package/src/sap/ui/codeeditor/js/ace/worker-css.js +3629 -3396
- package/src/sap/ui/codeeditor/js/ace/worker-html.js +17 -703
- package/src/sap/ui/codeeditor/js/ace/worker-javascript.js +7831 -5361
- package/src/sap/ui/codeeditor/js/ace/worker-json.js +17 -703
- package/src/sap/ui/codeeditor/js/ace/worker-lua.js +973 -1001
- package/src/sap/ui/codeeditor/js/ace/worker-php.js +859 -1477
- package/src/sap/ui/codeeditor/js/ace/worker-xml.js +26 -707
- package/src/sap/ui/codeeditor/js/ace/worker-xquery.js +17 -703
- package/src/sap/ui/codeeditor/library.js +2 -2
- package/ui5.yaml +4 -1
- package/src/sap/ui/codeeditor/js/ace/LICENSE.txt +0 -24
- package/src/sap/ui/codeeditor/js/ace/ext-chromevox.js +0 -540
- package/src/sap/ui/codeeditor/js/ace/ext-old_ie.js +0 -502
- package/src/sap/ui/codeeditor/js/ace/mode-bro.js +0 -334
- package/src/sap/ui/codeeditor/js/ace/mode-lean.js +0 -281
- package/src/sap/ui/codeeditor/js/ace/mode-live_script.js +0 -481
- package/src/sap/ui/codeeditor/js/ace/mode-mavens_mate_log.js +0 -160
- package/src/sap/ui/codeeditor/js/ace/mode-mips_assembler.js +0 -235
- package/src/sap/ui/codeeditor/js/ace/mode-swig.js +0 -1099
- package/src/sap/ui/codeeditor/js/ace/snippets/bro.js +0 -15
- package/src/sap/ui/codeeditor/js/ace/snippets/lean.js +0 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/live_script.js +0 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/mips_assembler.js +0 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/mipsassembler.js +0 -7
- package/src/sap/ui/codeeditor/js/ace/snippets/perl6.js +0 -14
- package/src/sap/ui/codeeditor/js/ace/snippets/swig.js +0 -7
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
ace.define("ace/ext/menu_tools/get_editor_keyboard_shortcuts",[
|
|
1
|
+
ace.define("ace/ext/menu_tools/get_editor_keyboard_shortcuts",[], function(require, exports, module) {
|
|
2
2
|
"use strict";
|
|
3
3
|
var keys = require("../../lib/keys");
|
|
4
4
|
module.exports.getEditorKeybordShortcuts = function(editor) {
|
|
@@ -29,7 +29,7 @@ module.exports.getEditorKeybordShortcuts = function(editor) {
|
|
|
29
29
|
|
|
30
30
|
});
|
|
31
31
|
|
|
32
|
-
ace.define("ace/autocomplete/popup",[
|
|
32
|
+
ace.define("ace/autocomplete/popup",[], function(require, exports, module) {
|
|
33
33
|
"use strict";
|
|
34
34
|
|
|
35
35
|
var Renderer = require("../virtual_renderer").VirtualRenderer;
|
|
@@ -296,7 +296,7 @@ var AcePopup = function(parentNode) {
|
|
|
296
296
|
var max = this.session.getLength() - 1;
|
|
297
297
|
|
|
298
298
|
switch(where) {
|
|
299
|
-
case "up": row = row
|
|
299
|
+
case "up": row = row <= 0 ? max : row - 1; break;
|
|
300
300
|
case "down": row = row >= max ? -1 : row + 1; break;
|
|
301
301
|
case "start": row = 0; break;
|
|
302
302
|
case "end": row = max; break;
|
|
@@ -364,13 +364,13 @@ dom.importCssString("\
|
|
|
364
364
|
line-height: 1.4;\
|
|
365
365
|
background: #25282c;\
|
|
366
366
|
color: #c1c1c1;\
|
|
367
|
-
}", "autocompletion.css");
|
|
367
|
+
}", "autocompletion.css", false);
|
|
368
368
|
|
|
369
369
|
exports.AcePopup = AcePopup;
|
|
370
370
|
exports.$singleLineEditor = $singleLineEditor;
|
|
371
371
|
});
|
|
372
372
|
|
|
373
|
-
ace.define("ace/autocomplete/util",[
|
|
373
|
+
ace.define("ace/autocomplete/util",[], function(require, exports, module) {
|
|
374
374
|
"use strict";
|
|
375
375
|
|
|
376
376
|
exports.parForEach = function(array, fn, callback) {
|
|
@@ -387,7 +387,7 @@ exports.parForEach = function(array, fn, callback) {
|
|
|
387
387
|
}
|
|
388
388
|
};
|
|
389
389
|
|
|
390
|
-
var ID_REGEX = /[a-zA-Z_0-9\$\-\u00A2-\uFFFF]/;
|
|
390
|
+
var ID_REGEX = /[a-zA-Z_0-9\$\-\u00A2-\u2000\u2070-\uFFFF]/;
|
|
391
391
|
|
|
392
392
|
exports.retrievePrecedingIdentifier = function(text, pos, regex) {
|
|
393
393
|
regex = regex || ID_REGEX;
|
|
@@ -430,16 +430,92 @@ exports.getCompletionPrefix = function (editor) {
|
|
|
430
430
|
|
|
431
431
|
});
|
|
432
432
|
|
|
433
|
-
ace.define("ace/snippets",[
|
|
433
|
+
ace.define("ace/snippets",[], function(require, exports, module) {
|
|
434
434
|
"use strict";
|
|
435
|
+
var dom = require("./lib/dom");
|
|
435
436
|
var oop = require("./lib/oop");
|
|
436
437
|
var EventEmitter = require("./lib/event_emitter").EventEmitter;
|
|
437
438
|
var lang = require("./lib/lang");
|
|
438
439
|
var Range = require("./range").Range;
|
|
439
|
-
var
|
|
440
|
+
var RangeList = require("./range_list").RangeList;
|
|
440
441
|
var HashHandler = require("./keyboard/hash_handler").HashHandler;
|
|
441
442
|
var Tokenizer = require("./tokenizer").Tokenizer;
|
|
442
|
-
var
|
|
443
|
+
var clipboard = require("./clipboard");
|
|
444
|
+
|
|
445
|
+
var VARIABLES = {
|
|
446
|
+
CURRENT_WORD: function(editor) {
|
|
447
|
+
return editor.session.getTextRange(editor.session.getWordRange());
|
|
448
|
+
},
|
|
449
|
+
SELECTION: function(editor, name, indentation) {
|
|
450
|
+
var text = editor.session.getTextRange();
|
|
451
|
+
if (indentation)
|
|
452
|
+
return text.replace(/\n\r?([ \t]*\S)/g, "\n" + indentation + "$1");
|
|
453
|
+
return text;
|
|
454
|
+
},
|
|
455
|
+
CURRENT_LINE: function(editor) {
|
|
456
|
+
return editor.session.getLine(editor.getCursorPosition().row);
|
|
457
|
+
},
|
|
458
|
+
PREV_LINE: function(editor) {
|
|
459
|
+
return editor.session.getLine(editor.getCursorPosition().row - 1);
|
|
460
|
+
},
|
|
461
|
+
LINE_INDEX: function(editor) {
|
|
462
|
+
return editor.getCursorPosition().row;
|
|
463
|
+
},
|
|
464
|
+
LINE_NUMBER: function(editor) {
|
|
465
|
+
return editor.getCursorPosition().row + 1;
|
|
466
|
+
},
|
|
467
|
+
SOFT_TABS: function(editor) {
|
|
468
|
+
return editor.session.getUseSoftTabs() ? "YES" : "NO";
|
|
469
|
+
},
|
|
470
|
+
TAB_SIZE: function(editor) {
|
|
471
|
+
return editor.session.getTabSize();
|
|
472
|
+
},
|
|
473
|
+
CLIPBOARD: function(editor) {
|
|
474
|
+
return clipboard.getText && clipboard.getText();
|
|
475
|
+
},
|
|
476
|
+
FILENAME: function(editor) {
|
|
477
|
+
return /[^/\\]*$/.exec(this.FILEPATH(editor))[0];
|
|
478
|
+
},
|
|
479
|
+
FILENAME_BASE: function(editor) {
|
|
480
|
+
return /[^/\\]*$/.exec(this.FILEPATH(editor))[0].replace(/\.[^.]*$/, "");
|
|
481
|
+
},
|
|
482
|
+
DIRECTORY: function(editor) {
|
|
483
|
+
return this.FILEPATH(editor).replace(/[^/\\]*$/, "");
|
|
484
|
+
},
|
|
485
|
+
FILEPATH: function(editor) { return "/not implemented.txt"; },
|
|
486
|
+
WORKSPACE_NAME: function() { return "Unknown"; },
|
|
487
|
+
FULLNAME: function() { return "Unknown"; },
|
|
488
|
+
BLOCK_COMMENT_START: function(editor) {
|
|
489
|
+
var mode = editor.session.$mode || {};
|
|
490
|
+
return mode.blockComment && mode.blockComment.start || "";
|
|
491
|
+
},
|
|
492
|
+
BLOCK_COMMENT_END: function(editor) {
|
|
493
|
+
var mode = editor.session.$mode || {};
|
|
494
|
+
return mode.blockComment && mode.blockComment.end || "";
|
|
495
|
+
},
|
|
496
|
+
LINE_COMMENT: function(editor) {
|
|
497
|
+
var mode = editor.session.$mode || {};
|
|
498
|
+
return mode.lineCommentStart || "";
|
|
499
|
+
},
|
|
500
|
+
CURRENT_YEAR: date.bind(null, {year: "numeric"}),
|
|
501
|
+
CURRENT_YEAR_SHORT: date.bind(null, {year: "2-digit"}),
|
|
502
|
+
CURRENT_MONTH: date.bind(null, {month: "numeric"}),
|
|
503
|
+
CURRENT_MONTH_NAME: date.bind(null, {month: "long"}),
|
|
504
|
+
CURRENT_MONTH_NAME_SHORT: date.bind(null, {month: "short"}),
|
|
505
|
+
CURRENT_DATE: date.bind(null, {day: "2-digit"}),
|
|
506
|
+
CURRENT_DAY_NAME: date.bind(null, {weekday: "long"}),
|
|
507
|
+
CURRENT_DAY_NAME_SHORT: date.bind(null, {weekday: "short"}),
|
|
508
|
+
CURRENT_HOUR: date.bind(null, {hour: "2-digit", hour12: false}),
|
|
509
|
+
CURRENT_MINUTE: date.bind(null, {minute: "2-digit"}),
|
|
510
|
+
CURRENT_SECOND: date.bind(null, {second: "2-digit"})
|
|
511
|
+
};
|
|
512
|
+
|
|
513
|
+
VARIABLES.SELECTED_TEXT = VARIABLES.SELECTION;
|
|
514
|
+
|
|
515
|
+
function date(dateFormat) {
|
|
516
|
+
var str = new Date().toLocaleString("en-us", dateFormat);
|
|
517
|
+
return str.length == 1 ? "0" + str : str;
|
|
518
|
+
}
|
|
443
519
|
|
|
444
520
|
var SnippetManager = function() {
|
|
445
521
|
this.snippetMap = {};
|
|
@@ -450,41 +526,40 @@ var SnippetManager = function() {
|
|
|
450
526
|
oop.implement(this, EventEmitter);
|
|
451
527
|
|
|
452
528
|
this.getTokenizer = function() {
|
|
453
|
-
|
|
529
|
+
return SnippetManager.$tokenizer || this.createTokenizer();
|
|
530
|
+
};
|
|
531
|
+
|
|
532
|
+
this.createTokenizer = function() {
|
|
533
|
+
function TabstopToken(str) {
|
|
454
534
|
str = str.substr(1);
|
|
455
|
-
if (/^\d+$/.test(str)
|
|
535
|
+
if (/^\d+$/.test(str))
|
|
456
536
|
return [{tabstopId: parseInt(str, 10)}];
|
|
457
537
|
return [{text: str}];
|
|
458
538
|
}
|
|
459
539
|
function escape(ch) {
|
|
460
540
|
return "(?:[^\\\\" + ch + "]|\\\\.)";
|
|
461
541
|
}
|
|
542
|
+
var formatMatcher = {
|
|
543
|
+
regex: "/(" + escape("/") + "+)/",
|
|
544
|
+
onMatch: function(val, state, stack) {
|
|
545
|
+
var ts = stack[0];
|
|
546
|
+
ts.fmtString = true;
|
|
547
|
+
ts.guard = val.slice(1, -1);
|
|
548
|
+
ts.flag = "";
|
|
549
|
+
return "";
|
|
550
|
+
},
|
|
551
|
+
next: "formatString"
|
|
552
|
+
};
|
|
553
|
+
|
|
462
554
|
SnippetManager.$tokenizer = new Tokenizer({
|
|
463
555
|
start: [
|
|
464
|
-
{regex: /:/, onMatch: function(val, state, stack) {
|
|
465
|
-
if (stack.length && stack[0].expectIf) {
|
|
466
|
-
stack[0].expectIf = false;
|
|
467
|
-
stack[0].elseBranch = stack[0];
|
|
468
|
-
return [stack[0]];
|
|
469
|
-
}
|
|
470
|
-
return ":";
|
|
471
|
-
}},
|
|
472
556
|
{regex: /\\./, onMatch: function(val, state, stack) {
|
|
473
557
|
var ch = val[1];
|
|
474
558
|
if (ch == "}" && stack.length) {
|
|
475
559
|
val = ch;
|
|
476
|
-
}else if ("`$\\".indexOf(ch) != -1) {
|
|
560
|
+
} else if ("`$\\".indexOf(ch) != -1) {
|
|
477
561
|
val = ch;
|
|
478
|
-
} else if (stack.inFormatString) {
|
|
479
|
-
if (ch == "n")
|
|
480
|
-
val = "\n";
|
|
481
|
-
else if (ch == "t")
|
|
482
|
-
val = "\n";
|
|
483
|
-
else if ("ulULE".indexOf(ch) != -1) {
|
|
484
|
-
val = {changeCase: ch, local: ch > "a"};
|
|
485
|
-
}
|
|
486
562
|
}
|
|
487
|
-
|
|
488
563
|
return [val];
|
|
489
564
|
}},
|
|
490
565
|
{regex: /}/, onMatch: function(val, state, stack) {
|
|
@@ -492,7 +567,7 @@ var SnippetManager = function() {
|
|
|
492
567
|
}},
|
|
493
568
|
{regex: /\$(?:\d+|\w+)/, onMatch: TabstopToken},
|
|
494
569
|
{regex: /\$\{[\dA-Z_a-z]+/, onMatch: function(str, state, stack) {
|
|
495
|
-
var t = TabstopToken(str.substr(1)
|
|
570
|
+
var t = TabstopToken(str.substr(1));
|
|
496
571
|
stack.unshift(t[0]);
|
|
497
572
|
return t;
|
|
498
573
|
}, next: "snippetVar"},
|
|
@@ -500,39 +575,78 @@ var SnippetManager = function() {
|
|
|
500
575
|
],
|
|
501
576
|
snippetVar: [
|
|
502
577
|
{regex: "\\|" + escape("\\|") + "*\\|", onMatch: function(val, state, stack) {
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
val = this.splitRegex.exec(val);
|
|
511
|
-
ts.guard = val[1];
|
|
512
|
-
ts.fmt = val[2];
|
|
513
|
-
ts.flag = val[3];
|
|
514
|
-
return "";
|
|
515
|
-
}, next: "start"},
|
|
516
|
-
{regex: "`" + escape("`") + "*`", onMatch: function(val, state, stack) {
|
|
517
|
-
stack[0].code = val.splice(1, -1);
|
|
518
|
-
return "";
|
|
519
|
-
}, next: "start"},
|
|
520
|
-
{regex: "\\?", onMatch: function(val, state, stack) {
|
|
521
|
-
if (stack[0])
|
|
522
|
-
stack[0].expectIf = true;
|
|
578
|
+
var choices = val.slice(1, -1).replace(/\\[,|\\]|,/g, function(operator) {
|
|
579
|
+
return operator.length == 2 ? operator[1] : "\x00";
|
|
580
|
+
}).split("\x00").map(function(value){
|
|
581
|
+
return {value: value};
|
|
582
|
+
});
|
|
583
|
+
stack[0].choices = choices;
|
|
584
|
+
return [choices[0]];
|
|
523
585
|
}, next: "start"},
|
|
586
|
+
formatMatcher,
|
|
524
587
|
{regex: "([^:}\\\\]|\\\\.)*:?", token: "", next: "start"}
|
|
525
588
|
],
|
|
526
589
|
formatString: [
|
|
527
|
-
{regex:
|
|
528
|
-
|
|
529
|
-
|
|
590
|
+
{regex: /:/, onMatch: function(val, state, stack) {
|
|
591
|
+
if (stack.length && stack[0].expectElse) {
|
|
592
|
+
stack[0].expectElse = false;
|
|
593
|
+
stack[0].ifEnd = {elseEnd: stack[0]};
|
|
594
|
+
return [stack[0].ifEnd];
|
|
595
|
+
}
|
|
596
|
+
return ":";
|
|
597
|
+
}},
|
|
598
|
+
{regex: /\\./, onMatch: function(val, state, stack) {
|
|
599
|
+
var ch = val[1];
|
|
600
|
+
if (ch == "}" && stack.length)
|
|
601
|
+
val = ch;
|
|
602
|
+
else if ("`$\\".indexOf(ch) != -1)
|
|
603
|
+
val = ch;
|
|
604
|
+
else if (ch == "n")
|
|
605
|
+
val = "\n";
|
|
606
|
+
else if (ch == "t")
|
|
607
|
+
val = "\t";
|
|
608
|
+
else if ("ulULE".indexOf(ch) != -1)
|
|
609
|
+
val = {changeCase: ch, local: ch > "a"};
|
|
610
|
+
return [val];
|
|
611
|
+
}},
|
|
612
|
+
{regex: "/\\w*}", onMatch: function(val, state, stack) {
|
|
613
|
+
var next = stack.shift();
|
|
614
|
+
if (next)
|
|
615
|
+
next.flag = val.slice(1, -1);
|
|
616
|
+
this.next = next && next.tabstopId ? "start" : "";
|
|
617
|
+
return [next || val];
|
|
618
|
+
}, next: "start"},
|
|
619
|
+
{regex: /\$(?:\d+|\w+)/, onMatch: function(val, state, stack) {
|
|
620
|
+
return [{text: val.slice(1)}];
|
|
621
|
+
}},
|
|
622
|
+
{regex: /\${\w+/, onMatch: function(val, state, stack) {
|
|
623
|
+
var token = {text: val.slice(2)};
|
|
624
|
+
stack.unshift(token);
|
|
625
|
+
return [token];
|
|
626
|
+
}, next: "formatStringVar"},
|
|
627
|
+
{regex: /\n/, token: "newline", merge: false},
|
|
628
|
+
{regex: /}/, onMatch: function(val, state, stack) {
|
|
629
|
+
var next = stack.shift();
|
|
630
|
+
this.next = next && next.tabstopId ? "start" : "";
|
|
631
|
+
return [next || val];
|
|
530
632
|
}, next: "start"}
|
|
633
|
+
],
|
|
634
|
+
formatStringVar: [
|
|
635
|
+
{regex: /:\/\w+}/, onMatch: function(val, state, stack) {
|
|
636
|
+
var ts = stack[0];
|
|
637
|
+
ts.formatFunction = val.slice(2, -1);
|
|
638
|
+
return [stack.shift()];
|
|
639
|
+
}, next: "formatString"},
|
|
640
|
+
formatMatcher,
|
|
641
|
+
{regex: /:[\?\-+]?/, onMatch: function(val, state, stack) {
|
|
642
|
+
if (val[1] == "+")
|
|
643
|
+
stack[0].ifEnd = stack[0];
|
|
644
|
+
if (val[1] == "?")
|
|
645
|
+
stack[0].expectElse = true;
|
|
646
|
+
}, next: "formatString"},
|
|
647
|
+
{regex: "([^:}\\\\]|\\\\.)*:?", token: "", next: "formatString"}
|
|
531
648
|
]
|
|
532
649
|
});
|
|
533
|
-
SnippetManager.prototype.getTokenizer = function() {
|
|
534
|
-
return SnippetManager.$tokenizer;
|
|
535
|
-
};
|
|
536
650
|
return SnippetManager.$tokenizer;
|
|
537
651
|
};
|
|
538
652
|
|
|
@@ -541,59 +655,33 @@ var SnippetManager = function() {
|
|
|
541
655
|
return x.value || x;
|
|
542
656
|
});
|
|
543
657
|
};
|
|
544
|
-
|
|
545
|
-
this
|
|
546
|
-
if (
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
return (this.variables.__ || {})[name];
|
|
552
|
-
}
|
|
658
|
+
|
|
659
|
+
this.getVariableValue = function(editor, name, indentation) {
|
|
660
|
+
if (/^\d+$/.test(name))
|
|
661
|
+
return (this.variables.__ || {})[name] || "";
|
|
662
|
+
if (/^[A-Z]\d+$/.test(name))
|
|
663
|
+
return (this.variables[name[0] + "__"] || {})[name.substr(1)] || "";
|
|
664
|
+
|
|
553
665
|
name = name.replace(/^TM_/, "");
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
var r = s.getWordRange();
|
|
561
|
-
case "SELECTION":
|
|
562
|
-
case "SELECTED_TEXT":
|
|
563
|
-
return s.getTextRange(r);
|
|
564
|
-
case "CURRENT_LINE":
|
|
565
|
-
return s.getLine(editor.getCursorPosition().row);
|
|
566
|
-
case "PREV_LINE": // not possible in textmate
|
|
567
|
-
return s.getLine(editor.getCursorPosition().row - 1);
|
|
568
|
-
case "LINE_INDEX":
|
|
569
|
-
return editor.getCursorPosition().column;
|
|
570
|
-
case "LINE_NUMBER":
|
|
571
|
-
return editor.getCursorPosition().row + 1;
|
|
572
|
-
case "SOFT_TABS":
|
|
573
|
-
return s.getUseSoftTabs() ? "YES" : "NO";
|
|
574
|
-
case "TAB_SIZE":
|
|
575
|
-
return s.getTabSize();
|
|
576
|
-
case "FILENAME":
|
|
577
|
-
case "FILEPATH":
|
|
578
|
-
return "";
|
|
579
|
-
case "FULLNAME":
|
|
580
|
-
return "Ace";
|
|
581
|
-
}
|
|
582
|
-
};
|
|
583
|
-
this.variables = {};
|
|
584
|
-
this.getVariableValue = function(editor, varName) {
|
|
585
|
-
if (this.variables.hasOwnProperty(varName))
|
|
586
|
-
return this.variables[varName](editor, varName) || "";
|
|
587
|
-
return this.$getDefaultValue(editor, varName) || "";
|
|
666
|
+
if (!this.variables.hasOwnProperty(name))
|
|
667
|
+
return "";
|
|
668
|
+
var value = this.variables[name];
|
|
669
|
+
if (typeof value == "function")
|
|
670
|
+
value = this.variables[name](editor, name, indentation);
|
|
671
|
+
return value == null ? "" : value;
|
|
588
672
|
};
|
|
673
|
+
|
|
674
|
+
this.variables = VARIABLES;
|
|
589
675
|
this.tmStrFormat = function(str, ch, editor) {
|
|
676
|
+
if (!ch.fmt) return str;
|
|
590
677
|
var flag = ch.flag || "";
|
|
591
678
|
var re = ch.guard;
|
|
592
|
-
re = new RegExp(re, flag.replace(/[^
|
|
593
|
-
var fmtTokens = this.tokenizeTmSnippet(ch.fmt, "formatString");
|
|
679
|
+
re = new RegExp(re, flag.replace(/[^gim]/g, ""));
|
|
680
|
+
var fmtTokens = typeof ch.fmt == "string" ? this.tokenizeTmSnippet(ch.fmt, "formatString") : ch.fmt;
|
|
594
681
|
var _self = this;
|
|
595
682
|
var formatted = str.replace(re, function() {
|
|
596
|
-
_self.variables.__
|
|
683
|
+
var oldArgs = _self.variables.__;
|
|
684
|
+
_self.variables.__ = [].slice.call(arguments);
|
|
597
685
|
var fmtParts = _self.resolveVariables(fmtTokens, editor);
|
|
598
686
|
var gChangeCase = "E";
|
|
599
687
|
for (var i = 0; i < fmtParts.length; i++) {
|
|
@@ -618,40 +706,63 @@ var SnippetManager = function() {
|
|
|
618
706
|
fmtParts[i] = ch.toLowerCase();
|
|
619
707
|
}
|
|
620
708
|
}
|
|
709
|
+
_self.variables.__ = oldArgs;
|
|
621
710
|
return fmtParts.join("");
|
|
622
711
|
});
|
|
623
|
-
this.variables.__ = null;
|
|
624
712
|
return formatted;
|
|
625
713
|
};
|
|
714
|
+
|
|
715
|
+
this.tmFormatFunction = function(str, ch, editor) {
|
|
716
|
+
if (ch.formatFunction == "upcase")
|
|
717
|
+
return str.toUpperCase();
|
|
718
|
+
if (ch.formatFunction == "downcase")
|
|
719
|
+
return str.toLowerCase();
|
|
720
|
+
return str;
|
|
721
|
+
};
|
|
626
722
|
|
|
627
723
|
this.resolveVariables = function(snippet, editor) {
|
|
628
724
|
var result = [];
|
|
725
|
+
var indentation = "";
|
|
726
|
+
var afterNewLine = true;
|
|
629
727
|
for (var i = 0; i < snippet.length; i++) {
|
|
630
728
|
var ch = snippet[i];
|
|
631
729
|
if (typeof ch == "string") {
|
|
632
730
|
result.push(ch);
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
731
|
+
if (ch == "\n") {
|
|
732
|
+
afterNewLine = true;
|
|
733
|
+
indentation = "";
|
|
734
|
+
}
|
|
735
|
+
else if (afterNewLine) {
|
|
736
|
+
indentation = /^\t*/.exec(ch)[0];
|
|
737
|
+
afterNewLine = /\S/.test(ch);
|
|
738
|
+
}
|
|
638
739
|
continue;
|
|
639
|
-
}
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
740
|
+
}
|
|
741
|
+
if (!ch) continue;
|
|
742
|
+
afterNewLine = false;
|
|
743
|
+
|
|
744
|
+
if (ch.fmtString) {
|
|
745
|
+
var j = snippet.indexOf(ch, i + 1);
|
|
746
|
+
if (j == -1) j = snippet.length;
|
|
747
|
+
ch.fmt = snippet.slice(i + 1, j);
|
|
748
|
+
i = j;
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
if (ch.text) {
|
|
752
|
+
var value = this.getVariableValue(editor, ch.text, indentation) + "";
|
|
753
|
+
if (ch.fmtString)
|
|
754
|
+
value = this.tmStrFormat(value, ch, editor);
|
|
755
|
+
if (ch.formatFunction)
|
|
756
|
+
value = this.tmFormatFunction(value, ch, editor);
|
|
757
|
+
|
|
758
|
+
if (value && !ch.ifEnd) {
|
|
759
|
+
result.push(value);
|
|
760
|
+
gotoNext(ch);
|
|
761
|
+
} else if (!value && ch.ifEnd) {
|
|
762
|
+
gotoNext(ch.ifEnd);
|
|
654
763
|
}
|
|
764
|
+
} else if (ch.elseEnd) {
|
|
765
|
+
gotoNext(ch.elseEnd);
|
|
655
766
|
} else if (ch.tabstopId != null) {
|
|
656
767
|
result.push(ch);
|
|
657
768
|
} else if (ch.changeCase != null) {
|
|
@@ -695,9 +806,12 @@ var SnippetManager = function() {
|
|
|
695
806
|
ts = tabstops[id] = [];
|
|
696
807
|
ts.index = id;
|
|
697
808
|
ts.value = "";
|
|
809
|
+
ts.parents = {};
|
|
698
810
|
}
|
|
699
811
|
if (ts.indexOf(p) !== -1)
|
|
700
812
|
return;
|
|
813
|
+
if (p.choices && !ts.choices)
|
|
814
|
+
ts.choices = p.choices;
|
|
701
815
|
ts.push(p);
|
|
702
816
|
var i1 = tokens.indexOf(p, i + 1);
|
|
703
817
|
if (i1 === -1)
|
|
@@ -732,19 +846,24 @@ var SnippetManager = function() {
|
|
|
732
846
|
if (typeof p != "object")
|
|
733
847
|
continue;
|
|
734
848
|
var id = p.tabstopId;
|
|
849
|
+
var ts = tabstops[id];
|
|
735
850
|
var i1 = tokens.indexOf(p, i + 1);
|
|
736
851
|
if (expanding[id]) {
|
|
737
|
-
if (expanding[id] === p)
|
|
738
|
-
expanding[id]
|
|
852
|
+
if (expanding[id] === p) {
|
|
853
|
+
delete expanding[id];
|
|
854
|
+
Object.keys(expanding).forEach(function(parentId) {
|
|
855
|
+
ts.parents[parentId] = true;
|
|
856
|
+
});
|
|
857
|
+
}
|
|
739
858
|
continue;
|
|
740
859
|
}
|
|
741
|
-
|
|
742
|
-
var ts = tabstops[id];
|
|
743
|
-
var arg = typeof ts.value == "string" ? [ts.value] : copyValue(ts.value);
|
|
744
|
-
arg.unshift(i + 1, Math.max(0, i1 - i));
|
|
745
|
-
arg.push(p);
|
|
746
860
|
expanding[id] = p;
|
|
747
|
-
|
|
861
|
+
var value = ts.value;
|
|
862
|
+
if (typeof value !== "string")
|
|
863
|
+
value = copyValue(value);
|
|
864
|
+
else if (p.fmt)
|
|
865
|
+
value = this.tmStrFormat(value, p, editor);
|
|
866
|
+
tokens.splice.apply(tokens, [i + 1, Math.max(0, i1 - i)].concat(value, p));
|
|
748
867
|
|
|
749
868
|
if (ts.indexOf(p) === -1)
|
|
750
869
|
ts.push(p);
|
|
@@ -760,7 +879,7 @@ var SnippetManager = function() {
|
|
|
760
879
|
} else
|
|
761
880
|
column += t.length;
|
|
762
881
|
text += t;
|
|
763
|
-
} else {
|
|
882
|
+
} else if (t) {
|
|
764
883
|
if (!t.start)
|
|
765
884
|
t.start = {row: row, column: column};
|
|
766
885
|
else
|
|
@@ -931,6 +1050,12 @@ var SnippetManager = function() {
|
|
|
931
1050
|
}
|
|
932
1051
|
snippetMap[scope].push(s);
|
|
933
1052
|
|
|
1053
|
+
if (s.prefix)
|
|
1054
|
+
s.tabTrigger = s.prefix;
|
|
1055
|
+
|
|
1056
|
+
if (!s.content && s.body)
|
|
1057
|
+
s.content = Array.isArray(s.body) ? s.body.join("\n") : s.body;
|
|
1058
|
+
|
|
934
1059
|
if (s.tabTrigger && !s.trigger) {
|
|
935
1060
|
if (!s.guard && /^\w/.test(s.tabTrigger))
|
|
936
1061
|
s.guard = "\\b";
|
|
@@ -947,10 +1072,13 @@ var SnippetManager = function() {
|
|
|
947
1072
|
s.endTriggerRe = new RegExp(s.endTrigger);
|
|
948
1073
|
}
|
|
949
1074
|
|
|
950
|
-
if (snippets
|
|
951
|
-
addSnippet(snippets);
|
|
952
|
-
else if (Array.isArray(snippets))
|
|
1075
|
+
if (Array.isArray(snippets)) {
|
|
953
1076
|
snippets.forEach(addSnippet);
|
|
1077
|
+
} else {
|
|
1078
|
+
Object.keys(snippets).forEach(function(key) {
|
|
1079
|
+
addSnippet(snippets[key]);
|
|
1080
|
+
});
|
|
1081
|
+
}
|
|
954
1082
|
|
|
955
1083
|
this._signal("registerSnippets", {scope: scope});
|
|
956
1084
|
};
|
|
@@ -1000,7 +1128,7 @@ var SnippetManager = function() {
|
|
|
1000
1128
|
snippet.tabTrigger = val.match(/^\S*/)[0];
|
|
1001
1129
|
if (!snippet.name)
|
|
1002
1130
|
snippet.name = val;
|
|
1003
|
-
} else {
|
|
1131
|
+
} else if (key) {
|
|
1004
1132
|
snippet[key] = val;
|
|
1005
1133
|
}
|
|
1006
1134
|
}
|
|
@@ -1062,66 +1190,44 @@ var TabstopManager = function(editor) {
|
|
|
1062
1190
|
};
|
|
1063
1191
|
|
|
1064
1192
|
this.onChange = function(delta) {
|
|
1065
|
-
var changeRange = delta;
|
|
1066
1193
|
var isRemove = delta.action[0] == "r";
|
|
1067
|
-
var
|
|
1068
|
-
var
|
|
1069
|
-
var
|
|
1070
|
-
var
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
return this.detach();
|
|
1085
|
-
}
|
|
1086
|
-
var ranges = this.ranges;
|
|
1087
|
-
for (var i = 0; i < ranges.length; i++) {
|
|
1088
|
-
var r = ranges[i];
|
|
1089
|
-
if (r.end.row < start.row)
|
|
1090
|
-
continue;
|
|
1091
|
-
|
|
1092
|
-
if (isRemove && comparePoints(start, r.start) < 0 && comparePoints(end, r.end) > 0) {
|
|
1093
|
-
this.removeRange(r);
|
|
1094
|
-
i--;
|
|
1095
|
-
continue;
|
|
1194
|
+
var selectedTabstop = this.selectedTabstop || {};
|
|
1195
|
+
var parents = selectedTabstop.parents || {};
|
|
1196
|
+
var tabstops = (this.tabstops || []).slice();
|
|
1197
|
+
for (var i = 0; i < tabstops.length; i++) {
|
|
1198
|
+
var ts = tabstops[i];
|
|
1199
|
+
var active = ts == selectedTabstop || parents[ts.index];
|
|
1200
|
+
ts.rangeList.$bias = active ? 0 : 1;
|
|
1201
|
+
|
|
1202
|
+
if (delta.action == "remove" && ts !== selectedTabstop) {
|
|
1203
|
+
var parentActive = ts.parents && ts.parents[selectedTabstop.index];
|
|
1204
|
+
var startIndex = ts.rangeList.pointIndex(delta.start, parentActive);
|
|
1205
|
+
startIndex = startIndex < 0 ? -startIndex - 1 : startIndex + 1;
|
|
1206
|
+
var endIndex = ts.rangeList.pointIndex(delta.end, parentActive);
|
|
1207
|
+
endIndex = endIndex < 0 ? -endIndex - 1 : endIndex - 1;
|
|
1208
|
+
var toRemove = ts.rangeList.ranges.slice(startIndex, endIndex);
|
|
1209
|
+
for (var j = 0; j < toRemove.length; j++)
|
|
1210
|
+
this.removeRange(toRemove[j]);
|
|
1096
1211
|
}
|
|
1097
|
-
|
|
1098
|
-
if (r.start.row == startRow && r.start.column > start.column)
|
|
1099
|
-
r.start.column += colDiff;
|
|
1100
|
-
if (r.end.row == startRow && r.end.column >= start.column)
|
|
1101
|
-
r.end.column += colDiff;
|
|
1102
|
-
if (r.start.row >= startRow)
|
|
1103
|
-
r.start.row += lineDif;
|
|
1104
|
-
if (r.end.row >= startRow)
|
|
1105
|
-
r.end.row += lineDif;
|
|
1106
|
-
|
|
1107
|
-
if (comparePoints(r.start, r.end) > 0)
|
|
1108
|
-
this.removeRange(r);
|
|
1212
|
+
ts.rangeList.$onChange(delta);
|
|
1109
1213
|
}
|
|
1110
|
-
|
|
1214
|
+
var session = this.editor.session;
|
|
1215
|
+
if (!this.$inChange && isRemove && session.getLength() == 1 && !session.getValue())
|
|
1111
1216
|
this.detach();
|
|
1112
1217
|
};
|
|
1113
1218
|
this.updateLinkedFields = function() {
|
|
1114
1219
|
var ts = this.selectedTabstop;
|
|
1115
|
-
if (!ts || !ts.hasLinkedRanges)
|
|
1220
|
+
if (!ts || !ts.hasLinkedRanges || !ts.firstNonLinked)
|
|
1116
1221
|
return;
|
|
1117
1222
|
this.$inChange = true;
|
|
1118
1223
|
var session = this.editor.session;
|
|
1119
1224
|
var text = session.getTextRange(ts.firstNonLinked);
|
|
1120
|
-
for (var i = ts.length; i
|
|
1225
|
+
for (var i = 0; i < ts.length; i++) {
|
|
1121
1226
|
var range = ts[i];
|
|
1122
1227
|
if (!range.linked)
|
|
1123
1228
|
continue;
|
|
1124
|
-
var
|
|
1229
|
+
var original = range.original;
|
|
1230
|
+
var fmt = exports.snippetManager.tmStrFormat(text, original, this.editor);
|
|
1125
1231
|
session.replace(range, fmt);
|
|
1126
1232
|
}
|
|
1127
1233
|
this.$inChange = false;
|
|
@@ -1136,7 +1242,7 @@ var TabstopManager = function(editor) {
|
|
|
1136
1242
|
var lead = this.editor.selection.lead;
|
|
1137
1243
|
var anchor = this.editor.selection.anchor;
|
|
1138
1244
|
var isEmpty = this.editor.selection.isEmpty();
|
|
1139
|
-
for (var i = this.ranges.length; i
|
|
1245
|
+
for (var i = 0; i < this.ranges.length; i++) {
|
|
1140
1246
|
if (this.ranges[i].linked)
|
|
1141
1247
|
continue;
|
|
1142
1248
|
var containsLead = this.ranges[i].contains(lead.row, lead.column);
|
|
@@ -1170,23 +1276,27 @@ var TabstopManager = function(editor) {
|
|
|
1170
1276
|
return;
|
|
1171
1277
|
|
|
1172
1278
|
this.selectedTabstop = ts;
|
|
1173
|
-
|
|
1279
|
+
var range = ts.firstNonLinked || ts;
|
|
1280
|
+
if (ts.choices) range.cursor = range.start;
|
|
1281
|
+
if (!this.editor.inVirtualSelectionMode) {
|
|
1174
1282
|
var sel = this.editor.multiSelect;
|
|
1175
|
-
sel.toSingleRange(
|
|
1176
|
-
for (var i = ts.length; i
|
|
1283
|
+
sel.toSingleRange(range);
|
|
1284
|
+
for (var i = 0; i < ts.length; i++) {
|
|
1177
1285
|
if (ts.hasLinkedRanges && ts[i].linked)
|
|
1178
1286
|
continue;
|
|
1179
1287
|
sel.addRange(ts[i].clone(), true);
|
|
1180
1288
|
}
|
|
1181
|
-
if (sel.ranges[0])
|
|
1182
|
-
sel.addRange(sel.ranges[0].clone());
|
|
1183
1289
|
} else {
|
|
1184
|
-
this.editor.selection.
|
|
1290
|
+
this.editor.selection.fromOrientedRange(range);
|
|
1185
1291
|
}
|
|
1186
1292
|
|
|
1187
1293
|
this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler);
|
|
1294
|
+
if (this.selectedTabstop && this.selectedTabstop.choices)
|
|
1295
|
+
this.editor.execCommand("startAutocomplete", {matches: this.selectedTabstop.choices});
|
|
1188
1296
|
};
|
|
1189
1297
|
this.addTabstops = function(tabstops, start, end) {
|
|
1298
|
+
var useLink = this.useLink || !this.editor.getOption("enableMultiselect");
|
|
1299
|
+
|
|
1190
1300
|
if (!this.$openTabstops)
|
|
1191
1301
|
this.$openTabstops = [];
|
|
1192
1302
|
if (!tabstops[0]) {
|
|
@@ -1202,8 +1312,8 @@ var TabstopManager = function(editor) {
|
|
|
1202
1312
|
var ranges = this.ranges;
|
|
1203
1313
|
tabstops.forEach(function(ts, index) {
|
|
1204
1314
|
var dest = this.$openTabstops[index] || ts;
|
|
1205
|
-
|
|
1206
|
-
for (var i = ts.length; i
|
|
1315
|
+
|
|
1316
|
+
for (var i = 0; i < ts.length; i++) {
|
|
1207
1317
|
var p = ts[i];
|
|
1208
1318
|
var range = Range.fromPoints(p.start, p.end || p.start);
|
|
1209
1319
|
movePoint(range.start, start);
|
|
@@ -1215,7 +1325,7 @@ var TabstopManager = function(editor) {
|
|
|
1215
1325
|
dest.unshift(range);
|
|
1216
1326
|
else
|
|
1217
1327
|
dest[i] = range;
|
|
1218
|
-
if (p.fmtString) {
|
|
1328
|
+
if (p.fmtString || (dest.firstNonLinked && useLink)) {
|
|
1219
1329
|
range.linked = true;
|
|
1220
1330
|
dest.hasLinkedRanges = true;
|
|
1221
1331
|
} else if (!dest.firstNonLinked)
|
|
@@ -1228,6 +1338,9 @@ var TabstopManager = function(editor) {
|
|
|
1228
1338
|
this.$openTabstops[index] = dest;
|
|
1229
1339
|
}
|
|
1230
1340
|
this.addTabstopMarkers(dest);
|
|
1341
|
+
dest.rangeList = dest.rangeList || new RangeList();
|
|
1342
|
+
dest.rangeList.$bias = 0;
|
|
1343
|
+
dest.rangeList.addList(dest);
|
|
1231
1344
|
}, this);
|
|
1232
1345
|
|
|
1233
1346
|
if (arg.length > 2) {
|
|
@@ -1253,9 +1366,11 @@ var TabstopManager = function(editor) {
|
|
|
1253
1366
|
};
|
|
1254
1367
|
this.removeRange = function(range) {
|
|
1255
1368
|
var i = range.tabstop.indexOf(range);
|
|
1256
|
-
range.tabstop.splice(i, 1);
|
|
1369
|
+
if (i != -1) range.tabstop.splice(i, 1);
|
|
1257
1370
|
i = this.ranges.indexOf(range);
|
|
1258
|
-
this.ranges.splice(i, 1);
|
|
1371
|
+
if (i != -1) this.ranges.splice(i, 1);
|
|
1372
|
+
i = range.tabstop.rangeList.ranges.indexOf(range);
|
|
1373
|
+
if (i != -1) range.tabstop.splice(i, 1);
|
|
1259
1374
|
this.editor.session.removeMarker(range.markerId);
|
|
1260
1375
|
if (!range.tabstop.length) {
|
|
1261
1376
|
i = this.tabstops.indexOf(range.tabstop);
|
|
@@ -1268,39 +1383,24 @@ var TabstopManager = function(editor) {
|
|
|
1268
1383
|
|
|
1269
1384
|
this.keyboardHandler = new HashHandler();
|
|
1270
1385
|
this.keyboardHandler.bindKeys({
|
|
1271
|
-
"Tab": function(
|
|
1272
|
-
if (exports.snippetManager && exports.snippetManager.expandWithTab(
|
|
1386
|
+
"Tab": function(editor) {
|
|
1387
|
+
if (exports.snippetManager && exports.snippetManager.expandWithTab(editor))
|
|
1273
1388
|
return;
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
ed.tabstopManager.tabNext(1);
|
|
1277
|
-
},
|
|
1278
|
-
"Shift-Tab": function(ed) {
|
|
1279
|
-
ed.tabstopManager.tabNext(-1);
|
|
1389
|
+
editor.tabstopManager.tabNext(1);
|
|
1390
|
+
editor.renderer.scrollCursorIntoView();
|
|
1280
1391
|
},
|
|
1281
|
-
"
|
|
1282
|
-
|
|
1392
|
+
"Shift-Tab": function(editor) {
|
|
1393
|
+
editor.tabstopManager.tabNext(-1);
|
|
1394
|
+
editor.renderer.scrollCursorIntoView();
|
|
1283
1395
|
},
|
|
1284
|
-
"
|
|
1285
|
-
|
|
1396
|
+
"Esc": function(editor) {
|
|
1397
|
+
editor.tabstopManager.detach();
|
|
1286
1398
|
}
|
|
1287
1399
|
});
|
|
1288
1400
|
}).call(TabstopManager.prototype);
|
|
1289
1401
|
|
|
1290
1402
|
|
|
1291
1403
|
|
|
1292
|
-
var changeTracker = {};
|
|
1293
|
-
changeTracker.onChange = Anchor.prototype.onChange;
|
|
1294
|
-
changeTracker.setPosition = function(row, column) {
|
|
1295
|
-
this.pos.row = row;
|
|
1296
|
-
this.pos.column = column;
|
|
1297
|
-
};
|
|
1298
|
-
changeTracker.update = function(pos, delta, $insertRight) {
|
|
1299
|
-
this.$insertRight = $insertRight;
|
|
1300
|
-
this.pos = pos;
|
|
1301
|
-
this.onChange(delta);
|
|
1302
|
-
};
|
|
1303
|
-
|
|
1304
1404
|
var movePoint = function(point, diff) {
|
|
1305
1405
|
if (point.row == 0)
|
|
1306
1406
|
point.column += diff.column;
|
|
@@ -1314,14 +1414,14 @@ var moveRelative = function(point, start) {
|
|
|
1314
1414
|
};
|
|
1315
1415
|
|
|
1316
1416
|
|
|
1317
|
-
|
|
1417
|
+
dom.importCssString("\
|
|
1318
1418
|
.ace_snippet-marker {\
|
|
1319
1419
|
-moz-box-sizing: border-box;\
|
|
1320
1420
|
box-sizing: border-box;\
|
|
1321
1421
|
background: rgba(194, 193, 208, 0.09);\
|
|
1322
1422
|
border: 1px dotted rgba(211, 208, 235, 0.62);\
|
|
1323
1423
|
position: absolute;\
|
|
1324
|
-
}");
|
|
1424
|
+
}", "snippets.css", false);
|
|
1325
1425
|
|
|
1326
1426
|
exports.snippetManager = new SnippetManager();
|
|
1327
1427
|
|
|
@@ -1338,16 +1438,16 @@ var Editor = require("./editor").Editor;
|
|
|
1338
1438
|
|
|
1339
1439
|
});
|
|
1340
1440
|
|
|
1341
|
-
ace.define("ace/autocomplete",[
|
|
1441
|
+
ace.define("ace/autocomplete",[], function(require, exports, module) {
|
|
1342
1442
|
"use strict";
|
|
1343
1443
|
|
|
1344
1444
|
var HashHandler = require("./keyboard/hash_handler").HashHandler;
|
|
1345
1445
|
var AcePopup = require("./autocomplete/popup").AcePopup;
|
|
1346
1446
|
var util = require("./autocomplete/util");
|
|
1347
|
-
var event = require("./lib/event");
|
|
1348
1447
|
var lang = require("./lib/lang");
|
|
1349
1448
|
var dom = require("./lib/dom");
|
|
1350
1449
|
var snippetManager = require("./snippets").snippetManager;
|
|
1450
|
+
var config = require("./config");
|
|
1351
1451
|
|
|
1352
1452
|
var Autocomplete = function() {
|
|
1353
1453
|
this.autoInsert = false;
|
|
@@ -1418,6 +1518,7 @@ var Autocomplete = function() {
|
|
|
1418
1518
|
} else if (keepPopupPosition && !prefix) {
|
|
1419
1519
|
this.detach();
|
|
1420
1520
|
}
|
|
1521
|
+
this.changeTimer.cancel();
|
|
1421
1522
|
};
|
|
1422
1523
|
|
|
1423
1524
|
this.detach = function() {
|
|
@@ -1480,13 +1581,15 @@ var Autocomplete = function() {
|
|
|
1480
1581
|
if (!data)
|
|
1481
1582
|
return false;
|
|
1482
1583
|
|
|
1584
|
+
var completions = this.completions;
|
|
1585
|
+
this.editor.startOperation({command: {name: "insertMatch"}});
|
|
1483
1586
|
if (data.completer && data.completer.insertMatch) {
|
|
1484
1587
|
data.completer.insertMatch(this.editor, data);
|
|
1485
1588
|
} else {
|
|
1486
|
-
if (
|
|
1589
|
+
if (completions.filterText) {
|
|
1487
1590
|
var ranges = this.editor.selection.getAllRanges();
|
|
1488
1591
|
for (var i = 0, range; range = ranges[i]; i++) {
|
|
1489
|
-
range.start.column -=
|
|
1592
|
+
range.start.column -= completions.filterText.length;
|
|
1490
1593
|
this.editor.session.remove(range);
|
|
1491
1594
|
}
|
|
1492
1595
|
}
|
|
@@ -1495,7 +1598,9 @@ var Autocomplete = function() {
|
|
|
1495
1598
|
else
|
|
1496
1599
|
this.editor.execCommand("insertstring", data.value || data);
|
|
1497
1600
|
}
|
|
1498
|
-
this.
|
|
1601
|
+
if (this.completions == completions)
|
|
1602
|
+
this.detach();
|
|
1603
|
+
this.editor.endOperation();
|
|
1499
1604
|
};
|
|
1500
1605
|
|
|
1501
1606
|
|
|
@@ -1545,7 +1650,7 @@ var Autocomplete = function() {
|
|
|
1545
1650
|
return true;
|
|
1546
1651
|
};
|
|
1547
1652
|
|
|
1548
|
-
this.showPopup = function(editor) {
|
|
1653
|
+
this.showPopup = function(editor, options) {
|
|
1549
1654
|
if (this.editor)
|
|
1550
1655
|
this.detach();
|
|
1551
1656
|
|
|
@@ -1563,10 +1668,10 @@ var Autocomplete = function() {
|
|
|
1563
1668
|
editor.on("mousedown", this.mousedownListener);
|
|
1564
1669
|
editor.on("mousewheel", this.mousewheelListener);
|
|
1565
1670
|
|
|
1566
|
-
this.updateCompletions();
|
|
1671
|
+
this.updateCompletions(false, options);
|
|
1567
1672
|
};
|
|
1568
1673
|
|
|
1569
|
-
this.updateCompletions = function(keepPopupPosition) {
|
|
1674
|
+
this.updateCompletions = function(keepPopupPosition, options) {
|
|
1570
1675
|
if (keepPopupPosition && this.base && this.completions) {
|
|
1571
1676
|
var pos = this.editor.getCursorPosition();
|
|
1572
1677
|
var prefix = this.editor.session.getTextRange({start: this.base, end: pos});
|
|
@@ -1582,20 +1687,23 @@ var Autocomplete = function() {
|
|
|
1582
1687
|
this.openPopup(this.editor, prefix, keepPopupPosition);
|
|
1583
1688
|
return;
|
|
1584
1689
|
}
|
|
1690
|
+
|
|
1691
|
+
if (options && options.matches) {
|
|
1692
|
+
var pos = this.editor.getSelectionRange().start;
|
|
1693
|
+
this.base = this.editor.session.doc.createAnchor(pos.row, pos.column);
|
|
1694
|
+
this.base.$insertRight = true;
|
|
1695
|
+
this.completions = new FilteredList(options.matches);
|
|
1696
|
+
return this.openPopup(this.editor, "", keepPopupPosition);
|
|
1697
|
+
}
|
|
1585
1698
|
var _id = this.gatherCompletionsId;
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
}.bind(this);
|
|
1699
|
+
var detachIfFinished = function(results) {
|
|
1700
|
+
if (!results.finished) return;
|
|
1701
|
+
return this.detach();
|
|
1702
|
+
}.bind(this);
|
|
1591
1703
|
|
|
1704
|
+
var processResults = function(results) {
|
|
1592
1705
|
var prefix = results.prefix;
|
|
1593
|
-
var matches = results
|
|
1594
|
-
|
|
1595
|
-
if (!matches || !matches.length)
|
|
1596
|
-
return detachIfFinished();
|
|
1597
|
-
if (prefix.indexOf(results.prefix) !== 0 || _id != this.gatherCompletionsId)
|
|
1598
|
-
return;
|
|
1706
|
+
var matches = results.matches;
|
|
1599
1707
|
|
|
1600
1708
|
this.completions = new FilteredList(matches);
|
|
1601
1709
|
|
|
@@ -1605,14 +1713,39 @@ var Autocomplete = function() {
|
|
|
1605
1713
|
this.completions.setFilter(prefix);
|
|
1606
1714
|
var filtered = this.completions.filtered;
|
|
1607
1715
|
if (!filtered.length)
|
|
1608
|
-
return detachIfFinished();
|
|
1716
|
+
return detachIfFinished(results);
|
|
1609
1717
|
if (filtered.length == 1 && filtered[0].value == prefix && !filtered[0].snippet)
|
|
1610
|
-
return detachIfFinished();
|
|
1718
|
+
return detachIfFinished(results);
|
|
1611
1719
|
if (this.autoInsert && filtered.length == 1 && results.finished)
|
|
1612
1720
|
return this.insertMatch(filtered[0]);
|
|
1613
1721
|
|
|
1614
1722
|
this.openPopup(this.editor, prefix, keepPopupPosition);
|
|
1723
|
+
}.bind(this);
|
|
1724
|
+
|
|
1725
|
+
var isImmediate = true;
|
|
1726
|
+
var immediateResults = null;
|
|
1727
|
+
this.gatherCompletions(this.editor, function(err, results) {
|
|
1728
|
+
var prefix = results.prefix;
|
|
1729
|
+
var matches = results && results.matches;
|
|
1730
|
+
|
|
1731
|
+
if (!matches || !matches.length)
|
|
1732
|
+
return detachIfFinished(results);
|
|
1733
|
+
if (prefix.indexOf(results.prefix) !== 0 || _id != this.gatherCompletionsId)
|
|
1734
|
+
return;
|
|
1735
|
+
if (isImmediate) {
|
|
1736
|
+
immediateResults = results;
|
|
1737
|
+
return;
|
|
1738
|
+
}
|
|
1739
|
+
|
|
1740
|
+
processResults(results);
|
|
1615
1741
|
}.bind(this));
|
|
1742
|
+
|
|
1743
|
+
isImmediate = false;
|
|
1744
|
+
if (immediateResults) {
|
|
1745
|
+
var results = immediateResults;
|
|
1746
|
+
immediateResults = null;
|
|
1747
|
+
processResults(results);
|
|
1748
|
+
}
|
|
1616
1749
|
};
|
|
1617
1750
|
|
|
1618
1751
|
this.cancelContextMenu = function() {
|
|
@@ -1631,7 +1764,7 @@ var Autocomplete = function() {
|
|
|
1631
1764
|
doc = completer.getDocTooltip(selected);
|
|
1632
1765
|
return doc;
|
|
1633
1766
|
});
|
|
1634
|
-
if (!doc)
|
|
1767
|
+
if (!doc && typeof selected != "string")
|
|
1635
1768
|
doc = selected;
|
|
1636
1769
|
|
|
1637
1770
|
if (typeof doc == "string")
|
|
@@ -1713,17 +1846,47 @@ var Autocomplete = function() {
|
|
|
1713
1846
|
}
|
|
1714
1847
|
};
|
|
1715
1848
|
|
|
1849
|
+
this.destroy = function() {
|
|
1850
|
+
this.detach();
|
|
1851
|
+
if (this.popup) {
|
|
1852
|
+
this.popup.destroy();
|
|
1853
|
+
var el = this.popup.container;
|
|
1854
|
+
if (el && el.parentNode)
|
|
1855
|
+
el.parentNode.removeChild(el);
|
|
1856
|
+
}
|
|
1857
|
+
if (this.editor && this.editor.completer == this)
|
|
1858
|
+
this.editor.completer == null;
|
|
1859
|
+
this.popup = null;
|
|
1860
|
+
};
|
|
1861
|
+
|
|
1716
1862
|
}).call(Autocomplete.prototype);
|
|
1717
1863
|
|
|
1864
|
+
|
|
1865
|
+
Autocomplete.for = function(editor) {
|
|
1866
|
+
if (editor.completer) {
|
|
1867
|
+
return editor.completer;
|
|
1868
|
+
}
|
|
1869
|
+
if (config.get("sharedPopups")) {
|
|
1870
|
+
if (!Autocomplete.$shared)
|
|
1871
|
+
Autocomplete.$sharedInstance = new Autocomplete();
|
|
1872
|
+
editor.completer = Autocomplete.$sharedInstance;
|
|
1873
|
+
} else {
|
|
1874
|
+
editor.completer = new Autocomplete();
|
|
1875
|
+
editor.once("destroy", function(e, editor) {
|
|
1876
|
+
editor.completer.destroy();
|
|
1877
|
+
});
|
|
1878
|
+
}
|
|
1879
|
+
return editor.completer;
|
|
1880
|
+
};
|
|
1881
|
+
|
|
1718
1882
|
Autocomplete.startCommand = {
|
|
1719
1883
|
name: "startAutocomplete",
|
|
1720
|
-
exec: function(editor) {
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
editor.completer.cancelContextMenu();
|
|
1884
|
+
exec: function(editor, options) {
|
|
1885
|
+
var completer = Autocomplete.for(editor);
|
|
1886
|
+
completer.autoInsert = false;
|
|
1887
|
+
completer.autoSelect = true;
|
|
1888
|
+
completer.showPopup(editor, options);
|
|
1889
|
+
completer.cancelContextMenu();
|
|
1727
1890
|
},
|
|
1728
1891
|
bindKey: "Ctrl-Space|Ctrl-Shift-Space|Alt-Space"
|
|
1729
1892
|
};
|
|
@@ -1745,7 +1908,7 @@ var FilteredList = function(array, filterText) {
|
|
|
1745
1908
|
matches = this.filterCompletions(matches, this.filterText);
|
|
1746
1909
|
matches = matches.sort(function(a, b) {
|
|
1747
1910
|
return b.exactMatch - a.exactMatch || b.$score - a.$score
|
|
1748
|
-
|| (a.caption || a.value)
|
|
1911
|
+
|| (a.caption || a.value).localeCompare(b.caption || b.value);
|
|
1749
1912
|
});
|
|
1750
1913
|
var prev = null;
|
|
1751
1914
|
matches = matches.filter(function(item){
|
|
@@ -1808,7 +1971,7 @@ exports.FilteredList = FilteredList;
|
|
|
1808
1971
|
|
|
1809
1972
|
});
|
|
1810
1973
|
|
|
1811
|
-
ace.define("ace/ext/menu_tools/overlay_page",[
|
|
1974
|
+
ace.define("ace/ext/menu_tools/overlay_page",[], function(require, exports, module) {
|
|
1812
1975
|
'use strict';
|
|
1813
1976
|
var dom = require("../../lib/dom");
|
|
1814
1977
|
var cssText = "#ace_settingsmenu, #kbshortcutmenu {\
|
|
@@ -1871,10 +2034,11 @@ margin: 0px;\
|
|
|
1871
2034
|
.ace_optionsMenuEntry button:hover{\
|
|
1872
2035
|
background: #f0f0f0;\
|
|
1873
2036
|
}";
|
|
1874
|
-
dom.importCssString(cssText);
|
|
2037
|
+
dom.importCssString(cssText, "settings_menu.css", false);
|
|
1875
2038
|
|
|
1876
2039
|
module.exports.overlayPage = function overlayPage(editor, contentElement, callback) {
|
|
1877
2040
|
var closer = document.createElement('div');
|
|
2041
|
+
var ignoreFocusOut = false;
|
|
1878
2042
|
|
|
1879
2043
|
function documentEscListener(e) {
|
|
1880
2044
|
if (e.keyCode === 27) {
|
|
@@ -1886,17 +2050,28 @@ module.exports.overlayPage = function overlayPage(editor, contentElement, callba
|
|
|
1886
2050
|
if (!closer) return;
|
|
1887
2051
|
document.removeEventListener('keydown', documentEscListener);
|
|
1888
2052
|
closer.parentNode.removeChild(closer);
|
|
1889
|
-
editor
|
|
2053
|
+
if (editor) {
|
|
2054
|
+
editor.focus();
|
|
2055
|
+
}
|
|
1890
2056
|
closer = null;
|
|
1891
2057
|
callback && callback();
|
|
1892
2058
|
}
|
|
2059
|
+
function setIgnoreFocusOut(ignore) {
|
|
2060
|
+
ignoreFocusOut = ignore;
|
|
2061
|
+
if (ignore) {
|
|
2062
|
+
closer.style.pointerEvents = "none";
|
|
2063
|
+
contentElement.style.pointerEvents = "auto";
|
|
2064
|
+
}
|
|
2065
|
+
}
|
|
1893
2066
|
|
|
1894
2067
|
closer.style.cssText = 'margin: 0; padding: 0; ' +
|
|
1895
2068
|
'position: fixed; top:0; bottom:0; left:0; right:0;' +
|
|
1896
2069
|
'z-index: 9990; ' +
|
|
1897
|
-
'background-color: rgba(0, 0, 0, 0.3);';
|
|
1898
|
-
closer.addEventListener('click', function() {
|
|
1899
|
-
|
|
2070
|
+
(editor ? 'background-color: rgba(0, 0, 0, 0.3);' : '');
|
|
2071
|
+
closer.addEventListener('click', function(e) {
|
|
2072
|
+
if (!ignoreFocusOut) {
|
|
2073
|
+
close();
|
|
2074
|
+
}
|
|
1900
2075
|
});
|
|
1901
2076
|
document.addEventListener('keydown', documentEscListener);
|
|
1902
2077
|
|
|
@@ -1906,15 +2081,18 @@ module.exports.overlayPage = function overlayPage(editor, contentElement, callba
|
|
|
1906
2081
|
|
|
1907
2082
|
closer.appendChild(contentElement);
|
|
1908
2083
|
document.body.appendChild(closer);
|
|
1909
|
-
editor
|
|
2084
|
+
if (editor) {
|
|
2085
|
+
editor.blur();
|
|
2086
|
+
}
|
|
1910
2087
|
return {
|
|
1911
|
-
close: close
|
|
2088
|
+
close: close,
|
|
2089
|
+
setIgnoreFocusOut: setIgnoreFocusOut
|
|
1912
2090
|
};
|
|
1913
2091
|
};
|
|
1914
2092
|
|
|
1915
2093
|
});
|
|
1916
2094
|
|
|
1917
|
-
ace.define("ace/ext/modelist",[
|
|
2095
|
+
ace.define("ace/ext/modelist",[], function(require, exports, module) {
|
|
1918
2096
|
"use strict";
|
|
1919
2097
|
|
|
1920
2098
|
var modes = [];
|
|
@@ -1955,23 +2133,23 @@ var supportedModes = {
|
|
|
1955
2133
|
ABC: ["abc"],
|
|
1956
2134
|
ActionScript:["as"],
|
|
1957
2135
|
ADA: ["ada|adb"],
|
|
2136
|
+
Alda: ["alda"],
|
|
1958
2137
|
Apache_Conf: ["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],
|
|
2138
|
+
Apex: ["apex|cls|trigger|tgr"],
|
|
2139
|
+
AQL: ["aql"],
|
|
1959
2140
|
AsciiDoc: ["asciidoc|adoc"],
|
|
1960
|
-
ASL: ["dsl|asl"],
|
|
2141
|
+
ASL: ["dsl|asl|asl.json"],
|
|
1961
2142
|
Assembly_x86:["asm|a"],
|
|
1962
2143
|
AutoHotKey: ["ahk"],
|
|
1963
|
-
Apex: ["apex|cls|trigger|tgr"],
|
|
1964
|
-
AQL: ["aql"],
|
|
1965
2144
|
BatchFile: ["bat|cmd"],
|
|
1966
|
-
Bro: ["bro"],
|
|
1967
2145
|
C_Cpp: ["cpp|c|cc|cxx|h|hh|hpp|ino"],
|
|
1968
2146
|
C9Search: ["c9search_results"],
|
|
1969
|
-
Crystal: ["cr"],
|
|
1970
2147
|
Cirru: ["cirru|cr"],
|
|
1971
2148
|
Clojure: ["clj|cljs"],
|
|
1972
2149
|
Cobol: ["CBL|COB"],
|
|
1973
2150
|
coffee: ["coffee|cf|cson|^Cakefile"],
|
|
1974
2151
|
ColdFusion: ["cfm"],
|
|
2152
|
+
Crystal: ["cr"],
|
|
1975
2153
|
CSharp: ["cs"],
|
|
1976
2154
|
Csound_Document: ["csd"],
|
|
1977
2155
|
Csound_Orchestra: ["orc"],
|
|
@@ -2019,6 +2197,7 @@ var supportedModes = {
|
|
|
2019
2197
|
Java: ["java"],
|
|
2020
2198
|
JavaScript: ["js|jsm|jsx"],
|
|
2021
2199
|
JSON: ["json"],
|
|
2200
|
+
JSON5: ["json5"],
|
|
2022
2201
|
JSONiq: ["jq"],
|
|
2023
2202
|
JSP: ["jsp"],
|
|
2024
2203
|
JSSM: ["jssm|jssm_state"],
|
|
@@ -2026,6 +2205,7 @@ var supportedModes = {
|
|
|
2026
2205
|
Julia: ["jl"],
|
|
2027
2206
|
Kotlin: ["kt|kts"],
|
|
2028
2207
|
LaTeX: ["tex|latex|ltx|bib"],
|
|
2208
|
+
Latte: ["latte"],
|
|
2029
2209
|
LESS: ["less"],
|
|
2030
2210
|
Liquid: ["liquid"],
|
|
2031
2211
|
Lisp: ["lisp"],
|
|
@@ -2040,31 +2220,36 @@ var supportedModes = {
|
|
|
2040
2220
|
Mask: ["mask"],
|
|
2041
2221
|
MATLAB: ["matlab"],
|
|
2042
2222
|
Maze: ["mz"],
|
|
2223
|
+
MediaWiki: ["wiki|mediawiki"],
|
|
2043
2224
|
MEL: ["mel"],
|
|
2225
|
+
MIPS: ["s|asm"],
|
|
2044
2226
|
MIXAL: ["mixal"],
|
|
2045
2227
|
MUSHCode: ["mc|mush"],
|
|
2046
2228
|
MySQL: ["mysql"],
|
|
2047
2229
|
Nginx: ["nginx|conf"],
|
|
2048
|
-
Nix: ["nix"],
|
|
2049
2230
|
Nim: ["nim"],
|
|
2231
|
+
Nix: ["nix"],
|
|
2050
2232
|
NSIS: ["nsi|nsh"],
|
|
2233
|
+
Nunjucks: ["nunjucks|nunjs|nj|njk"],
|
|
2051
2234
|
ObjectiveC: ["m|mm"],
|
|
2052
2235
|
OCaml: ["ml|mli"],
|
|
2053
2236
|
Pascal: ["pas|p"],
|
|
2054
2237
|
Perl: ["pl|pm"],
|
|
2055
|
-
Perl6: ["p6|pl6|pm6"],
|
|
2056
2238
|
pgSQL: ["pgsql"],
|
|
2057
|
-
PHP_Laravel_blade: ["blade.php"],
|
|
2058
2239
|
PHP: ["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],
|
|
2059
|
-
|
|
2240
|
+
PHP_Laravel_blade: ["blade.php"],
|
|
2060
2241
|
Pig: ["pig"],
|
|
2061
2242
|
Powershell: ["ps1"],
|
|
2062
2243
|
Praat: ["praat|praatscript|psc|proc"],
|
|
2244
|
+
Prisma: ["prisma"],
|
|
2063
2245
|
Prolog: ["plg|prolog"],
|
|
2064
2246
|
Properties: ["properties"],
|
|
2065
2247
|
Protobuf: ["proto"],
|
|
2248
|
+
Puppet: ["epp|pp"],
|
|
2066
2249
|
Python: ["py"],
|
|
2250
|
+
QML: ["qml"],
|
|
2067
2251
|
R: ["r"],
|
|
2252
|
+
Raku: ["raku|rakumod|rakutest|p6|pl6|pm6"],
|
|
2068
2253
|
Razor: ["cshtml|asp"],
|
|
2069
2254
|
RDoc: ["Rd"],
|
|
2070
2255
|
Red: ["red|reds"],
|
|
@@ -2076,11 +2261,13 @@ var supportedModes = {
|
|
|
2076
2261
|
SCAD: ["scad"],
|
|
2077
2262
|
Scala: ["scala|sbt"],
|
|
2078
2263
|
Scheme: ["scm|sm|rkt|oak|scheme"],
|
|
2264
|
+
Scrypt: ["scrypt"],
|
|
2079
2265
|
SCSS: ["scss"],
|
|
2080
2266
|
SH: ["sh|bash|^.bashrc"],
|
|
2081
2267
|
SJS: ["sjs"],
|
|
2082
2268
|
Slim: ["slim|skim"],
|
|
2083
2269
|
Smarty: ["smarty|tpl"],
|
|
2270
|
+
Smithy: ["smithy"],
|
|
2084
2271
|
snippets: ["snippets"],
|
|
2085
2272
|
Soy_Template:["soy"],
|
|
2086
2273
|
Space: ["space"],
|
|
@@ -2096,7 +2283,7 @@ var supportedModes = {
|
|
|
2096
2283
|
Textile: ["textile"],
|
|
2097
2284
|
Toml: ["toml"],
|
|
2098
2285
|
TSX: ["tsx"],
|
|
2099
|
-
Twig: ["
|
|
2286
|
+
Twig: ["twig|swig"],
|
|
2100
2287
|
Typescript: ["ts|typescript|str"],
|
|
2101
2288
|
Vala: ["vala"],
|
|
2102
2289
|
VBScript: ["vbs|vb"],
|
|
@@ -2108,6 +2295,7 @@ var supportedModes = {
|
|
|
2108
2295
|
XML: ["xml|rdf|rss|wsdl|xslt|atom|mathml|mml|xul|xbl|xaml"],
|
|
2109
2296
|
XQuery: ["xq"],
|
|
2110
2297
|
YAML: ["yaml|yml"],
|
|
2298
|
+
Zeek: ["zeek|bro"],
|
|
2111
2299
|
Django: ["html"]
|
|
2112
2300
|
};
|
|
2113
2301
|
|
|
@@ -2127,6 +2315,7 @@ var nameOverrides = {
|
|
|
2127
2315
|
Perl6: "Perl 6",
|
|
2128
2316
|
AutoHotKey: "AutoHotkey / AutoIt"
|
|
2129
2317
|
};
|
|
2318
|
+
|
|
2130
2319
|
var modesByName = {};
|
|
2131
2320
|
for (var name in supportedModes) {
|
|
2132
2321
|
var data = supportedModes[name];
|
|
@@ -2145,7 +2334,7 @@ module.exports = {
|
|
|
2145
2334
|
|
|
2146
2335
|
});
|
|
2147
2336
|
|
|
2148
|
-
ace.define("ace/ext/prompt",[
|
|
2337
|
+
ace.define("ace/ext/prompt",[], function(require, exports, module) {
|
|
2149
2338
|
"use strict";
|
|
2150
2339
|
|
|
2151
2340
|
var Range = require("../range").Range;
|
|
@@ -2155,9 +2344,9 @@ var FilteredList= require("../autocomplete").FilteredList;
|
|
|
2155
2344
|
var AcePopup = require('../autocomplete/popup').AcePopup;
|
|
2156
2345
|
var $singleLineEditor = require('../autocomplete/popup').$singleLineEditor;
|
|
2157
2346
|
var UndoManager = require("../undomanager").UndoManager;
|
|
2158
|
-
var Tokenizer = require("
|
|
2159
|
-
var overlayPage = require(
|
|
2160
|
-
var modelist = require("
|
|
2347
|
+
var Tokenizer = require("../tokenizer").Tokenizer;
|
|
2348
|
+
var overlayPage = require("./menu_tools/overlay_page").overlayPage;
|
|
2349
|
+
var modelist = require("./modelist");
|
|
2161
2350
|
var openPrompt;
|
|
2162
2351
|
|
|
2163
2352
|
function prompt(editor, message, options, callback) {
|
|
@@ -2176,14 +2365,18 @@ function prompt(editor, message, options, callback) {
|
|
|
2176
2365
|
|
|
2177
2366
|
var cmdLine = $singleLineEditor();
|
|
2178
2367
|
cmdLine.session.setUndoManager(new UndoManager());
|
|
2179
|
-
cmdLine.setOption("fontSize", editor.getOption("fontSize"));
|
|
2180
2368
|
|
|
2181
|
-
var el = dom.buildDom(["div", {class: "ace_prompt_container"}]);
|
|
2369
|
+
var el = dom.buildDom(["div", {class: "ace_prompt_container" + (options.hasDescription ? " input-box-with-description" : "")}]);
|
|
2182
2370
|
var overlay = overlayPage(editor, el, done);
|
|
2183
2371
|
el.appendChild(cmdLine.container);
|
|
2184
2372
|
|
|
2185
|
-
editor
|
|
2186
|
-
|
|
2373
|
+
if (editor) {
|
|
2374
|
+
editor.cmdLine = cmdLine;
|
|
2375
|
+
cmdLine.setOption("fontSize", editor.getOption("fontSize"));
|
|
2376
|
+
}
|
|
2377
|
+
if (message) {
|
|
2378
|
+
cmdLine.setValue(message, 1);
|
|
2379
|
+
}
|
|
2187
2380
|
if (options.selection) {
|
|
2188
2381
|
cmdLine.selection.setRange({
|
|
2189
2382
|
start: cmdLine.session.doc.indexToPosition(options.selection[0]),
|
|
@@ -2219,14 +2412,26 @@ function prompt(editor, message, options, callback) {
|
|
|
2219
2412
|
cmdLine.session.bgTokenizer.setTokenizer(tokenizer);
|
|
2220
2413
|
}
|
|
2221
2414
|
|
|
2415
|
+
if (options.placeholder) {
|
|
2416
|
+
cmdLine.setOption("placeholder", options.placeholder);
|
|
2417
|
+
}
|
|
2418
|
+
|
|
2419
|
+
if (options.hasDescription) {
|
|
2420
|
+
var promptTextContainer = dom.buildDom(["div", {class: "ace_prompt_text_container"}]);
|
|
2421
|
+
dom.buildDom(options.prompt || "Press 'Enter' to confirm or 'Escape' to cancel", promptTextContainer);
|
|
2422
|
+
el.appendChild(promptTextContainer);
|
|
2423
|
+
}
|
|
2424
|
+
|
|
2425
|
+
overlay.setIgnoreFocusOut(options.ignoreFocusOut);
|
|
2426
|
+
|
|
2222
2427
|
function accept() {
|
|
2223
2428
|
var val;
|
|
2224
|
-
if (popup.getCursorPosition().row > 0) {
|
|
2429
|
+
if (popup && popup.getCursorPosition().row > 0) {
|
|
2225
2430
|
val = valueFromRecentList();
|
|
2226
2431
|
} else {
|
|
2227
2432
|
val = cmdLine.getValue();
|
|
2228
2433
|
}
|
|
2229
|
-
var curData = popup.getData(popup.getRow());
|
|
2434
|
+
var curData = popup ? popup.getData(popup.getRow()) : val;
|
|
2230
2435
|
if (curData && !curData.error) {
|
|
2231
2436
|
done();
|
|
2232
2437
|
options.onAccept && options.onAccept({
|
|
@@ -2236,22 +2441,29 @@ function prompt(editor, message, options, callback) {
|
|
|
2236
2441
|
}
|
|
2237
2442
|
}
|
|
2238
2443
|
|
|
2239
|
-
|
|
2444
|
+
var keys = {
|
|
2240
2445
|
"Enter": accept,
|
|
2241
2446
|
"Esc|Shift-Esc": function() {
|
|
2242
2447
|
options.onCancel && options.onCancel(cmdLine.getValue(), cmdLine);
|
|
2243
2448
|
done();
|
|
2244
|
-
}
|
|
2245
|
-
|
|
2246
|
-
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
popup.goTo("down"); valueFromRecentList();
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2449
|
+
}
|
|
2450
|
+
};
|
|
2451
|
+
|
|
2452
|
+
if (popup) {
|
|
2453
|
+
Object.assign(keys, {
|
|
2454
|
+
"Up": function(editor) { popup.goTo("up"); valueFromRecentList();},
|
|
2455
|
+
"Down": function(editor) { popup.goTo("down"); valueFromRecentList();},
|
|
2456
|
+
"Ctrl-Up|Ctrl-Home": function(editor) { popup.goTo("start"); valueFromRecentList();},
|
|
2457
|
+
"Ctrl-Down|Ctrl-End": function(editor) { popup.goTo("end"); valueFromRecentList();},
|
|
2458
|
+
"Tab": function(editor) {
|
|
2459
|
+
popup.goTo("down"); valueFromRecentList();
|
|
2460
|
+
},
|
|
2461
|
+
"PageUp": function(editor) { popup.gotoPageUp(); valueFromRecentList();},
|
|
2462
|
+
"PageDown": function(editor) { popup.gotoPageDown(); valueFromRecentList();}
|
|
2463
|
+
});
|
|
2464
|
+
}
|
|
2465
|
+
|
|
2466
|
+
cmdLine.commands.bindKeys(keys);
|
|
2255
2467
|
|
|
2256
2468
|
function done() {
|
|
2257
2469
|
overlay.close();
|
|
@@ -2284,7 +2496,9 @@ function prompt(editor, message, options, callback) {
|
|
|
2284
2496
|
}
|
|
2285
2497
|
|
|
2286
2498
|
cmdLine.resize(true);
|
|
2287
|
-
popup
|
|
2499
|
+
if (popup) {
|
|
2500
|
+
popup.resize(true);
|
|
2501
|
+
}
|
|
2288
2502
|
cmdLine.focus();
|
|
2289
2503
|
|
|
2290
2504
|
openPrompt = {
|
|
@@ -2417,13 +2631,10 @@ prompt.commands = function(editor, callback) {
|
|
|
2417
2631
|
var platform = handler.platform;
|
|
2418
2632
|
var cbn = handler.byName;
|
|
2419
2633
|
for (var i in cbn) {
|
|
2420
|
-
var key;
|
|
2421
|
-
if (
|
|
2422
|
-
key =
|
|
2423
|
-
} else {
|
|
2424
|
-
key = "";
|
|
2634
|
+
var key = cbn[i].bindKey;
|
|
2635
|
+
if (typeof key !== "string") {
|
|
2636
|
+
key = key && key[platform] || "";
|
|
2425
2637
|
}
|
|
2426
|
-
|
|
2427
2638
|
var commands = cbn[i];
|
|
2428
2639
|
var description = commands.description || normalizeName(commands.name);
|
|
2429
2640
|
if (!Array.isArray(commands))
|
|
@@ -2580,7 +2791,7 @@ dom.importCssString(".ace_prompt_container {\
|
|
|
2580
2791
|
background: white;\
|
|
2581
2792
|
border-radius: 2px;\
|
|
2582
2793
|
box-shadow: 0px 2px 3px 0px #555;\
|
|
2583
|
-
}");
|
|
2794
|
+
}", "promtp.css", false);
|
|
2584
2795
|
|
|
2585
2796
|
|
|
2586
2797
|
exports.prompt = prompt;
|