Extension:MassEditRegex
MassEditRegex Release status: stable |
|
---|---|
Implementation | Page action , Special page |
Description | Allows for using regular expressions to edit multiple pages at once |
Author(s) | Adam Nielsen (Malvineoustalk) |
Latest version | 8.4.1 |
MediaWiki | >= 1.40.0 |
Database changes | No |
License | GNU General Public License 2.0 or later |
Download | |
|
|
|
|
Quarterly downloads | 40 (Ranked 99th) |
Translate the MassEditRegex extension if it is available at translatewiki.net | |
Issues | Open tasks · Report a bug |
The MassEditRegex extension allows administrators to perform a single edit across multiple pages in one step by running a regular expression over the content of each page. This is well suited to performing simple edits such as renaming a template, adding pages to a category, or correcting typos (all of which can be done in the same edit operation by supplying multiple regular expressions.)
Usage
Once the extension has been installed and permission masseditregex
to use MassEditRegex has been given, go to "Special:MassEditRegex" and fill out the edit form.
Familiarity with regular expressions is required to use this extension.
Features
- Page iteration can be done on the client side, so PHP maximum execution time is no longer an issue when editing large numbers of pages.
- Transform each page using one or more regular expressions in a single step.
- Edits appear as "bot" so they don't show up in the normal edit list (unless the user chooses to show bot edits).
- Only users with the
masseditregex
permission can perform changes. - A new "edit all" tab appears on category pages and on Special:WhatLinksHere, for editing all listed pages at once.
- Pages to edit can be specified as:
- A list of page names
- A list of page name prefixes (e.g., "Test" will match pages called "Testing" and "Tested")
- A list of categories (all pages within the categories will be edited)
- A list of backlinks (pages edited are those linking to the ones in the list)
Installation
- Download and move the extracted
MassEditRegex
folder to yourextensions/
directory.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/MassEditRegex - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'MassEditRegex' );
- Configure user group and user right at your convenience.
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Configuration
This extension comes with an extra user right called "masseditregex
" to allow fine-grained control of which user groups may use this extension.
By default, it is assigned to no user group.
In case you would like to assign it to a user group e.g. "masseditregexeditor
", add the following code to your "LocalSettings.php
" file right after the lines added in step (3) of the installation process:
$wgGroupPermissions['masseditregexeditor']['masseditregex'] = true;
Alternatively, you may grant this permission to an existing user group, e.g., "sysop
" by adding the following line:
$wgGroupPermissions['sysop']['masseditregex'] = true;
Tips
Adding content to the top of the page:
- Detect any first character at the beginning of a page: → Search for:
/^(.)/
- Prepend my content to the char found at the beginning of a page, including a line break: → Replace with:
MyContent\n$1
Known issues
- Server-side execution is the default as it (should) be faster.
However, editing large numbers of pages will cause server timeouts due to PHP limits on script execution time. To work around this (and perhaps to get better feedback on progress), you can tick "execute in browser" to have the job tracking done on the client side. This should mean timeouts are no longer a problem.
- Page not found
In (at least) MediaWiki 1.31 and later, when the regex you provide is invalid, it will falsely indicate that all of the pages you selected for replacement are not found.
- Replacement in certain namespaces
If you would like to replace text only in certain namespaces, e.g., "File" and enter this with the page prefix option, you will get the following note: "Error: The MediaWiki API returned the error code invalidtitle: Bad title "File:"."
See also
- Extension:Replace Text — A similar extension which however will not work if you set
$wgCompressRevisions = true;
for your wiki.
This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |