(*--------------------------------------------------------------------------- :Program. DMErr :Author. Fridtjof Björn Siebert (Amok) :Address. Nobileweg 67, D-7000 Stuttgart-40 :Phone. (0)711/822509 :Shortcut. [fbs] :Version. 1.1 :Date. 17.04.88 :Copyright. PD, but of course contributions are wellcomed. :Language. Modula-II :Translator. M2Amiga :Imports. none. :Contents. Program to create DME-reference Files for M2-Errors. :Remark. Usage: DMErr Source [-] :Bugs. none known. ---------------------------------------------------------------------------*) Programmbeschreibung: Mit diesem Programm ist es möglich, M2Amiga-Fehlerlisten auch mit Mathew Dillon's Editor DME, der auf verschiedenen Public-Domain Disketten zu bekommen ist, zu betrachten. Es ist dazu mindestens die Version 1.28d nötig, da die Fehler mit der in dieser Version neu hinzugekommenen Funktion REF angezeigt werden. Das Programm wird mit `DMErr Source' aufgerufen. Source ist der Name des fehlerhaften Modula-Quelltextes. In den Quelltext werden die Fehlerhaften stellen markiert. Außerdem erzeugt DMErr die Datei DME.refs, die die Fehlermarkierungen enthält und DME anzeigt, wo die Fehlermeldungen stehen. Diese werden in die Datei M2.errs geschrieben. Damit das Programm korrekt läuft muß der Source im aktuellen Direktory stehen. Nach dem Markieren der Fehler wird der DME mit `RUN DME Source' gestartet. Die Commandos RUN und DME müssen also im aktuellem, oder in einem mit PATH angegebenen Directory stehen. Das hört sich jetzt bestimmt unheimlich kompliziert an, um die Dateien, die von DMErr erzeugt werden, muß man sich aber überhaupt- nicht kümmern. Um ein Programm nach dem Compilieren zu verbessern geht man folgendermaßen vor: DMErr Beispiel.mod --> Datei für Fehlersuche vorbereiten. Danach wird der DME automatisch gestartet. (das kann mit der Option `-' verhindert werden) SOURCE DMErr.edrc --> Neue DME-Tatenbelegungen aktivieren. DMErr.edrc kann natürlich in das eigene .edrc-File kopiert werden undbraucht dann nicht mehr neu aufgerufen werden. Nun kann mit F1 zum ersten Fehler gesprungen werden. Der Cursor springt an die Fehlerhafte Stelle und ein Fenster mit dem Fehlertext, es können im Gegensatz zu M2Emacs auch mehrere Fehlermeldungen sein, wird geöffnet. An der Cursorposition kann man die vorhin erwähnte Markierung sehen: 2 große X und eine dreistellige Zahl, die der Nummer des Fehlers im Text entspricht. Durch erneutes Drücken von F1 wird das Fenster mit der Fehlermeldung wieder geschlossen. Natürlich muß dazu dieses Fenster noch das aktive sein, sonst wird das evt. angeklickte Fenster mit dem Modulaprogramm geschlossen. Wenn Sie nun F1 ein drittes mal drücken, verschwindet die Fehlermarkierung aus dem Text. Dazu sollte der Cursor jedoch noch auf oder vor dme ersten X stehen. Nun kann der Fehler verbessert werden und die gleiche Prozedur belie- big oft wiederholt werden. Um bei Folgefehlern nicht von Hand, oder durch tausendmaliges Drücken von F1 die Markierungen zu entfernen, können mit Shift-F1 alle Mar- kierungen auf einmal gelöscht werden. Mit F2 können alle Fehlermarkierungen aus der Zeile, auf der sich der Cursor befindet, entfernt werden. Shift-F2 entfernt alle Fehlermarkierungen aus einem vorher mit `block' (s-b) markiertem Block. Fehler: - Wenn man F1 2x kurz hintereinander drückt, versucht DME das Fenster, das das Modulaprogramm enthält, zu schließen, da das mit der Fehler- meldung noch gar nicht geöffnet wurde. - Es ist nicht möglich, DMErr von der Workbench durch anklicken zu starten, da der DME-Befehl `execute' dann nicht funktioniert. Deshalb besitzt DMErr kein Icon. -- Fridtjof.