On Thursday, January 19, 2012 6:37:49 PM UTC+7, Differance wrote:
> My point is to distinguish the templating function that's currently
accomplished with "cross-file clones" -- clones within @file branches --
from the code maintenance function.
I appreciate your attempting to clarify the distinction; my point was that
the wide range of Leo use cases doesn't fit IMO to only those two
categories (code maintenance vs templating). I gave another example use
case - does that fit within the domain of "templating" AFAYC?
> I recommend doing that by keeping clones out of @file branches, and
adding @template branches
where clones can be put. Then the user would explicitly choose between 1)
feeding Leo from an external file by use of @file, letting Leo keep the
structure of that external file while letting you create views on it; and
2) creating new external files out of pieces of other files by use of
@template.
IMO the various @ <file> directives give several options for doing these
and many other possibilities already. As long as you're only importing
("feeding") within a single branch (including @shadow as well as @file),
you're free to create as many mashups as you like via @nosent or @asis
without any danger of clone-war data loss.
> This also separates the two use cases explicitly with distinct @ branch
types, making it easier to manage eternal files. It might also, though I'm
not sure, mitigate "clone wars" because @template-created external files
are separate from @file-maintained external files, and @template branches
might also let you select from a number of different
priority/reconciliation algorithms.
I'm simply questioning whether the idea/discussion of "templating" should
necessarily be confabulated with reducing inadvertent data-loss due to
clone-war issues.
On Thursday, January 19, 2012 6:53:45 PM UTC+7, Differance wrote:
>> Is that templating?
> For an encyclopedia where articles are to be placed in more than one
external file (approximately one file per letter of the alphabet), the
model would be to put all articles for all volumes into one big
@file-managed external file, and then make each volume of the
encyclopedia a @template-produced external file.
My current solution is to keep everything (snippets for later use, full
articles in-process or ready-to-publish) in Leo itself, but to only have
published content pushed out to @ <files>. Each article (in my example,
"Deer" and "Bangladesh") is a separate file, with the "spotted deer" node
cloned to be included in both, but via @nosent, with all edits to such
files to be made within Leo only.
To accommodate community editing, I'd have an "Animals" @shadow file, and
the spotted deer node could be edited by me within Leo or by others in the
external file, without danger of clone-war damage.
I would of course need to ensure sufficiently frequent "sync'ing" between
the two to reduce the chances of conflicts needing to be resolved, or
perhaps move to a more granular node-grouping ("deer" or "Asian mammals").
> . . . or in regular views, grouped under regular headers.
At least AFAIK, regular views don't involve any clone-war issues at all.
> Putting clones in @file branches is actually something fundamentally
different.
Sorry, I don't follow - different from what? This is the only area where
clone wars are an issue (AFAIK)
====================
> And there's no reason you couldn't have several @file-managed "article
source" files, if one is too big. The @template-produced encyclopedia
volumes are created from cloned pieces of the @file-managed files.
> no bullets nor dangerous weapons, since clones aren't in @file branches,
and are only
in @template branches.
So far, substitude your "@file" for my "either @file or @shadow", and your
@template for @nosent and I reckon we're both talking about pretty similar
things?
IMO the idea of "templating" within Leo should be discussed independently
of the specific issue of reducing clone-war dangers, as it seems even more
complex to me and the connection between the two issues unclear.
> I'm not saying take away any functions from Leo, just distinguish the
function of templating to produce external files derived from other
external files, from the function of maintaining an external file that
isn't built from other files.
As a general concept, I would be very much in favor of a more explicit
"controlling" directive. As I recently pointed out, Ed had at one point
posited something along the lines of an "@master" possibility, but I
believe his further consideration eliminates that particular train of
thought.
I've been thinking that Leo could check for nodes being cloned under more
than one importing @ <file> branch (@nosents or @asis being no problem) and
warning the user, but I believe Ed doesn't want to go there.
to be continued, time to put my babes to bed. . .
--
You received this message because you are subscribed to the Google Groups
"leo-editor" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/leo-editor/-/NH0uCaBW2QwJ.
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.