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