ace-rails-ap 4.0.0 → 4.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ace/rails/version.rb +1 -1
- data/vendor/assets/javascripts/ace/ace.js +993 -613
- data/vendor/assets/javascripts/ace/ext-chromevox.js +3 -4
- data/vendor/assets/javascripts/ace/ext-elastic_tabstops_lite.js +5 -6
- data/vendor/assets/javascripts/ace/ext-emmet.js +50 -21
- data/vendor/assets/javascripts/ace/ext-language_tools.js +21 -19
- data/vendor/assets/javascripts/ace/ext-modelist.js +11 -6
- data/vendor/assets/javascripts/ace/ext-old_ie.js +12 -5
- data/vendor/assets/javascripts/ace/ext-searchbox.js +12 -5
- data/vendor/assets/javascripts/ace/ext-settings_menu.js +14 -7
- data/vendor/assets/javascripts/ace/ext-static_highlight.js +5 -5
- data/vendor/assets/javascripts/ace/ext-statusbar.js +14 -12
- data/vendor/assets/javascripts/ace/ext-textarea.js +1 -2
- data/vendor/assets/javascripts/ace/ext-themelist.js +2 -0
- data/vendor/assets/javascripts/ace/ext-whitespace.js +17 -13
- data/vendor/assets/javascripts/ace/keybinding-emacs.js +76 -78
- data/vendor/assets/javascripts/ace/keybinding-vim.js +221 -80
- data/vendor/assets/javascripts/ace/mode-abc.js +2 -3
- data/vendor/assets/javascripts/ace/mode-actionscript.js +2 -3
- data/vendor/assets/javascripts/ace/mode-apache_conf.js +2 -3
- data/vendor/assets/javascripts/ace/mode-applescript.js +2 -3
- data/vendor/assets/javascripts/ace/mode-autohotkey.js +2 -3
- data/vendor/assets/javascripts/ace/mode-batchfile.js +2 -3
- data/vendor/assets/javascripts/ace/mode-c_cpp.js +8 -5
- data/vendor/assets/javascripts/ace/mode-coffee.js +1 -1
- data/vendor/assets/javascripts/ace/mode-coldfusion.js +533 -139
- data/vendor/assets/javascripts/ace/mode-csharp.js +4 -5
- data/vendor/assets/javascripts/ace/mode-css.js +185 -6
- data/vendor/assets/javascripts/ace/mode-curly.js +495 -138
- data/vendor/assets/javascripts/ace/mode-d.js +2 -3
- data/vendor/assets/javascripts/ace/mode-dart.js +8 -5
- data/vendor/assets/javascripts/ace/mode-django.js +495 -138
- data/vendor/assets/javascripts/ace/mode-dockerfile.js +59 -14
- data/vendor/assets/javascripts/ace/mode-dot.js +2 -3
- data/vendor/assets/javascripts/ace/mode-ejs.js +497 -152
- data/vendor/assets/javascripts/ace/mode-elm.js +6 -4
- data/vendor/assets/javascripts/ace/mode-erlang.js +3 -4
- data/vendor/assets/javascripts/ace/mode-forth.js +3 -4
- data/vendor/assets/javascripts/ace/mode-ftl.js +145 -17
- data/vendor/assets/javascripts/ace/mode-gherkin.js +58 -25
- data/vendor/assets/javascripts/ace/mode-glsl.js +8 -5
- data/vendor/assets/javascripts/ace/mode-golang.js +36 -25
- data/vendor/assets/javascripts/ace/mode-groovy.js +145 -17
- data/vendor/assets/javascripts/ace/mode-handlebars.js +496 -140
- data/vendor/assets/javascripts/ace/mode-haskell.js +3 -4
- data/vendor/assets/javascripts/ace/mode-haxe.js +4 -5
- data/vendor/assets/javascripts/ace/mode-html.js +495 -138
- data/vendor/assets/javascripts/ace/mode-html_elixir.js +3372 -0
- data/vendor/assets/javascripts/ace/mode-html_ruby.js +495 -138
- data/vendor/assets/javascripts/ace/mode-ini.js +1 -1
- data/vendor/assets/javascripts/ace/mode-io.js +2 -3
- data/vendor/assets/javascripts/ace/mode-jack.js +4 -5
- data/vendor/assets/javascripts/ace/mode-jade.js +155 -25
- data/vendor/assets/javascripts/ace/mode-java.js +145 -17
- data/vendor/assets/javascripts/ace/mode-javascript.js +145 -17
- data/vendor/assets/javascripts/ace/mode-json.js +4 -5
- data/vendor/assets/javascripts/ace/mode-jsoniq.js +4 -5
- data/vendor/assets/javascripts/ace/mode-jsp.js +150 -23
- data/vendor/assets/javascripts/ace/mode-jsx.js +4 -5
- data/vendor/assets/javascripts/ace/mode-julia.js +2 -3
- data/vendor/assets/javascripts/ace/mode-less.js +5 -6
- data/vendor/assets/javascripts/ace/mode-liquid.js +145 -17
- data/vendor/assets/javascripts/ace/mode-logiql.js +2 -2
- data/vendor/assets/javascripts/ace/mode-lsl.js +8 -10
- data/vendor/assets/javascripts/ace/mode-lua.js +2 -2
- data/vendor/assets/javascripts/ace/mode-luapage.js +497 -140
- data/vendor/assets/javascripts/ace/mode-makefile.js +54 -8
- data/vendor/assets/javascripts/ace/mode-markdown.js +497 -139
- data/vendor/assets/javascripts/ace/mode-mask.js +150 -22
- data/vendor/assets/javascripts/ace/mode-maze.js +283 -0
- data/vendor/assets/javascripts/ace/mode-mel.js +4 -5
- data/vendor/assets/javascripts/ace/mode-mushcode.js +0 -1
- data/vendor/assets/javascripts/ace/mode-mysql.js +1 -1
- data/vendor/assets/javascripts/ace/mode-nix.js +8 -5
- data/vendor/assets/javascripts/ace/mode-objectivec.js +6 -3
- data/vendor/assets/javascripts/ace/mode-perl.js +4 -5
- data/vendor/assets/javascripts/ace/mode-pgsql.js +141 -12
- data/vendor/assets/javascripts/ace/mode-php.js +9872 -143
- data/vendor/assets/javascripts/ace/mode-powershell.js +4 -5
- data/vendor/assets/javascripts/ace/mode-praat.js +18 -14
- data/vendor/assets/javascripts/ace/mode-prolog.js +2 -3
- data/vendor/assets/javascripts/ace/mode-protobuf.js +8 -5
- data/vendor/assets/javascripts/ace/mode-rhtml.js +495 -138
- data/vendor/assets/javascripts/ace/mode-ruby.js +2 -2
- data/vendor/assets/javascripts/ace/mode-rust.js +32 -39
- data/vendor/assets/javascripts/ace/mode-scad.js +4 -5
- data/vendor/assets/javascripts/ace/mode-scala.js +158 -21
- data/vendor/assets/javascripts/ace/mode-scheme.js +118 -1
- data/vendor/assets/javascripts/ace/mode-scss.js +4 -5
- data/vendor/assets/javascripts/ace/mode-sh.js +58 -13
- data/vendor/assets/javascripts/ace/mode-sjs.js +145 -17
- data/vendor/assets/javascripts/ace/mode-smarty.js +495 -138
- data/vendor/assets/javascripts/ace/mode-soy_template.js +496 -140
- data/vendor/assets/javascripts/ace/mode-sql.js +12 -4
- data/vendor/assets/javascripts/ace/mode-sqlserver.js +437 -0
- data/vendor/assets/javascripts/ace/mode-svg.js +147 -20
- data/vendor/assets/javascripts/ace/mode-swift.js +738 -0
- data/vendor/assets/javascripts/ace/mode-swig.js +1099 -0
- data/vendor/assets/javascripts/ace/mode-tcl.js +2 -3
- data/vendor/assets/javascripts/ace/mode-tex.js +1 -0
- data/vendor/assets/javascripts/ace/mode-toml.js +4 -0
- data/vendor/assets/javascripts/ace/mode-twig.js +495 -138
- data/vendor/assets/javascripts/ace/mode-typescript.js +147 -19
- data/vendor/assets/javascripts/ace/mode-vala.js +4 -5
- data/vendor/assets/javascripts/ace/mode-vbscript.js +26 -13
- data/vendor/assets/javascripts/ace/mode-velocity.js +495 -138
- data/vendor/assets/javascripts/ace/mode-verilog.js +8 -0
- data/vendor/assets/javascripts/ace/mode-xml.js +2 -3
- data/vendor/assets/javascripts/ace/mode-xquery.js +4 -5
- data/vendor/assets/javascripts/ace/snippets/actionscript.js +5 -0
- data/vendor/assets/javascripts/ace/snippets/html_elixir.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/java.js +6 -0
- data/vendor/assets/javascripts/ace/snippets/javascript.js +13 -0
- data/vendor/assets/javascripts/ace/snippets/lsl.js +166 -0
- data/vendor/assets/javascripts/ace/snippets/maze.js +16 -0
- data/vendor/assets/javascripts/ace/snippets/php.js +105 -4
- data/vendor/assets/javascripts/ace/snippets/sqlserver.js +76 -0
- data/vendor/assets/javascripts/ace/snippets/swift.js +7 -0
- data/vendor/assets/javascripts/ace/snippets/swig.js +7 -0
- data/vendor/assets/javascripts/ace/theme-clouds.js +0 -1
- data/vendor/assets/javascripts/ace/theme-clouds_midnight.js +0 -1
- data/vendor/assets/javascripts/ace/theme-cobalt.js +3 -3
- data/vendor/assets/javascripts/ace/theme-dawn.js +0 -1
- data/vendor/assets/javascripts/ace/theme-github.js +0 -1
- data/vendor/assets/javascripts/ace/theme-idle_fingers.js +0 -1
- data/vendor/assets/javascripts/ace/theme-iplastic.js +121 -0
- data/vendor/assets/javascripts/ace/theme-katzenmilch.js +1 -2
- data/vendor/assets/javascripts/ace/theme-kr_theme.js +0 -1
- data/vendor/assets/javascripts/ace/theme-kuroir.js +0 -1
- data/vendor/assets/javascripts/ace/theme-merbivore.js +0 -1
- data/vendor/assets/javascripts/ace/theme-merbivore_soft.js +0 -1
- data/vendor/assets/javascripts/ace/theme-mono_industrial.js +0 -1
- data/vendor/assets/javascripts/ace/theme-monokai.js +0 -1
- data/vendor/assets/javascripts/ace/theme-pastel_on_dark.js +0 -1
- data/vendor/assets/javascripts/ace/theme-solarized_dark.js +0 -1
- data/vendor/assets/javascripts/ace/theme-solarized_light.js +0 -1
- data/vendor/assets/javascripts/ace/theme-sqlserver.js +138 -0
- data/vendor/assets/javascripts/ace/theme-terminal.js +0 -1
- data/vendor/assets/javascripts/ace/theme-textmate.js +0 -1
- data/vendor/assets/javascripts/ace/theme-tomorrow.js +0 -1
- data/vendor/assets/javascripts/ace/theme-tomorrow_night.js +0 -1
- data/vendor/assets/javascripts/ace/theme-tomorrow_night_blue.js +0 -1
- data/vendor/assets/javascripts/ace/theme-tomorrow_night_bright.js +0 -1
- data/vendor/assets/javascripts/ace/theme-tomorrow_night_eighties.js +0 -1
- data/vendor/assets/javascripts/ace/theme-twilight.js +0 -1
- data/vendor/assets/javascripts/ace/theme-vibrant_ink.js +0 -1
- data/vendor/assets/javascripts/ace/theme-xcode.js +0 -1
- data/vendor/assets/javascripts/ace/worker-coffee.js +576 -6015
- data/vendor/assets/javascripts/ace/worker-css.js +529 -449
- data/vendor/assets/javascripts/ace/worker-html.js +528 -448
- data/vendor/assets/javascripts/ace/worker-javascript.js +8719 -7656
- data/vendor/assets/javascripts/ace/worker-json.js +530 -450
- data/vendor/assets/javascripts/ace/worker-lua.js +530 -450
- data/vendor/assets/javascripts/ace/worker-php.js +530 -450
- data/vendor/assets/javascripts/ace/worker-xml.js +530 -450
- data/vendor/assets/javascripts/ace/worker-xquery.js +529 -449
- metadata +14 -2
@@ -287,14 +287,13 @@ var onSelectionChange = function(evt) {
|
|
287
287
|
cvox.Api.speak('unselected');
|
288
288
|
}
|
289
289
|
};
|
290
|
-
var onChange = function(
|
291
|
-
var data = evt.data;
|
290
|
+
var onChange = function(delta) {
|
292
291
|
switch (data.action) {
|
293
|
-
case '
|
292
|
+
case 'remove':
|
294
293
|
cvox.Api.speak(data.text, 0, DELETED_PROP);
|
295
294
|
changed = true;
|
296
295
|
break;
|
297
|
-
case '
|
296
|
+
case 'insert':
|
298
297
|
cvox.Api.speak(data.text, 0);
|
299
298
|
changed = true;
|
300
299
|
break;
|
@@ -14,13 +14,12 @@ var ElasticTabstopsLite = function(editor) {
|
|
14
14
|
this.onExec = function() {
|
15
15
|
recordChanges = true;
|
16
16
|
};
|
17
|
-
this.onChange = function(
|
18
|
-
var range = e.data.range
|
17
|
+
this.onChange = function(delta) {
|
19
18
|
if (recordChanges) {
|
20
|
-
if (changedRows.indexOf(
|
21
|
-
changedRows.push(
|
22
|
-
if (
|
23
|
-
changedRows.push(
|
19
|
+
if (changedRows.indexOf(delta.start.row) == -1)
|
20
|
+
changedRows.push(delta.start.row);
|
21
|
+
if (delta.end.row != delta.start.row)
|
22
|
+
changedRows.push(delta.end.row);
|
24
23
|
}
|
25
24
|
};
|
26
25
|
};
|
@@ -502,7 +502,10 @@ var SnippetManager = function() {
|
|
502
502
|
s.guard = "\\b";
|
503
503
|
s.trigger = lang.escapeRegExp(s.tabTrigger);
|
504
504
|
}
|
505
|
-
|
505
|
+
|
506
|
+
if (!s.trigger && !s.guard && !s.endTrigger && !s.endGuard)
|
507
|
+
return;
|
508
|
+
|
506
509
|
s.startRe = guardedRegexp(s.trigger, s.guard, true);
|
507
510
|
s.triggerRe = new RegExp(s.trigger, "", true);
|
508
511
|
|
@@ -624,11 +627,11 @@ var TabstopManager = function(editor) {
|
|
624
627
|
this.editor = null;
|
625
628
|
};
|
626
629
|
|
627
|
-
this.onChange = function(
|
628
|
-
var changeRange =
|
629
|
-
var isRemove =
|
630
|
-
var start =
|
631
|
-
var end =
|
630
|
+
this.onChange = function(delta) {
|
631
|
+
var changeRange = delta;
|
632
|
+
var isRemove = delta.action[0] == "r";
|
633
|
+
var start = delta.start;
|
634
|
+
var end = delta.end;
|
632
635
|
var startRow = start.row;
|
633
636
|
var endRow = end.row;
|
634
637
|
var lineDif = endRow - startRow;
|
@@ -996,7 +999,7 @@ AceEmmetEditor.prototype = {
|
|
996
999
|
return syntax;
|
997
1000
|
},
|
998
1001
|
getProfileName: function() {
|
999
|
-
switch(this.getSyntax()) {
|
1002
|
+
switch (this.getSyntax()) {
|
1000
1003
|
case "css": return "css";
|
1001
1004
|
case "xml":
|
1002
1005
|
case "xsl":
|
@@ -1006,8 +1009,10 @@ AceEmmetEditor.prototype = {
|
|
1006
1009
|
if (!profile)
|
1007
1010
|
profile = this.ace.session.getLines(0,2).join("").search(/<!DOCTYPE[^>]+XHTML/i) != -1 ? "xhtml": "html";
|
1008
1011
|
return profile;
|
1012
|
+
default:
|
1013
|
+
var mode = this.ace.session.$mode;
|
1014
|
+
return mode.emmetConfig && mode.emmetConfig.profile || "xhtml";
|
1009
1015
|
}
|
1010
|
-
return "xhtml";
|
1011
1016
|
},
|
1012
1017
|
prompt: function(title) {
|
1013
1018
|
return prompt(title);
|
@@ -1095,11 +1100,9 @@ var keymap = {
|
|
1095
1100
|
|
1096
1101
|
var editorProxy = new AceEmmetEditor();
|
1097
1102
|
exports.commands = new HashHandler();
|
1098
|
-
exports.runEmmetCommand = function(editor) {
|
1103
|
+
exports.runEmmetCommand = function runEmmetCommand(editor) {
|
1099
1104
|
try {
|
1100
1105
|
editorProxy.setupContext(editor);
|
1101
|
-
if (editorProxy.getSyntax() == "php")
|
1102
|
-
return false;
|
1103
1106
|
var actions = emmet.require("actions");
|
1104
1107
|
|
1105
1108
|
if (this.action == "expand_abbreviation_with_tab") {
|
@@ -1120,6 +1123,10 @@ exports.runEmmetCommand = function(editor) {
|
|
1120
1123
|
|
1121
1124
|
var result = actions.run(this.action, editorProxy);
|
1122
1125
|
} catch(e) {
|
1126
|
+
if (!emmet) {
|
1127
|
+
load(runEmmetCommand.bind(this, editor));
|
1128
|
+
return true;
|
1129
|
+
}
|
1123
1130
|
editor._signal("changeStatus", typeof e == "string" ? e : e.message);
|
1124
1131
|
console.log(e);
|
1125
1132
|
result = false;
|
@@ -1145,27 +1152,49 @@ exports.updateCommands = function(editor, enabled) {
|
|
1145
1152
|
}
|
1146
1153
|
};
|
1147
1154
|
|
1148
|
-
exports.isSupportedMode = function(
|
1149
|
-
|
1155
|
+
exports.isSupportedMode = function(mode) {
|
1156
|
+
if (!mode) return false;
|
1157
|
+
if (mode.emmetConfig) return true;
|
1158
|
+
var id = mode.$id || mode;
|
1159
|
+
return /css|less|scss|sass|stylus|html|php|twig|ejs|handlebars/.test(id);
|
1150
1160
|
};
|
1151
1161
|
|
1162
|
+
exports.isAvailable = function(editor, command) {
|
1163
|
+
if (/(evaluate_math_expression|expand_abbreviation)$/.test(command))
|
1164
|
+
return true;
|
1165
|
+
var mode = editor.session.$mode;
|
1166
|
+
var isSupported = exports.isSupportedMode(mode);
|
1167
|
+
if (isSupported && mode.$modes) {
|
1168
|
+
try {
|
1169
|
+
editorProxy.setupContext(editor);
|
1170
|
+
if (/js|php/.test(editorProxy.getSyntax()))
|
1171
|
+
isSupported = false;
|
1172
|
+
} catch(e) {}
|
1173
|
+
}
|
1174
|
+
return isSupported;
|
1175
|
+
}
|
1176
|
+
|
1152
1177
|
var onChangeMode = function(e, target) {
|
1153
1178
|
var editor = target;
|
1154
1179
|
if (!editor)
|
1155
1180
|
return;
|
1156
|
-
var enabled = exports.isSupportedMode(editor.session.$
|
1181
|
+
var enabled = exports.isSupportedMode(editor.session.$mode);
|
1157
1182
|
if (e.enableEmmet === false)
|
1158
1183
|
enabled = false;
|
1159
|
-
if (enabled)
|
1160
|
-
|
1161
|
-
require("ace/config").loadModule(emmetPath, function() {
|
1162
|
-
emmetPath = null;
|
1163
|
-
});
|
1164
|
-
}
|
1165
|
-
}
|
1184
|
+
if (enabled)
|
1185
|
+
load();
|
1166
1186
|
exports.updateCommands(editor, enabled);
|
1167
1187
|
};
|
1168
1188
|
|
1189
|
+
var load = function(cb) {
|
1190
|
+
if (typeof emmetPath == "string") {
|
1191
|
+
require("ace/config").loadModule(emmetPath, function() {
|
1192
|
+
emmetPath = null;
|
1193
|
+
cb && cb();
|
1194
|
+
});
|
1195
|
+
}
|
1196
|
+
};
|
1197
|
+
|
1169
1198
|
exports.AceEmmetEditor = AceEmmetEditor;
|
1170
1199
|
require("ace/config").defineOptions(Editor.prototype, "editor", {
|
1171
1200
|
enableEmmet: {
|
@@ -502,7 +502,10 @@ var SnippetManager = function() {
|
|
502
502
|
s.guard = "\\b";
|
503
503
|
s.trigger = lang.escapeRegExp(s.tabTrigger);
|
504
504
|
}
|
505
|
-
|
505
|
+
|
506
|
+
if (!s.trigger && !s.guard && !s.endTrigger && !s.endGuard)
|
507
|
+
return;
|
508
|
+
|
506
509
|
s.startRe = guardedRegexp(s.trigger, s.guard, true);
|
507
510
|
s.triggerRe = new RegExp(s.trigger, "", true);
|
508
511
|
|
@@ -624,11 +627,11 @@ var TabstopManager = function(editor) {
|
|
624
627
|
this.editor = null;
|
625
628
|
};
|
626
629
|
|
627
|
-
this.onChange = function(
|
628
|
-
var changeRange =
|
629
|
-
var isRemove =
|
630
|
-
var start =
|
631
|
-
var end =
|
630
|
+
this.onChange = function(delta) {
|
631
|
+
var changeRange = delta;
|
632
|
+
var isRemove = delta.action[0] == "r";
|
633
|
+
var start = delta.start;
|
634
|
+
var end = delta.end;
|
632
635
|
var startRow = start.row;
|
633
636
|
var endRow = end.row;
|
634
637
|
var lineDif = endRow - startRow;
|
@@ -901,10 +904,9 @@ var Editor = require("./editor").Editor;
|
|
901
904
|
|
902
905
|
});
|
903
906
|
|
904
|
-
define("ace/autocomplete/popup",["require","exports","module","ace/
|
907
|
+
define("ace/autocomplete/popup",["require","exports","module","ace/virtual_renderer","ace/editor","ace/range","ace/lib/event","ace/lib/lang","ace/lib/dom"], function(require, exports, module) {
|
905
908
|
"use strict";
|
906
909
|
|
907
|
-
var EditSession = require("../edit_session").EditSession;
|
908
910
|
var Renderer = require("../virtual_renderer").VirtualRenderer;
|
909
911
|
var Editor = require("../editor").Editor;
|
910
912
|
var Range = require("../range").Range;
|
@@ -1090,8 +1092,8 @@ var AcePopup = function(parentNode) {
|
|
1090
1092
|
|
1091
1093
|
popup.data = [];
|
1092
1094
|
popup.setData = function(list) {
|
1093
|
-
popup.data = list || [];
|
1094
1095
|
popup.setValue(lang.stringRepeat("\n", list.length), -1);
|
1096
|
+
popup.data = list || [];
|
1095
1097
|
popup.setRow(0);
|
1096
1098
|
};
|
1097
1099
|
popup.getData = function(row) {
|
@@ -1329,7 +1331,7 @@ var Autocomplete = function() {
|
|
1329
1331
|
var rect = editor.container.getBoundingClientRect();
|
1330
1332
|
pos.top += rect.top - renderer.layerConfig.offset;
|
1331
1333
|
pos.left += rect.left - editor.renderer.scrollLeft;
|
1332
|
-
pos.left += renderer
|
1334
|
+
pos.left += renderer.gutterWidth;
|
1333
1335
|
|
1334
1336
|
this.popup.show(pos, lineHeight);
|
1335
1337
|
} else if (keepPopupPosition && !prefix) {
|
@@ -1369,10 +1371,11 @@ var Autocomplete = function() {
|
|
1369
1371
|
|
1370
1372
|
this.blurListener = function(e) {
|
1371
1373
|
var el = document.activeElement;
|
1372
|
-
var text = this.editor.textInput.getElement()
|
1373
|
-
|
1374
|
-
|
1375
|
-
|
1374
|
+
var text = this.editor.textInput.getElement();
|
1375
|
+
var fromTooltip = e.relatedTarget && e.relatedTarget == this.tooltipNode;
|
1376
|
+
var container = this.popup && this.popup.container;
|
1377
|
+
if (el != text && el.parentNode != container && !fromTooltip
|
1378
|
+
&& el != this.tooltipNode && e.relatedTarget != text
|
1376
1379
|
) {
|
1377
1380
|
this.detach();
|
1378
1381
|
}
|
@@ -1400,7 +1403,7 @@ var Autocomplete = function() {
|
|
1400
1403
|
this.popup.setRow(row);
|
1401
1404
|
};
|
1402
1405
|
|
1403
|
-
this.insertMatch = function(data) {
|
1406
|
+
this.insertMatch = function(data, options) {
|
1404
1407
|
if (!data)
|
1405
1408
|
data = this.popup.getData(this.popup.getRow());
|
1406
1409
|
if (!data)
|
@@ -1433,7 +1436,7 @@ var Autocomplete = function() {
|
|
1433
1436
|
|
1434
1437
|
"Esc": function(editor) { editor.completer.detach(); },
|
1435
1438
|
"Return": function(editor) { return editor.completer.insertMatch(); },
|
1436
|
-
"Shift-Return": function(editor) { editor.completer.insertMatch(true); },
|
1439
|
+
"Shift-Return": function(editor) { editor.completer.insertMatch(null, {deleteSuffix: true}); },
|
1437
1440
|
"Tab": function(editor) {
|
1438
1441
|
var result = editor.completer.insertMatch();
|
1439
1442
|
if (!result && !editor.tabstopManager)
|
@@ -1564,7 +1567,7 @@ var Autocomplete = function() {
|
|
1564
1567
|
doc = selected;
|
1565
1568
|
|
1566
1569
|
if (typeof doc == "string")
|
1567
|
-
doc = {docText: doc}
|
1570
|
+
doc = {docText: doc};
|
1568
1571
|
if (!doc || !(doc.docHTML || doc.docText))
|
1569
1572
|
return this.hideDocTooltip();
|
1570
1573
|
this.showDocTooltip(doc);
|
@@ -1630,7 +1633,7 @@ Autocomplete.startCommand = {
|
|
1630
1633
|
bindKey: "Ctrl-Space|Ctrl-Shift-Space|Alt-Space"
|
1631
1634
|
};
|
1632
1635
|
|
1633
|
-
var FilteredList = function(array, filterText
|
1636
|
+
var FilteredList = function(array, filterText) {
|
1634
1637
|
this.all = array;
|
1635
1638
|
this.filtered = array;
|
1636
1639
|
this.filterText = filterText || "";
|
@@ -1870,7 +1873,6 @@ function getCompletionPrefix(editor) {
|
|
1870
1873
|
|
1871
1874
|
var doLiveAutocomplete = function(e) {
|
1872
1875
|
var editor = e.editor;
|
1873
|
-
var text = e.args || "";
|
1874
1876
|
var hasCompleter = editor.completer && editor.completer.activated;
|
1875
1877
|
if (e.command.name === "backspace") {
|
1876
1878
|
if (hasCompleter && !getCompletionPrefix(editor))
|
@@ -40,11 +40,11 @@ var supportedModes = {
|
|
40
40
|
ADA: ["ada|adb"],
|
41
41
|
Apache_Conf: ["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],
|
42
42
|
AsciiDoc: ["asciidoc|adoc"],
|
43
|
-
Assembly_x86:["asm"],
|
43
|
+
Assembly_x86:["asm|a"],
|
44
44
|
AutoHotKey: ["ahk"],
|
45
45
|
BatchFile: ["bat|cmd"],
|
46
|
+
C_Cpp: ["cpp|c|cc|cxx|h|hh|hpp|ino"],
|
46
47
|
C9Search: ["c9search_results"],
|
47
|
-
C_Cpp: ["cpp|c|cc|cxx|h|hh|hpp"],
|
48
48
|
Cirru: ["cirru|cr"],
|
49
49
|
Clojure: ["clj|cljs"],
|
50
50
|
Cobol: ["CBL|COB"],
|
@@ -60,7 +60,7 @@ var supportedModes = {
|
|
60
60
|
Dot: ["dot"],
|
61
61
|
Dummy: ["dummy"],
|
62
62
|
DummySyntax: ["dummy"],
|
63
|
-
Eiffel: ["e"],
|
63
|
+
Eiffel: ["e|ge"],
|
64
64
|
EJS: ["ejs"],
|
65
65
|
Elixir: ["ex|exs"],
|
66
66
|
Elm: ["elm"],
|
@@ -79,6 +79,7 @@ var supportedModes = {
|
|
79
79
|
haXe: ["hx"],
|
80
80
|
HTML: ["html|htm|xhtml"],
|
81
81
|
HTML_Ruby: ["erb|rhtml|html.erb"],
|
82
|
+
HTML_Elixir: ["eex|html.eex"],
|
82
83
|
INI: ["ini|conf|cfg|prefs"],
|
83
84
|
Io: ["io"],
|
84
85
|
Jack: ["jack"],
|
@@ -105,6 +106,7 @@ var supportedModes = {
|
|
105
106
|
Markdown: ["md|markdown"],
|
106
107
|
Mask: ["mask"],
|
107
108
|
MATLAB: ["matlab"],
|
109
|
+
Maze: ["mz"],
|
108
110
|
MEL: ["mel"],
|
109
111
|
MUSHCode: ["mc|mush"],
|
110
112
|
MySQL: ["mysql"],
|
@@ -114,7 +116,7 @@ var supportedModes = {
|
|
114
116
|
Pascal: ["pas|p"],
|
115
117
|
Perl: ["pl|pm"],
|
116
118
|
pgSQL: ["pgsql"],
|
117
|
-
PHP: ["php|phtml"],
|
119
|
+
PHP: ["php|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp"],
|
118
120
|
Powershell: ["ps1"],
|
119
121
|
Praat: ["praat|praatscript|psc|proc"],
|
120
122
|
Prolog: ["plg|prolog"],
|
@@ -129,7 +131,7 @@ var supportedModes = {
|
|
129
131
|
SASS: ["sass"],
|
130
132
|
SCAD: ["scad"],
|
131
133
|
Scala: ["scala"],
|
132
|
-
Scheme: ["scm|rkt"],
|
134
|
+
Scheme: ["scm|sm|rkt|oak|scheme"],
|
133
135
|
SCSS: ["scss"],
|
134
136
|
SH: ["sh|bash|^.bashrc"],
|
135
137
|
SJS: ["sjs"],
|
@@ -138,14 +140,16 @@ var supportedModes = {
|
|
138
140
|
Soy_Template:["soy"],
|
139
141
|
Space: ["space"],
|
140
142
|
SQL: ["sql"],
|
143
|
+
SQLServer: ["sqlserver"],
|
141
144
|
Stylus: ["styl|stylus"],
|
142
145
|
SVG: ["svg"],
|
146
|
+
Swift: ["swift"],
|
143
147
|
Tcl: ["tcl"],
|
144
148
|
Tex: ["tex"],
|
145
149
|
Text: ["txt"],
|
146
150
|
Textile: ["textile"],
|
147
151
|
Toml: ["toml"],
|
148
|
-
Twig: ["twig"],
|
152
|
+
Twig: ["twig|swig"],
|
149
153
|
Typescript: ["ts|typescript|str"],
|
150
154
|
Vala: ["vala"],
|
151
155
|
VBScript: ["vbs|vb"],
|
@@ -165,6 +169,7 @@ var nameOverrides = {
|
|
165
169
|
C_Cpp: "C and C++",
|
166
170
|
coffee: "CoffeeScript",
|
167
171
|
HTML_Ruby: "HTML (Ruby)",
|
172
|
+
HTML_Elixir: "HTML (Elixir)",
|
168
173
|
FTL: "FreeMarker"
|
169
174
|
};
|
170
175
|
var modesByName = {};
|
@@ -63,7 +63,6 @@ cursor: pointer;\
|
|
63
63
|
float: left;\
|
64
64
|
height: 22px;\
|
65
65
|
margin: 0;\
|
66
|
-
padding: 0;\
|
67
66
|
position: relative;\
|
68
67
|
}\
|
69
68
|
.ace_searchbtn:last-child,\
|
@@ -255,10 +254,14 @@ var SearchBox = function(editor, range, showReplaceForm) {
|
|
255
254
|
}]);
|
256
255
|
this.$searchBarKb = new HashHandler();
|
257
256
|
this.$searchBarKb.bindKeys({
|
258
|
-
"Ctrl-f|Command-f
|
257
|
+
"Ctrl-f|Command-f": function(sb) {
|
259
258
|
var isReplace = sb.isReplace = !sb.isReplace;
|
260
259
|
sb.replaceBox.style.display = isReplace ? "" : "none";
|
261
|
-
sb
|
260
|
+
sb.searchInput.focus();
|
261
|
+
},
|
262
|
+
"Ctrl-H|Command-Option-F": function(sb) {
|
263
|
+
sb.replaceBox.style.display = "";
|
264
|
+
sb.replaceInput.focus();
|
262
265
|
},
|
263
266
|
"Ctrl-G|Command-G": function(sb) {
|
264
267
|
sb.findNext();
|
@@ -323,14 +326,15 @@ var SearchBox = function(editor, range, showReplaceForm) {
|
|
323
326
|
this.editor.session.highlight(re || this.editor.$search.$options.re);
|
324
327
|
this.editor.renderer.updateBackMarkers()
|
325
328
|
};
|
326
|
-
this.find = function(skipCurrent, backwards) {
|
329
|
+
this.find = function(skipCurrent, backwards, preventScroll) {
|
327
330
|
var range = this.editor.find(this.searchInput.value, {
|
328
331
|
skipCurrent: skipCurrent,
|
329
332
|
backwards: backwards,
|
330
333
|
wrap: true,
|
331
334
|
regExp: this.regExpOption.checked,
|
332
335
|
caseSensitive: this.caseSensitiveOption.checked,
|
333
|
-
wholeWord: this.wholeWordOption.checked
|
336
|
+
wholeWord: this.wholeWordOption.checked,
|
337
|
+
preventScroll: preventScroll
|
334
338
|
});
|
335
339
|
var noMatch = !range && this.searchInput.value;
|
336
340
|
dom.setCssClass(this.searchBox, "ace_nomatch", noMatch);
|
@@ -383,6 +387,9 @@ var SearchBox = function(editor, range, showReplaceForm) {
|
|
383
387
|
|
384
388
|
if (value)
|
385
389
|
this.searchInput.value = value;
|
390
|
+
|
391
|
+
this.find(false, false, true);
|
392
|
+
|
386
393
|
this.searchInput.focus();
|
387
394
|
this.searchInput.select();
|
388
395
|
|
@@ -63,7 +63,6 @@ cursor: pointer;\
|
|
63
63
|
float: left;\
|
64
64
|
height: 22px;\
|
65
65
|
margin: 0;\
|
66
|
-
padding: 0;\
|
67
66
|
position: relative;\
|
68
67
|
}\
|
69
68
|
.ace_searchbtn:last-child,\
|
@@ -255,10 +254,14 @@ var SearchBox = function(editor, range, showReplaceForm) {
|
|
255
254
|
}]);
|
256
255
|
this.$searchBarKb = new HashHandler();
|
257
256
|
this.$searchBarKb.bindKeys({
|
258
|
-
"Ctrl-f|Command-f
|
257
|
+
"Ctrl-f|Command-f": function(sb) {
|
259
258
|
var isReplace = sb.isReplace = !sb.isReplace;
|
260
259
|
sb.replaceBox.style.display = isReplace ? "" : "none";
|
261
|
-
sb
|
260
|
+
sb.searchInput.focus();
|
261
|
+
},
|
262
|
+
"Ctrl-H|Command-Option-F": function(sb) {
|
263
|
+
sb.replaceBox.style.display = "";
|
264
|
+
sb.replaceInput.focus();
|
262
265
|
},
|
263
266
|
"Ctrl-G|Command-G": function(sb) {
|
264
267
|
sb.findNext();
|
@@ -323,14 +326,15 @@ var SearchBox = function(editor, range, showReplaceForm) {
|
|
323
326
|
this.editor.session.highlight(re || this.editor.$search.$options.re);
|
324
327
|
this.editor.renderer.updateBackMarkers()
|
325
328
|
};
|
326
|
-
this.find = function(skipCurrent, backwards) {
|
329
|
+
this.find = function(skipCurrent, backwards, preventScroll) {
|
327
330
|
var range = this.editor.find(this.searchInput.value, {
|
328
331
|
skipCurrent: skipCurrent,
|
329
332
|
backwards: backwards,
|
330
333
|
wrap: true,
|
331
334
|
regExp: this.regExpOption.checked,
|
332
335
|
caseSensitive: this.caseSensitiveOption.checked,
|
333
|
-
wholeWord: this.wholeWordOption.checked
|
336
|
+
wholeWord: this.wholeWordOption.checked,
|
337
|
+
preventScroll: preventScroll
|
334
338
|
});
|
335
339
|
var noMatch = !range && this.searchInput.value;
|
336
340
|
dom.setCssClass(this.searchBox, "ace_nomatch", noMatch);
|
@@ -383,6 +387,9 @@ var SearchBox = function(editor, range, showReplaceForm) {
|
|
383
387
|
|
384
388
|
if (value)
|
385
389
|
this.searchInput.value = value;
|
390
|
+
|
391
|
+
this.find(false, false, true);
|
392
|
+
|
386
393
|
this.searchInput.focus();
|
387
394
|
this.searchInput.select();
|
388
395
|
|