AdvancedOptions - thoughts?

4 views
Skip to first unread message

Lyall

unread,
Apr 6, 2008, 9:55:46 PM4/6/08
to TiddlyWikiDev
I like having AdvancedOptions where I expect to find all configuration
items, but I generally have a lot of difficulty actually finding the
option I want.

Are there any plans to have plugins that register an AdvancedOption
provide a tiny bit more info, like the source plugin so that options
could be grouped by plugin - possibly even 'sliding' for each plugin?

I think I was prompted to post this when I updated the latest
BreadCrumbs Plugin, by Eric and could not find the configuration
options in AdvancedOptions - finally looking at the plugin itself
before finding the options.

...Lyall

JayFresh - http://jayfresh.wordpress.com

unread,
Apr 8, 2008, 7:15:36 AM4/8/08
to TiddlyWikiDev
I'd echo Lyall's confusion here, and I'd welcome any thoughts on the
kind of practices plugin developers could adopt to make their option-
setting more transparent.

As a starter for ten, I always find it very helpful when plugin
tiddlers have config boxes as part of the plugin documentation, then I
don't even have to think about it.


J.

FND

unread,
Apr 8, 2008, 7:37:48 AM4/8/08
to Tiddly...@googlegroups.com
> I'd echo Lyall's confusion here, and I'd welcome any thoughts on the
> kind of practices plugin developers could adopt to make their option-
> setting more transparent.

I agree that we could do a better job here.
How about an additional object config.optionsCat (similar to
config.optionsDesc) which would simply add the respective option to a
category? So we might have something like this:
---------------
merge(config.optionsCat,{
txtUserName: "TiddlyWiki Core",
...
txtFileSystemCharSet: "TiddlyWiki Core"});

configOptionsCate.chkFooBar = "FooPlugin";
---------------

Once we have that, we could probably sort the options accordingly, or
use headings or tabs etc.
(Options missing this descriptor would simple be "Uncategorized".)

> As a starter for ten, I always find it very helpful when plugin
> tiddlers have config boxes as part of the plugin documentation, then I
> don't even have to think about it.

That's an option in the plugin specs:
http://tinyurl.com/4qucqu
(http://www.tiddlywiki.org/wiki/Dev:Plugin_Specifications#Documentation_Sections)


-- F.

Eric Shulman

unread,
Apr 8, 2008, 4:57:37 PM4/8/08
to TiddlyWikiDev
> How about an additional object config.optionsCat (similar to
> config.optionsDesc) which would simply add the respective option to a
> category?

I just created a new plugin...
http://www.TiddlyTools.com/#AdvancedOptionsPlugin

Here's the text from the "Usage" section:

At document startup, this plugin examines each tiddler tagged with
systemConfig and looks for a tiddler slice named "Options" whose value
refers to a tiddler section (or separate tiddler) that contains an
'advanced options control panel' for configuring that plugin's
features and behavior. For each plugin that contains an "Options"
slice, a tabbed entry is automatically created in the AdvancedOptions
shadow tiddler to display that plugin's control panel.

As an optional fallback for plugin tiddlers that do not define the
"Options" slice, this plugin will also look for a section heading
named "Configuration" within those tiddlers, so that older plugins
that define this section can automatically have their settings added
to the AdvancedOptions tiddler without requiring the "Options" slice
to be added.

Take a look at
http://www.TiddlyTools.com/#AdvancedOptions
to see the results...

enjoy,
-e

Lyall

unread,
Apr 8, 2008, 7:48:09 PM4/8/08
to TiddlyWikiDev
Really cool.

Just needs to have the default system options show up in a 'System'
tab and maybe show all the remaining options in a 'Unknown' tab, then
we could get rid of the old AdvancedOptions table altogether!

I will be looking to update my own plugins to be compatible with this
plugin as soon as I can. It can only make my plugins better without
this plugin but makes things really good with it.

Be aware, I had actually overridden my AdvancedOptions shadow tiddler,
so I could have text about CookieJar showing, so I did not see the
results until I renamed my AdvancedOptions and found the changes made
to the shadow tiddler.

Oh, whilst we are at it (do my demands never end?) - now that I
mentioned cookie jar, is it possible this plugin could have a button
to generate a cookie jar tiddler given the current cookie settings? Or
would that be the purview of a small dedicated 'GirlGuidePlugin' to
fill your 'CookieJar' :-)

