User:Anomie/linkclassifier

From Wikipedia, the free encyclopedia

This script adds various classes to the link elements based on various characteristics:

  • deletion – The target page is in one of the many "X for deletion/discussion" categories, or certain speedy deletion categories.[1]
  • disambiguation – The target page is in Category:All disambiguation pages.
    • intentional-disambiguation – The target page's name ends in "(disambiguation)".
  • set-index – The target page is in Category:All set index articles.
  • needs-review – The target page has pending changes in need of review.
  • featured-content – The target page is in one of the Featured Content categories.
  • good-content – The target page is in Category:Good articles.
  • soft-redirect-cats – The target page (most likely a category link) is in Category:Wikipedia soft redirected categories.
  • spoken-articles – The target page is in Category:Spoken articles.
  • stubcls – The target page is in any category ending in "stubs".
  • nonfree-media – The target page is in Category:All non-free media.
  • nonimage – The link does not have the image class, which is added by MediaWiki to image links.
  • has-draft – The target page is a mainspace page, and the corresponding Draft-namespace page exists.
  • redirect – The target page is a redirect.
    • self-redirect – The target page is a redirect to the current page.
    • broken-redirect – The target page is a redirect to a page that does not exist.
  • incorrect-title – The target page is a redirect from an incorrect title, such as those in Category:Redirects from misspellings or Category:Redirects from incorrect names.
  • unprintworthy – The target page is an unprintworthy redirect.
  • unprintworthy-shortcut – The target page is in Category:Redirects from shortcuts.
  • protection-type-level – The target page is protected. If the page is a redirect, the protection status will be obtained from the redirect target. type is the type of protection, for example "move", "edit", "create", and level specifies the level, for example "sysop" or "autoconfirmed".
    • protection-type-level-indef – The target page is indefinitely protected.
  • redir-protection-type-level – The redirect to the target page is protected, as above.

You can then add CSS rules to apply various visible changes to the different types of links. A number of default rules are available in User:Anomie/linkclassifier.css.

Usage

To use the script, add the following to your skin-specific Javascript file.

importScript('User:Anomie/linkclassifier.js'); // Linkback: [[User:Anomie/linkclassifier.js]]
importStylesheet('User:Anomie/linkclassifier.css'); // Linkback: [[User:Anomie/linkclassifier.css]]

Note that this script has only been extensively tested on Monobook.

If you want to adjust the list of categories, a hook is provided for that purpose:

mw.hook( 'LinkClassifier' ).add( function ( linkClassifier ) {
    linkClassifier.cats['my-code'] = [ 'Category:Foo', 'Category:Bar' ].sort();
} );
importScript('User:Anomie/linkclassifier.js'); // Linkback: [[User:Anomie/linkclassifier.js]]
importStylesheet('User:Anomie/linkclassifier.css'); // Linkback: [[User:Anomie/linkclassifier.css]]

If you want it to be run on demand (i.e. by clicking a button next to "unwatch"), include it something like this:

LinkClassifierOnDemand=true;
importScript('User:Anomie/linkclassifier.js'); // Linkback: [[User:Anomie/linkclassifier.js]]
importStylesheet('User:Anomie/linkclassifier.css'); // Linkback: [[User:Anomie/linkclassifier.css]]

$.when( mw.loader.using( 'mediawiki.util' ), $.ready ).then( function() {
    var el = mw.util.addPortletLink('p-cactions', '', 'Link Classifier');
    $(el).on('click', function(e) {
        LinkClassifier.onDemand();
        e.preventDefault();
    } );
} );

In either case, the line for linkclassifier.css may be omitted, if you would rather add custom CSS rules to your skin-specific CSS file.

Please note that the line for linkclassifier.css does not go in your skin.css, it goes in your skin.js along with the other lines. Alternatively, you can copy the contents of User:Anomie/linkclassifier.css into your skin.css and customize the rules however you would like.

Legend

With the default rules, you should see the following types of links:

More information Type, Normal ...
TypeNormalVisited
Normal linkslike thislike this
External linkslike thislike this
Red linkslike thislike this
stubclslike thislike this
redirectlike thislike this
self-redirectlike thislike this
broken-redirectlike thislike this
disambiguationlike thislike this
intentional-disambiguationlike thislike this
soft-redirect-catslike thislike this
deletionlike thislike this
unprintworthylike thislike this
Red link, protection-create-sysop-indeflike thislike this
image nonfree-mediaExampleExample
image deletionExampleExample
Close

Styling

If you want to create your own styles, the following list of colors may or may not be helpful:

More information Normal, Visited ...
NormalVisited
bf0000bf3e3e
cc6700cc8843
bfbf00bfbf3e
00bf003ebf3e
00bfbf3ebfbf
0033cc4365cc
6000bf7f3ebf
bf00bfbf3ebf
bf0066bf3e83
Close

References

Related Articles

Wikiwand AI