On Sun, 23 Jul 2006 13:42:59 +0200
"Darius Blaszijk" <[EMAIL PROTECTED]> wrote:

> 
> ----- Original Message ----- 
> From: "Mattias Gaertner" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Sunday, July 23, 2006 12:27 PM
> Subject: Re: [lazarus] SynEdit + Unihighlighter (must have fixed caps 
> problem)
> 
> 
> > On Sun, 23 Jul 2006 10:22:00 +0200
> > "Darius Blaszijk" <[EMAIL PROTECTED]> wrote:
> >
> >> >> Question about SynEdit: I know the lazarus version is a very
> >> >> customized one from old source... Will it be replaced by a newer
> >> >> version from the original project?
> >> >
> >> > Yes, eventually.
> >>
> >> Mattias,
> >>
> >> I'm willing to try to port UniSynEdit to Lazarus (and keep it in sync 
> >> with
> >
> >> their trunk), however how do you feel about that. I know you have your
> >> doubts about certain parts of the code (can't remember anymore what 
> >> though
> >
> >> precisely). Would it be sensible then to start something like this? Or
is
> >> there another component that will be a better candidate to be used in
the
> >> sourceeditor eventually. Or do you feel that a completely new component
> >> should be developed purely for Lazarus source editor which is highly
> >> optimized just for that task and is integrated at it's best in Lazarus.
> > What
> >> are the properties such a component at least should have?
> >
> > Here is a list, what features has been added to synedit.
> >
> > - LCL support (not just compile. using less messages, but methods)
> > - UTF-8 support
> > - bidi support
> > - fast enough to open and edit fpcmacosall.pas
> > - 64bit support
> > - Options:
> > eoBracketHighlight,        // Highlight matching bracket
> > eoDoubleClickSelectsLine,  // Select line on double click
> > eoHideRightMargin,         // Hides the right margin line
> > eoPersistentCaret,         // Do not hide caret when focus lost
> > eoShowCtrlMouseLinks,      // Pressing Ctrl will highlight the word
under
> > the mouse cursor
> > eoAutoIndentOnPaste,       // Indent text inserted from clipboard
> > eoSpacesToTabs             // Converts space characters to tabs and
spaces
> > eoCaretSkipsSelection,     // Caret skips selection on VK_LEFT/VK_RIGHT
> > eoAlwaysVisibleCaret       // Move caret to be always visible when
> > scrolling
> > - Support for primary selection (middle mouse click under X)
> > - property BlockIndent: integer
> > - procedure SelectToBrace;
> > - procedure SelectLine;
> > - procedure SelectParagraph;
> > - property SelStart: Integer
> > - property SelEnd: Integer
> > - code folding
> > - the TSynPasSyn has some extensions too.
> > - syncompletion.pas contains a lot of additions. But nowadays I would
> > rewrite the whole unit. The IDE already positions and paints the 
> > completion
> > box. Therefore the new synedit just needs to provide some hooks and I
will
> > write a new completion box for the IDE. I want to extend it anyway.
> >
> > Of course the identifiers can be renamed and some features could work a
> > little bit different.
> > And: This time keep in sync with the official synedit with {$IFDEF LCL}.
> >
> > I didn't take a closer look at unisynedit. What are the differences to
the
> > old synedit?
> As far as I can tell based on the comparison of a few units, it seems that

> all strings are now declared as widestring. and chars are now widechar or 
> ansichar. There's a new unit SynUnicode.pas that implements widestring 
> objects. For the rest it looks pretty much the same as the CVS version.

All other IDE functions are using UTF-8 strings. They often assign big parts
of the synedit lines. Assigning ansistrings is fast. But a widestring
synedit must either convert everything on the fly or keep additional all
strings as UTF-8.
What about the official synedit? Does it support UTF-8?


Mattias

_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to