Редактирование выделенных элементов
Продолжаю свои улучшалки. Прошлый мой эксперимент оказался тупиковым. На что-то серьезное времени нет, поэтому маюсь всякой всячиной. Сегодня вот придумалось мне сделать редактирование тегов чанков и сниппетов в ресурсах, шаблонах и других чанках по аналогии с phpStorm (насколько это возможно). Например, в ресурсе выделяем тег [[$chunk]]
и нажимаем Ctrl+Enter. В результате открывается немного измененное окно быстрого редактирования этого чанка. То же и со сниппетами.
В случае, если чанка или сниппета с таким именем нет, то выводится окно с предложением его создания.
Чтобы перейти на страницу редактирования чанка или сниппета, нужно нажать Ctrl+Shift+Enter.
Принцип действия
Если первый символ в выделенном фрагменте — это знак доллара ($), то ищется чанк. В противном случае, ищется сниппет. Можно выделить любое слово или несколько слов и таким образом создать нужный элемент.
Работает и с Ace и без. Другие редакторы не пробовал.
Возможность создания новых элементов можно использовать, например, при создания шаблона. Т.е. создаем шаблон, формируем структуру с чанками и сниппетами. Например, так
<!DOCTYPE html> <html lang="ru"> <head> [[$head]] </head> <body> // Шапка страницы [[$header]] // Меню [[$main_menu]] // Галерея [[$gallery]] // Содержание ресурса [[$content]] // Подвал страницы [[$footer]] </div> <script>requirejs(["app/community", "app/counters"]);</script> </body> </html>
А затем быстро создаем каждый чанк прямо в окне этого шаблона.
Проект на Github.
Update. Версия 1.0.5.
В этой версии появилась возможность парсить чанки и сниппеты используя сочетание клавиш Alt+Enter. Результат парсинга сниппетов может быть непредсказуемым, потому что они могут грузить скрипты, которые негативно повлияют на админку. Поэтому рекомендую парсить только несложные сниппеты. Из-за такой опасности изначально эта возможность отключена. Чтобы ее включить, разкомментируйте блок parseElement в tagelementplugin.js скрипте.
Также добавлена проверка изменений формы элемента как в ресурсах. Если изменения были, то при переходе на другую страницу появится предупреждение. Отключается это системной настройкой confirm_navigation.
Вы должны авторизоваться, чтобы оставлять комментарии.
Комментарии ()