2013-07-10 2 views
3

Я пытаюсь вставить ace code editor в свой проект. Я инициализирую свой редактор кода следующим кодом, и теперь я хочу включить функции emmet js. Я вижу, что расширение ext-emmet.js уже находится в каталоге src ace.js pre-packaged versionКак добавить поддержку emmet в редактор кода ace js?

Мне нужна помощь при включении функций расширения emmet. Итак, вот мой код инициализации.

var e = ace.edit("editorId"); // id of the code editor div 
    e.setTheme("ace/theme/monokai"); 
    e.getSession().setMode("ace/mode/html"); 
    e.setBehavioursEnabled(true); 
    e.getSession().setTabSize(2); 

Очевидно, что я добавляю ace.js вверху страницы. При необходимости я могу предоставить более подробную информацию.

ответ

3

См. Lines 539-543 in ace demo.

В основном вам нужно загрузить муравей исходный скрипт (например из https://github.com/nightwing/emmet-core/blob/master/emmet.js) и расширения туза из /src/ext-emmet.js вызова require("ace/ext/emmet"); так, что requirejs выполняет сценарий
И после этого вызова editor.setOption("enableEmmet", true);.
См. Jsbin.com/ace-emmet/1/edit для демонстрации в прямом эфире.

+1

Я попытался добавить как расширение, так и emmet.js, и после установки опции true, как вы упомянули, ничего не произошло. Я добавил ace.js, ext-emmet.js и emmet.js из вашей ссылки в заголовке html-страницы и убедился, что они загружаются. Это даже не вызывает никакой ошибки. Я думаю, что для этого есть больше. –

+0

см. Http://jsbin.com/ace-emmet/1/edit вам нужно добавить 'require (" ace/ext/emmet ");' так что requirejs выполняет скрипт –

+0

Да Спасибо. Оно работает. Я только что отредактировал ваш ответ выше и пример, предоставленный вами. –

Смежные вопросы