new
hot!

Ace

Лучший редактор кода с подсветкой, который был адаптирован для MODX
Бесплатно
Загрузите дополнение из админки вашего сайта.
Как загрузить?
Автор дополнения
MODX.pro
Пакетов
14
Закачек
134 482
Автор дополнения
Пакетов
14
Закачек
134 482
Версия 1.9.10-pl
Дата выпуска 27.07.2026
Загрузки 16 555
Просмотры 32 599
⚡ Ace — редактор кода с подсветкой для MODX

Адаптация Ace Editor для менеджера MODX Revolution. Подсветка синтаксиса в сниппетах, плагинах, чанках, шаблонах, файлах и (опционально) в контенте ресурса. Работает в MODX 2 и MODX 3.

🪟 Редактор кода
  • Подсветка синтаксиса для популярных языков (PHP, JS, HTML, CSS/SCSS/LESS, SQL, JSON, Markdown и др.)
  • Темы оформления, soft/hard tab, невидимые символы, сворачивание кода
  • Поиск и замена с регулярными выражениями
  • Мультикурсоры и мультивыделение
  • Drag and drop текста, поддержка больших документов
  • Полноэкранный режим (в т.ч. корректно в MODX 3)
  • Emmet (Zen Coding) и форматирование кода (Ctrl+Shift+B)

✨ Интеграция с MODX
  • Подсветка тегов MODX и базовая подсветка Fenom / Twig
  • Автодополнение сниппетов и свойств MODX (Ctrl+Space)
  • Готовые Tab-сниппеты: getResources, pdoResources, chunk, [[*tv]] и др.
  • TV-тип ввода Ace
  • Не перехватывает #ta ресурса, если выбран другой RTE (which_editor ≠ Ace)
  • Учитывает контекстные настройки use_editor / which_editor

🛠 Удобства 1.9.10
  • ace.draft_restore — черновики в localStorage и восстановление после случайной перезагрузки
  • ace.color_preview — превью CSS-цветов (#hex, rgb/hsl) в режимах CSS/HTML
  • ace.auto_close_tags — вкл/выкл автозакрытие HTML/MODX-тегов и скобок
  • Корректный Ctrl+S / Cmd+S в fullscreen на формах элементов

🚀 Быстрый старт
  1. Установите пакет через Extras → Installer
  2. Для элементов убедитесь, что which_element_editor = Ace
  3. Для кода в ресурсах: либо use_editor = Нет, либо which_editor = Ace; если выбран TinyMCE / mxEditorJs и т.п. — включите «Использовать HTML-редактор» у ресурса для RTE, иначе останется textarea

📋 Требования
  • MODX Revolution 2.8+ / 3.x
  • Современный браузер с поддержкой ES5+

Скриншоты




Список горячих клавиш

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.9.10] - 2026-07-27