...Lyall

Lyall

unread,
Apr 8, 2008, 9:14:47 PM4/8/08
to TiddlyWikiDev
Just a note, whilst I have tweaked my own personal copy of
TiddlerEncryptionPlugin to have a 'configuration' section and it shows
up just fine in the AdvancedOptionsPlugin. (I will update SVN,
website, etc, later) My only issue now is that I have the 'descriptive
text' of an option in two places. Once in the configuration section
and once in the actual code that sets up the config options.

Are there any suggestions as to how I could prevent this duplication?
I see it as a source of possible error.

...Lyall

Eric Shulman

unread,
Apr 8, 2008, 9:55:29 PM4/8/08
to TiddlyWikiDev
> Be aware, I had actually overridden my AdvancedOptions shadow tiddler,
> so I could have text about CookieJar showing, so I did not see the
> results until I renamed my AdvancedOptions and found the changes made
> to the shadow tiddler.
>
> Oh, whilst we are at it (do my demands never end?) - now that I
> mentioned cookie jar, is it possible this plugin could have a button
> to generate a cookie jar tiddler given the current cookie settings? Or
> would that be the purview of a small dedicated 'GirlGuidePlugin' to
> fill your 'CookieJar' :-)

I've just added some code to also transclude both the CookieManager
shadow tiddler and the CookieJar (if one exists) into the
AdvancedOptions shadow tiddler, so it is much easier to manage all
your settings from one place.

Get the updates here:
http://www.TiddlyTools.com/#AdvancedOptionsPlugin
http://www.TiddlyTools.com/#CookieManagerPlugin

enjoy,
-e

Eric Shulman

unread,
Apr 8, 2008, 10:45:43 PM4/8/08
to TiddlyWikiDev
> My only issue now is that I have the 'descriptive
> text' of an option in two places. Once in the configuration section
> and once in the actual code that sets up the config options.
>
> Are there any suggestions as to how I could prevent this duplication?

What I've done with my plugin is to simply remove the previous code
that was setting config.optionsDesc for the plugin-defined options.
This means that those options will no longer *automatically* appear in
AdvancedOptions table created by the core, but do appear in
AdvancedOptions whenever AdvancedOptionsPlugin is installed.

This creates a more consistent expectation for the end user:

* every plugin that has cookie-based options includes an interface
directly in it's own Configuration section. Users can *always* go
directly to any given plugin to find that plugins options.

AND

* When AdvancedOptionsPlugin is present, the Configuration sections
from *every* plugin is also automatically transcluded into the tabs
display in the AdvancedOptions "Plugin-defined Options" section...
and, since this transclusion happens without relying upon the
individual plugins to contain any code to add their options to
AdvancedOptions, it ensures that AdvancedOptions present a complete
set of options in one place.

-e

FND

unread,
Apr 20, 2008, 5:06:39 AM4/20/08
to Tiddly...@googlegroups.com
>> How about an additional object config.optionsCat (similar to
>> config.optionsDesc) which would simply add the respective option to a
>> category?
>
> At document startup, [AdvancedOptionsPlugin] examines each tiddler

> tagged with systemConfig and looks for a tiddler slice named "Options"

I've raised a ticket for this:
http://trac.tiddlywiki.org/ticket/599

Note:
While AdvancedOptionsPlugin's clever mechanism works nicely for plugin
configuration settings, it does not apply to core options.
That's why, for the core change, I chose to suggest the
config.optionsCat method.


-- F.

Reply all
Reply to author
Forward
0 new messages