Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > SynUniHighlighter и SynEdit > Я хочу использовать компонент. Как?


Автор: Vitalik 10.11.2004, 14:55
Компонент SynUniHighlighter предназначен для подсветки текста. Для его работы необходима библиотека компонентов SynEdit, а также компонент XmlParser

Итак, что нужно сделать, чтобы начать использовать компонент?

Цитата
1. Скачать библиотеку компонентов http://sourceforge.net/projects/synedit/. Можете качать любую версию. Я лично предпочитаю CVS-версии, так как они самые последние. Возможно вам достаточно будет скачать последнюю бету.
2. Распаковываем только что скачанный архив в какую-нибудь папку. Для условности будем называть её %SynEdit%
3. Открываем настройки Delphi: Tools » Environment options » Library » Library path » [...] » [...], выбираем папку %SynEdit%\Source\. Нажимаем Add, OK, OK.
4. Открываем нужный пакетный файл из папки %SynEdit%\Packages\. Например, если у вас Delphi 6, то имя нужного пакетного файла будет SynEdit_D6.dpk.
5. Нажимаем кнопку Compile.
6. Нажимаем кнопку Install.
7. Закрываем пакетный файл, не сохраняя изменения.


Теперь те же шаги нужно проделать еще для двух компонентов.
Во-первых, для XmlParser. Это компонент для быстрого считывания xml-файла.
Во-вторых, собственно для SynUniHighlighter (или SynUniSyn).

Начнём с XmlParser - он поставляется вместе с последними версиями SynUniHighlighter'a.

Цитата
1. Если вдруг оказалось, что у вас нет компонента XmlParser, то его можно скачать http://www.destructor.de/xmlparser/download.htm.
2. Открываем настройки Delphi: Tools » Environment options » Library » Library path » [...] » [...], выбираем папку, куда мы распаковали XmlParser. Нажимаем Add, OK, OK.
3. Открываем нужный пакетный файл из папки c XmlParser. Например, если у вас Delphi 6, то имя нужного пакетного файла будет XmlComponents_D6_D7.dpk.
4. Нажимаем кнопку Compile.
6. Нажимаем кнопку Install.
6. Закрываем пакетный файл, не сохраняя изменения.


Теперь перейдём собственно к установке SynUniHighlighter. Она ничем не отличается от установки предыдущих двух компонентов.

Цитата
1. Скачиваем где-нибудь SynUniHighlighter.
2. Открываем настройки Delphi: Tools » Environment options » Library » Library path » [...] » [...], выбираем папку, куда мы распаковали SynUniHighlighter. Нажимаем Add, OK, OK.
3. Открываем нужный пакетный файл из папки c SynUniHighlighter. Например, если у вас Delphi 6, то имя нужного пакетного файла будет SynUniSyn_D6.dpk.
4. Нажимаем кнопку Compile.
5. Нажимаем кнопку Install.
6. Закрываем пакетный файл, не сохраняя изменения.


Вот и всё! smile
Теперь можете кидать на форму компоненты со страницы SynEdit и экспериментировать. Если кому-нибудь интересно, могу описать основные прийомы работы с компонентом SynUniSyn smile

Автор: P@VeL 11.11.2004, 14:34
Здравствуйте!

Я уже давно пользуюсь плагином к Total Commander'у SynPlus, который использует данный компонент. А вот теперь решил сам использовать этот компонент.

Поэтому было очень интересно услышать об основных прийомах работы с компонентом. smile

Спасибо!

Автор: Vitalik 11.11.2004, 20:14
Здравствуйте, P@VeL.

А что за программу Вы пишете? smile

Могу дать пару простых первых уроков. Так сказать для быстрого старта smile

Урок 1 (статическое использование компонента подсветки)

1. Кидаем на форму компонент TSynEdit со страницы SynEdit
  1.1 Устанавливаем его свойство Align в True
  1.2 В свойство Lines вводим произвольный текст. Например, "SynEdit1 Sample {Some text}" smile
