Thank you, Edward.   It was very encouraging to have you on the call, and 
the direction around uA's is very exciting.    I agree that bringing some 
of the really powerful Leo capabilities within "practical" reach of new Leo 
users will generate tremendous utility.   

-Richard

On Thursday, January 28, 2016 at 6:41:09 PM UTC-8, Edward K. Ream wrote:
>
> Richard, Don, Rob and I had an excellent conference call today. Great 
> things are coming, based on tagging and uA's.
>
> The discussion highlighted a big hole in Leo's documentation. We need a 
> summary of how to do cool things *easily* with Leo.  This will allow 
> people to dream bigger.
>
> Here is a *quick* list topics for the code academy.  Mos can already be 
> done easy, if you know where to look.  Some may require a few new lines in 
> Leo's core. These topics should also be included in Leo's cheat sheet, or 
> somewhere similar.
>
> *uA's*
>
> They are crucial to flexible data management. uA's can associate arbitrary 
> data with any vnode or position, as describe here 
> <http://leoeditor.com/customizing.html#adding-extensible-attributes-to-nodes-and-leo-files>
> .
>
> Everyone needs to know how to get, set and search uA's.  You can get and 
> set uA's with v.u. Just a few lines of code will search the entire outline 
> for all nodes/positions having a given uA.
>
> Quick additions to Leo's core:
> - Define the p.u property, so code can do p.u instead of p.v.u.
> - Possibly make the api for uA's more convenient.
>
> A more ambitious addition: Define a gui interface for uA's.
>
> *Other topics*
>
> - Clones: making and deleting them. Clones are *cheap *to create!
> - How to create new panes in the log window, and how to put cool stuff in 
> them.
> - How to hoist outlines programmatically.
> - How to write a plugin so it can respond to events.
> - How to create new panes in Leo's window with Terry's free_layout and 
> nested_splitter plugins.  In essence, these plugin are part of Leo's core.
> - How to put multiple icons in a single headline.  This may be possible 
> already.  If not it would require just a few lines of code in Leo's core.
>
> We discussed the so-called Easter-Egg interface to create new panes this 
> from the gui, but a summary of how to do this programmatically is needed. 
> *Note*: it's possible to save the layout so that Leo will restore it when 
> Leo starts up the next time.
>
> - How to change what is shown in the outline pane.  Chapters and hoists 
> exploit existing capabilities.  If need be, more could be added with just a 
> few lines of code in Leo's main outline redrawing code.
>
> *New directions*
>
> Putting all this together, we all agreed that being able to make uA's 
> *visible* somehow would give Leo many of the cool features of the ECCO 
> outliner. We envisage a uA tab in the outline pane that would allow the 
> user to:
>
> - See all and *only* nodes with given attributes.  This is similar to 
> Leo's clone-find-all (or clone-find-all-flattened) commands, combined with 
> something like a hoist.
>
> - List all such nodes in the uA pane, similar to the Nav Pane (Quicksearch 
> plugin), so that clicking on a node would select the node in the entire 
> outline, with only ancestors of the selected node expanded.  Pretty easy to 
> do.  Alternatively, perhaps some  tag (uA) oriented features can be added 
> to existing plugins.
>
> *Conclusions*
>
> I expect that we can do really great things with Leo in just a few weeks.
>
> Discussions of how to do *practical* tasks may be missing from the 
> current documentation.  Neophytes have to read between too many lines.  A 
> list of *easily done* programming tasks will help develop a larger cadre 
> of developers.
>
> 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