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


Автор: Fenix 10.7.2006, 17:04
Доброго времени суток.

У меня возникла проблема с компонентом SynMultiSyn.
Мне надо, что бы одновременно могли использоваться несколько подсветок тегов (Html, PHP, JS). Я добавляю в Schemes эти 3 подсветки. В Default выставляю SynHTMLSyn1 (т.к. это поле обязательно должно быть заполнено). В свойстве Highlighter SynEdit'a ставлю SynMultiSyn.
При запуске программы, у меня подсвечиваються только Html теги...
В чем может быть проблема? 

Автор: Vitalik 10.7.2006, 17:18
Здравствуй! smile

Отвечаю на вопрос smile

Нужно также установить значения полей StartExpr и EndExpr у каждой из добавленных схем (TScheme).
Эти значения определяют когда нужно переходить из схемы "по умолчанию" (DefaultHighlighter) в любую другую smile

Например, для подсветки SynPHPSyn таковыми значениями будут "<\?" и "\?>(без обрамляющих кавычек).
Слеши ('\') перед вопросиками ('?') нужно ставить из-за того, что эти выражения являются "регулярными" и символ вопроса "?" является зарезервированным smile

Будут вопросы по регулярным выражениям - смело задавай, по возможности попробую ответить smile 

Автор: FlatDev 5.8.2006, 12:35
@Fenix
(In english, beacuse my russian is very very bad, I can only read it a little ;)

If you are looking for multi highlighter for php/html/css/js for SynEdit/UniSynEdit then you should look here: http://flatdev.dotgeek.org/downloads.php?project=2

It has much more features than working with TSynMulitSyn and it's about 2-10 times faster than using TSynMultiSyn ;)

TSynWeb Features:
- support for embedded:
  - PHP, CSS, JS in HTML
  - PHP in CSS, JS
- support for UniSynEdit
- full validation for tags (also checks for valid '/>' or '/') and its attributes for HTML across difference versions (for XHTML - case sensitive)
- values in tags without quotation are also highlighted as ValueAttrib (only in HTML, in XHTML is highlighted as error because, XHTML doesn't allow for unquoted values)
- in CSS validation for tags (you can set also HTML version)
- validation for Ampersand tags (eg. &amp;, &copy;)
- almost FULL validation for CSS across CSS1 and CSS2.1
- support for <script language="php"> as start tag for PHP (also <?, <?php, <?=, <%)
- end tags for PHP doesn't stop in strings, comments (stops only in singleline), etc, you can now write "<?xml ... ?>" and PHP mode doesn't stop,
- suppor for custom HEREDOC names (defined in TStringList, or any you type - comparing based on CRC8)
- supprt for encapusled vars or escaped chars in strings (different highlighter attrib) with error checking
- any word (but not keyword or function name) writed in UpperCase highlighted as ConstantAttrib
- ActiveHighlighterSwitch - see demo (check 'Active HL' in demo app)
- parsed source code of php to get function names (for php4 and php5+PECL)
- any many more.

In about week there will be also html tag matching ;) (inteligment brace matching is done - SynTokenMatch, see synweb .exe demo)

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