On Jan 3, 2012, at 11:36 AM, HansBKK wrote: > I understood him to mean that while it is straightforward to share the @ > <file> output files, it is difficult to share outline information contained > in the .leo files themselves, as the XML doesn't lend itself to merging.
Since the XML produced by Leo in practice places a tag for each node on a separate line in the .leo file, merging it is no different from merging any other text file. The only thing that sometimes can cause an issue is when a node starts or stops being the parent of a subtree, in which case the closing portion of the node tag is moved between being on the same line as the opening portion of the node tag and being on a separate line after all the subnodes. Usually this is not a big deal, but in the relatively rare case where you are merging non-trivial changes you need to pay a little extra attention to make sure that the closing tags have all ended up in the correct places. Of course, this relies on the fact that Leo outputs its XML description of the outline in a particular way. This is why in the past when changes to the .leo format have been proposed I have suggested that it is important to also pin down exactly how whitespace in the XML file will be handled so that .leo files can play nicely together with revision control systems. > I'm interested in your suggestions for working around this issue, however I'm > not following what you mean by: > "merge an outline" "committing (parts of) outlines" - do you mean data stored > in sentinels or in .leo files? > to "open" or "close" nodes ? I mean that there is no problem in sharing *either* @file nodes or .leo files in a revision control system, as long as you close all of your nodes before saving the .leo file so that all of the markup having to do with which particular nodes you had open is stripped from the .leo file before you commit your changes. > Perhaps it would help if you could describe your workflow's operations in > terms of actual commands, steps using Leo commands or menu items? Close all nodes, save .leo file, commit only the portions that need to be shared (i.e., don't commit any personal clones of nodes you may have made for your own projects). Cheers, Greg -- You received this message because you are subscribed to the Google Groups "leo-editor" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/leo-editor?hl=en.
