/\  <<  >>

Makros

     MAC       Makro-Definitionen. [XI] <>

               Ab Spalte 11 wird  die  Makro-Abkürzung  in  der  Form
               "&.ab"  oder "­<name>­" und unmittelbar dahinter die Ma-
               kro-Auflösung angegeben. Reicht  eine  Zeile  für  die
               Auflösung  nicht  aus,  so  kann  die Auflösung in der
               nachfolgenden Zeile fortgesetzt werden. Diese muss die
               gleiche Makro-Abkürzung haben wie  die  fortzusetzende
               Zeile.

               Rechtsbündige Leerzeichen werden ignoriert.

               Makros dürfen nicht geschachtelt sein.  Ausnahme:  Ma-
               kros  der  Gruppe A dürfen Makros der Gruppe B enthal-
               ten.

               Makro-Gruppe A: Alle Makros, die nicht zu Gruppe B
                               gehören.

               Makro-Gruppe B: Mit "&.ab" codierte leere Makros  (das
                               sind  Makros,  zu denen hinter dem Ma-
                               kronamen  keine  Auflösung   angegeben
                               ist) sowie mit "&.ab" codierte Makros,
                               deren  Auflösung mit "&!(" beginnt und
                               die nur hardware-nahe Anweisungen  für
                               die  Setzmaschine (vgl. Kapitel 21 bei
                               den Steueranweisungen) enthalten.  Die
                               Auflösung  dieser  Makros muss mit der
                               entsprechenden  schließenden   Klammer
                               en­den.

               Die mit "&.ab" codierten Makros der  Gruppe  A  werden
               nicht  nur  für  die Satzausgabe, sondern auch für die
               ZIEL-Datei und die PROTOKOLL-Datei aufgelöst.

               Die mit "­<name>­" codierten Makros der Gruppe A  werden
               nur  dann  in  der  ZIEL-Datei und der PROTOKOLL-Datei
               aufgelöst, wenn ihre Auflösung Leerzeichen (ggf. außer
               einem einzigen Leerzeichen unmittelbar nach der  spit-
               zen  Klammer  hinter dem Makronamen) enthält oder wenn
               dies mit dem Parameter MAZ verlangt wird.  Andernfalls
               werden  die Makro-Abkürzungen unverändert in die ZIEL-
               Datei und in die PROTOKOLL-Datei übernommen.

               Makros der Gruppe B werden  nur  für  die  Satzausgabe
               aufgelöst;  in der ZIEL-Datei und in der PROTOKOLL-Da-
               tei bleiben die Makro-Abkürzungen stehen.

               Soll bei Makros der Gruppe A ein Leerzeichen  am  Ende
               der Makro-Auflösung stehen bleiben, so kann hinter das
               Leerzeichen  die Zeichenfolge "&." geschrieben werden;
               diese wird bei der Auflösung der Makros nicht übernom-
               men.

               Es können (einschließlich der mit  dem  Parameter  MAH
               angegebenen,  bis zu 2000 hierarchischen Makros) maxi-
               mal 3000 Makros angegeben werden; die Auflösungen  der
               mit dem Parameter MAC angegebenen Makros können insge-
               samt 16000 Zeichen umfassen.

     MAA       Makro-Definitionen. [XI] <>

               Wie MAC, jedoch werden die mit "­<name>­" codierten  Ma-
               kros  auch  durch  die  Standard-Makros #*AUMBRUCH und
               #*SUMBRUCH nicht aufgelöst.

               Die mit Parameter MAA definierten Makros dürfen  keine
               Anweisungen  enthalten,  die in #*AUMBRUCH oder #*SUM-
               BRUCH verarbeitet werden müssen  (z.B.  Zeilenwechsel,
               Überschriften, Einrückungen, Auszeichnungen).

     MAH       Makro-Definitionen für hierarchische Makros. [XI] <>

               Wie MAC für mit "­<name>­" codierte Makros. Bei der Auf-
               lösung dieser Makros werden SGML/XML-Konventionen  zu-
               grundegelegt; die Stellung der (den SGML/XML-Tags ent-
               sprechenden)   Makros  innerhalb  von  übergeordneten,
               durch entsprechende Tags bezeichneten  Elementen  wird
               berücksichtigt.  Dabei wird eine Hierarchiestufe durch
               ein einem Start-Tag  entsprechendes  Makro  (z. B.  "-
               <div>­")  eröffnet und durch ein einem End-Tag entspre-
               chendes Makro mit identischem Namen, vor dem  ein  "/"
               steht (z. B. "­</div>­"), abgeschlossen.

               Die Reihenfolge der  Makros  muss  der  hierarchischen
               Ordnung  der  durch  sie  bezeichneten Elemente des zu
               setzenden Textes entsprechen. Außerdem wird ab  Spalte
               11 für jedes übergeordnete Makro, das einem noch offe-
               nen (nicht durch ein End-Tag abgeschlossenen) Tag ent-
               spricht,  ein  Punkt erwartet. Fehlen diese Punkte, so
               wird bei jedem nicht mit ­</ beginnenden, vom vorherge-
               henden verschiedenen  Makro  um  eine  Hierarchiestufe
               weitergeschaltet und mit jedem mit ­</ beginnenden, vom
               vorhergehenden verschiedenen Makro um eine Hierarchie-
               stufe zurückgeschaltet.

               Bei Makros, die SGML/XML-Tags mit Attributen  entspre-
               chen, führen unterschiedliche Attribute nicht immer zu
               unterschiedlichen Makro-Auflösungen. Sollen diese Tags
               identische  Auflösungen  erhalten,  so  genügt es, als
               Makro nur den Namen des Tags, gefolgt von einem  Leer-
               zeichen,  in  den  spitzen  Klammern anzugeben. Dieses
               Makro gilt dann für alle im Text vorkommenden Tags mit
               diesem Namen, unabhängig von ihren Attributen, und für
               Tags mit gleichen Namen, aber ohne Attribute.

               Sind die Attribute für die Auflösung  der  Makros  von
               Bedeutung,  so  muss derzeit jeweils das volle Tag mit
               allen Attributen als Makro  angegeben  werden.  Solche
               Makros  können  in  der  Regel, wie unten beschrieben,
               gleichgesetzt werden.

               Für Makros, die den End-Tags von Tags  mit  Attributen
               entsprechen, gelten die von SGML/XML gewohnten Konven-
               tionen  ("­</name>­", ohne Leerzeichen und ohne Attribu-
               te).

               Parameter für Satzmakros, die diesen Konventionen ent-
               sprechen, können mit dem Standard-Makro #*TAGS  (siehe
               unten)  aus dem zu setzenden, nach SGML/XML-Konventio-
               nen ausgezeichneten Text erzeugt  werden.  In  die  so
               erzeugten  Parameter  muss  nur noch die Auflösung der
               Makros eingetragen werden.

               Unterschiedliche hierarchische Makros,  die  sich  auf
               derselben  Hierarchiestufe  befinden und die denselben
               übergeordneten Makros untergeordnet sind,  können  für
               das  Satzprogramm  gleichgesetzt werden, auch wenn sie
               unterschiedlich aufgelöst werden sollen. Voraussetzung
               ist, dass die Auflösung der diesen Makros  untergeord-
               neten  Makros nicht von den Namen dieser gleichgesetz-
               ten Makros, sondern nur von ihrer  Stellung  innerhalb
               der Hierarchie der Tags abhängt.

               Die Gleichsetzung von Makros wird  dadurch  angegeben,
               dass beim ersten der gleichzusetzenden Makros in Spal-
               te  9  ein "-", bei den mit diesem gleichgesetzten Ma-
               kros (die unmittelbar darauf folgen  müssen)  ein  "="
               angegeben  wird.  Auch  die  Makros,  die  eine  durch
               gleichgesetzte  Makros  eingeleitete   Hierarchiestufe
               abschließen,  müssen  in Spalte 9 entsprechend gekenn-
               zeichnet sein. Soll (abweichend von  SGML-  bzw.  XML-
               Konventionen)  ein einziges ­(End-)Makro diese Funktion
               für mehrere gleichgesetzte ­(Start-)Makros  übernehmen,
               so  muss  dieses ­(End-)Makro in Spalte 9 durch ein "-"
               gekennzeichnet sein, obwohl ihm  keine  weiteren,  mit
               ihm gleichgesetzten ­(End-)Makros folgen.

     MAZ       Zusatzangaben zu den Makros. [I] <0 0>

               NGKU     Angabe zur Groß- und Kleinschreibung in den
                        Makronamen

                        0 =  Groß- und Kleinbuchstaben gelten in Ma-
                             kronamen als gleichwertig.
                        1 =  Groß- und Kleinbuchstaben werden  unter-
                             schieden;  auch  Makros,  die  sich  nur
                             durch Groß- bzw. Kleinschreibung  unter-
                             scheiden,  gelten  als  unterschiedliche
                             Makros.

               MAUFL    Angabe zur Auflösung von Makros in der ZIEL-
                        Datei und der PROTOKOLL-Datei

                        0 =  Mit "­<name>­" codierte Makros werden  un-
                             aufgelöst in die ZIEL-Datei und die PRO-
                             TOKOLL-Datei  übernommen,  es  sei denn,
                             dass ihre Auflösung - außer einem einzi-
                             gen Leerzeichen unmittelbar  hinter  der
                             den  Makronamen  abschließenden  spitzen
                             Klammer - Leerzeichen enthält.
                        1 =  Statt der mit "­<name>­" codierten  Makros
                             wird  immer deren Auflösung in die ZIEL-
                             Datei und die  PROTOKOLL-Datei  übernom-
                             men.

                                                           /\  <<  >>