Помогите подсветить новый синтаксис в SynEdit
Модератор: Модераторы
Помогите подсветить новый синтаксис в SynEdit
Доброго времени суток. Есть такая задача: нужно подсветить новый синтаксис (язык AEL) и чтобы при наведении на скобки отображалась ее пара (например жирным или цветом). Для реализации поставленной задачи использовал Syn Edit с подключенным SynAnySyn.
Проблема состоит в том, что SynAnySyn показывает жирным только квадратные парные скобки, а круглые и фигурные не хочет. Сам SynEdit со скобками работает как надо, но не подсвечивает синтаксис. В сорцы залез там голову сломать можно. Подскажите плз как мне сделать так чтобы SynAnySyn не заменял функционал SynEdit'а при работе со скобками. Выслушаю любые предложения по данному вопросу.
Проблема состоит в том, что SynAnySyn показывает жирным только квадратные парные скобки, а круглые и фигурные не хочет. Сам SynEdit со скобками работает как надо, но не подсвечивает синтаксис. В сорцы залез там голову сломать можно. Подскажите плз как мне сделать так чтобы SynAnySyn не заменял функционал SynEdit'а при работе со скобками. Выслушаю любые предложения по данному вопросу.
Неужели никто из отцов не поможет? Знаю должно быть простое решение. Я новичок в лазарусе. Сам пока додуматься не могу.
простейший вариант таков!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Спасибо большое. Это то что мне было нужно. Еще один вопрос. Где можно скачать AELSyn?
fortis писал(а):Спасибо большое. Это то что мне было нужно. Еще один вопрос. Где можно скачать AELSyn?
AELSyn это компонент типа TSynAnySyn (он доступен с SynEdit-ом вместе).
Обрати внимание на свойства AELSyn: keywords, в него записаны ключевые слова языка AEL. Обязательно большими буквами...
Вообще, погляди свойства этого самого TSynAnySyn (он же AELSyn).
Разобрался с примером. Это все я делал, синтаксис у меня подсвечивает. Проблема с подсветкой парных скобок при наведении курсора. Не знаю как реализовать.
fortis писал(а):Не знаю как реализовать.
забить! шкурка выделки не стоит!
что тебе важнее использование AEL и Лазаруса?!
если забивать не хочется, то можешь начать с написания парсера AEL.
У меня идея лучше. При наведении на скобку буду искать парную ей и рисовать на обеих с помощью Canvas.TextOut такие же, только жирные. Тут можно и цвет поменять.
сразу же рассмотри вот такой вариант
если ты стоишь на первой скобке Canvas.TextOut(... то как найти ей парную?
естественно, в твоём случае синтаксис - AEL
Код: Выделить всё
Canvas.TextOut(
// привет мир :( :)
10, 20, 'привет мир :) (:',
{здесь выведу скобки ) ( }
);
если ты стоишь на первой скобке Canvas.TextOut(... то как найти ей парную?
естественно, в твоём случае синтаксис - AEL
Я еще больше озадачен. Этот случай не продумал. Все больше хочется забить, но нельзя.
fortis писал(а):Я еще больше озадачен. Этот случай не продумал. Все больше хочется забить, но нельзя.
забей! это не Лисп. Скобок тут мало, без подсветки разберутся!
Жирненьким выделяются ключевые слова, буквы и символы чуточку другого цвета - всё что нужно для счастья!
Остальное - отвлекает от работы!
Забить не могу, нужно сделать именно так. Спасибо за то, что отозавлся. Буду дальше голову ломать. Если вдруг что выйдет - напишу, может кому понадобится.
Добавлено спустя 23 часа 28 минут 31 секунду:
Кстати, никто не знает как работает SynAutoComplete?
Добавлено спустя 23 часа 28 минут 31 секунду:
Кстати, никто не знает как работает SynAutoComplete?
