tweak completer

This commit is contained in:
nightwing 2015-01-12 02:12:00 +04:00
commit 57f6fbd768
2 changed files with 5 additions and 8 deletions

View file

@ -40,7 +40,7 @@ var dom = require("./lib/dom");
var snippetManager = require("./snippets").snippetManager; var snippetManager = require("./snippets").snippetManager;
var Autocomplete = function() { var Autocomplete = function() {
this.autoInsert = true; this.autoInsert = false;
this.autoSelect = true; this.autoSelect = true;
this.exactMatch = false; this.exactMatch = false;
this.gatherCompletionsId = 0; this.gatherCompletionsId = 0;
@ -408,10 +408,10 @@ Autocomplete.startCommand = {
exec: function(editor) { exec: function(editor) {
if (!editor.completer) if (!editor.completer)
editor.completer = new Autocomplete(); editor.completer = new Autocomplete();
editor.completer.autoInsert = editor.completer.autoInsert = false;
editor.completer.autoSelect = true; editor.completer.autoSelect = true;
editor.completer.showPopup(editor); editor.completer.showPopup(editor);
// needed for firefox on mac // prevent ctrl-space opening context menu on firefox on mac
editor.completer.cancelContextMenu(); editor.completer.cancelContextMenu();
}, },
bindKey: "Ctrl-Space|Ctrl-Shift-Space|Alt-Space" bindKey: "Ctrl-Space|Ctrl-Shift-Space|Alt-Space"

View file

@ -140,7 +140,7 @@ var loadSnippetFile = function(id) {
function getCompletionPrefix(editor) { function getCompletionPrefix(editor) {
var pos = editor.getCursorPosition(); var pos = editor.getCursorPosition();
var line = editor.session.getLine(pos.row); var line = editor.session.getLine(pos.row);
var prefix = util.retrievePrecedingIdentifier(line, pos.column); var prefix;
// Try to find custom prefixes on the completers // Try to find custom prefixes on the completers
editor.completers.forEach(function(completer) { editor.completers.forEach(function(completer) {
if (completer.identifierRegexps) { if (completer.identifierRegexps) {
@ -150,7 +150,7 @@ function getCompletionPrefix(editor) {
}); });
} }
}); });
return prefix; return prefix || util.retrievePrecedingIdentifier(line, pos.column);
} }
var doLiveAutocomplete = function(e) { var doLiveAutocomplete = function(e) {
@ -158,8 +158,6 @@ var doLiveAutocomplete = function(e) {
var text = e.args || ""; var text = e.args || "";
var hasCompleter = editor.completer && editor.completer.activated; var hasCompleter = editor.completer && editor.completer.activated;
// We don't want to autocomplete with no prefix // We don't want to autocomplete with no prefix
if (e.command.name === "backspace") { if (e.command.name === "backspace") {
if (hasCompleter && !getCompletionPrefix(editor)) if (hasCompleter && !getCompletionPrefix(editor))
@ -174,7 +172,6 @@ var doLiveAutocomplete = function(e) {
editor.completer = new Autocomplete(); editor.completer = new Autocomplete();
} }
// Disable autoInsert // Disable autoInsert
editor.completer.autoSelect = false;
editor.completer.autoInsert = false; editor.completer.autoInsert = false;
editor.completer.showPopup(editor); editor.completer.showPopup(editor);
} }