Представлен релиз ACE Editor 1.0, встраиваемого в web-приложения редактора кода, написанного на языке JavaScript. Код проекта распространяется под лицензией BSD. Для начального ознакомления с редактором подготовлена специальная демонстрационная страница.
По заявлению разработчиков ACE Editor, несмотря на то, что продукт рассчитан на работу в браузере, он обладает функциональностью и возможностями обособленных приложений, таких как Sublime, Vim и TextMate. В отличие от стационарных редакторов ACE Editor может легко быть встроен на любую web-страницу (добавление сводится к размещению тега div и подключению JavaScript-библиотеки) или интегрирован с web-приложением. Для изменения внешнего вида предусмотрена поддержка подключения визуальных тем. Кроме того, подготовлен модуль Ace Bookmarklet, который может быть использован web-мастерами для прозрачной замены стандартной области ввода, реализуемой тегом textarea.
Также сформирован самодостаточный серверный пакет на базе Node.JS для быстрого локального развёртывания сервисов редактирования (достаточно запустить скрипт и редактор будет доступен через http://localhost:8888/kitchen-sink.html). Редактор можно запустить и из файла, но для этого потребуется изменение настроек браузера (например, для Firefox нужно в about:config отключить проверку security.fileuri.strict_origin_policy=false, что не рекомендуется из соображений безопасности).
ACE Editor продолжает развитие интегрированной среды разработки приложений Bespin (Skywriter), изначально созданный проектом Mozilla, но впоследствии переданный для дальнейшей разработки сообществу Ajax.org. В настоящий момент ACE Editor развивается в качестве первичного редактора кода для облачной среды разработки Cloud9. Со времён разработки в Mozilla в ACE Editor добавлено 3218 изменений, проведёна миграция с тройной лицензии Mozilla на лицензию BSD. Редактор существенно преобразился, например, для организации вывода вместо canvas осуществлён переход на использование Document Object Model (DOM), что позволило существенно расширить число поддерживаемых web-браузеров.
Основные особенности ACE Editor 1.0:
- Поддержка подсветки синтаксиса для 45 языков программирования. Предусмотрена возможность импорта правил подсветки в форматах TextMate, Sublime и.tmlanguage;
- Подготовлено более 20 визуальных тем, позволяющих подобрать оформление на свой вкус. Поддерживается загрузка тем в форматах TextMate, Sublime и .tmtheme;
- Автоматическая расстановка отступов и форматирование кода;
- Опциональная реализация командной строки;
- Возможность обработки больших документов, редактор поддерживает работу с файлами, содержащими до 4 млн строк кода;
- Полностью настраиваемая система управления с клавиатуры, реализованы наборы горячих клавиш, аналогичные режимам vim и Emacs;
- Функции поиска и замены с использованием регулярных выражений;
- Подсветка родительских элементов, например, выделение блоков циклов и условий;
- Поддержка мягкой табуляции (используются пробелы) и использования кода символа табуляции;
- Режим показа скрытых символов;
- Поддержка перетаскивания блоков текста мышью в режиме Drag and drop;
- Функция сворачивания блоков для упрощения изучения кода;
- Поддержка нескольких курсоров и областей выделения;
- Система проверки синтаксиса (в настоящее время поддержка присутствует для JavaScript, CoffeeScript, CSS и XQuery);
- Функции вырезания, копирования и извлечения из буфера обмена;
- Поддержка прикрепления к областям кода маркеров для быстрого перехода.