Помогите подсветить новый синтаксис в SynEdit

Модератор: Модераторы

Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 25.06.2010 14:11:32

Доброго времени суток. Есть такая задача: нужно подсветить новый синтаксис (язык AEL) и чтобы при наведении на скобки отображалась ее пара (например жирным или цветом). Для реализации поставленной задачи использовал Syn Edit с подключенным SynAnySyn.
Проблема состоит в том, что SynAnySyn показывает жирным только квадратные парные скобки, а круглые и фигурные не хочет. Сам SynEdit со скобками работает как надо, но не подсвечивает синтаксис. В сорцы залез там голову сломать можно. Подскажите плз как мне сделать так чтобы SynAnySyn не заменял функционал SynEdit'а при работе со скобками. Выслушаю любые предложения по данному вопросу.
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 28.06.2010 18:38:34

Неужели никто из отцов не поможет? Знаю должно быть простое решение. Я новичок в лазарусе. Сам пока додуматься не могу.
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение скалогрыз » 28.06.2010 21:42:26

простейший вариант таков!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 29.06.2010 00:36:34

Спасибо большое. Это то что мне было нужно. Еще один вопрос. Где можно скачать AELSyn?
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение скалогрыз » 29.06.2010 01:34:38

fortis писал(а):Спасибо большое. Это то что мне было нужно. Еще один вопрос. Где можно скачать AELSyn?

:lol: :lol: :lol:

AELSyn это компонент типа TSynAnySyn (он доступен с SynEdit-ом вместе).
Обрати внимание на свойства AELSyn: keywords, в него записаны ключевые слова языка AEL. Обязательно большими буквами...

Вообще, погляди свойства этого самого TSynAnySyn (он же AELSyn).
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 29.06.2010 10:58:34

Разобрался с примером. Это все я делал, синтаксис у меня подсвечивает. Проблема с подсветкой парных скобок при наведении курсора. Не знаю как реализовать.
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение скалогрыз » 29.06.2010 12:24:12

fortis писал(а):Не знаю как реализовать.

забить! шкурка выделки не стоит!
что тебе важнее использование AEL и Лазаруса?!

если забивать не хочется, то можешь начать с написания парсера AEL.
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 29.06.2010 13:03:27

У меня идея лучше. При наведении на скобку буду искать парную ей и рисовать на обеих с помощью Canvas.TextOut такие же, только жирные. Тут можно и цвет поменять.
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение скалогрыз » 29.06.2010 14:39:48

сразу же рассмотри вот такой вариант
Код: Выделить всё
   Canvas.TextOut(
      // привет мир :( :)
      10, 20, 'привет мир :) (:',
      {здесь выведу скобки ) ( }
     );

если ты стоишь на первой скобке Canvas.TextOut(... то как найти ей парную? ;)

естественно, в твоём случае синтаксис - AEL
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 29.06.2010 16:04:22

Я еще больше озадачен. Этот случай не продумал. Все больше хочется забить, но нельзя.
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение скалогрыз » 29.06.2010 16:34:40

fortis писал(а):Я еще больше озадачен. Этот случай не продумал. Все больше хочется забить, но нельзя.

забей! это не Лисп. Скобок тут мало, без подсветки разберутся!
Жирненьким выделяются ключевые слова, буквы и символы чуточку другого цвета - всё что нужно для счастья!
Остальное - отвлекает от работы!
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение fortis » 29.06.2010 18:25:31

Забить не могу, нужно сделать именно так. Спасибо за то, что отозавлся. Буду дальше голову ломать. Если вдруг что выйдет - напишу, может кому понадобится.

Добавлено спустя 23 часа 28 минут 31 секунду:
Кстати, никто не знает как работает SynAutoComplete?
fortis
незнакомец
 
Сообщения: 7
Зарегистрирован: 25.06.2010 01:04:07

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение dunin » 01.08.2011 16:40:38

fortis писал(а):...
Кстати, никто не знает как работает SynAutoComplete?

Присоединяюсь к вопросу.
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Помогите подсветить новый синтаксис в SynEdit

Сообщение andsm » 02.08.2011 01:20:46

вот в этом топике эта проблема решается

http://forum.vingrad.ru/forum/topic-432 ... t_0_view_0
andsm
незнакомец
 
Сообщения: 4
Зарегистрирован: 28.07.2011 11:52:10


Вернуться в SynEdit и UniHighlighter

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru