Symbole sind benutzerdefinierte inhaltsleere Variablen, welche sich durch das Kommando !set und beim Aufruf von UDO durch die Kommandozeilenoption -D setzen und mit dem Kommando !unset auch wieder entfernen lassen. Ob ein Symbol gesetzt oder nicht gesetzt ist, lässt sich mit den Abfrage-Befehlen !ifset bzw. !ifnset testen.
Die Einsatzmöglichkeiten von Symbolen sind vielfältig. Das folgende Beispiel zeigt Ihnen ein typisches Anwendungsgebiet, bei dem Sie je nach gesetzten Symbolen eine Zieldatei mit unterschiedlichem Inhalt erhalten.
Gehen wir einmal davon aus, dass wir einen Quelltext geschrieben
haben, der drei Kapitel enthält. Die ersten beiden Kapitel sind
bereits fertig, am letzten Kapitel wird noch eifgrig herumgebastelt.
Um nun die Turn-Around-Zeiten zu minimieren, wollen wir eine Zieldatei
erzeugen, die nur das dritte Kapitel enthält. Nur wenn das Symbol
AlleKapitel
gesetzt ist, soll die Zieldatei alle Kapitel
enthalten:
!begin_document !tableofcontents !ifset [AlleKapitel] !include kapitel1.ui !include kapitel2.ui !endif !include kapitel3.ui !end_document
Starten Sie UDO nun normal
, wird eine Zieldatei erstellt,
die nur das dritte Kapitel enthält. Starten Sie UDO hingegen mit der
Kommandozeilenoption -D AlleKapitel
, werden
alle Kapitel umgewandelt.
Das Spielchen können Sie natürlich noch etwas ausbauen. Durch
Verwendung weiterer Symbole können Sie gezielt nur einzelne Kapitel
oder alle zusammen in die Zieldatei aufnehmen. Im folgenden Beispiel
wird bei Übergabe der Option -D Kapitel1
nur
das erste Kapitel in die Zieldatei aufgenommen. Übergeben Sie
-D Kapitel1
und
-D Kapitel2
, so werden das erste und das zweite
Kapitel eingebunden. Übergeben Sie hingegen
-D AlleKapitel
, wird die Zieldatei komplett
dargestellt:
!begin_document !tableofcontents !ifset [Kapitel1, AlleKapitel] !include kapitel1.ui !endif !ifset [Kapitel2, AlleKapitel] !include kapitel2.ui !endif !ifset [Kapitel3, AlleKapitel] !include kapitel3.ui !endif !end_document
Ihrer Phantasie sind hier kaum Grenzen gesetzt!
Wie in der Einführung zu diesem Abschnitt beschrieben, lassen sich Symbole auch wieder löschen. Dazu verwenden Sie die Befehls !unset.
Wollen Sie in obigem Beispiel partout verhindern, dass alle Kapitel in die Zieldatei eingebunden werden, können Sie zuvor das Symbol AlleKapitel löschen, sofern es gesetzt wurde. Dies funktioniert so:
In diesem Beispiel wird also zunächst abgefragt, ob das Symbol
AlleKapitel
gesetzt ist. In dem Falle wird es
durch den Befehl !unset gelöscht. Die vorherige
Abfrage ist deshalb notwendig, damit Sie eine Fehlermeldung durch UDO
vermeiden, falls das Symbol AlleKapitel
einmal
nicht gesetzt ist.
Hinweise: