​
On Tue, Mar 5, 2019 at 12:43 PM john lunzer wrote:

​> ​This will be wonderful quality of life improvements. If you can, 
without terrible effort or stress, "borrow" the best of Pyzo then I think 
Leo will benefit mightily. 

I'll be studying pyzo's ideas, design and actual code.  There is, no doubt 
a lot to learn.

Supposedly, "good artists imitate, great artists  ​steal." I'll be looking 
into using pyzo's source code *unchanged*.  Leo already has a framework for 
do this:  the leo/external directory may contain "fallback" code, to be 
used if primary code can not be found.  So we might put all of pyzo, 
including dll's, in that directory.

In parallel, I'll be instrumenting pyzo with study traces, etc., to 
determine exactly what it does, and how.  I am particularly interested in 
the to-do list given earlier, but I'll investigate other topics, such as 
the notification system, the look and feel of windows, and the mechanics of 
having a class have a gazillion base classes:

class CodeEditor(
    HighlightCurrentLine,
    HighlightMatchingOccurrences,
    HighlightMatchingBracket,
    FullUnderlines,
    IndentationGuides,
    CodeFolding,
    LongLineIndicator,
    ShowWhitespace,
    ShowLineEndings,
    Wrap,
    BreakPoints,
    LineNumbers,
    AutoCompletion, #Escape: first remove autocompletion,
    Calltip,               #then calltip
    Indentation,
    MoveLinesUpDown,
    ScrollWithUpDownKeys,
    HomeKey,
    EndKey,
    NumpadPeriodKey,
    AutoIndent,
    PythonAutoIndent,
    AutoCloseQuotesAndBrackets,
    SyntaxHighlighting,
    SmartCopyAndPaste, # overrides cut(), copy(), paste()
    CodeEditorBase, #CodeEditorBase must be the last one in the list
):
    ...

This is a pattern I would never have considered.  I want to know why it is 
robust...

> it may be worth studying xo's syntax highlighting code 
<https://github.com/scopatz/xo>. 

​Thanks for this.  I have bookmarked it.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.

Reply via email to