2. Кидаем на форму компонент TSynUniSyn со страницы SynEdit
  2.1 Двойной щелчок по компоненту и начанаем добавлять какие-нибудь правила. Например, Add Keywords, 'SynEdit1', 'Sample', Add range, From = '{', To = '}'.
3. На данный момент нужно после каждого изменения SynUniSyn нужно еще как-нибудь изменить форму, чтобы изменения в SynUniSyn сохранились. (Это баг)
4. Устанавливаем у SynEdit1 свойство Highlighter равным SynUniSyn1

Урок 2 (динамическое создание компонента подсветки)

1. Кидаем на форму компонент TSynEdit со страницы SynEdit
  1.1 Устанавливаем его свойство Align в True
  1.2 В свойство Lines вводим произвольный текст. Например, "SynEdit1 Sample {Some text}" smile
2. Добавляем в uses ссылки на модули SynUniHighlighter и SynUniRules
3. Добавляем в раздел public формы объявление SynUniSyn1:
Код
 public
   { Public declarations }
   SynUniSyn1: TSynUniSyn;
4. Кидаем на форму меню, добавляем новый пункт меню и в его обработчике пишем:
Код
procedure TForm1.MenuItemClick(Sender: TObject);
var
 SynKeyList: TSynKeyList;
 SynRange: TSynRange;
begin
 { Наш компонент подсветки }
 SynUniSyn1 := TSynUniSyn.Create(Self);

 { Правило "Список ключевых слов" }
 SynKeyList := TSynKeyList.Create('');
 { Название правила }
 SynKeyList.Name := 'Example';
 { Добавляем список слов }
 SynKeyList.KeyList.Add('SynEdit1');
 SynKeyList.KeyList.Add('Sample');
 { Атрибуты правила }
 SynKeyList.Attribs.Foreground := clBlue;
 SynKeyList.Attribs.Background := clWhite;
 SynKeyList.Attribs.Style := [fsBold];
 { Добавляем правило в дерево правил компонента }
 SynUniSyn1.MainRules.AddKeyList(SynKeyList);

 { Правило "Диапазон" }
 SynRange := TSynRange.Create('{', '}');
 { Название правила }
 SynRange.Name := 'Remarks';
 { Атрибуты правила }
 SynRange.Attribs.Foreground := clGray;
 SynRange.Attribs.Background := clWhite;
 SynRange.Attribs.Style := [fsItalic];
 { Добавляем правило в дерево правил компонента }
 SynUniSyn1.MainRules.AddRange(SynRange);

 { Устанавливаем наш компонент для SynEdit в качестве используемой подсветки }
 SynEdit1.Highlighter := SynUniSyn1;
end;


Урок 3 (Вызов визуального редактора подсветки)

1. Берём в качестве отправной точки любой из предыдущих примеров.
2. Добавляем в uses ссылку на модуль SynUniDesigner
3. Добавляем новый пункт меню и в его обработчике пишем:
Код
procedure TForm1.MenuItem2Click(Sender: TObject);
begin
 { Если компонент не создан, то выходим из процедуры }
 if SynUniSyn1 = nil then Exit;
 { Запуск визуального редактора подсветки }
 TSynUniDesigner.EditHighlighter(SynUniSyn1, 'Form title', 'LangFile.lng')
end;


Урок 4 (Загрузка правил подсветки из файла)

1. Берём в качестве отправной точки любой из предыдущих примеров.
2. Кидаем на форму компонент TOpenDialog со страницы Dialogs
3. Добавляем новый пункт меню и в его обработчике пишем:
Код
procedure TForm1.MenuItem3Click(Sender: TObject);
begin
 { Если компонент не создан, то выходим из процедуры }
 if SynUniSyn1 = nil then Exit;
 { Запускаем диалог открытия файла }
 if OpenDialog1.Execute then
   { Если файл подсветки был выбран, загружаем его в наш компонент }
   SynUniSyn1.LoadFromFile(OpenDialog1.Filename);
