Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > SynUniHighlighter и SynEdit > UniHighlighter 2.0 Beta1 |
Автор: Vitalik 3.7.2006, 16:26 |
Внимание! После восьмимесячного перерыва выпущена таки версия компонента UniHighlighter 2.0 beta1! ![]() Об основным изменениях можно прочитать начиная с http://forum.vingrad.ru/index.php?showtopic=68206&view=findpost&p=774436 сообщения темы "UniHighlighter 2.0 Alpha", но попытаюсь все таки немного подытожить ![]() Основные изменения в компоненте:
Скачать компонент можно, как обычно, здесь: http://www.unihighlighter.com/index.php?download=unihighlighter Информацию по установке компонента желательно прочитать здесь: http://www.unihighlighter.com/index.php?showpage=install P.S. В архив компонента входят исходники, установочные пакеты и одна демка UniManager (остальные демки можно взять из архива UniHighlighter 2.0 Alpha) P.P.S. Я уезжаю на неделю, поэтому своевременно ответить не смогу. Но все же пишите сюда все багрепорты по поводу этой бетки ![]() |
Автор: miksayer 4.7.2006, 00:19 |
абудет ли версия для 2006-ых Делфи и Билдера? |
Автор: Vit 5.7.2006, 18:56 | ||
Вот письмо пришедшее от одного из пользователей. Он наверняка использует старую версию, но тем ни менее следует тщательно проверить код и заменить все функции UpperCase/LowerCase на соответствующие ANSI
|
Автор: Quadr0 6.7.2006, 00:39 |
... |
Автор: Vit 6.7.2006, 15:28 | ||
Нет не одно и то же. Опустим юникоды. Просто однобайтовые кодировки. Байты соответствующие русским А и а будут считаться эквивалентными если не Casesensitive при русской кодировке, но не факт что соответствующие им байты при греческой кодировке попадут на прописную и строчную альфы... В общем проблема известна и стара как мир, действительно надо все строковые функции заменить на соответствующие Ansi варианты там где они есть. |
Автор: Vitalik 8.7.2006, 08:29 | ||||||||||
Всё, я вернулся ![]() Если я их себе поставлю, то, возможно, будет ![]() А может найдется человек с уже устанновленой такой делфей и поможет ![]() Для этого используется метод SynEdit'а GetHighlighterAttriAtRowCol:
Сейчас в качестве имени атрибута просто задается имя правила, но можно придумать что-нибудь по-хитрее ![]() Простейший пример использования этого дела вкладываю в сообщение ![]()
Действительно оплошность ![]() Спасибо, обязательно добавлю при сохранении в родном формате изменение свойства FileName ![]()
Оки, не вопрос, сделаем ![]() Вот только как быть с простым UpCase (для одного символа), для него нет соответствующей функции Ansi... "Формировать" из одного символа строку и посылать ее функции AnsiUpperCase?
Довольно смутно понял, что он здесь имел в виду.. ![]() Но по ходу типа возможность игнорирования не только регистра (верхний/нижний) у токена путем преобразования всех токенов к верхнему регистру, но и произвольное превращения токена для "объединения" каких-то схожих токенов (отличающихся не только по регистру).. Вот только пунктуация ведь все равно будет разбивать токены на части, а поэтому вряд ли это может его проблеме.. Очень бы хотелось узнать для чего ему это именно нужно, хотя бы примерчик какой-нить ![]() ![]()
А давно он тебе писал? ![]() Передай ему, что мы очень даже заинтересованы в "обратной связи" и пригласи, если не сложно, на англиЦкий форум по компоненту ![]() Кстати, Vit, а может лучше здесь устроить подфорум для наших англоязычных коллег? Это было бы очень удобно! ![]() P.S. А вот файлик для Sep'а: |
Автор: navykeds 8.7.2006, 14:45 | ||||
На самом деле под 2006 версию все нормально устанавливается. Просто использую пакет для D7.
Так и делается ![]() |
Автор: admhome 10.7.2006, 20:57 |
Может я конечно чего-то недогоняю, НО: устанавливаю SynEdit-2.0.3, процесс проходит нормально. Далее unihighlighter 2.0b1. Оно сперва требует SynEditCodeFolding, слили из Mystix031Src. Потом сие чудо выдало: [Hint] SynUniFormat.pas(44): Value assigned to 'TSynUniFormat.VerifyStream' never used [Hint] SynUniFormat.pas(54): Value assigned to 'TSynUniFormat.VerifyFileName' never used [Hint] SynUniFormat.pas(64): Value assigned to 'TSynUniFormat.VerifyEmptyFileName' never used [Warning] SynUniFormat.pas(71): Return value of function 'TSynUniFormat.ImportFromStream' might be undefined [Warning] SynUniFormat.pas(75): Return value of function 'TSynUniFormat.ImportFromFile' might be undefined [Warning] SynUniFormat.pas(79): Return value of function 'TSynUniFormat.ExportToStream' might be undefined [Warning] SynUniFormat.pas(83): Return value of function 'TSynUniFormat.ExportToFile' might be undefined [Error] SynUniFormatNativeXml20.pas(537): Undeclared identifier: 'FoldRegions' [Error] SynUniFormatNativeXml20.pas(557): Undeclared identifier: 'FoldRegions' [Fatal Error] SynUniHighlighter.pas(120): Could not compile used unit 'SynUniFormatNativeXml20' Подскажите плиз, как бороться с этим явлением? P.S.: Delphi 7 |
Автор: navykeds 10.7.2006, 21:15 |
Нужно в файле SynUni\Source\SynUniHighlighter.inc заменить строку {$DEFINE CODEFOLDING} на {.$DEFINE CODEFOLDING}. Эта директива используется, если у тебя установлен пакет с codefolding. |
Автор: Vitalik 10.7.2006, 21:27 | ||
Спасибо, navykeds! ![]() Я могу лишь добавить:
![]() |
Автор: miksayer 16.7.2006, 00:48 | ||
а для билдера как быть? |