User scripts are powerful customisations, authored by the community, that allow registered Wikipedians to change Wikipedia's interface beyond the options available in preferences. This page provides a list of available scripts and instructions on installing them. User scripts are written in JavaScript.
Many of the most popular scripts become gadgets, and are subsequently removed from this page. You can enable them via Preferences – Gadgets. It is recommended that you check there first for any tool you might be looking for, since gadgets have been widely tested and proven useful and reliable.
Most scripts are designed and tested primarily with the Vector skin, Wikipedia's current default.
How to install user scripts:
Check the checkbox at මනාප → Gadgets → Advanced → and click Save.
Come back to this page.
Click "Install" after each script name to install the script. Some scripts may require additional steps, so be sure to visit the documentation if any.
Alternatively, you may use this link to temporarily view this page with script-installer enabled.
Manual install instructions
First, make sure you are registered and logged in. Only logged-in users can install scripts.
Add the following line: {{subst:Lusc|script_path}} – where "script_path" is the full name of the .js page that opens when a script's "(source)" link is clicked.
For example, to install the Sharebox script, add the following line: {{subst:Lusc|User:TheDJ/sharebox.js}}
Name defaults to the code page's name, without its path or ".js".
If a documentation page exists matching your .js page name, it will be linked automatically, without the need for a doc parameter. So, if your script is at User:Foo/Bar.js with a documentation page at User:Foo/Bar, and the script is called Bar, just write:
Scripts that change the appearance or behavior (UI/UX) of the site. Any script that does nothing other than add a link to a page to a menu, panel or toolbar belongs to § Shortcuts. Any script that makes an edit to a page (i.e. increases the user's contributions) or changes the appearance or behavior of the edit form (action=edit/submit) belongs to § Editing.
Site-wide
Scripts that change the appearance or behavior of the site across namespaces.
Automatically redirects to desktop site when mobile links are opened on desktop. It does not change the behavior on mobile devices (unless desktop mode is enabled).
Removes MediaWiki code that causes users to be unceremoniously booted out if they touch the "log out" link in their personal navigation, thereby allowing the default confirmation process to unfold naturally. Only tested with the Vector (legacy and 2022) skin.
Adds the Vector 22 links text (not icons) from user dropdown to the header (Static & sticky) for 1 click navigation and stop the need to open the dropdown. This will give the same links previously available with vector legacy while maintaining V22 header styling.
Designed for compactness and the Modern skin, Seven Tabs shows edit and history tabs as above, but also includes an optional section 0 tab. Should work on Monobook as well.
Adds a todo list link to the head. The link will open a popup that allows you to view, add to, and modify your todo list. The todo list is stored in your user options, so it's private.
Creates a discrete graphical user interface utilizing intuitive drag-and-drop to manage your user resources (scripts and stylesheets). Only tested with the Vector (legacy; not 2022) skin.
Add/remove resources quickly and easily.
Switch resources on/off with zero page editing.
Temporarily include resources with a simple click and confirm.
Polls your watchlist when you open any Wikipedia page, and then once a minute after that. When it discovers a new, unread page in your watchlist, creates a user-message informing you of the change, and stops polling. The message contains links to your watchlist, to the changed pages, and to their history page.
Similar to Watchlist-notice, but instead of green bar which links to watchlist page, adds a box similar to "your alerts" and "your messages", with the number of unread pages in your watchlist (grey if 0, blue otherwise), click opens a popup with your watchlist content.
Replaces all PNG thumbnails for SVG files with their actual SVGs. Downloads SVG files in addition to PNGs, so shouldn't be used by the bandwidth-conscious.
Modifies wikilinks to redirects to include the target name in the title attribute (which is visible when hovering over the link), e.g. WP:USL → Wikipedia:User scripts/List.
Adds options to the tools menu to make content hyperlink text colouration turn-off-and-on-able. Doesn't affect UIlinks. Only tested with the Vector (legacy; not 2022) skin.
N/A
N/A
Sections
Scripts that change the appearance of behavior of sections within the wikitext.
Displays a hidden pilcrow (¶) after editable section titles. When you mouse-over the section heading, the pilcrow will appear as a link to that section. This can then be used to more easily get copy/pasteable links in the format of Page#Section.
Displays a hidden pilcrow (¶) after editable section titles. When you mouse-over the section heading, the pilcrow will appear as a link to that section. Works in any wiki, and on section titles with ?.
Displays a hidden pilcrow (¶) after editable section titles. When you mouse-over the section heading, the pilcrow will appear as a link to that section. Allows the user to to copy wikilinks syntax as well as external links.
Adds subtle clones of all section headings (including [ edit ] links) to the end of their respective sections; allows section editing from the bottom of all sections. Glitchy (working on it)
Enables MathJax rendering of mathematical notation within <math> tags. You will never have to see grainy images in place of math again! Preferences → Appearance → Math must be set to "LaTeX source". Fast once cached in your browser.
Highlights blue links that do not have an interlanguage link in a selected language edition, helping identify articles in need of translation. When used on copied text from a particular language edition, substitutes the wikilinks with the appropriate article titles in the language edition that is being edited.
Inserts alphabetically adjacent article content to distract you the way traditional print encyclopedias used to. Also disables newfangled hypertext features.
Creates a voice-friendly PDF version of any Wikipedia article that can be read aloud by text-to-speech applications such as Voice Dream, TextAloud, etc.
Displays signature timestamps in your local time, relative to the current time. A replacement for Wikipedia:Comments in Local Time with better language and timezone support.
Collapses the nominations on pages like WP:FAC and WP:PR into expandable headers with basic information on the nomination, significantly decluttering the pages.
Adds internal and external links to JS, CSS and Scribunto pages, as well as template titles and module names in module invocations; only links http and https URLs.
Triggers a warning popup if you're about to open a file that is above a certain threshold. The default thresholds are dimensions over 10,000 pixels, or file sizes over 100 MB.
Creates buttons on User:AlexNewArtBot and its subpages that begin relevant searches to determine which new pages listed remain unpatrolled and highlight those references/page-links. Requires the patrol user right.
Provides links to user, talk and contribs pages of page's last editor, and additionally provides a "diff" link, minor edit marker, and summary of the edit in question.
Adds a link to the sidebar's toolbox to view various page size statistics. A variant on Prose Size that offers actual counting of words rather than counting whitespace characters, and handles separate counting of references.
30
14
Search form
Scripts that change the appearance or behavior of Special:Search or the search box on each page.
Fork of Enterprisey/search-shortcuts that is customisable (users specify their shortcuts in their own common.js or skin.js), can handle namespace shortcuts, and in addition to translating {{template}} to Template:template, translates {{#invoke:module (…)}} to Module:module too.
Shows a text field at the top of diff pages and oldids that contains the short Special:Diff/ (or Special:Permalink/) format with square brackets [[]] around the page name.
Adds "diff only" links to diff pages, and optionally to history pages, recent changes, the watchlist, and contributions. Diff-only pages load quickly, so are useful for tasks that involve trawling through lots of diffs.
Adds buttons to each line on the Recent Changes screen, the watchlist, the contributions screen, and article history screens, allowing one to load (and show/hide after loading) an individual diff without moving to another page and view multiple diffs at once.
Adds a button to diff pages that shows a simpler, text-only diff. It is often difficult to see the actual changes to the text amongst the templates and other markup.
Modification of Ale jrb's original UserHist script, which allows filtering of an article's edit history by author name, to add the inline diff functionality, as with the "In-place diffs" script above. (Note that the "In-place diffs" script is not required to use this one, but there is no overlap between the two; this one does not replace the general "In-place diffs" functionality).
Note: does not seem to be compatible with AJAX watchlist. Still works on contributions and history pages. On the watchlist, works until the first Ajax refresh on the page (20 seconds by default, but this time can be adjusted).
30
12
Listings
Multiple
Scripts that change the appearance or behavior of multiple types of listings.
Bolds watched pages in Category and "User Contributions" listings. Also adds a "Show watchlist controls" link to enable watching and unwatching directly from these listings.
10
6
Watchlist and recent changes
Scripts that change the appearance or behavior of both watchlist and recent changes pages.
When "High database server lag" message shows up, this script displays the total days/hours/minutes/seconds of the lag, in addition to the default total seconds display.
Updates the HTML title of the watchlist page with a live count of number of new changes (when in live updates mode), which can be seen while working on another tab.
Adds labels to P-numbers and Q-numbers (properties and items) for Wikidata edits, e.g. "Created claim: වර්ගය (P31): (Q494829)" instead of "Created claim: Property:P31: Q494829".
Adds a link to History pages, next to the "Number of watchers" link, to show the number of Active Users watching the page ("active" defined as users who have logged in within the last 30 days).
Shows a sanitized version of page history by hiding reverted edits and the reverts themselves. Activated by a button next to "Compare selected revisions".
Combines consecutive edits by same editor into a single entry on history pages, replaces size with increment (like in watchlist/recent changes), shortens talk, contribs and undo to single letter, highlights own edits with light green background, redirects link «Contributors» under heading to toolserver.
The script adds three UI buttons and a list of checkboxes that wrap around and help to copy diff links on the Help:Page history and Help:User contributions pages into a formatted Special:Diff/ or {{diff2|...}} or <table>...</table>wikitext. The resulting wikitext may be may be used on the talk page to refer to changes. (Screenshot).
When clicking on a "hist" link from a user contributions page, the resulting page history has all edits by that user highlighted. Customizable highlight colour! 16,777,216 colours to choose from!
Dynamically moves Compare selected revisions buttons next to the selected revisions on action=history pages. Only tested with the Vector (legacy; not 2022) skin.
Adds "edit" and "info" shortcuts to each contribution on the user contributions page, as well as "source" to revisions in the page history. (all skins, Minerva in desktop mode only)
Gives you links on the contribs page to hide duplicate entries, current revisions, rollbacks, huggles, twinkles, and redwarns. This allows you to use your contribs page as an easy way to check if people have responded to your comments/questions, or look at which discussions/pages have been active since your last post.
Does the opposite of the "Only show edits that are latest revisions" checkbox. (There is also an it.wikipedia.org-specific version, which has some "special" problems with some skins, but it still displays somewhere!)
Color-codes lines according to who has the top contribution for a page, with lighter, more readable colours. Color-codes lines of user contribution history, so that pages you've edited last are sharply distinguished from pages where another editor was the last to edit.
Highlights pages in a user's contributions which are on your own watchlist and provides the option to watch/unwatch the pages listed directly from the list. Uses session storage for some efficiency. Only tested with the Vector (legacy; not 2022) skin.
Adds an additional filter on What Links Here pages allowing you to, in effect, exclude pages linking to the page through given templates (i.e. only linking pages not having the templates will remain).
Highlights users, with caching and custom ordering and coloring of: bureaucrats, checkusers, oversighters, interface admins, arbitrators, and stewards (in addition to admins).
All of the above, including mouse hover tooltips in case you forget the color and heavy optimizations to narrow loading times down to a few seconds on first load and a split second on subsequent loads.
Simplified color scheme, bug fixes, userlist updated daily. Also highlights former admins, editors with more than 10,000 edits, WMF staff, and stewards.
A fork of the commons equivalent of the above scripts, this script shows letters (not colors) next to admins, crats, CUs, OSers, stewards, and many more user groups. Very customizable.
A forked markblocked. In addition to blocked users and single IPs, it marks up blocked IP ranges, single IPs in blocked IP ranges, globally locked users, and globally blocked single IPs and IP ranges.
Tweaked version of the above, also displays on all user subpages as well as special pages like contributions or logs. Option to disable when viewing yourself.
Adds an i icon at the top of user-related pages. The color of the i icon (green, orange, or red) indicates when the user last edited. Hovering over the i icon opens a popup with basic information about the user: registration time, number of edits, rights, gender, and more.
JS script designed to make it easier to edit Wikipedia using the mobile web interface known as Minerva. It adds links to Wikidata, Reasonator, Whatlinkshere, Move, Infos, Pageviews, etc.
Highlights your username in yellow when there are new messages on your user talk page, since the talk page link is hidden in a dropdown in Timeless. This script should only be used with the Timeless skin: add it to your timeless.js, not your common.js!
N/A
N/A
Shortcuts
Scripts that do nothing other than add a link to a page (internal or external) to a menu, panel or toolbar. Any script that does anything more belongs to another section.
Brings the History page's Toolserver links (plus the Page logs link) to the sidebar, so you don't need to navigate to the History page first to see them.
Adds "Source-added" and "Template-added" links under "Tools" in the sidebar on category pages. "Source-added" searches category members which were added with category code in the source. "Template-added" shows all category members not found by "Source-added".
A fork of Writ's script, and it adds links next to an article's title to Google (web, image, news, book), Yahoo, Creative Commons, Wikidata etc, and also to an Indian newspapers custom search.
Adds a link titled "Possible backlinks" to the left-menu toolbar; clicking on the link searches out articles where possible backlinks may be created for the current page.
Adds a "User file uploads" link to the toolbox, under "User contributions", providing access to a thumbnailed listing of files uploaded by the user whose userspace, talkspace or contributions list you are viewing (as is available at Commons).
Adds a link to xtools.wmflabs.org/editsummary/en.wikipedia.org/<user-name> in the user contributions' footer; use to easily ascertain the statistics regarding usage of edit summaries by the contributor. Only tested with the Vector (legacy; not 2022) skin.
Replaces the Logs link on user page with Logged actions (like the old Logs link) and Target logs (logs where the user or main user page is the target).
Adds links to other wikis in your navigation bar. Also is smart and doesn't show the link for the current wiki.
N/A
N/A
Editing
Scripts that make edits to pages (i.e. increase the user's contributions) or changes the appearance or behavior of the edit form (action=edit/submit). Other scripts belong to other sections, even if they are for editors.
Edit form
Scripts that change the appearance or behavior of the edit form (action=edit/submit), e.g. modify an unsaved source.
Provides a form (toggle show; top right) to set the Ace code editor options (e.g. use a dark theme or enable live autocompletion) on js, css, json and lua pages. Changes can be saved to mw.user.options. Only tested with the Vector (legacy; not 2022) skin. Also consider the more mature alternative CodeEditorAssist by Nardog (below)
Adds a Forced view source link to the personal toolbar which allows a user to view the source code of a page without the risk of accidentally clicking Publish Changes.
Change just a few characters on your keyboard or set up complete keyboard layouts for typing in other languages (works in both the editing area and the search box).
When previewing changes, sorts list of called templates by date last modified and displays the latest edit summary for each; useful for debugging complex templates.
Creates a separate edit summary box for the name of the edited section, making the browser's autocomplete function more useful. Also plays nice with wikEd.
Helps you find categories, automatically fills the {{Translated page}} template, etc., based on an article in another Wikipedia. You have to install it in the Wikipedia you are translating from.
Generates references from URL's and doi's using the mw:citoid server. This server is normally used by the Visual Editor and this script adds a toolbook link which allow the same server to be accessed from the normal wikitext editor. When installed, this tool can be accessed from the "Tools" section in the sidebar.
Adds a link to the toolbox which, when clicked, searches the article references and presents them in textboxes for ease of editing. More basic but faster and less intrusive alternative to ProveIt.
Add a link (accessible in the drop-down menu in Vector and as a tab in Monobook) to harmonize whitespace in citation templates, and another to convert them to the vertical format.
Fork of Format Citations, with slight tweaks. Links appear in the toolbox upon editing, with a choice between vertical tidying and 3 variants of horizontal tidying (crammed, tidy, and roomy).
Presents all references in graphical user interface, where you can choose whether the references should be defined in the body of article or in the reference list template(s) (list-defined format). You can also sort references in various ways (and optionally keep the sort order), and rename references. When installed, this tool can be accessed from the "More" menu.
Changes the behavior of "rollback" link: instead of jumping to the diff page, leaves you in the same page. Together with Gadget popup, this can make vandalism-fighting slightly more efficient. In addition, right-clicking the "rollback" link will let you enter a summary, instead of the standard rollback summary.
Adds a bunch of useful features for rollback: in-situ rollback (resolves rollback links without page transition), rollback summary, selective rollback (resolves multiple rollback links of the user's choice at once), mass rollback (resolves all rollback links on the page at once), along with some useful configurations.
Requires confirmation before performing a rollback, and then automatically opens the user's contributions page after performing the rollback (similar to the global gadget, but prefills the Article field in Twinkle when warning the user from the user's contributions page).
Combined version of different anti-vandalism user script. Asks for rollback summary, shows the details of page creator, last editor, add links to anti vandalism noticeboards in toolbar, etc.
Provides a dialog interface to add, remove, or modify WikiProject banners, including class and importance assessment. Accessible from either the page itself or its talk page.
Add or remove stub tags from articles. Provides a simple search field that dynamically fetches stub template names (like in HotCat) when the user types.
Automates the auxiliary steps associated with merging articles: the script redirects the page to the merge target, adds the merge attribution templates to both the talk pages, and resets WikiProject banner parameters.
Enables TemplateSandbox on all pages, and allows previewing with a template other than the current page being edited (e.g. preview as Template:Foo when actually editing Template:Foo/sandbox).
Extremely powerful category editing tool from Commons. Recently this tool learned how to work with regular articles, not just files. This is a wrapper that set the setting variable to enable non-file categorization, and loads the latest cat-a-lot from Commons.
Sorts categories alphabetically, with an article's eponymous category listed first. Based on User:Alex 21/script-categoriessort.js, but does not require any additional scripts to run.
Helps create redirects from domain names to their subjects, such as nytimes.com → The New York Times. Automatically determines a candidate for the domain and links to a pre-filled redirect form.
Move undersourced articles to draft space, including cleanup and author notification. Useful for New Page Reviewers. Page mover rights increase the usefulness of this tool.
Fork of the above with an active maintainer. Move problematic (e.g. undersourced, COI or advert) articles to draft space, including cleanup and author notification. Useful for New Page Reviewers. Has a short list of problems to indicate to the author.
Adds responses to all edit requests levels, with template responses. Allows changing of request protection level and edit request target pages. Will format correctly if using 2020 vector skin (fixed width).
This is a custom version of User:Technical_13/Scripts/OneClickArchiver. The difference is, the original script prepends {{Clear}} to the top of each section on the archive page, which I felt was unnecessary, so that action has been removed in this version.
Completely new version compatible with recent API changes, since above scripts stopped working. Does not accept customization parameters. Active maintainer.
Links to view or add a page to a personal todo list, and links on that todo list to easily remove items (no need to open the edit window). There are also various options you can set to customise your experience.
Similar to standard null edit/purge buttons, this script automatically purges certain cache problem pages listed in a user-defined window.AutoPurgePages variable array.
Adds a "block" tab to user pages, contribs pages, and diff pages. Comes with built-in block rationales and expiry times, as well as a "custom block" option.
Adds links to your sidebar to quickly insert administrator notation templates at WP:RFPP, WP:AIV, WP:ANEW, WP:UAA and WP:PERM, and supply an informative edit summary.