end;

Автор: P@VeL 11.11.2004, 22:31
Да вот пишу сетевой чат, пока что только разбирался в реализации обмена сообщениями....
Скоро начну разрабатывать дизайн чата и думаю, что этот компонент в подсветке текста мне очень поможет.

ЗЫ Спасибо за инфу smile

Автор: Vitalik 12.11.2004, 12:38
Если будет нужна помощь - обращайся smile

Эта тема специально создана для того, чтобы обсуждать здесь проблемы установки компонента и минимальные приёмы работы с ним smile

Автор: Kordub 22.2.2005, 14:24
Не устанавливается пакет версии 1.8 - ошибка при компиляции
File not found: 'DsgnIntf.dcu'. У меня Delphi 7. Правда, устанавливается старая версия SynUniSyn, но она не работает с компонентом SynEdit. Т. е. если присвоить свойство
Код

SynEdit1.Highlighter := SynUniSyn1;

никакой подсветки нет

Автор: Vitalik 22.2.2005, 14:47
Цитата(Kordub @ 22.2.2005, 14:24)
Не устанавливается пакет версии 1.8 - ошибка при компиляции
File not found: 'DsgnIntf.dcu'. У меня Delphi 7.

Давай обсудим это в теме "http://forum.vingrad.ru/index.php?showtopic=43330"
Повтори там твоё сообщение, пожалуйста.

Цитата(Kordub @ 22.2.2005, 14:24)
Правда, устанавливается старая версия SynUniSyn, но она не работает с компонентом SynEdit. Т. е. если присвоить свойство
Код
SynEdit1.Highlighter := SynUniSyn1;
никакой подсветки нет

Очень странно! У меня работали обе версии, и работали правильно...
Давай это обсудим в той же теме, хорошо?

Автор: Guest 12.11.2005, 18:45
Привет всем! У меня не устанавливается SynEdit. smile Что для этого нужно?


Автор: Vitalik 14.11.2005, 15:33
Цитата(Guest @ 12.11.2005, 18:45)
Привет всем! У меня не устанавливается SynEdit.  Что для этого нужно?

Какую версию SynEdit и на какую версию Delphi или C++ Builder вы ставите?..
Что за ошибку выдаёт при установке?..

Автор: Guest 5.12.2005, 21:06
Уважаемые, ставлю SynEdit v. 2.01b на Дельфи 7, потом Unhighlighter v 2.0a full и при компиляции unhighliter Дельфи ругается следующим образом : [Fatal Error] SynUniHighlighter.pas(35): File not found: 'SynEditCodeFolding.dcu' Я так понял, что версия СинЕдит древняя.

Автор: Гость_Fel 5.12.2005, 23:01
Так, с этим разобрался, тебя ругается вот как

Range.Attributes.Name := 'New';
--
[Error] SynUniHighlighter.pas(160): Cannot assign to a read-only property

Автор: Vitalik 6.12.2005, 17:43
Прочитай обо всём этом здесь: "http://www.unihighlighter.com/index.php?showpage=install&lang=ru" smile

Автор: Гость_Fel 6.12.2005, 20:39
Если избавляться от этой проблемы следующим образом:

{$I SynEdit.inc}
{$DEFINE CODEFOLDING}
//{$DEFINE PROTECTED_ATTRIBUTES} //comment
//{$DEFINE WRITABLE_ATTRIBUTE_NAME} //comment

то при двойном щелчке по SynUniSyn выскакивает следующее сообщение:

Sorry, this feature isn't implemented yet

:/ И что же делать?

Автор: Guest 6.12.2005, 20:48
И еще как удалить установленный анхайлайтер?

Автор: Vitalik 6.12.2005, 22:28
Цитата
то при двойном щелчке по SynUniSyn выскакивает следующее сообщение:
Sorry, this feature isn't implemented yet

Это действительно так. По ряду причин эта фича в UniHighlighter 2.0 Alpha не реализована.