Added

  • Default MODX Tab snippets (getr, pdoResources, chunk, [[*tv]], etc.) installed into ace.snippets on fresh install/upgrade when the setting is empty (#36).
  • System setting ace.draft_restore to save editor drafts in browser localStorage and restore after accidental reload (#33).
  • System setting ace.color_preview to tint CSS color literals (#hex, rgb/hsl) in CSS/HTML modes (#34).
  • System setting ace.auto_close_tags to disable automatic closing of HTML tags, brackets, and MODX tag pairs (#29).
  • Unit tests for plugin helpers and shared JS utils (composer test, npm test).

Fixed

  • Ctrl+S / Cmd+S in fullscreen on chunk/template/element forms: save showed success but wrote stale content because the hidden field left the form when the editor moved to document.body. The named input now stays in the form; getValue() syncs from Ace before submit; MODx.onSaveEditor syncs the original Ext field (#25).
  • Resource content form: Ace no longer replaces #ta when another RTE is configured (which_editor ≠ Ace). With use_editor=Yes and e.g. TinyMCE, non-richtext resources keep a plain textarea instead of Ace (#30).
  • Resource content form: use_editor is read from the current context override when available, not only the global system setting (#35).
  • onDestroy no longer throws when Ace was never initialized (destroy before onRender or partial Ext component) (#32).
  • SCSS/CSS/static chunks: MODX tag mixed mode is enabled only for HTML-like mime types (text/html, Smarty, Twig), so // and /* */ comments highlight correctly instead of HTML `` (#31).
  • Resource overview cache tab (resource/data): Ace initializes after cache buffer is loaded, so modx-rdata-buffer is not empty (#28).
  • Empty-field Ace init no longer waits up to 5s: async wait applies only to modx-rdata-buffer on the resource overview cache tab.
  • which_editor for resource forms also respects context overrides (aligned with use_editor).
  • Color preview is per-editor (no shared singleton), capped at 2000 lines, and cleaned up on destroy.
  • Draft restore: stable storage keys, non-empty draft banner only, clear on successful form save / MODx.onSaveEditor.
  • Guard onResize / initEvents / autoSize / setSize when Ace was never rendered.
  • Static Ace helpers (DraftManager, settings getters) attach after Ext.extend so they are not overwritten; ace-color-preview.js loads after modx.texteditor.js.

[1.9.9] - 2026-03-29

Fixed

  • Fullscreen Ace over the whole manager (MODX 3): right-hand panels and other chrome no longer stay on top. The editor node is moved to document.body while maximized and uses a higher z-index, fixing stacking limits inside #modx-content that core PR modxcms/revolution#16778 does not address for extras (#18).
  • Fullscreen .ace_maximized insets (top: 60px, left: 70px, right/bottom: 3px) so the manager top bar, left tree, and resource/form header stay visible on MODX 3.1+ (see community report and workaround note).
  • In-editor PHP syntax check: false Syntax error, unexpected '?' (and similar) for valid PHP 7+ code such as null coalescing ??. Bundled worker-php.js updated to ace-builds 1.37.5 (T_COALESCE and related tokens).

[1.9.8] - 2026-03-05

Fixed

  • Fix fatal error when the resource does not exist (#23)

[1.9.7] - 2026-02-21

Fixed

  • Installation/upgrade failing with "The location specified does not exist" and "Invalid or uninitialized Zip object" when preserving existing files (e.g. on MODX 3, SiteDash): set PREEXISTING_MODE to REMOVE_PREEXISTING so .preserved.zip is not created (#22)

[1.9.6] - 2026-02-16

Added

  • Build script for MODX 2 and MODX 3 (Transport, auto-install, ClearCache)
  • Readable install log: [Ace] sections, ✓/✅ messages in resolver and build output
  • MODX root detection via core/config/config.inc.php when building from Extras/
  • Readme: building from MODX 2 for MODX 2 installs (optional; avoids post-pack patch)

Changed

  • PHP 8.1–8.5: null-safe array_merge, array key and file_get_contents handling in completions processors
  • Build config: 4-space indent, search order MODX_BASE_PATH → config.inc.php → modx.class.php
  • Resolver: PSR-12, structured log, recursive rmdir via closure
  • Package attributes and build output use [Ace] prefix and checkmarks

Fixed

  • Unable to load processor "getResourceFields" in MODX 3 (issue #16): processors path and CamelCase file names
  • Auto-install in MODX 3: full class name MODX\Revolution\Transport\modTransportPackage for xPDO
  • E_DEPRECATED suppressed during CLI build (dynamic property in MODX core)
  • Package built on MODX 3 failing to install on MODX 2 (xPDOObjectVehicle could not be loaded): manifest vehicle class names patched to MODX 2 format (xpdo.transport.*) after pack; double-backslash and serialized manifest supported, array keys patched

[1.9.5] - 2025-10-18

Added

  • Format code by Ctrl-Shift-B

[1.9.4] - 2024-02-23

Added

  • Links on GitHub [#13]
  • Alt+z keyboard shortcut to toggle word wrap [#15]

Fixed

  • focus() triggering for undefined [#14]

[1.9.3] - 2022-05-15

Changed

  • Move settings into an own file [#12]

Fixed

  • Ace TV input [#11]
  • PHP warning: Undefined variable $field [#10]

[1.9.2] - 2022

Added

  • TV input Ace field [#9]

Changed

  • Corrected search form [#8]

[1.9.1]

Fixed

  • Changed fonts

Changed

  • emmet.js with the support flex css styles and many other combinations

[1.9.0]

Added

  • Autodetecting file mode by modelist.js [#7]
  • New modes from ace-builds for version 1.2.0

[1.8.0]

Added

  • Autocompletion for php functions

[1.7.0]

Added

  • System setting "ace.grow"
  • System setting "ace.html_elements_mime"

[1.6.5]

Added

  • "Twig" syntax for support of Twig in chunks

Changed

  • Plugin is not static anymore

[1.6.4]

Fixed

  • Support of emmet in smarty mode. Again.

[1.6.3]

Fixed

  • Support of emmet in smarty mode

[1.6.2]

Added

  • "Markdown" syntax for mime type "text/x-markdown"

Fixed

  • Editor mode handling

[1.6.1]

Fixed

  • Work with enabled system setting "compress_js"

[1.6.0]

Added

  • "Smarty" syntax for support of Fenom in chunks

Changed

  • Ace updated to version 1.2.0

[1.5.1]

Fixed

  • Bug with narrowing of the textarea

[1.5.0]

Added

  • Editor height setting

Changed

  • Assets moved back to /assets/

Fixed

  • MODx tag completions (was completely broken)

[1.4.3]

Added

  • MODx tag completions (Ctrl+Space)

Fixed

  • Issue caused AjaxManager (MODx Manager speed booster plugin) tree drag'n'drop bug

[1.4.2]

Added

  • Undo coalescing
  • Drag delay for Mac (allow to start new selection inside current one)

Changed

  • Mac fullscreen command bound to Command+F12

Fixed

  • Use file extension of static chunks to detect code syntax

[1.4.1]

Added

  • Expandable snippets support (see ace.snippets setting)
  • Emmet wrap_with_abbreviation command (Alt+W)

Fixed

  • Tab handling
  • Emmet shortcut listing by Ctrl+Alt+H

[1.4.0]

Added

  • Emmet (Zen Coding) support
  • Terminal dark theme
  • Hotkey table (Ctrl+Alt+H)

Changed

  • Assets moved to /manager/assets/components/

Fixed

  • Resource overview fatal error

[1.3.3]

Added

  • PHP live syntax check
  • Chaos dark theme
  • Setting show_invisibles

[1.3.2]

Added

  • Tab settings (tab size, soft tab)
  • Full compatibility with AjaxManager extra

Fixed

  • Bug while installing Ace
  • Broken word_wrap setting

[1.3.1]

Changed

  • Plugin content now stored in static file

[1.3.0]

Added

  • German translation
  • MODx tags highlighting
  • Ambiance and xcode themes
  • less/scss syntax highlighting
  • Fullwindow mode (Ctrl+F11)

Changed

  • Editor now ignores wich_editor setting. Set use_editor to false to use ACE for Resources.

[1.2.1]

Added

  • Font size setting
  • "GitHub" theme
  • Support of html5 drag'n'drop (accepting dropped text)
  • XML/HTML tag autoclosing

Changed

  • Assets moved to manager folder

Fixed

  • Broken en lexicon and PHP 5.3 incompatibility

[1.2.0]

Added

  • Add missing "OnFileEditFormPrerender" event to MODx
  • Multiline editing
  • Advanced find/replace window

Changed

  • Editor options moved to system settings
  • Removed some unnecessary options

Fixed

  • Multiple little editor bugs

[1.1.0]

Added

  • File edition support
  • MODx tree elements drag'n'drop support
  • Auto-assigning which_element_editor to Ace

Fixed

  • Fatal error on document create event
  • Changing of properties has no effect

[1.0.0]

Added

  • Plugin properties to adjust how Ace behaves
  • Initial release

Последние обсуждения в сообществе MODX.pro