Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > SynUniHighlighter и SynEdit > Помогите найти работающие компоненты


Автор: vladislavus 9.8.2008, 11:45
Привет, разработчики компонента UniHighlighter.
Видел его в действии http://delphiworld.narod.ru/wds.html  понравилось.
Захотел использывать, но как оказалось очень трудно найти все нужные компаненты. smile 
Начал искать, вот что нашел
SynEdit 2.0.6 http://synedit.sourceforge.net/
XML Parser 1.0.17 http://www.destructor.de/xmlparser/index.htm
UniHighlighter 2 beta 4 @lastmod(2006-07-23) http://sepa.spb.ru/d.php?syn/SynUniHigh2b4.rar
Вообщем они дружить не захотели.
SynEdit и XML Parser работают, а UniHighlighter с ними нет...
У меня Delphi 7.

Просьба:
если у кого есть 100% работающий UniHighlighter (с CODEFOLDING'гом), выложите эти компоненты.

Автор: mr.Anderson 9.8.2008, 16:36
vladislavus, на том же sourceforge есть SynEdit версии 2.0.6, скачай ее, попробуй, вдруг заработает, вообще должно.

Кстати, а у тебя нет подсветок для UniHighlighter? Я изрыл все просторы инета, но ничего не нашел. У него ж свои файлы подсветок должны быть, около 350.

Автор: vladislavus 9.8.2008, 17:09
mr.Anderson, есть только вот эти версия 1.8
XML.hlr
VRML.hlr
VBS.hlr
PHP.hlr
PERL.hlr
JS.hlr
JAVA.hlr
HTML.hlr
CSS.hlr
http://files2.north.kz/f/7985/HL.ZIP
а ты не мог бы выложить совои компоненты для UniHighlighter и сам UniHighlighter.

Автор: mr.Anderson 9.8.2008, 17:26
vladislavus, благодарю, а где брал? Надо бы побольше подсветок...

Сейчас выложу, конечно.

Добавлено через 12 минут и 13 секунд
Вот держи пакет SynEdit 2.0.6: http://www.filestock.ru/5739362283/SynEdit%2.0.6.rar

Uni не выкладываю, у меня та же версия, что и у тебя. XMLParser не использую.

ЗЫ про подсветки плз ответь на предыдущий пост.

Автор: vladislavus 10.8.2008, 08:27
mr.Anderson, да не за что. так с разных проектов, которые используют UniHighlighter
вот еще для версии 2.0
C#.xml
CSS.xml
Delphi.xml
HTML, PHP, ASP.xml
Ini.xml
Perl.xml
XML.xml
http://files.north.kz/f/4232/Highlighters.zip

ура, компонент установился. но для этого пришлось отказаться вот так
Код

//{$DEFINE CODEFOLDING}
//{$DEFINE PROTECTED_ATTRIBUTES}
//{$DEFINE WRITABLE_ATTRIBUTE_NAME}

но мне нужен CODEFOLDING как это сделать? если дерективу раскоментить, то ругается так
Код

[Error] SynUniFormatNativeXml20.pas(590): Undeclared identifier: 'FoldRegions'
[Error] SynUniFormatNativeXml20.pas(610): Undeclared identifier: 'FoldRegions'
[Fatal Error] SynUniHighlighter.pas(125): Could not compile used unit 'SynUniFormatNativeXml20'
[Fatal Error] SynUniFormatNativeXml20.pas(31): Could not compile used unit 'SynUniFormatNativeXml.pas'
[Fatal Error] SynUniFormatNativeXml20.pas(31): Could not compile used unit 'SynUniFormatNativeXml.pas'
[Fatal Error] SynUniFormatNativeXml20.pas(31): Could not compile used unit 'SynUniFormatNativeXml.pas'

и ещё использую встроенный редактор UniHighlighter подсветка отображается только при редактировании формы, а после компиляции в программе неотображает. как исправить?


Автор: mr.Anderson 10.8.2008, 13:49
vladislavus, благодарю, это уже кое-что. Если найдешь еще - выкладывай сразу, пожалуйста, чем больше, тем лучше.

Как исправить - хороший вопрос, я за отсутствием подсветок с Uni еще не работал, сегодня попробую, посмотрим, что можно сделать.

Автор: Crw 11.8.2008, 16:29
Вот есть архивчик с подсветками (311 шт)

Автор: mr.Anderson 11.8.2008, 17:08
Crw, расцелую сейчас.

Автор: mr.Anderson 14.8.2008, 09:34
Такс... Компоненты работают (в смысле кладутся на форму и компилятся нормально). Однако возникла проблема - невозможно загрузить подсветку в SynUniSyn. При загрузке (LoadFromFile) происходит ошибка внутри самого компонента, точнее, в модуле SimpleXML, я попытался устранить, но, устранив, добавил других глюков, так что не сработало. Попробую скачать более новую версию этого SimpleXML, может, поможет.

Автор: vladislavus 14.8.2008, 11:14
mr.Anderson, я думаю дело в подсветке.
скачал компанент для внутренего дизайнера http://www.delphi-gems.com/VirtualTreeview/, но внесеные в нем изменений изменения отражаються только в редакторе, а после компиляции в программе нет  smile 
с CODEFOLDING'гом разобрался http://forum.vingrad.ru/forum/topic-69033/unread-1.html все описано и примерчик там хороший у меня сразу скомппилировался и все работает  smile  

Автор: mr.Anderson 14.8.2008, 17:35
vladislavus, да фиг с ним, с codeFolding'ом, надо хоть подсветку заставить работать. Я тоже думал, что в подсветке, но из данного мне архива я попробовал несколько на выбор - у всех одинаковая ошибка. Я попробую обновить библиотеку SimpleXML, может, поможет, если нет - придется пользовать твои подсветки. Это не плохо, просто у тебя их очень мало... smile

Автор: Crw 14.8.2008, 17:42
Странно, у меня подсветки из того архива работают. Я все конечно не проверял, но несколько на выбор прошли без проблем....

Автор: mr.Anderson 14.8.2008, 18:30
Crw, у меня, например, Pascal/Delphi не работает... Я не могу понять причину, кстати. vladislavus, попробовал твои подсветки - та же картина. Вылазит ошибка
Цитата
Range Check Error

Вот в этом фрагменте файла SimpleXML.pas:
Код

function TXmlNode.FindAttrData(aNameID: Integer): PXmlAttrData;
var
    i: Integer;
begin
    Result := @FAttrs[0]; // <--- вот здесь вылазит вышеуказанная ошибка
    for i := 0 to FAttrCount - 1 do
        if Result.NameID = aNameID then
            Exit
        else
            Inc(Result);
    Result := nil;
end;

Если у вас все работает, может, опишете полную инструкцию действий по внедрению подсветок в программу? Начиная от "Бросить компонент на форму" и до конца. Я делал по прилагающейся к контролу SynUni инструкции, но, видать, что-то упускаю.

ЗЫ ошибка вылазит при выполнении метода LoadFromFile у SynUniSyn.

Автор: vladislavus 15.8.2008, 14:04
mr.Anderson, страно у меня все работает и в эту функцию при компиляции даже не заходит.

Как я внедрил подсветки.
1. Установил компонент SynEdit 2.0.6
2. Поправил файл SynEditHighlighter.pas (SynEdit 2.0.6) согласно инструкциям install_2_0a.htm (SynUniHigh2b4) :
Код

//в классе TSynCustomHighlighter перенести поле fAttributes: TStringList; из секции private в секцию protected 

TSynCustomHighlighter = class(TComponent)
private
  //fAttributes: TStringList; //remove
  ......
protected
  fAttributes: TStringList; //insert

//в классе TSynHighlighterAttributes добавить для свойства Name возможность записи, то есть заменить его объявление на: 

TSynHighlighterAttributes = class(TPersistent)
......
public
  ......
  property Name: string read fName write fName;

3. Установил компонент http://www.delphi-gems.com/VirtualTreeview/ для интегрированого редактора подсветок
4. Изменил настройки SynUniHighlighter.inc согласно инструкциям install_2_0a.htm  (SynUniHigh2b4)
Код

{$I SynEdit.inc}
// это  *  {$DEFINE CODEFOLDING} 
// и это * {$DEFINE PROTECTED_ATTRIBUTES} 
// и это * {$DEFINE WRITABLE_ATTRIBUTE_NAME} 
{$DEFINE UNIDESIGNER18}
{$DEFINE INTERNAL_DESIGNER}

//{$DEFINE SYNEDIT11}

{$DEFINE DEBUG}
{$DEFINE CUSTOMDATA}

и установил компонент SynUniHigh2b4
ВСЕ. теперь в программе:
1. Кидаем на форму SynEdit
2. Кидаем на форму SynUniSyn
3. в свойстве Highlighter у SynEdit выбираем SynUniSyn1
все теперь например на в обработчеке на батон или в создании формы пишем
Код

SynUniSyn1.LoadFromFile(ExtractFilePath(ParamStr(0))+'Delphi.hgl');


И все работает  smile

Автор: mr.Anderson 15.8.2008, 16:22
Заработало! smile Сделал все, как ты написал, переустановил SynUni - и все заработало. smile +1

Добавлено через 1 минуту и 44 секунды
Блин. А вот не заработало. Рано обрадовался. Только сбилдил весь проект - и снова эта ошибка. Да что ж такое! У тебя какая делфи?

Автор: vladislavus 15.8.2008, 17:16
mr.Anderson, Delphi 7 Enterprice Build 4.453.
Ну, наверное, тогда остаеться одно, переставить Delphi и выполнить выше описаные шаги снова.

Автор: mr.Anderson 15.8.2008, 19:20
vladislavus, да не, проблема в версии, у меня D2007, она половину этих пакетов толком не читает, т.к. сделаны они в более старых версиях и, видать, несовместимы. На 7-й версии пойдет наверняка. Надо будет седьмую поставить.

Автор: FFF 15.8.2008, 20:30
Ребят а может подскажет мне кто, как сделать обзор кода?
Ну там обзор функций, переменных... в общем как Code Explorer в Delphi. Помогите, а?

Автор: mr.Anderson 15.8.2008, 22:06
FFF, сам бы рад это сделать. Если кто подскажет как - буду счастлив.

Автор: s1lver 23.9.2008, 21:03
Люди, может только я такой тупой, но не могу скачать UniHighlighter, хоть убей....залейте мне на мыло кому не жалко...

Автор: mr.Anderson 24.9.2008, 17:04
s1lver, отправил.

Автор: EugenyCarrera 16.6.2012, 16:31
Здравствуйте!

Пытаюсь установить SynUniHighlighter на Delphi 2007
выдает ошибки
Код

[DCC Error] SynUniHighlighter.pas(98): E2003 Undeclared identifier: 'TSynIdentChars'
[DCC Error] SynUniHighlighter.pas(101): E2037 Declaration of 'GetSampleSource' differs from previous declaration
[DCC Error] SynUniHighlighter.pas(103): E2037 Declaration of 'SetSampleSource' differs from previous declaration
[DCC Error] SynUniHighlighter.pas(117): E2037 Declaration of 'GetToken' differs from previous declaration
[DCC Error] SynUniHighlighter.pas(131): E2037 Declaration of 'SetLine' differs from previous declaration
[DCC Error] Package1.dpk(45): F2063 Could not compile used unit 'SynUni\SynUniHighlighter.pas'


Подскажите пожалуйста как установить. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)