views:

28

answers:

1

I'm writing a Greasemonkey script that has a fair few user settings (just using GM_getValue and GM_setValue).

What I'd like to be able to do is create a settings page for the script, and add that to the @include-d sites. So, for example, it'd run on:

@include    http://www.greasemonkeyedsite.com/*
@include    about:myScriptConfig

Then the script would check the URL of the site it's being called for. If it's the about: one it'd create and display a settings page, otherwise it'd just run the script as usual.

I came up with this under the impression that you could type about:(anything) and it'd show up fine, with just the text following the about: as the page content. I remember this working last time I checked it, but that was years ago.

Seems to be that you can't just display arbitrary data by use of about:x any more, though. Firefox just displays a "The URL is not valid and cannot be loaded" error.

I know about the data: URI protocol, but it's not suitable as entering it manually into the address bar doesn't lead to its own page.

Is there some equivalent behaviour? Or am I going to have to just have a "settings" button on the top corner of greasemonkeyedsite.com that hides and shows a settings div?

+1  A: 
  • If you have a permanent web site, you could make a URL there that becomes the Greasemonkey script's settings page. That could even be a convenient URL that allows the user to download the script if he does not already have it installed, and you can, that way, also offer the user a software update when a new version of your script is released. (Just have the Greasemonkey script check some "current version" part of the settings page.)

  • As mentioned by jnpcl, it is possible to create a chrome:// URI within the browser, but as I understand it, that requires a full-fledged Firefox add-on rather than just a Greasemonkey script.

  • You could use a designated URL on the affected site if you do not have a permanent web site, like http://www.greasemonekyedsite.com/myGreasemonkeySettingsPage. Your script could then strip out the parts of their 404 page it does not need, and then it could insert its list of settings within.

idealmachine
I guess the fact that I need an independent settings page is probably a hint that I'm more in add-on territory rather than just GM scripts.
frezned