Include and exclude rules: Difference between revisions
m Temp TOC |
m iTOC established... sf |
||
Line 1: | Line 1: | ||
__NOTOC__ | |||
{{Greasemonkey Manual TOC}} | {{Greasemonkey Manual TOC}} | ||
Line 13: | Line 14: | ||
// ==/UserScript== | // ==/UserScript== | ||
If no include rule is provided, <code>@include *</code> is assumed. That is, every URL will be matched. | If no include rule is provided, <code>@include *</code> is assumed. That is, every URL will be matched within the allowed [[#Greaseable_schemes |Greaseable schemes]]. | ||
[[#top |top]] | [[#top |top]] | ||
== Greaseable schemes == | == Greaseable schemes == | ||
[[#http: |General]] | [[#file: |file:]] | [[#about: |about:]] | |||
=== http: === | === http: === | ||
Line 23: | Line 26: | ||
=== ftp: === | === ftp: === | ||
=== data: === | === data: === | ||
[[#top |top]] | [[#http: |back]] | |||
=== file: === | === file: === | ||
: Only if <code>greasemonkey.fileIsGreaseable</code> is set to <code>true</code> in [http://kb.mozillazine.org/About:config about:config]. | : Only if <code>greasemonkey.fileIsGreaseable</code> is set to <code>true</code> in [http://kb.mozillazine.org/About:config about:config]. | ||
[[#top |top]] | [[#top |top]] | [[#http: |back]] | ||
=== about: === | === about: === | ||
: Only if <code>greasemonkey.aboutIsGreaseable</code> is set to <code>true</code> in [http://kb.mozillazine.org/About:config about:config]. about:blank is always allowed. | : Only if <code>greasemonkey.aboutIsGreaseable</code> is set to <code>true</code> in [http://kb.mozillazine.org/About:config about:config]. about:blank is always allowed. | ||
[[#top |top]] | [[#top |top]] | [[#http: |back]] | ||
== Magic TLD == | == Magic TLD == |
Revision as of 23:39, 28 September 2009
Greasemonkey Manual |
Using Greasemonkey |
---|
Installing Scripts |
Monkey Menu |
Getting Help |
User Script Authoring |
Editing |
Environment |
API |
User scripts specify include and exclude rules in the metadata block.
The script will execute if it matches any include rule, as long as it does not match an exclude rule.
The rules are URLs, which can have a "wildcard" asterisk (*), which matches any string including the empty string. For example: http://www.example.com/foo/*
will match http://www.example.com/foo/bar
and http://www.example.com/foo/
, but not http://www.example.com/baz/
. A rule can have several wildcards or none, in which case the rule must match the entire URL exactly. Exclude rules look the same, and prevent the script from being executed. An example:
// ==UserScript== // @include http://www.example.com/foo/* // @include http://www.example.org/*.bar // @exclude http://www.example.com/foo/baz // ==/UserScript==
If no include rule is provided, @include *
is assumed. That is, every URL will be matched within the allowed Greaseable schemes.
Greaseable schemes
http:
https:
ftp:
data:
file:
- Only if
greasemonkey.fileIsGreaseable
is set totrue
in about:config.
about:
- Only if
greasemonkey.aboutIsGreaseable
is set totrue
in about:config. about:blank is always allowed.
Magic TLD
The only special syntax besides the wildcard is .tld. An include such as http://www.example.tld/*
will match any top level domain, such as www.example.com
, www.example.org
, www.example.co.uk
, and so on. One must be careful with this, to not accidentally leak data to a site that they did not mean to match. This list of TLDs includes a myriad of dual-segment TLDs (such as ca.us, aeroport.fr and kyoto.jp), beside the plain country or category codes (com, jp, se). For a full list see the Magic TLD page.