Ein Debugger in einer IDE für eine Programmiersprache. Vor etlichen Jahren hatte ich mit Delphi 7 (oder so) angefangen. Die IDE bestand standardmäßig aus "fliegenen Fenstern". Von einer IDE mit MDI-Fenster war alles noch weit entfernt und es gab keinen richtigen Debugger. Man konnte sich selbst was basteln, das in ein DOS-ähnliches Fenster ein paar Informationen schrieb. Selbst das uralte Visual Basic hatte alles schon an Ort und Stelle.
Heute ist das bei den meisten Sprachen Standard in der IDE. Warum sollte man das bei AutoIt nicht auch einen Debugger anstreben?
Wikipedia beschreibt einen Debugger als
ZitatEin Debugger ... ist ein Werkzeug zum Diagnostizieren und Auffinden von Fehlern in Computersystemen, dabei vor allem in Programmen, aber auch in der für die Ausführung benötigten Hardware.
Nun ist schon des öfteren von BugFix als sinnfrei bezeichnet worden, für AutoIt einen Debugger zu erstellen, oder zu benutzen. Es gibt nur einen BugFix, aber mehrere User sind da anderer Meinung und würden sich über einen Debugger freuen.
Im Moment weiß ich noch nicht so genau, wo dieser Thread hinführen soll. Es kann gerne diskutiert werden, ob ein Debugger für Autoit sinnvoll ist, ob er überhaupt möglich ist, und und und.
Der Thread kann auch als Anregung dienen, einen Debugger zu realisieren/entwickeln. Ich würde gerne meine Unterstützung anbieten, um einen Debugger in meinem PSPad4AutoIt3 Projekt aufzunehmen. Mein Favorit ist DBUG (Another debugger for AutoIt). DBUG liegt als Au3-Script vor und lässt sich einfach in ein anderes Script einfügen, das debugt werden soll. DBUG zeigt es ein mir aus anderen IDEs bekanntes Verhalten, mit Stip-Into, Step-over, run to cursor, Haltepunkten werden angezeigt uvm. Zudem hat es schon ohne Anpassungen eine Teilfunktionalität in PSPad. Das könnte ein guter Ansatz sein.
Da ich im Moment mit der Erstellung eines CallTipViewers für PSPad4AutoIt3 ausgelastet bin, kann ich noch keine Ressourcen für einen Debugger abgeben. Aber wenn sich andere Interessierte finden, dann wird das schon was.
Bernd.