On Thu, Jan 15, 2009 at 8:39 AM, Edward K. Ream <[email protected]> wrote:
> On Sun, Jan 11, 2009 at 11:43 AM, TL <[email protected]> wrote:
>>
>> > A) ... Leo never attempts to disable a plugin while processing enabled
>> >     plugin strings. Thus, plugins enabled in an @enabled-plugins node in
>> >     leoSettings.leo *will* be enabled regardless of the contents of any
>> > other
>> >     @enabled-plugins node.
>>
>>
>> Note A) implies that there is no way to disable the default plugins
>> enabled in the leoSettings.leo file except to edit the leoSettings.leo
>> file itself.  Not a good solution when any edits to the
>> leoSettings.leo file can be lost when a new Leo version is downloaded.
>
> First, let me apologize for the confusion regarding @enabled-plugins nodes.
> I'll see if I can get all the docs to be clear and in synch.
>
> However, Leo doesn't work the way you say it does, and a little testing on
> your part could have confirmed that fact.

I've done quite a bit of testing, but evidently not the right testing.

>
> Let us distinguish two different situations.  First, what Leo does when
> loading a file, say x.leo initially.   Second, what Leo does when loading a
> second file, say y.leo, *from x.leo*.

At this point, I am only concerned with the first case.

>
> In the first case, Leo will use the *last* found @enabled-plugins node from
> the list leoSettings.leo, myLeoSettings.leo, x.leo.  See the docs for full
> details about search order.
>
> So, in the *first* case, it *is* possible to disable any or all plugins.
> For example, you could put an empty @enabled-plugins node in x.leo.  If
> x.leo contains no @enabled-plugins node, you could put an empty
> @enabled-plugins node in myLeoSettings.leo.

OK, will that empty @enabled-plugins node disable all the
plugins mentioned in LeoSettings.leo?

>
> To summarize the first case: you *can* disable any or all plugins.

Sounds like the only @enabled-plugins node which has any effect the
last one encountered.

Is this correct?

>
> However, in the second case, plugins have **already** been loaded and
> enabled.  In this case, there is *no way* to disable
> already-loaded-and-enabled plugins.  All that can be done is to enable more
> plugins.  This will happen if y.leo contains an @enabled-plugins node that
> mentions more plugins.  It can also happen if x.leo contained an
> @enabled-plugins node, but y.leo does not, and myLeoSettings.leo contains an
> @enabled-plugins node that mentions more plugins.
>
> Do you see what is happening?  Leo enables plugins in a (relatively)
> straightforward way when it loads x.leo.  Leo also enables plugins (in the
> same way) when loading y.leo.  But things might get confusing, depending on
> whether x.leo or y.leo (or both or neither) contain @enabled-plugins nodes.
> This simply can't be helped, and it is emphatically *not* a bug in how Leo
> works.  (I've already admitted that there are problems with the docs, and I
> plan to fix them today.)
>
> In short, Leo acts in a reasonable manner, but it is still possible to get
> confused even if you know the rules.  This suggests that you refrain from
> putting @enabled-plugins nodes in any .leo file except myLeoSettings.leo.
> That way all your .leo files will use the same plugins.  If you do put
> @enabled-plugins nodes in x.leo, be prepared for confusion from time to
> time.
>
> HTH.
>
> 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