Rexx-IDE für Windows


Rexx-Logos

Etwas Geschichte...

Eine "richtige" IDE (Integreated Development Environment) für Open Object Rexx wünschen sich viele nachdem IBM die Object Rexx-Weiterentwicklung freigegeben hat und das Paket aus den Windows-Anfängen, die IBM Object Rexx Development Edition, leider nicht mehr verfügbar ist. (Übrigens: REXX steht für "Restructured Extended Executor".)
Dabei war es doch so schön, eine komplette Entwicklungsumgebung zu haben.
Mit einem Editor, der die Rexx-Syntax farblich darstellen und automatisch vervollständigen konnte und mit einem netten Interface mit dem man sich die grafische Programmoberflächen zusammenklicken konnte.

Für alle, die dem nachtrauern, habe ich gute Nachrichten, denn man kann diese Entwicklungsumgebung in ihren Basisteilen nachbauen wenn man sich im Internet richtig umsieht oder wie in meinem Fall, selbst Hand anlegt. Eigentlich habe ich fast alles gefunden, nur die Editor-Umgebung mit Syntax-Highlighting und Autovervollständigung, hatte mit noch gefehlt. Doch mit etwas Geduld war das auch kein Problem. Was natürlich fehlt ist ein Debugger. Da hilft es nur auf die Debugging-Funktionen (TRACE) von Rexx zurück zu greifen. Im ooRexx-Paket finden sich dazu passende Beispiele bzw. Vorlagen.


Der Rexx-Code-Editor

Notepad++-Editor mit einem Rexx-Script Das Kernstück der zukünftigen IDE sollte ein (Kosten-)freier Editor sein.
Also habe ich nach einem freien Editor gesucht, der alles kann was man so braucht und dem man dann auch noch Rexx beibringen kann. Natürlich sollte er auch noch deutsch "sprechen" können. Das Ergebnis meiner Suche war der Notepad++-Editor. Mit etwas Fleißarbeit habe ich ihm das Fehlende beigebracht. Das Resultat (Notp_rexx.zip) kann hier herunter geladen werden. Zusätzlich sollte man noch das RunMe-Plugin installieren, welches das Testen des Rexx-Codes wesentlich vereinfacht.


Notepad++ mit SourceCookifier-Plugin Ein weiteres wichtiges Plugin ist der SourceCookifier, denn erst dadurch werden (vor allem längere) Rexx-Scripte überschaubar. Der einzige Nachteil von diesem Plugin ist, daß es nur unvollständig auf Rexx angepasst wurde. Da heißt es selbst Hand anlegen und zwar:
Bei Language erst einmal REXX auswählen.
Bei Extension die Liste wie folgt anpassen: ".rexx .rx .rex .rxj .nrx".
Bei TagType ist "s" für "Subroutines" schon vorgegeben.
Zusätzlich brauchen wir noch drei weitere TagTypes und zwar: "c" für "Classes", "m" für "Methods" und "r" für "Routines".


Die Parameter bei Appearance sind etwas komplizierter, deshalb hier die Einstellungen:
TagType:c
Description:  Classes
Icon:php_classes.png
Show:aktivieren
Input:^::class[[:space:]+]([A-Za-z0-9@#$\\.!?_]+)*
Output:\1

TagType:m
Description:  Methods
Icon:php_class_methods.png
Show:aktivieren
Input:^::method[[:space:]+]([A-Za-z0-9@#$\\.!?_]+)*
Output:\1

TagType:r
Description:  Routines
Icon:php_class_constants.png
Show:aktivieren
Input:^::routine[[:space:]+]([A-Za-z0-9@#$\\.!?_]+)*
Output:\1


Nach jedem Hinzufügen eines TagType, die Taste Add drücken und zum Schluss die Taste OK drücken. Wer möchte, kann über die Taste ForeColor den TagTypes unterschiedliche Farben geben.

Der Editor für grafische Benutzeroberflächen

ResEdit in Aktion Eine Programm zum Zusammenklicken von grafischen Oberflächen für Rexx-Programme war auch schnell gefunden. Ich haben mich für den ResEdit (Resourcen-Editor) entschieden. Weil der auch (Kosten-)frei ist und deutsch "spricht".
Wenn man der ResEdit-Anleitung folgt und ein Windows SDK herunterläd, hat man die nötigen C-Quellen um alle grafischen Bestandteile von Windows, wie Tasten, Texte, Auswahlfenster usw. zusammen zu bauen.
Den ResEditor, wie auch das SDK, gibt es in einer 32 und 64 Bit Version.


Rexx Testumgebung mit ooRexxTry

ooRexxTry-Testumgebung in deutsch Schon mit OS/2 wurde dem ambitionierten Rexx-Programmierer ein Hilfe für die ersten Schritte mit Rexx mitgeliefert. Diese Hilfe kam in Form eines kleinen Rexx-Scriptes namens "rexxtry.rex", welches noch heute mit Open Object Rexx installiert wird. Man findet es im ooRexx-Verzeichnis. Eine grafische (GUI) Variante davon namens ooRexxTry.rex hat Lee Peedin geschaffen, welche man im Verzeichnis ...\ooRexx\samples\oodialog\ooRexxTry findet. Doch leider ist die auch mal wieder in englisch und hat zudem noch einen Fehler, da sie nicht an die Gegebenheiten von Windows ab der Version Vista angepasst ist. Also habe ich ooRexxTry überarbeitet. Zum einen ist meine Version nun in deutsch und zum anderen habe ich alle Fehler beseitigt. Und weil ich schon dabei war habe ich auch gleich die Dialoge und das Menü in eine externe Resourcen-Datei gepackt. Somit hat jeder, der sich den Quellcode anschaut, gleich ein Beispiel, wie so etwas funktioniert. Meine wesentlichen Änderungen habe ich im Script kommentiert. Die deutsche Version von ooRexxTry findet ihr natürlich auch auf meiner Download-Seite.


Die Installation

Die Reihenfolge der Installation ist eigentlich egal. Ich würde jedoch folgende Reihenfolge wählen:
  • Open Object Rexx (je nach System in 32 oder 64 Bit)
  • Notepad++ (je nach System in 32 oder 64 Bit)
  • RunMe-Plugin für das Notepad++
  • SourceCookifier-Plugin für das Notepad++
  • ResEdit (den Resourcen-Editor gibt es inzwischen auch in 64 Bit)
  • Windows SDK (je nach System in 32 oder 64 Bit)

So, wenn das alles installiert ist steht dem ersten Test nichts nichts mehr im Weg.
Alle Links findest Du natürlich auch auf meiner Links Seite.