![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
Vit |
![]()
Сообщение
#1
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 156 Пол: Мужской Репутация: ![]() ![]() ![]() |
Результат совместной работы Fanasist'а и меня. Это компонент для Дельфи для известного пакета SynEdit (http://synedit.sourceforge.net), позволяющий на лету создавать подкраску синтаксиса по любым правилам любых форматов (создание и загрузка в run-time, хранение шаблонов на диске). В настоящее время пакет включает в себя более 300 готовых шаблонов для наиболее распространённых форматов, но каждый может создать свой собственный шаблон (можно с помошью компонента или используя прилагающуюся утилиту). Пример использования - простенький текстовый редактор с поддержкой любых расскрасок.
Загрузить можно с: http://chicago.lastplanet.com/unihighlighter.zip Платформа: Delphi 5/6 Для работы необходимо установить предварительно установить пакет SynEdit (http://synedit.sourceforge.net). Компонент свободен для распространения и поставляется с исходными кодами. Логика работы: Для подкраски синтаксиса необходимо предусмотреть следующие правила: 1) расскраска всего кода в промежутке от одного слова до второго - например комментарии /*...*/ или строки "...." 2) расскраска ключевых слов Это реализовано, кроме того бывают ситуации когда промежуток должен быть расскрашен по другому с другими правилами например ASP код внутри HTML или ассемблерные вставки внутри Дельфи - это тоже реализовано тем что внутри промежутка можно использовать свои правила и промежутки. Вложенность не лимитирована. Ждём комментариев. Всем кому интересно, я создал форум для обсуждения компонента, правда сообщения писать только на английском, там уже идёт дисскуссия с авторами проекта SynEdit: http://www.delphist.com/forum/ -------------------- With the best regards Vit
Все всегда уезжают навсегда. Вернуться невозможно-вместо нас всегда возвращается кто-то другой |
mj |
![]()
Сообщение
#2
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Чтож, посмотел, круто...
Кстати успешно компилируется в D7... Я давно пользуюсь компонентами SynEdit... |
mj |
![]()
Сообщение
#3
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Первый глюк.
Уж не знаю чей, но привожу пример php кота, который обрабатывается некорректно $MENUSCRIPT = "$DOCUMENT_ROOT/pages/left.php"; $PAGEVAR["new"] = "<img src="/pic/new.gif" width=30 height=17 border=0>"; $CGI = eregi("CGI", $GATEWAY_INTERFACE); |
Vit |
![]()
Сообщение
#4
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 156 Пол: Мужской Репутация: ![]() ![]() ![]() |
Это не глюк компонента, а недоработка шаблона для расскраски PHP, просто надо добавить в Range, который описывает строки, список ключевых слов, и в него положить одно слово " - тогда оно будет распознаваться правильно. Открой програмку UniEdit и попробуй разобраться с логикой работы Highlighter - там правила описания формата достаточно мощные, чтобы описать 99% форматов, но конечно бывают особо замороченные случаи... В общем-то смысл компонента не в прилагаемых шаблонах, а в том что можно с лёгкостью изготовить свой собственный шаблон или исправить мой, так чтобы полностью отвечал твоим нуждам.
-------------------- With the best regards Vit
Все всегда уезжают навсегда. Вернуться невозможно-вместо нас всегда возвращается кто-то другой |
Vitalik |
![]()
Сообщение
#5
|
Гость ![]() |
Всем привет!
![]() Собственно хочу сказать, что за эти два года многое по поводу компонента изменилось :yes: Во-первых, всем добро пожаловать на новый сайт компонента: http://www.unihighlighter.com Во-вторых, с тех пор были выпущены UniHighlighter версии 1.5, 1.8 и совсем недавно 2.0 alpha (обо всём этом можно прочитать на сайте) ;) Ну и, в-третьих, наконец-то был создан русскоязычный форум по этому компоненту: http://forum.vingrad.ru/index.php?showforum=170 (он уже функционирует почти год и собрал в себе 87 тем и 692 сообщения) Если будут возникать вопросы/предложения - пишите сюда или (что даже лучше) на официальный форум компонента :yes: Спасибо за внимание! :D |
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 10:02 |