Like Ed's engineering notebook posts, it's a public declaration of thoughts 
with an invitation a comment if I'm going to far off the rails

Brief summary: toggle name is a tool I built about four years ago to assist 
in programming with speech recognition. Having discovered Leo, I want to 
move its functionality to the Leo environment. As I make the transition, 
I'm discovering that some of the functionality I used in Emacs is no longer 
needed but, new functionality requirements reveal themselves with Leo.

At first glance, the process is simple. In a node (which I confused Ed by 
calling sections. So sorry) there exist code and other stuff. Toggle name 
needs the code and only the code. It will take the code, applies 
transformations, and return the modified code to be's inserted in place of 
the original text.

In my simplistic use of Leo, I will have at most one document directive 
followed by a code directive. I don't know if it's possible or even a good 
idea to have multiple document and code directives. Somewhere I picked up 
the idea that one thought per node is a good idea.

Keeping things simple, I need to figure out how to select everything in a 
code directive region and replace it with a new body of text.

As I was keeping things simple, I realized I would need to identify section 
markers ( << this kind of section >> ) and not include them in the 
processing. It then dawned on me that maybe, it might be a good idea to do 
a full depth processing of every section identifying all of the string 
names and walking the user through the conversion to codenames. Thinking 
about this has raised a bunch of hairballs. Most notably, walking the tree 
defined by the section markers and notifying the user that there are some 
string name to toggle name transitions that need attention.

Then another hairball comes to mind which is that I want to be able to undo 
these transitions. The question is, does undo work across multiple nodes 
and should I undo one string name to codename transition at a time or just 
back to where I said "toggle name"

I think I'm also going to keep things simple by keeping the current model 
of toggle name. That toggle name exists as an extension to 
NaturallySpeaking (I downgraded version 14 and regained my ability to write 
extensions in Python. <Insert pejorative description of nuance management 
here>). This choice simplifies the extension development process to the 
extraction and replacement of code and navigating the hierarchy of nodes

https://github.com/alsoeric/togglename

-- 
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 leo-editor+unsubscr...@googlegroups.com.
To post to this group, send email to leo-editor@googlegroups.com.
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