ace editor autocomplete 활성화

2488 단어
myEditor.setOptions({
        enableBasicAutocompletion: true,
        enableSnippets: true,
        enableLiveAutocompletion: true
    });

var
autoCompleteData = [{ "meta": "function", "caption": "addShape", "value": "addShape", "score": 1 }, { "meta": "function", "caption": "addShape.adc", "value": "addShape.adc", "score": 1 }, { "meta": "function", "caption": "addShape.ccc", "value": "addShape.ccc", "score": 1 }]; var tangideCompleter = { getCompletions: function (editor, session, pos, prefix, callback) { if (prefix.length === 0) { return callback(null, []); } else { return callback(null, autoCompleteData); } } } var langTools = ace.require("ace/ext/language_tools"); langTools.addCompleter(tangideCompleter);

최근에python 온라인 정책을 만들었습니다.ace editor를 사용하여autocomplete를 사용하여python을 편리하게 작성하기로 결정했습니다.
ext/language_ 가져오기도구,completer 추가, 사용자 정의 키워드 형식은 {"meta":"function", "caption":"addShape", "value":"addShape", "score": 1}입니다.
dot 뒤에 유사한 속성의 autocomplete를 추가하려면 ext-language_도구의 ID_REGEX =/[a-zA-Z_0-9\$-\$.]/;
js에서 증가
myEditor.commands.on("afterExec", function (e, t) {        if (e.command.name == "insertstring"&& e.args == ".") {            var all = e.editor.completers;           //e.editor.completers = completers;            e.editor.execCommand("startAutocomplete");            e.editor.completers = all;        }    });
다음으로 전송:https://www.cnblogs.com/hyfwin/p/5569293.html

좋은 웹페이지 즐겨찾기