User:SilverBot

I am a Maintenance bot run by &#8465;ilver&#167;&#8465;ide|undefined

If you wish to have me run an action, leave a note on the talk page with the exact text specified under the Syntax section of the action you wish to run. Please sign your requested action on the *NEXT* line, so I can parse the page, thanks!

I can do, at this point:

Change categories
Syntax: python ./category.py action [-option]

If you specify a range of pages in a wikipage, I can add a certain category, remove a category, remove *ALL* categories, etcetra.

where action can be one of these:
 * add   - mass-add a category to a list of pages
 * remove - remove category tag from all pages in a category
 * move - move all pages in a category to another category
 * tidy  - tidy up a category by moving its articles into subcategories
 * tree  - show a tree of subcategories of a given category

and option can be one of these:
 * person - sort persons by their last name (for action 'add')
 * rebuild - reset the database

For the actions tidy and tree, I will store the category structure locally in category.dump. This saves time and server load, but if it uses these data later, they may be outdated; use the -rebuild parameter in this case.

For example, to create a new category from a list of persons, type: python category.py add -person

You will need to create a wikipage with a list of pages for me to edit, it should be in the format: Exactly. * for bullet, a single space, then a NON-PIPED link to the page to be categorized. Alternately, I can edit all pages linked from a given page (hint, a non-correctly-formated list). Alternately, I can edit all pages linking TO a given page.
 * Pagename1
 * Pagename2
 * Pagename3

In all the above cases, make sure to specify the category name below the command line, and whether you want *A pages linked from the page or *B pages linking to the page! Thanks (-:

Redirects
I can resolve double redirects, and to delete broken redirects. I require access to MediaWiki's maintenance pages or to a XML dump file. I could delete broken redirects if I was an admin.

Syntax: python redirect.py action [-argument]

where action can be one of these:
 * double - fix redirects which point to other redirects
 * broken - delete redirects where targets don't exist. Requires adminship.

and argument can be:
 * xml        - retrieve information from a local XML dump. Argument can also be given as "-xml:filename.xml". If this argument isn't given, info will be loaded from a special page of the live wiki.

NOTE: For resolving redirects, please use solve_disambiguation.py -redir.

Find / Replace
I will make direct text replacements. I will retrieve information on which pages might need changes either from an XML dump or a text file, or only change a single page.

You can run me with the following commandline parameters:

-xml        - Retrieve information from a local XML dump (pages_current) Argument can also be given as "-xml:filename".

-file       - Work on all pages given in a local text file. Will read any wiki link and use these articles. Argument can also be given as "-file:filename".

-cat        - Work on all pages which are in a specific category. Argument can also be given as "-cat:categoryname".

-page       - Only edit a single page. Argument can also be given as "-page:pagename". You can give this parameter multiple times to edit multiple pages.

-ref        - Work on all pages that link to a certain page. Argument can also be given as "-ref:referredpagename".

-start      - Work on all pages in the wiki, starting at a given page. Choose "-start:!" to start at the beginning.

-regex      - Make replacements using regular expressions. If this argument isn't given, the bot will make simple text replacements.

-except:XYZ - Ignore pages which contain XYZ. If the -regex argument is given, XYZ will be regarded as a regular expression.

-fix:XYZ    - Perform one of the predefined replacements tasks, which are given in the dictionary 'fixes'. The -regex argument and given replacements will be ignored if you use -fix. Currently available predefined fixes are:
 * HTML - convert HTML tags to wiki syntax, and fix XHTML

-namespace:n - Number of namespace to process.

-always     - Don't prompt you for each replacement

other:      - First argument is the old text, second argument is the new text. If the -regex argument is given, the first argument will be regarded as a regular expression, and the second argument might contain expressions like \\1 or \g. NOTE: Only use either -xml or -file or -page, but don't mix them.

Examples:

If you want to change templates from the old syntax, e.g. &#123;&#123;msg:Stub}}, to the new syntax, e.g. &#123;&#123;Stub}}, then use this command:

python replace.py -xml -regex "&#123;&#123;msg:(.*?)}}" "&#123;&#123;\\1}}"

If you have a dump called foobar.xml and want to fix typos, e.g. Errror -> Error, use this:

python replace.py -xml:foobar.xml "Errror" "Error"

If you have a page called 'John Doe' and want to convert HTML tags to wiki syntax, use: python replace.py -page:John_Doe -fix:HTML

Other
Other things I can do:
 * Remove old templates, by A) checking the list of pages that link to that template, B) changing occurrence of &#123;&#123;templatename}} to &#123;&#123;subst:templatename}} C) saving the pages - thus it will substitute the template text into the page and remove all links to the template so it can be deleted.
 * Change old templates, by A) checking the list of pages that link to the old template, B) changing occurrence of &#123;&#123;oldtemplatename}} to &#123;&#123;newtemplatename}} C) saving the pages
 * Touch a range of page names without editing them, for instance, to update category lists or template lists