I\'m using ACE Editor within a Chrome extension. I\'m using ACE\'s Autocomplete feature but I want to be able to completely define a list of static strings to use for the au
you need to add a completer like this
var staticWordCompleter = {
getCompletions: function(editor, session, pos, prefix, callback) {
var wordList = ["foo", "bar", "baz"];
callback(null, wordList.map(function(word) {
return {
caption: word,
value: word,
meta: "static"
};
}));
}
}
langTools.setCompleters([staticWordCompleter])
// or
editor.completers = [staticWordCompleter]
If you want to persist the old keyword list and want to append a new list
var staticWordCompleter = {
getCompletions: function(editor, session, pos, prefix, callback) {
var wordList = ["foo", "bar", "baz"];
callback(null, [...wordList.map(function(word) {
return {
caption: word,
value: word,
meta: "static"
};
}), ...session.$mode.$highlightRules.$keywordList.map(function(word) {
return {
caption: word,
value: word,
meta: 'keyword',
};
})]);
}
}
langTools.setCompleters([staticWordCompleter])
// or
editor.completers = [staticWordCompleter]