5

Czekam na dodanie zaawansowanego kodu do edytora ACE.Zaawansowane autouzupełnianie w edytorze ACE

Na przykład, jeśli wpisane następujące JavaScript do ACE ...

function Car() {} 

Car.prototype = { 
    model : '', 
    maxSpeed : 0 
}; 

var bugatti = new Car(); 
bugatti. 

... momencie uderzenia kropkę po bugatti, i wydaje się, że opcje "model" "maxSpeed".

Wiem, że ACE ma nową funkcję "enableBasicAutocompletion", ale wydaje się to bardzo brakuje. Mam nadzieję, że autouzupełnianie jest oparte na kodzie wpisanym w edytorze ACE i pojawia się po prostu przez naciśnięcie klawisza. klawisz. Propozycje autouzupełniania będą właściwościami tego obiektu.

Najbliżej co mogę znaleźć w tym filmie YouTube: http://youtu.be/CSEDIhT6bXU

Na 1:45, można zobaczyć autouzupełnianie jest oparta na użytkownika JavaScript, ale nie ma demo lub wyjaśnienie, w jaki sposób zostało to osiągnięte.

Odpowiedz

2

Yup jest częścią Ace w dzisiejszych czasach. Chociaż nie znalazłem tego udokumentowanego w API, ale raczej poprzez twarde wyszukiwanie sieciowe: Dodaj plik ace/ext-language_tools.js do swojego html. Forma kropki nie działa jeszcze dobrze, więc może zajść konieczność wpisania do niej ctrl-spacji lub alt-spacji (chociaż jeśli napiszesz właściwość/metodę, którą chcesz wywołać, powinna się pojawić), ale standardowa składnia rzeczy takie jak funkcja zapisu, będą teraz wyświetlane. Następnie w JS:

var editor = ace.edit("editor"); 

ace.require("ace/ext/language_tools"); 
editor.setOptions({ 
    enableBasicAutocompletion: true, 
    enableSnippets: true, 
    enableLiveAutocompletion: true 
}); 
Powiązane problemy