Diese Seite beschäftigt sich mit Möglichkeiten, veraltete Vorlagen automatisiert umzustellen und die Syntax in den Artikeln auf den aktuellen Stand zu bringen.
| Allgemeine Fragen zur Funktionsweise dieses Skripts bitte auf der dazugehörigen Diskussionsseite stellen. Spezielle Angelegenheiten zur Umsetzung bestimmter Ersetzungsdefinitionen werden auf dieser Diskussionsseite besprochen. |
Insgesamt geht es um mehrere Tausend Artikel, die derartige „Straßenschilder“ enthalten. Bei einer längeren Straße wie der Bundesautobahn 7 sind leicht 600 dieser Vorlagen-Einbindungen vorhanden.
Sie werden nicht per Bot-Einsatz umgestellt, sondern manuell einzeln auf Aktualität, Plausibilität und inhaltliche Vollständigkeit geprüft. Die Schlüsseldaten von Hand aus dem alten in das neue Vorlagen-Format zu übertragen würde aber zwangsläufig eine Vielzahl an Fehlern generieren.
Dieses Skript nimmt bei Beginn einer Bearbeitung erforderliche Ersetzungen automatisch vor und zeigt standardmäßig die Änderungen.
Es eignet sich dazu, nach und nach die Artikel syntaxmäßig auf aktuellen Stand zu bringen. Neben automatischer Syntaxkorrektur können eigene Ideen zur Typografie umgesetzt werden.
Für einige Dutzend Änderungen, für die sich der Einsatz eines bots nicht lohnt, lassen sich beispielsweise
umsetzen.
Standardmäßig wird nur der Artikel-Namensraum bearbeitet. Andere Namensräume lassen sich zuschalten. Diskussionsseiten werden grundsätzlich nicht verändert.
In die eigene common.js die folgenden Programmzeilen einfügen:
// [[Benutzer:PerfektesChaos/js/WikiSyntaxTextMod]]
if (mw.config.get("wgNamespaceNumber") === 0) {
mw.loader.load("//de.wikipedia.org/w/index.php?title=Benutzer:PerfektesChaos/js/WikiSyntaxTextMod/WPST.js&action=raw&ctype=text/javascript",
"text/javascript");
}
(Aktualisierung gegenüber 2011 für MW 1.19, WSTM 4, neuere Browser und sonstige Zukunftsaspekte)
Dann passiert beim Bearbeiten eines Artikels automatisch Folgendes:
Jeder angemeldete Wikipedia-Benutzer kann das benutzen.
Die Umstellungen basieren auf gemeinsamen Ersetzungsdefinitionen.
Für sie gilt:
...WPST.modWikilink=[......];...WPST.modURL=[......]; für Ersetzungen, die mit Links zu tun haben bzw. ...WPST.modText=[......]; für reine Text-Ersetzungen.Jeder Benutzer kann die angegebene Methode einsetzen. Damit kein Unsinn pasiert, sind jedoch zwei Sicherheitsmechanismen eingebaut:
Ein Nebeneffekt ist, dass bei Änderungen der Definitionen kein Leeren des Browser-Cache mehr erforderlich ist, weil sie bei jeder Benutzung frisch abgerufen und geprüft werden.
Die jetzt gemeinschaftlich nutzbaren Ersetzungen sollten einigermaßen getestet sein, um die Kollegen nicht plötzlich unvermutet Wirrnis anrichten zu lassen. Um neue Regeln erstmal selbst auszuprobieren und gleichzeitig den Pool nutzen zu können, kann man Folgendes in der eigenen common.js verwenden:
var Modif_Text = [
/*
Platz für Neues mit Texten
Dran denken: Hinter der letzten Definition kein Komma mehr!
*/
];
var Modif_Wikilink = [
/*
Platz für Experimente mit Wikilinks.
Dran denken: Hinter der letzten Definition kein Komma mehr!
*/
];
var Modif_URL = [
/*
Platz für Experimente mit Weblinks.
Dran denken: Hinter der letzten Definition kein Komma mehr!
*/
];
// [[Benutzer:PerfektesChaos/js/WikiSyntaxTextMod]]
if (mw.config.get("wgNamespaceNumber") === 0) {
mw.loader.load("//de.wikipedia.org/w/index.php?title=Benutzer:PerfektesChaos/js/WikiSyntaxTextMod/WPST.js&action=raw&ctype=text/javascript",
"text/javascript");
}
Wirkung: Im geeigneten Moment werden die eigenen Definitionen hinten an die gemeinschaftlichen drangehängt. Hat man grad keine am Start, passiert nix Besonderes damit. Erst hinterher wird das normale Skript gestartet.
Hat sich die Neuentwicklung als tauglich erwiesen, kann sie in den Pool eingespeist werden. Aufpassen: Die Definitionen sind voneinander durch Kommata getrennt. Fügt man alle seine eigenen in den Pool ein, muss noch ein Komma ergänzt werden; kopiert man eine aus dem Pool in den eigenen Sandkasten, ist hinten ein Komma zu viel.
Um bei Syntaxfehlern Meldungen sehen zu können, empfiehlt es sich, eine entsprechende Konsole einzuschalten.