File: macro.ui

package info (click to toggle)
udo 6.4.1-9
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,680 kB
  • sloc: ansic: 42,702; makefile: 81; cpp: 19
file content (107 lines) | stat: -rw-r--r-- 3,221 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
############################################################
# @(#) Makros, Dirk Hagedorn, 07.11.1995
# 31.12.1995: Vorformatierte Makros
# 14.07.1996: Makros mit Parametern
############################################################

!subsubnode Makros

Makros sind benutzerdefinierte Platzhalter, die sich fr die
verschiedensten Dinge eignen.

!index !/macro
Beim Befehl (!I)!/macro(!i) geben Sie zunchst den Bezeichner des
Makros an, dem sich der Ersetzungstext anschliet. Letzterer kann auch
leer sein.

Um im Quelltext spter den Inhalt eines Makros ausgeben zu lassen,
geben Sie den Bezeichner der Makros mit einem fhrenden
Ausrufezeichen und eingeschlossen in runde Klammern an.

Auch hier zunchst ein paar Beispiele:

!begin_quote
!begin_verbatim
!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
!end_verbatim
!end_quote

!index !/include
Diese Makros knnten dazu benutzt werden, sich lstige Tipparbeit zu sparen
oder nderungen zu beschleunigen. Ein weiteres Anwendungsgebiet ist das
Erstellen von standardisierten Texten, deren Inhalt durch Makros an den
jeweiligen Quelltext angepat wird. Im folgenden Beispiel wird der
Programmname in einen Disclaimer eingebaut, der per (!I)!/include(!i)
eingebunden wird:

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


!smallskip

!index Makros !! Parameter
!index Parameter !! Makros

Seit UDO Release 6 knnen Makros auch Parameter bergeben werden. Bei der
Erzeugung eines Makros geben Sie dazu mit ''(!T)(!/1)(!t)'',
''(!T)(!/2)(!t)'' bis ''(!T)(!/9)(!t)'' 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 fr die Ausgabe von
gleichzeitig fettem und kursiven Text definiert wird und spter mit
nur einem Parameter aufgerufen wird:

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

Die Worte ""fett und kursiv"" werden bei der Ausgabe dann an die
Stelle von (!/1) gesetzt. Das Beispiel ist zugegebenermaen nicht
gerade glcklich gewhlt, da man mit Schriftarten mglichst sparsam
umgehen sollte, zeigt aber hier auf einfache Weise, wie man Makros
einsetzen knnte.

!smallskip

(!HINTS)

!begin_enumerate

!item Bei der Namensvergabe der Makros sollte man mglichst 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.

!item Die Benutzung von Makros sollte nicht bertrieben werden. UDO erlaubt zwar
die Benutzung von bis zu (!MAXMACRO) Makros, jedoch verlangsamt jedes
zustzliche Makro die Umwandlung der Quelldatei, da jede Zeile nach allen
Makros durchsucht werden mu.

!end_enumerate