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?


Mattias

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

Reply via email to