Цитата(Guest @ 6.12.2005, 20:48)
И еще как удалить установленный анхайлайтер?

Не анхайлайтер, а унихайлайтер smile

А удаляется он обычно:
  • Удаляем из списка в "Install packages"
  • Удаляем путь из Library path
  • Удаляем файлы SynUni*.* из папки %Delphi%\Projects\Bpl

Автор: Guest 7.12.2005, 00:05
Цитата(Vitalik @ 6.12.2005, 22:28)
Это действительно так. По ряду причин эта фича в UniHighlighter 2.0 Alpha не реализована.

И что же делать, ставить более старую версию унихайлайтера?
Цитата(Vitalik @ 11.11.2004, 20:14)
  2.1 Двойной щелчок по компоненту и начанаем добавлять какие-нибудь правила. Например, Add Keywords, 'SynEdit1', 'Sample', Add range, From = '{', To = '}'.

В этой версии не реализовано?

Автор: Vitalik 7.12.2005, 15:42
Цитата(Guest @ 7.12.2005, 00:05)
В этой версии не реализовано?

Именно так... smile
Дело в том, что была предпринята попытка отделить дизайнер от компонента... И вот вследствие этого отделения его пока нельзя его использовать в дизайнере формы.
Дело в том, что польза от внутреннего дизайнера, конечно, есть, но ряд пользователей по ряду причин либо не хотят вообще использовать дизайнер, либо не хотят, чтобы он был частью компонента...
О том, как стоит поступить в данном случае с дизайнером, стоило бы поговорить в отдельной теме.

Цитата(Guest @ 7.12.2005, 00:05)
И что же делать, ставить более старую версию унихайлайтера?

Если вам непременно необходимо задать правила подсветки на этапе проектирования формы, то можете поставить старую версию.
Иначе, можно просто вручную использовать методы LoadFromFile или LoadFromStream.

Автор: Guest 7.12.2005, 23:36
ок, спасибо

Автор: andrewdark 25.1.2006, 11:47
Доброе время суток!!

Лазил по форуму не смог найти ответ на свой вопрос, поэтому хочу его задать сейчас. Заранее прошу прощение если вопрос покажется ламерским, так как я только начинаю осваивать эти компаненты, да и чего таить сам Delphi/

Суть в следующем: Установил SynEdit и SynUniHighlighter, вроде все прошло успешно.

Начинаю читать как пользоваться из примеров и дохожу до момента, когда написано "Кидаем на форму компонент TSynUniSyn со страницы SynEdit"

Ищу и ни чего плжобного не нахожу. Может я чего не доустановил, а может концепция компаненто изменилась а примеры по использованию старые. Не могу найти TSynUniSyn

Подскажите плз.

Автор: Vitalik 26.1.2006, 16:31
Здравствуйте, andrewdark!

Компонентая концепция покамест не изменилась, так что скорее всего у вас возникли проблемы с установкой SynUniHighlighter... которые мы сейчас и попробуем решить user posted image
  • Расскажите подробнее о том, как вы устанавливали компонент?
  • Какая версия SynEdit и UniHighlighter?
  • Версия Delphi?
Кстати, на сколько я понял, страница 'SynEdit' появилась на палитре компонентов, так?

Автор: andrewdark 26.1.2006, 16:53
Доброе время суток.

Вообщем так я еще разок перечитал страницы форума, и видел примерно такую же проблему.
проще говоря ругается в строке

Range.Attributes.Name := 'New';

Я так понял поэтому у меня ee и нету

Верися Delphi 7
Прочитал документацию по установке
установил сначала SynEdit 2.0.2 beta , взятый с сайта http://www.unihighlighter.com/
затем UniHighlighter 2.0 alpha

прежде чем устанвливать пропатчил как в инструкции написано, результат см выше
это на этапе компиляции

спасибо

Автор: Vitalik 26.1.2006, 18:44
Цитата(andrewdark @ 26.1.2006, 15:53 Найти цитируемый пост)
проще говоря ругается в строке

