Wiktionary:Per-language pages proposal/Tasks

This is meant to be a place to collate all the individual tasks and scripts that would need be done or created in order to execute this proposal. The intent is to have them be listed in rough chronological order.

Preparation

 * Create a new search bar, which would be an improvement regardless, but is required for this to work.
 * Create a vote (which needs to pass, of course), requesting devs to change $wgNamespacesWithSubpages in the configs to allow for NS:0 subpages, and update policy pages.
 * Eliminate raw links as much as possible.
 * Bring back as a wrapper template for definition lines.
 * Move all entries containing / to Unsupported titles, except for Iraqw entries (which would use a replacement character).
 * Create an abuse filter that will be able to enforce the system.

Scripts, modules, etc

 * An overhaul of all modules and templates to meet the new system
 * Various JS scripts:
 * The new search bar, discussed above.
 * A script to display just the entry name on the subpages, or show the language's name if L2 headers are abolished. This could alternately be done with DISPLAYTITLE, as long as the devs change $wgRestrictDisplayTitle in the configs.
 * A script to hide the language code when viewing a category.
 * A new bot to create and delete disambiguation pages (and possibly update them; depends on structure).
 * This bot should be open-sourced so that anyone with an approved bot could run it.
 * A solution to fix display issues with Iraqw, which uses / in its orthography but would have to use a replacement character in entry names.

Switchover and aftermath

 * A massive bot conversion of all pages. Perhaps the devs could freeze all editing except for the bot(s) doing the conversion while this process takes place.
 * Coordination of some kind at Wikidata and Wikipedia.
 * Disambiguation pages could be used as the corresponding pages for other Wiktionaries, but that means no language links in the actual per-language pages
 * Respecify all mainspace redirects to point to the per-language pages.
 * A bot run to protect all disambiguation pages, as they won't need to get edited except by bots.
 * Alternatively, an abuse filter