Ok, klingt so, als wüsstest du einiges über MW, das ist doch schon mal super, lass uns drüber quatschen! ![]()
Was ReplaceText angeht: Das ist ein absolutes No-Go-Go-Go-Go-Go. Nein. Einfach nein.
Wenn ich versuche, das auf Tausenden von Seiten so zu machen, schlage ich mich bis zum Sankt-Nimmerleins-Tag mit Regex rum (womit ich eine Hassliebe verbinde). Manche Seiten nutzen strukturierte Infoboxen ({{Infobox Game | disk = ...}}), manche nutzen direkte [[Media:game.dsk]]-Links und andere verlinken auf externe FTP-Mirror oder .zip-Archive. Es gibt keine Chance, dass ich die alle erwische, ohne Fehler einzubauen – außerdem würde das für jede einzelne angefasste Seite eine neue Revision in der Datenbank erzeugen.
Aber was die Hooks angeht: Das hat mich auf eine Idee gebracht. Eine automatische Link-Erkennung ist möglich (obwohl ich vermute, dass der Parser-Cache von MediaWiki das wahrscheinlich etwas knifflig macht), aber ich glaube, wir brauchen nicht mal einen PHP-Hook. Was wir wahrscheinlich machen könnten, wäre ein JS-Snippet in die MediaWiki:Common.js einzufügen (oder sogar direkt ins Theme??), beim Laden jeder Seite den DOM zu scannen und, wenn ein DSK-Link gefunden wird, einen [Play]-Button daneben einzufügen. So ähnlich habe ich das auch im Forum gemacht.
Ich werde da vorerst noch nicht rangehen, ich muss erst noch ein bisschen darüber nachdenken und mir MW-Modifikationen genauer anschauen. Wenn du irgendwelche Ideen hast, lass es mich wissen!