![](/img/trans.png)
[英]How to get token before dot('.') at current cursor postion in javascript for autocompletion in codemirror editor?
[英]CodeMirror editor autocompletion for predefined words
我有一個使用CodeMirror編輯器輸入數據的網站。 我想添加一個非常簡單的自動完成功能:我有一些以@符號開頭的單詞(@ cat,@ dog,@ bird等),並且我希望編輯器在用戶鍵入@或@c時顯示帶有這些單詞的下拉菜單-我該怎么辦這個? 我看到了自動完成插件,但是他們需要按ctrl + space並可以使用架構...因此,任何幫助都將非常有用!
謝謝!
方法如下(假設您已加載CodeMirror和show-hint
插件):
// Dummy mode that puts words into their own token
// (You probably have a mode already)
CodeMirror.defineMode("mylanguage", function() {
return {token: function(stream, state) {
if (stream.match(/[@\w+]/)) return "variable";
stream.next();
return null;
}};
});
// Register an array of completion words for this mode
CodeMirror.registerHelper("hintWords", "mylanguage",
["@cat", "@dog", "@bird"]);
// Create an editor
var editor = CodeMirror(document.body, {mode: "mylanguage"});
// When an @ is typed, activate completion
editor.on("inputRead", function(editor, change) {
if (change.text[0] == "@")
editor.showHint();
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.