Home Miszellaneen Verteilte Dokumente Definitionen

Makros

Makros sind benutzerdefinierte Platzhalter, die sich für die verschiedensten Dinge eignen.

Beim Befehl !macro geben Sie zunächst den Bezeichner des Makros an, dem sich der Ersetzungstext anschließt. Letzterer kann auch leer sein.

Um im Quelltext später den Inhalt eines Makros ausgeben zu lassen, geben Sie den Bezeichner der Makros mit einem führenden Ausrufezeichen und eingeschlossen in runde Klammern an.

Auch hier zunächst ein paar Beispiele:

!macro HTML Hypertext Markup Language
!macro UDO  (!B)U(!b)niversal (!B)Do(!b)cument
!macro TOSG (!T)UDO6GDOS.LZH(!t)
!ifdest [html]
  !macro PICPATH gif/
!else
  !macro PICPATH img/
!endif
[...]
Die (!HTML) ...
Das (!UDO) Format ...
Das Archiv (!DOSG) ...
!image (!PICPATH)/tiger

Diese Makros könnten dazu benutzt werden, sich lästige Tipparbeit zu sparen oder Änderungen zu beschleunigen. Ein weiteres Anwendungsgebiet ist das Erstellen von standardisierten Texten, deren Inhalt durch Makros an den jeweiligen Quelltext angepaßt wird. Im folgenden Beispiel wird der Programmname in einen Disclaimer eingebaut, der per !include eingebunden wird:

[doku.u]
!macro PRG Windows95
[disclaim.u]
(!PRG) wurde umfangreichen Tests unterzogen.
Die Benutzung erfolgt auf eigene Gefahr!

Seit UDO Release 6 können Makros auch Parameter übergeben werden. Bei der Erzeugung eines Makros geben Sie dazu mit `(!1)', `(!2)' bis `(!9)' die Position der Parameter an. Um den Makros im Text die Parameter zu übergeben, setzen Sie diese in eckige Klammern.

Hier ein kleines Beispiel, bei dem ein Makro für die Ausgabe von gleichzeitig fettem und kursiven Text definiert wird und später mit nur einem Parameter aufgerufen wird:

!macro BI (!B)(!I)(!1)(!i)(!b)
...
Dieser Text ist (!BI [fett und kursiv]).

Die Worte "fett und kursiv" werden bei der Ausgabe dann an die Stelle von (!1) gesetzt. Das Beispiel ist zugegebenermaßen nicht gerade glücklich gewählt, da man mit Schriftarten möglichst sparsam umgehen sollte, zeigt aber hier auf einfache Weise, wie man Makros einsetzen könnte.


Hinweise:

  1. Bei der Namensvergabe der Makros sollte man möglichst darauf achten, diese nicht wie bereits existente Befehle oder Platzhalter zu benennen. So sollten sie ein Makro nicht "B" oder "nl" benennen, da dann die Umschaltung in Fettschrift ((!B)) oder ein erzwungener Zeilenumbruch nicht mehr funktionieren.
     
  2. Die Benutzung von Makros sollte nicht übertrieben werden. UDO erlaubt zwar die Benutzung von bis zu 128 Makros, jedoch verlangsamt jedes zusätzliche Makro die Umwandlung der Quelldatei, da jede Zeile nach allen Makros durchsucht werden muß.
     

Home Miszellaneen Verteilte Dokumente Definitionen