Imo, Leo has largely avoided featuritis:

1. Leo's look and feel are stable.

Leo still looks remarkably like the MORE outliner of 25 years ago. Adding 
the minibuffer was the last big change. Various plugins add tabs to the log 
panes, but they hardly tax the user's intellect.

2. Leo's API (c, g & p) are stable.

Generators were the last big change, more than a decade ago. 

3. Leo's underlying data structures are stable.

Unifying tnodes and vnodes happened a long time ago.

4. It basically doesn't matter how many commands or plugins there are.

In short, Leo is about as usable as it has ever been :-)

Imo, the way to avoid featuritis is to have new work simplify and unify the 
old work. There is still considerable room for improvement:

1. Simplify chapters.

It's ridiculous that @chapter nodes must be children of an @chapters node.  
I'm going to fix this very soon.

2. Simplify support for markdown.

The viewrendered code presently supports markdown, provided that Python's 
markdown module is available. However, the user may not realize this unless 
they read the docstring of the viewrendered plugin, which is not the name 
that would spring to mind :-) Here are the operative words:

    Unless @string view-rendered-default-kind = md,
    markdown rendering must be specified by putting it in a @md node.

Instead, the viewrendered plugin should assume that text is markdown if it 
is either in an @md node or in any @file x.md or @file x.md.txt node. 
Similarly, for @rst, @file x.rst and @file x.rst.txt.

Furthermore, there is a bug in how viewrendered handles ctrl-clicks. I hope 
to fix this today.

3. Simplify the API for icons, windows and attributes.

This is already on the list for 5.3. This item includes updating the 
scripting docs.

4. [Maybe] Replace (deprecate) the rst3 command with a new, simpler, rst 
command.

Don't panic: the rst3 command will never go away. There is no way to know 
who is using it.

The new rst command is inspired by the conventions used by the 
import/export-jupyter-notebook commands. The command will work on @rst 
nodes, just like the rst3 command.  The new rst command will generate no 
headlines for nodes whose headlines start with '#'. This comment convention 
is less wonky than @rst-nohead.  None of the other advanced features of the 
rst3 command will be supported.

The only changes to Leo's existing docs in LeoDocs.leo to switch to the rst 
command are:

- Replace @rst-no-head x by # x. There are only one or two such nodes.

- Move @rst-ignore and @rst-ignore-tree nodes to the an 'unused docs' 
section in LeoDocs.leo.

Similarly, an new md command would generate markdown from @md trees.

The new rst and md commands would still need quite a few rst options 
<http://leoeditor.com/rstplugin3.html#options>. But not so many ;-) I think 
this is worth doing, but we shall see...



*Summary*Here are the items to be done *first *for Leo 5.3:

- Improve chapters.
- Better default for open/save file dialogs.
- Improve speed of spell commands.
- Complete IPython integration.
- Enable the livecode plugin by default, provided that Python's meta 
package is available.

All of these simplify Leo in some way.  Most other items on Leo's to-do 
list are new commands, new plugins, or tweaks to existing operation.

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