Jump to content

Wikipedia:Customizing watchlists

From Wikipedia, the free encyclopedia

There are a number of ways in which you can customize your watchlist. This can make watching pages for changes easier.

Using the Preferences page

[edit]

Watchlist customization begins with the options provided by the Watchlist tab on the Preferences page. These include "Expand watchlist to...," which you can select in order to see all changes to a page rather than only the last one (which may have been an automated bot edit, or marked as minor, i.e., something less significant than, for example, the edit just before it – or, depending on other preference settings, may usually be hidden). Another option is "Group changes by page..." on the "Recent changes" tab, which, for example, enables changes to the same page on the same day to be grouped together (useful if you have a large number of frequently changing pages on your watchlist).

Twinkle has the option to automatically add articles it's used on to your watchlist. To change this setting, go to Wikipedia:Twinkle/Preferences

Styling of recently updated pages

[edit]

Although it is currently disabled by default, a formatting feature has been made available that highlights changes in your watchlist that you haven't seen yet.[1]

To activate this feature with its default bold styling, enable the following item in your Preferences:

  • Preferences → Gadgets → Display pages on your watchlist that have changed since your last visit in bold.

Enable manually

[edit]

If you want to enable this feature manually using code, instead of using the gadget described above, add this in your common.css page:

.updatedmarker {
    background-color: transparent;
    color: #006400;
}
.mw-special-Watchlist .mw-changeslist-line-watched .mw-title {
    font-weight: bold;
}
.mw-special-Watchlist #mw-watchlist-resetbutton {
    display: block;
}

Alternative styling

[edit]
Alternative styling with border-bottom:1px dotted #999;

To activate the feature with an alternate style, you can instead add one of the following to your common.css page.

Use dotted underline
black
.mw-changeslist-line-watched .mw-title {
    font-weight: normal;
    border-bottom: 1px dotted #000;
}
.mw-special-Watchlist #mw-watchlist-resetbutton {
    display: block;
}
or grey
.mw-changeslist-line-watched .mw-title {
    font-weight: normal;
    border-bottom: 1px dotted #999;
}
.mw-special-Watchlist #mw-watchlist-resetbutton {
    display: block;
}


Use italic text
.mw-changeslist-line-watched .mw-title {
    font-weight: normal;
    font-style: italic;
}
.mw-special-Watchlist #mw-watchlist-resetbutton {
    display: block;
}


Annotation with small green stars
.updatedmarker {
    background-color: transparent;
    color: #006400;
}
.mw-changeslist-line-watched .mw-title {
    font-weight: normal;
    background: url(//upload.wikimedia.org/wikipedia/commons/thumb/a/ac/Pentagram_dis.svg/13px-Pentagram_dis.svg.png) no-repeat left;
    /* @noflip */
    padding-left: 16px;
}
.mw-special-Watchlist #mw-watchlist-resetbutton {
    display: block;
}


Annotation of unwatched edits with green background (like on Wikimedia Commons)
.updatedmarker {
    background-color: Lime;
    color: #006400;
}

Disabling

[edit]

If the feature is ever enabled site-wide, by default, you may use one of the following methods, which will disable the formatting, the related Mark all pages as visited button, and the green update notices on History pages. Only one of the four methods described below is necessary. They all basically do the same thing.

importStylesheet('User:Equazcion/RemoveRecentUpdateMarkers.css');
@import url('//wiki.eso.workers.dev/wiki/User:Equazcion/RemoveRecentUpdateMarkers.css?action=raw&ctype=text/css');
importScript('User:Equazcion/RemoveMarkAll.js');
.mw-changeslist-line-watched .mw-title {
    font-weight: normal;
}
#mw-watchlist-resetbutton,
.updatedmarker {
    display: none;
}

Highlight specific pages

[edit]

As an alternative or in addition to using the watchlist feature, you can also define a user style for links to selected pages. In your common.css page put a list of lines like:

a[title="pagename"] {
    color: white;
    background: red;
    font-size: 150%;
}

This may not work in all browsers, however.