Range.Attributes.Name := 'New';

Ага, всё ясно smile
Дело в том, что в новых версиях SynEdit возможность экспорта в HTML была кардинально переписана...
И вот, чтобы наш компонент (UniHighlighter) мог и дальше нормально работать при экспорте, нужно SynEdit немного пропатчить (открыть доступ не некоторые закрытые поля).
Подробнее об этом написано на http://www.unihighlighter.com/index.php?showpage=install&lang=ru.

Цитата(из нашего сайта :-))
Чтобы можно было использовать экспорт текста с подсветкой в файлы HTML или RTF нужно "пропатчить" SynEdit. Для этого нужно кое-что поменять в файле SynEditHighlighter.pas:
  • в классе 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; //add write ability

Автор: andrewdark 27.1.2006, 10:56
Я сделал именно так как было написано в рекомендациях по установке.
Несколько раз переустанавливал следуя иструкция а эффект ровно такой же.

Поэтому и обратился за помощью.
Если я правильно понял сначала нужно было установить SynEdit, он поставился, закладки появились,
А вот далее такие проблемы начались.

Автор: Vitalik 27.1.2006, 14:56
Цитата(andrewdark @ 27.1.2006, 09:56 Найти цитируемый пост)
Несколько раз переустанавливал следуя иструкция а эффект ровно такой же.

Чтобы компонент действительно переустановился, зачастую необходимо делать следующее:
  • Удалить файлы SynEdit_*.* и SynUni_*.* из папки Borland\Delphi7\Projects\Bpl
  • Убрать все пути на старые версии компонента из Library Path в настройках Delphi
  • Удалить все *.dcu и подобные файлы из исходников компонентов SynEdit и SynUniHighlighter
Затем перезапустить Delphi, пропатчить SynEdit, только после этого установить SynEdit, установить SynUniHighlighter.

У тебя скорее всего такая ситуация (у меня такое тоже было):
при переустановке SynEdit он не перекомпилирует его полностью, не пересоздаёт файлы *.dcu и/или *.bpl. Удаление этих файлов (как описано выше) заставит его заново и полностью перекомпилировать компонент и создать эти файлы уже обновлёнными smile

Попробуй и напиши о результатах user posted image

Кстати, на всякий случай напиши что за ошибку он выдаёт на этой строке. Если я правильно понимаю ситуацию, то он должен ругаться на невозможность записи в поле Name, то есть оно как бы readonly (для непропатченной версии SynEdit).

Удачи! smile

Автор: andrewdark 27.1.2006, 15:44
Сделал все как посоветовал, результат следующий.

1. Удалил все что указано, пропатчил
2. Стал устанавливать SynEdit
3. Ошибка в строке

Код

requires
  designide,
  SynEdit_R7;


-----------------------
[Warning] SynEdit_R7.dpk(5): File not found: 'SynEdit_R7.res'
[Hint] SynHighlighterPas.pas(1575): Value assigned to 'ReadDelphiSettings' never used
[Error] SynEdit_D7.dpk(34): File not found: 'SynEdit_R7.res'
[Fatal Error] SynEditReg.pas(151): Could not compile used unit '..\Source\SynHighlighterManager.pas'

Правда при повторном Compile ее не возникает. Дальше я не стал пока продолжать.

Автор: Vitalik 27.1.2006, 17:42
Цитата(andrewdark @ 27.1.2006, 14:44 Найти цитируемый пост)
Правда при повторном Compile ее не возникает. Дальше я не стал пока продолжать.

А зря smile
У меня на строке с SynEdit_R7; тоже частенько ругается и тоже после повторного Compile замолкает. Так что обычно это совсем не проблема smile

Еще раз удачи! user posted image

Автор: andrewdark 27.1.2006, 17:55
Ок, продолжил дальше, результат такой же с чего все и началось

Ошибка в строке с New
Код

{$IFDEF WRITABLE_ATTRIBUTE_NAME}
  Range.Attributes.Name := 'New';



