My analysis of the situation is that this behavior is inconsistent. When 
you choose "mark finds" when using the find command any marked nodes are 
not set to dirty. I understand that the .leo file changed and that one 
might want those markings saved. That does not cause issue or trouble. 

I see two clear bugs:

   - "mark finds" should probably set the nodes to dirty (for the sake of 
   consistency)
   - There is no reason marking a parent node should set all the children 
   dirty.

There is an issue specifically in that if a node is an @<file> node then 
marking it dirty means I have to save that file which in some environments 
(such as reading/writing files over slow networks) is undesirable, and 
seemingly unnecessary. 

I hate to even propose this, but I cannot think of another way. I think 
there needs to be two types of dirty: Leo/Outline dirty and external/file 
dirty. Leo/Outline dirty is obvious, any time nodes are changed in any way 
a node is set to Leo dirty. 

If a node is itself an @<file> node or a child of one then the @<file> node 
is set to external/file dirty if:

   - The headline or body content changes
   - The @<file> node moves and it is/was a child of an @path node. 

I realize this is ugly and complex. Perhaps it can spur a more elegant 
solution to unnecessarily writing @<file> nodes if nothing has changed in 
their headline/body. 

On Monday, April 25, 2016 at 5:33:55 PM UTC-4, Terry Brown wrote:
>
> On Mon, 25 Apr 2016 13:16:08 -0700 (PDT) 
> john lunzer <[email protected] <javascript:>> wrote: 
>
> > I think "dirty" is the right word, basically Leo thinks the file was 
> > altered. Not only does it do this for the current node but it will 
> > also do it recursively for all child nodes. 
>
> Not sure if that's considered a bug or not.  <enter><backspace> in the 
> body marks the node dirty too, Leo doesn't track edits that revert the 
> outline to an unchanged state. 
>
> Quick test it seems that mark node / undo mark leaves things clean 
> (good), while <enter><undo> leaves them dirty, which is a 
> small nit. 
>

-- 
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