On Sun, Jan 24, 2010 at 3:04 PM, Gil Shwartz <[email protected]> wrote:

> Actually I am familiar with only two use cases. I'll call the first
> one “clones for convenience”. This use case involves cloning for the
> sake of easier coding, flow understanding, etc. By his description,
> Edward is using this use case a lot.

I call this creating views.  And yes, this turns out to be extremely
convenient.  I don't know how I would make complex changes to Leo
without the ability to focus my attention on the relevant code,
thereby ignoring everything else.

> The second use case is “clones
> for synchronization”. I think someone described this use case as using
> Leo as a macro processor. Indeed I find myself using Leo to sync
> between files or portions thereof. It is especially useful for
> languages that do not have functions, e.g. HTML.

I would say there are two separate use cases here:

A. Using clones *within* a file, as macros.  This does indeed
compensate for HTML's (and XML's) lack of functions.

B. Using clones *across* files, to synchronize files.  I regard this
case as dangerous.  I use this capability in a weak way, to save
projects and to-do items in leoProjects.txt, leoToDo.txt, etc.  These
files have @all directives, and due to the recent changes to Leo's
file code, these "@all-files" can never override clone definitions in
.leo files or other external files.

In other words, the point of the recent critical bug fix was to make
sure this use case is safe. Relying on Leo to keep n...@all external
files in sync using clones is not recommended, by me at least :-)  You
are asking for pain due to a classic multiple-update problem.

Edward

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

Reply via email to