--------------------
[Warning] SynUniClasses.pas(384): Return value of function 'StrToStartLine' might be undefined
[Hint] SynUniClasses.pas(907): Variable 'Value' is declared but never used in 'TSynMultiToken.LoadFromXml'
[Hint] SynUniImportOldFormat15.pas(135): Variable 'Value' is declared but never used in 'LoadRange'
[Hint] SynUniImportOldFormat15.pas(197): Value assigned to 'TSynUniImportOldFormat15.ImportFromXml' never used
[Hint] SynUniImportOldFormat15.pas(194): Variable 'Schemes' is declared but never used in 'TSynUniImportOldFormat15.ImportFromXml'
[Hint] SynUniImportOldFormat15.pas(195): Variable 'SchemeIndex' is declared but never used in 'TSynUniImportOldFormat15.ImportFromXml'
[Warning] SynUniImportOldFormat15.pas(265): Return value of function 'TSynUniImportOldFormat15.ImportFromFile' might be undefined
[Hint] SynUniImportOldFormat18.pas(137): Variable 'Value' is declared but never used in 'LoadRange'
[Hint] SynUniImportOldFormat18.pas(202): Value assigned to 'TSynUniImportOldFormat18.ImportFromXml' never used
[Hint] SynUniImportOldFormat18.pas(199): Variable 'Schemes' is declared but never used in 'TSynUniImportOldFormat18.ImportFromXml'
[Hint] SynUniImportOldFormat18.pas(200): Variable 'SchemeIndex' is declared but never used in 'TSynUniImportOldFormat18.ImportFromXml'
[Warning] SynUniImportOldFormat18.pas(267): Return value of function 'TSynUniImportOldFormat18.ImportFromFile' might be undefined
[Error] SynUniHighlighter.pas(160): Cannot assign to a read-only property
[Fatal Error] SynUniReg.pas(33): Could not compile used unit '..\Source\SynUniHighlighter.pas'


Вот так

Автор: Vitalik 27.1.2006, 23:05
Цитата(andrewdark @ 27.1.2006, 16:55 Найти цитируемый пост)
[Error] SynUniHighlighter.pas(160): Cannot assign to a read-only property

Это признак непропатченного SynEdit'а... Прикрепи ка сюда свой файлик SynEditHighlighter.pas...

Не знаю почему, но у тебя изменённая версия SynEdit не хочет устанавливаться, а устанавливается старый оригинальный вариант...
Попробуй в той строке, где ты добавлял возможность write fName; написать пару левых символов и проверить будет ли компилятор на них ругаться... Может просто ты не тот файлик открыл или компилятор игнорирует этот файл или мож еще что случилось user posted image

P.S. Что-то у меня поздно получается замечать твои посты. У тебя есть ICQ?

Автор: andrewdark 30.1.2006, 10:21
Сорри, что так долго. Вообщем я все таки добился того чтобы SyUni у меня поставился.

Начинаю испытывать примеры.

И урок 1
Цитата

Двойной щелчок по компоненту и начанаем добавлять какие-нибудь правила.


Выдает сообщение Sorry, this feature isn't implemented yet


Автор: Vitalik 30.1.2006, 19:40
Цитата(andrewdark @ 30.1.2006, 09:21 Найти цитируемый пост)
>>Двойной щелчок по компоненту и начанаем добавлять какие-нибудь правила.
Выдает сообщение Sorry, this feature isn't implemented yet

Это действительно так... Дело в том, что в версии 2.0a компонента было произведено кардинальное изменение... Дизайнер был полностью отделён от компонента... В связи с этим использование его на этапе проектирования формы стало затруднительным...
Но имеется возможность на этапе проектирования загружать подсветку в компонент из файла с помощью того же контекстного меню, правда для этого надо исправить одну ошибочку в компонете. Если тебя интересует эта фича, то могу прислать исправление...
По поводу возвращения встроенности дизайнера вопрос еще не решён... Я сам сомневаюсь как будет лучше... Выскажи здесь своё мнение по этому поводу smile

