Ja, das geht mit einem
IDE-Plugin. Die Details sind aber leider nicht in ein paar Worten zu beschreiben. Im Wesentlichen registriert man einen
IOTAIDENotifier, der beim Öffnen und Erstellen eines Projekts einen
IOTANotifier und
IOTAModuleNotifier dort registriert. Dieser reagiert dann auf die Methoden
AfterSave und
ModuleRenamed.
Ich habe mich auf Grund deiner Hinweise mal daran gemacht meinen ersten Gehversuch mit einem
IDE-Plugin zu machen.
Als Basis habe ich dafür das
IDE Notifiers Plugin von David Hoyle verwendet. Das Ergebnis ist im Anhang zu finden. Das Projekt ist noch nicht aufgeräumt oder optimiert, es zeigt nur meinen jetzigen Stand. Mit Sicherheit habe ich vieles zu kompliziert gelöst oder sogar ganz falsch gemacht. Ich bitte hier um etwas Nachsicht. Wie gesagt, es ist mein erster Gehversuch in dieser Richtung.
Etwas tricky wird es aber, wenn es mehrere solcher Plugins gibt, die jeweils die Projektdatei neu schreiben (mein Project Magician macht das). Ohne eine clevere Strategie gewinnt immer der letzte.
Das merke ich jetzt schon, ohne das ich mich derartigen Problemen beschäftigt hätte.
Derzeit hadere ich schon daran wie Delphi wohl die Dateipaare, also z.B. dproj +
dpr oder
pas +
dfm, verwaltet. Das ist ein Punkt der derzeit noch nicht in meinem Plugin funktioniert. Zwar könnte man die zugehörigen Dateiendungen sicherlich direkt im Quelltext behandeln, aber ich vermute das das nicht der vorgesehene Weg ist.
Für weitere Tips und Hinweise bin ich dankbar.