Repository navigation
Подсветка синтаксиса в редакторе/вьювере/QuickView? #7
Replies: 3 comments 1 reply
|
Там не все так просто. Весь SynEdit не затащишь... |
|
Посмотрю код, может чего и подскажу. То, что на скринах - мое поделие ) Как в принципе и кусочек NDN ) |
Судя вот по этому коду - нормально все должно прикручиваться. Сам TSynEdit (собственно редактор) - не нужен, нужен только парсер синтаксиса, который вполне себе отдельно от редактора работает. А у парсера есть OnTokenEvent(), который зовется: OnTokenEvent(Self, tk, Block.BlockID,fLineNumber,GetToken,FTokenPos) tk- тип токена (комментарий, строка, ключевое слово и т.п.) Весь парсинг умещается в несколько строк: Ну и собственно в OnTokenEvent() зовем себе отрисовку текста (добавить проверку видимости строки еще надо, но не думаю, что сложно): |
Uh oh!
There was an error while loading. Please reload this page.
Хотелось бы для большего количества языков. Для затравки - SynEdit (куча готовых парсеров) + есть версия под Lazarus. Если есть интерес - могу дать ссылку на универсальный парсер для SynEdit (синтаксис, который парсим - в простом .ini хранится).
Выглядит вот так.
All reactions