Автор: andrewdark 31.1.2006, 10:14
Ок. Спасибо!
Как только разберусь с компанентом обязательно отпишу свои ощущения.

Автор: MLS 31.3.2006, 21:22
А можно просто выделить кусок строки одной-двумя функциями, не создавая правил? Т. е., например, указать начальные координаты, конечные, цвет, шрифт, стиль и всё?
И ещё такая проблема: каждый раз при открытии проекта, в котором используется SynEdit, вижу сообщение, что, мол, класс TSynEdit не найден, бла-бла-бла... Короче говоря, в установленных Packages SynEdit component suite в списке есть, но галочки почему-то никогда нет, то есть он отключён. Приходится каждый раз его подключать. В чём загвоздка?
Заранее спасибо.

Автор: Vitalik 22.4.2006, 02:49
Цитата(MLS @  31.3.2006,  20:22 Найти цитируемый пост)
А можно просто выделить кусок строки одной-двумя функциями, не создавая правил? Т. е., например, указать начальные координаты, конечные, цвет, шрифт, стиль и всё?

Можно. Это немного обсуждалось в теме "http://forum.vingrad.ru/index.php?showtopic=73240", исходный код можно найти в теме "http://forum.vingrad.ru/index.php?showtopic=37933"

Цитата(MLS @  31.3.2006,  20:22 Найти цитируемый пост)
И ещё такая проблема: каждый раз при открытии проекта, в котором используется SynEdit, вижу сообщение, что, мол, класс TSynEdit не найден, бла-бла-бла... Короче говоря, в установленных Packages SynEdit component suite в списке есть, но галочки почему-то никогда нет, то есть он отключён. Приходится каждый раз его подключать. В чём загвоздка?

Попробуй переустановить SynEdit (полностью) 

Автор: Roxanne 14.5.2009, 00:52
Доброго времени суток!
Поставила SynEdit и UniHighlighter. Последний с боем, ибо компилятор выбивал ошибку "[Fatal Error] SynUniHighlighter.pas(35): File not found: 'SynEditCodeFolding.dcu'". Посему пришлось исправлять проблему так, как делали выше в этой теме, ибо другого способа я не знаю. Пытаюсь разбирать компоненты и применять их - снова проблема. При двойном щелчке на SynUniSyn выскакивает сообщение с ошибкой "Access violation at address 0460B59E in module 'SynUni_D6.bpl'. Read of address 000005B8."
Что это значит, как лечить?
И еще более тупой вопрос, просьба не кидать камнями, я пока новичок в делфи. В SynEdit вроде уже есть готовые шаблоны для подсветки различных синтаксисов, как их подключить? Мне html нужен. Скомпилила проект, а подсветки никакой и нет в помине. Что я забыла сделать?

Автор: Crw 14.5.2009, 13:55
Скорее всего не правильно установили компоненты. 
Подвсетку можно реализовать двумя путями - первый это через UniHighlighter (тогда в него надо загрузить файл нужной подсветки), второй это просто исполььзовать нужный компонент из закладки "SynEdit Highlighters".
Дальше в компоненте SynEdit в поле Highlighter нужно выбрать нужный компонент подсветки. 
Вообще с SynEditом поставляются также несколько примеров его использования - посмотрите сначала как там все сделано.

Автор: DenisTv 1.7.2009, 22:13
Доброго времени суток.
Установилось все без проблем.
Настроил, SynUniSyn. Подключил SynEdit, и до компиляции всё нормально отображается. А после компиляции все настройки сбиваются. Подсветка пропадает и т.п. Подскажите что нибудь?


Автор: effect47 3.7.2011, 13:34
Народ, где можно взять рабочий Unihighlighter? Под D7

Автор: BLACK_KOT 14.9.2016, 23:21
http://prntscr.com/ci2665 при попытке установить SynUniSyn_D7.dpk  делфи 7

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