On the (Enhanced) Recent Changes page it works like the bolding feature mentioned above, but it is more versatile, e.g. allowing extra emphasis on pages one is very interested in, or different styles for different categories of interesting pages. Furthermore, it also works on user contributions pages, and on regular pages (also for piped links, but not for indirect links through a redirect). It also applies, less usefully, for the section editing links in the page itself.

To highlight links to the given page also from other websites, including interlanguage links, use instead of the above:

a[href="full URL"] {
    ...
}

Note that the full URL is needed, even to highlight links from the same project, even though the HTML code uses the relative URL /wiki/pagename.

Removing or modifying log entries

[edit]

Add to your common.css page the lines you want to remove from the log entries; for modifying the appearance the display:none; has to be replaced with a relevant CSS code (like from the "modified notification"-section above):

/* For all */
.mw-special-Watchlist table[class*="mw-changeslist-log"] {
    display: none;
}

/* For deletion entries */
.mw-special-Watchlist table[class*="mw-changeslist-log-del"] {
    display: none;
}

/* For the user creation log */
.mw-special-Watchlist table[class*="mw-changeslist-log-newuser"] {
    display: none;
}

/* For the move log */
.mw-special-Watchlist table[class*="mw-changeslist-log-move"] {
    display: none;
}
[edit]

CSS method

[edit]

Add to your common.css page the following line to remove the [rollback] link shown after every line:

.mw-special-Watchlist .mw-rollback-link {
    display: none;
}

Or to remove all rollback links, including from history pages:

.mw-rollback-link {
    display: none;
}

User scripts

[edit]

The following user scripts allow for more flexibility than the CSS method:

JavaScript (jquery) method

[edit]

You can also use custom JavaScript to alter the links. For example, to completely remove them from your page, add the following to your common.js page:

    $('span.mw-rollback-link').remove();

If you want to make sure it only removes the links from certain pages, you can wrap it in a conditional statement: Start the conditional check with if ( and end it with ){
Then select the pages you want it removed from out of the list below separating each with a conditional or ||

  • mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist'
  • mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Recentchanges'
  • mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Contributions'

Next, the above $('span.mw-rollback-link').remove(); goes in and make SURE that you close the conditional statement with } at the end!!!

An example that would remove it from Watchlist and Recentchanges but leave it on Contributions would look like:
if(mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' || mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Recentchanges'){
    $('span.mw-rollback-link').remove();
}
[edit]

Administrators can completely remove block links from their page by adding the following to your common.js page:

    $('span.mw-usertoollinks').each(function () {
        var $elem = $(this);
        $elem.children('a:last').replaceWith("-");
        $elem.html($elem.html().replace(" | -", ""));
    });

If you want to make sure it only removes the links from certain pages, you can wrap it in a conditional statement:
Start the conditional check with if ( and end it with ){
Then select the pages you want it removed from out of the list below separating each with a conditional or ||

  • mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist'
  • mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Recentchanges'
  • mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Contributions'

If using more than one of these, you can shorthand it as in the example below
Next, the above code goes in and make SURE that you close the conditional statement with } at the end!!!

An example that would remove it from all three pages could look like:
var wgCSPN = mw.config.get( 'wgCanonicalSpecialPageName' );
if(wgCSPN === 'Watchlist' || wgCSPN === 'Recentchanges' || wgCSPN === 'Contributions'){
    $('span.mw-usertoollinks').each(function () {
        var $elem = $(this);
        $elem.children('a:last').replaceWith("-");
        $elem.html($elem.html().replace(" | -", ""));
    });
}

Hide pages in your watchlist

[edit]

It is possible to hide pages in your watchlist using CSS, via your common.css page. This makes it possible, for example, to watch a page without the associated talk page appearing in your watchlist. See Wikipedia:Hide Pages in Watchlist for instructions.

Scripts

[edit]

There are many user scripts written in JavaScript available for greater customization of Watchlists, for example:

  • Smart Watchlist - A script that offers several watchlist customization options.
  • User:Js/watchlist - adding unwatching links to the watchlist; different sorting, expand/collapse all hidden edit (if using "Enhanced Recent Changes")

Notes

[edit]
  1. ^ per Bugzilla:33123 implementing $wgShowUpdatedMarker; This was a December 2011 community request. The default formatting applied is controlled by the CSS styling given to .mw-watched in MediaWiki:Common.css.