On Tue, Aug 18, 2015 at 2:59 PM, David McNab <[email protected]> wrote:

> Hi Ed, thanks for your detailed response.
>

​You're welcome.
​


> I got a bit of a rude shock a year ago when I took my present development
> role. At first, I imported one of my job's codebases into a Leo tree, with
> aim of continuing with Leo as my editor of choice. But I saw that this
> would be unworkable, since my teammates would crucify me for "polluting"
> the files with Leo sentinels, whilst any changes made by others would be
> difficult to reflect in the Leo view without removing then reimporting the
> file.
>

​Have you tried using @clean?

With Python code, it's not such an issue, since Leo is generally quite good
> at carving up Python sources into a simple module/class/method hierarchy.
> The difficulty comes with file types that are hard to carve up
> automatically AND meaningfully, such as javascript, html templates, css and
> so on.
>

​@clean doesn't use importers.  You (or @auto) "carve up" the file as you
like initially, and from then on @clean pretty much "just works".

Yes, a better importer for javascript (if that is possible) would be
great.  There already is an html importer, with an @data node describing
which html elements you want to create new nodes.​  A css importer seems
less useful, because css lacks structure, but I could be mistaken.

In other words, get the code into Leo with @auto, and then change @auto to
@clean.  Or just use the recursive import script in scripts.leo.


> For write-only applications (ie, single-developer projects), Leo is on
> numerous fronts the tool of choice. But in scenarios where Leo needs to
> accommodate changes made by non-Leo users, people who won't accept Leo
> sentinels, and who reject literate programming, there's a struggle. This is
> a non-trivial issue, that does not reflect on Leo, but rather reflects on
> team development culture.
>

​This used to be true, before @clean, but now, with @clean, I think you
should be able to use Leo in a completely invisible way as far as your
teammates are concerned.  The only problem is for *you*: if you reload a
file changed outside of Leo (by a teammate) you may want to move changed
lines from the end of one node​

​(the default) to the start of the next node.  See this discussion
<http://leoeditor.com/appendices.html#the-mulder-ream-update-algorithm>,
and especially the section called "Guesses don't matter".

>
> I would love nothing more than to be able to edit the company's 80,000+
> lines of source in Leo, while still being able to work in with my
> teammates, and would welcome any suggestions.
>

​@clean is the reason I think that Leo is now, at long last, essentially
complete.

Edward

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