Здравствуйте, Marty, Вы писали:
M>Сейчас просто синтаксис раскрашиваю, тоже нужная мне штука. Без особых проблем можно настроить под любой язык. Для PHP/Perl, и прочих, где есть такие штуки, как Document Here, надо немного доделать, но пока не нужно было
Лексером? Мало какой язык можно раскрасить лексером.
M>Не очень понятно, зачем там регеэксы. Я как-то для себя делал тулзу, которая выдирает комент /*! \file \brief bla-bla */ из плюсовых файлов — это доксиген-компатибл описание. Было на регэксах — жутко тормозило (да, я знаю, в плюсиках сейчас они тормозные), и выдирало кривовато, потому что не осилил совсем всё правильно сделать. Переделал через свой токенизатор, обрабатывают только коменты — летает, и выдирает то, что нужно. M>По мелочам можно простенькие инструменты по-быстрому лепить.
Регекспы там затем, что они работают быстрее, чем обращение по протоколу LSP.
M>Номер строки пересчитывать не слишком быстро, это надо с начала файла бежать каждый раз
Так никто не делает. При работе в IDE файл хранится в виде дерева строк, по нему преобразование — O(logN) в любую сторону.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.