<div>Hi Graeme,</div>
<div> </div>
<div>Have you seen Colorer-take5 on the following URL <a href="http://colorer.sourceforge.net/">http://colorer.sourceforge.net/</a> ? </div>
<div> </div>
<div>It's cited in the tutorial you pointed at <a href="http://www.catch22.net/tuts/neatpad/18">http://www.catch22.net/tuts/neatpad/18</a> .</div>
<div> </div>
<div>Joćo Marcelo<br></div>
<div class="gmail_quote">2010/5/25 Graeme Geldenhuys <span dir="ltr"><<a href="mailto:graemeg.lists@gmail.com">graemeg.lists@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Hi,<br><br>Does anybody know of a website or article I can read about how to<br>integrate regular expressions with an editor to end up with a editor<br>
that can handle syntax highlighting. It doesn't need to be specific to<br>Object Pascal (that would be too easy and ideal). ;-)<br><br>For example, mcedit (from Midnight Commander), gEdit (Gnome's default<br>editor) etc all use regex to handle there syntax highlighting. What I<br>
would like to find out is how to use regex with an editor component.<br>Both are new to me, so yes, I'm down on both counts, but I am very<br>eager to learn. :-)<br><br>As far as I can see, I need to find out about the following requirements:<br>
<br> * What events must the editor component make available (eg: OnLineDraw)<br> * how to use regular expressions with such events<br> * what if syntax highlighting spans multiple lines (eg: a multi-line<br>comment in Object Pascal)<br>
 * syntax definition file layout. I guess I can look at gEdit's spec.<br>They use XML files to define<br>   each syntax highlighter. If I can piggy-back on there definition<br>file, I'll instantly have a whole<br>
   bunch of syntax highlighters available.<br><br><br>And yes I was told before that using regex for syntax highlighting is<br>slow, but I think that's a matter of implementation. The editors I<br>have seen and used are more that fast enough even on large files. The<br>
huge benefit of external (runtime) syntax highlighting via something<br>like regex is that it is very simple to extend by anybody that knows<br>regex. This means, no need for custom components to do syntax<br>highlighting like SynEdit, no recompiling of components or<br>
applications etc.<br><br>Anyway, this editor component will form part of a larger project I am<br>working on. I already have the basics of a editor component and need<br>to find out what else I need to implement for syntax highlighting to<br>
be possible in that editor component.<br><br>Any thoughts, suggestions, pointers - any information or links to<br>information would be very helpful.<br><br>I found a very nice article that explains the design of an editor that<br>
must support Unicode and Syntax Highlighting. So far the author has<br>implemented the basic editor, Unicode support, but hasn't reaching the<br>part I am interested in - syntax highlighting. :-(  None the less,<br>this is an interesting tutorial to read. You can find it at the<br>
following URL.<br><br> <a href="http://www.catch22.net/tuts/neatpad/1" target="_blank">http://www.catch22.net/tuts/neatpad/1</a><br><br><br>--<br>Regards,<br> - Graeme -<br><br><br>_______________________________________________<br>
fpGUI - a cross-platform Free Pascal GUI toolkit<br><a href="http://opensoft.homeip.net/fpgui/" target="_blank">http://opensoft.homeip.net/fpgui/</a><br><font color="#888888"><br>--<br>_______________________________________________<br>
Lazarus mailing list<br><a href="mailto:Lazarus@lists.lazarus.freepascal.org">Lazarus@lists.lazarus.freepascal.org</a><br><a href="http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus" target="_blank">http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus</a><br>
</font></blockquote></div><br>