Rev 7a851eb enables automatic updating of @nosent files.  When loading a 
.leo file, Leo will automatically update @nosent trees if the corresponding 
external file has been changed outside Leo!  This is one of the most 
important advances in Leo's history.

As discussed yesterday, using @nosent files is about twice as fast as using 
@shadow trees. No shadow directories or shadow files are needed: it's 
trivial to recreate the "shadow" data from the @nosent tree!  

Why, of why, did we never see this before?  It could have been done at any 
time since Leo supported @shadow.  

Finally, Leo reports all changes using the "recovered nodes" mechanism.  No 
new code was required: the core @shadow code was not changed in any way.

Edward

P.S.  at.readOneAtNosentNode and two simple helpers handle all the details. 
readOneAtNosentNode uses the @shadow algorithm to compute the updated lines 
of the @nosent tree, exactly as described yesterday.  If the new lines 
match the old, nothing more need be done: we can use the existing @nosent 
tree as is. Otherwise, the new lines are passed to at.readOpenFile to 
delete the old tree and create the @nosent tree.  This part of the code is 
similar to the code in at.read, but it is much simpler because caching is 
not involved.  In essence, everything "just worked" from the get go.

EKR

-- 
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 http://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.

Reply via email to