Eine Einführung in die Makrosprache des Systems allegro

5.2   Beispiel 2: Der FLEX notepad.flx

Dieser FLEX ist im Vergleich zum vorhergehenden schon ein wenig komplexer. Wenn Sie möchten, können Sie ihn testen, er ist manuell startbar. Wie ein FLEX manuell gestartet wird, haben Sie in Kapitel 4 erfahren. Auch hier finden Sie die Kommentarzeilen grau und die Anweisungszeilen blau markiert. Die Kommentarzeilen beginnen hier mit den im ersten Beispiel beschriebenen // Zeichen.

Der gesamte FLEX besteht aus insgesamt 5 Schritten, die nach und nach abgearbeitet werden. Im ersten Schritt werden die Exportparameter 'e' in die iV geschrieben und danach mit 'ins #uwe' der Variablen #uwe zugewiesen.

// NOTEPAD.FLX : Externes Editieren des Satzes mit Notepad
// 2001-02-09

// Exportparam sichern
variable e
insert #uwe


Im zweiten Schritt wird der entsprechende Satz für die externe Bearbeitung vorbereitet. Dazu wird die zunächst die Exportparameterdatei e-w0 gesetzt. Im folgenden Schritt wird die Tabelle asciansi hinzu geladen, um die Zeichenumwandlung von ASCII nach ANSI zu aktivieren. Die dritte Zeile öffnet die zu bearbeitende Datei notep.txt mit dem X-Editor. Der aktuelle Satz wird nun exportiert und die mit dem X-Editor geöffnete Datei wieder geschlossen.

// Satz mit e-w0 ausgeben in notep.txt
export1 param e-w0
export1 table asciansi
open x notep.txt
export2
close x

1,2: Die Befehle xport und download sind ab Version 27.1 zusammengefasst zu export. Die Funktionalität der alten Befehle bleibt erhalten!

Nachdem nun im Hintergrund die Datei notep.txt erstellt und mit den entsprechenden Daten des Datensatzes gefüllt wurde, wird sie im folgenden Schritt mit einem externen Programm (hier notepad) aufgerufen. Dazu dient der 'call'-Befehl.


// Notepad aufrufen (evtl. hier anderen Editor einsetzen)
call notepad notep.txt

Hat man schließlich die entsprechenden Änderungen vorgenommen und mit Notepad oder einem Editor eigener Wahl gespeichert, müssen diese Veränderungen des Datensatzes dem System zugeführt werden. Dies geschieht im folgenden Schritt. Die veränderte Datei notep.txt wird vom System und die Hilfsdatei e.adt, die als Schnittstelle zur Übermittlung des Datensatzes an das System dient, mit dem X-Editor geöffnet. Der eingelesene Inhalt des veränderten Datensatzes wird mittels des 'fetch'-Befehls und einem darauf folgenden Zahlenwert, der eine gewünschte Größe in Byte angibt, in die iV geschrieben, bzw. an eventuell vorhandene Daten in der iV angehängt. Als nächstes erfolgt die Wandlung des Satzes vom ANSI in das ASCII Format und der Inhalt der iV wird in die Ausgabedatei geschrieben. Dem Schließen des X-Editors folgt das Neueinlesen des Datensatzes und die temporäre Datei notep.txt wird wieder gelöscht.


// Satz wieder einlesen (ANSI!)
open notep.txt
open x e.adt
fetch 6000
asci
write ^
close x
read
delete notep.txt


Abschließend werden die Exportparameter, die in Schritt 1 gesichert wurden, zur Wie­der­herstellung aus der Benutzervariablen #uwe in die iV zurückgeschrieben. Zum Ab­schluß werden die Parameterdatei, in der Ansicht ein Lesezeichen auf den aktuellen Da­tensatz und der Anzeigemodus des Anzeigefeldes gesetzt.


// Exportparam wiederherstellen
variable #uwe
export param
set b
set d




ein Kapitel zurück zurück zum Inhaltsverzeichnis ein Kapitel vor