Difference between revisions of "User:Austin J. Che/Extensions/Recentchangesfilter"

From OpenWetWare
Jump to: navigation, search
Line 35: Line 35:
* Select pages that begin with the Calendar: [[Special:Recentchangeslimit/b=Calendar]]
* Select pages that begin with the Calendar: [[Special:Recentchangeslimit/b=Calendar]] or more simply [[Special:Recentchangeslimit/Calendar]]
* Filter out all pages with a colon in them and pages in other namespaces [[Special:Recentchangeslimit/n=0^nc=:]]
* Select last 10 pages that begin with either Endy or Knight [[Special:Recentchangeslimit/Endy,Knight&limit=10]]
* Select last 10 pages that begin with either Endy or Knight [[Special:Recentchangeslimit/Endy,Knight&limit=10]]
* Select pages that have changed in User namespace except for people's user names that end with the letter n [[Special:Recentchangeslimit/n=2^ne=n]]
* Select pages that have changed in User namespace except for people's user names that end with the letter n or pages that contain the letters a, b, c, d in that order in its name [[Special:Recentchangeslimit/n=2^ne=n,m=%a%b%c%]]

Revision as of 19:25, 27 February 2006

The standard Special:Recentchanges list can be overwhelming with the number of changes. An extension to MediaWiki to allow limiting the changes list to certain pages has been written at Special:Recentchangeslimit.

For a quick start and demo, see Reshma Shetty/Recent changes for an example of using this page.


Currently, there is no interface to this special page other than creating a valid URL by hand. The select criteria is passed in one of two ways. The short/easy way is to pass parameters at the end of the URL as extra path info as in http://openwetware.org/wiki/Special:Recentchangeslimit/parameters. The second method is: http://openwetware.org/index.php?title=Special:Recentchangeslimit&select=parameters. Without any selection parameters, the page should appear almost identical to the normal changes list.

Once a URL is created, the appropriate page can be either bookmarked or included within another wiki page.

Selection Specification

The selection criteria is specified as a boolean statement in disjunctive normal form (groups of expressions ANDed together that are then all ORed together).


The general form for one expression is type=match.

Types are either 1 or 2 letter codes. Known types and their meaning:

  • b: titles that begin with match
  • e: titles that end with match
  • c: titles that contain match
  • m: titles that match where the match expression can contain '%' character to represent a wildcard character. This is a more general version of the b, e, and c types.
  • n: pages that are in the given namespace. Note that namespaces are given by numbers. Go to the normal recent changes limit, select the desired namespace, and look at the URL to determine the namespace to number mapping.

All of the above types have another type with an extra n in front, i.e. nb, ne, nc, nm, nn. These types represent the negation of the version without the n.

The default if no type is specified (that is only match) is type 'b'.

Note that for the purpose of page title matching, it is necessary to be clear whether a page is in a different namespace. For example, User:Austin is not a page titled User:Austin but rather a page titled Austin in the namespace User. Thus, b=User won't match this page but b=Austin would and ns=2 would also. Pages prefixed like Knight:Contact are not really in a different namespace but in the main namespace so this page title would actually be Knight:Contact.

Joining Expressions

'^' is used to represent AND and ',' (comma) is used to represent OR. Remember that expressions are assumed to be in disjunctive normal form so there's an intrinsic parenthesis order.



The special page can be included using the standard {{Special:Recentchangeslimit/parameters)}} syntax. This allows including a select list of changes on a page.

Source Download

The extension was written by Austin Che and is available for download from:

Feel free to send comments or improvements.