\heading {R"aumliche Einteilung des Notenblattes}

Das Grundproblem, das von jedem automatisierten Noten\-%
satzsystem gel"ost werden
mu\3, ist die ``grobe'' r"aumliche Einteilung des Notenblattes, so da\3
das Erscheinungsbild "ubersichtlich und die Struktur des Musikst"uckes
erkennbar wird. Diese Einteilung sollte automatisch erfolgen und nicht
vom Benutzer des Notensatzsystems ausgef"uhrt werden.

Das Problem der Gestaltung
der ``"au\3eren Form'' des Notenblattes
gliedert sich in
f"unf Teilprobleme:
\item{0)}Die Gestaltung der "Uberschriften, wie Angaben zu Titel,
Komponist und Textverfasser
\item{1)}Die Konstruktion des Notenliniensystems
\item{2)}Die gleichm"a\3ige vertikale Einteilung des Musikst"uckes, d.h.
das Abstecken
\item{3)}Das automatische Plazieren der jeweils g"ultigen
Notenschl"ussel, Vorzeichnung und Taktart
\item{4)}Die Strukturierung des Musikst"uckes durch Taktstriche

Die L"osung dieser Teilprobleme ist abh"angig vom verwendeten
Notensatzsystem.
Spezielle Verfahren habe ich in der mir bekannten Literatur nicht
angetroffen. Im folgenden sollen die zugeh"origen Satz- und
Notationsregeln beschrieben und die zugeh"origen
Verfahren f"ur die Ausf"uhrung mit \TeX\
angegeben werden.

Da \TeX\ als Textsatzsystem zeilenweise arbeitet, konnte das
Notensatzsystem bisher nur f"ur ein Zeilensystem verwirklicht werden.
Da es zum Verst"andnis einiger Satzregeln  jedoch notwendig ist, die
Regeln f"ur mehrzeilige Systeme zu kennen, soll hier auf die Angabe
dieser Regeln nicht verzichtet werden.

\Bemerkung
Da \TeX\ ein Textsatzsystem ist, sind der Gestaltung der "Uberschriften
keine Grenzen gesetzt. Sie soll deshalb kein Thema dieser Arbeit sein.
Gourlay (\lit{\gourlay, S. 397}) schl"agt vor, den Titel zu
zentrieren, w"ahrend der Textverfasser und Komponist links- bzw.
rechtsb"undig darunter erscheinen sollen. Dieser Vorschlag wurde als
M"oglichkeit in das Notensatzformat aufgenommen.
\endBemerkung
\goodbreak
\subheading{Satz- und Notationsregeln zur r"aumlichen Einteilung}
\subsubheading{Das System}
\item{S1)} Die Notenschriftelemente werden in ein Zeilensystem mit
f"unf Notenlinien eingeordnet.
Dabei werden sowohl die Linien als auch die Zwischenr"aume
genutzt \lit{{\ziegen, \bf17}}.
Ein solches Zeilensystem wird in der Musiktheorie als
\defi{System} bezeichnet.
\item{S2)} Zur Notation mehrstimmiger Musik k"onnen mehrere Systeme
verwendet werden, die durch eine sogenannte \disp{Akkoladenklammer} zu
einer Akkolade zusammengefa\3t werden. (Die Taktstriche werden in diesem
Fall  unter Ber"ucksichtigung der Instrumentengruppe in
Partituren durchgezogen.)
\item{S3)} Bei  der Notation in \disp{einem}
Zeilensystem steht am Zeilenanfang kein Taktstrich.
\item{S4)} Die L"ange der Notenlinien einer Notenzeile
entspricht der Breite des
Notenblattes, jedoch ist es oft "ublich, die erste Zeile wie den Absatz
im Textsatz um einen gewissen Betrag einzuziehen. Dieser gewonnene
Trennraum wird oft zur Kennzeichnung des jeweiligen Instruments
verwendet.
\item{S5)} Der Abstand der Notenlinien entspricht der H"ohe eines
Notenkopfes.
\goodbreak
\subsubheading{Das Abstecken}
Im Gegensatz zum Handnotensatz wird das genaue Plazieren der einzelnen
Notenzeilen auf der Seite erst nach dem Zeilenumbruch vorgenommen, wenn
sich gen"ugend Material f"ur eine Seite angesammelt hat. Jedoch ist es
f"ur die gleichm"a\3ige vertikale Verteilung der einzelnen Notenzeilen
angebracht einen Mindestabstand der Notenzeilen anzugeben, wobei es
jedoch m"oglich sein mu\3, den Abstand zwischen den Zeilen zu erh"ohen,
falls die Noten oder unterlegte Texte weit in diesen Zwischenraum
ragen.

Berechnungsgrundlage f"ur den Zwischenraum zwischen zwei Systemen ist das
Zweifache der H"ohe des Systems (\disp{Rastralh"ohe}). Die
Notenschriftelemente k"onnen also von oben und von unten bis zu einer
Rastralh"ohe in diesen Zwischenraum hineinragen. Wird dieser Betrag
"uberschritten, so mu\3 der Raum zwischen den Systemen
 unbedingt vergr"o\3ert werden
\lit{\gomb}.

Der Abstand ist so gew"ahlt, da\3 die Zwischenr"aume nur dann
vergr"o\3ert werden m"ussen, wenn Noten mit vier Hilfslinien dargestellt
werden m"ussen.

\subsubheading{Regeln zum Satz von Notenschl"usseln, Vorzeichnung und
Taktart}

\item{V1)} Zu Beginn jeder Notenzeile mu\3 der aktuelle Notenschl"ussel
zusammen mit der Vorzeichnung, d.h. der Tonartkennzeichnung, angegeben
werden. Dabei mu\3 der Notenschl"ussel immer der Vorzeichnung
vorangestellt sein. Dies entspricht der Regel 3) in der von K. Hader
aufgestellten
``musikalischen Orthographie''(\lit{\hader}):

{\leftskip=30pt \rightskip=\leftskip \sl
Musikbeschriebene Notensysteme
ohne Schl"ussel und Tonart sind unbrauchbar.\par}
\item{V2)}Die Vorgaben zu Beginn des Musikst"uckes gelten f"ur das
gesamte Musikst"uck (\lit{\ziegen, S. 58}).
\item{V3)} Die Taktart soll
zu Beginn des Musikst"uckes angezeigt werden und
zwar direkt nach Notenschl"ussel und Tonart.
\item{V4)} Wechsel: Jeder Wechsel von Notenschl"ussel, Tonart oder
Taktart mu\3 im Notenbild angezeigt werden.

\item{a)}Ein Taktwechsel kann
nur zu Beginn eines neuen Taktes erfolgen. Meist steht die ge"anderte
Taktangabe nach dem Taktstrich vor der ersten Note. Beginnt eine neue
Zeile mit Taktwechsel, so wird dies zus"atzlich am Ende der
vorhergehenden Zeile vermerkt. Bei h"aufigem Taktwechsel kann die
"Anderung, um Platz zu sparen, auch "uber dem System angegeben
werden, wobei kein zus"atzlicher horizontaler Raum ben"otigt wird.
\item{}
Bei regelm"a\3ig wiederholtem Taktwechsel braucht das Kennzeichen nicht
in jedem Takt erneut zu erfolgen. Die wechselnden Taktangaben k"onnen
einmalig zu Beginn angegeben werden (\lit{\ziegen}).
\Beispiel
{\parindent\iindent
\small
\beginsong
\vio\G\meter2/8\meter3/4%
\group{\\{\a{-1}}\\{\a0}\\{\a1}}{\\{-1}\\{0}\\{1}}\ubeam13\go\|%
\group{\\{\v{2}}\\{\v{-1}}}
{\\{1}\\{-1}}\lslur12\go\|\go\|\v2\.1\a3\v4\|\h2\v{-1}\|
\group{\\{\v2}\\{\v{-1}}}
{\\{1}\\{-1}}\lslur12\go\|\go\|\v2\.1\a3\v4\=%
\endsong
}
\endBeispiel
\vskip -1cm

\item{b)} Ein Wechsel der Tonart kann nur am Anfang eines Taktes
angegeben werden. Dabei mu\3 die vorher g"ultige Tonart zun"achst
``aufgel"ost'' und die neue angegeben werden.
\Beispiel
{\hsize5cm\advance\hsize2\iindent\parindent=2\iindent
\loose
\beginsong
\vio\Es\hskip20pt\E\hskip20pt\hfill
\endsong}
\endBeispiel
\vskip -1cm
\item{}
Ein Tonartwechsel am Anfang einer neuen Zeile mu\3 zus"atzlich am Ende
der vorangehenden Zeile notiert werden.
\item{c)} F"ur den Wechsel des Notensch"ussels gelten die gleichen
Regeln wie unter b), jedoch kann ein Wechsel auch innerhalb des Taktes
vorkommen. In diesem Fall wird nur dann zus"atzlich horizontaler Raum
bereitgestellt, wenn  nicht gen"ugend Freiraum von der vorangehenden Note
zur Verf"ugung steht. (\lit{\gomb})


\item{d)} Beim Satz von Akkoladen gilt ein Wechsel von Taktart und
Tonart
global f"ur alle Systemzeilen, w"ahrend der Notensch"usselwechsel sich
nur lokal auf eine Zeile bezieht.
\item{e)} Die zur Kennzeichnung des Notenschl"usselwechsels
verwendeten
Notensch"ussel innerhalb einer Zeile sind normalerweise etwas kleiner
als am Zeilenanfang. Bei Wechsel des Notenschl"ussels "andert sich
zugleich die Position der Versetzungszeichen in der Vorzeichnung.
{\Beispiel
\hsize8cm
\advance\hsize2\iindent\parindent=2\iindent
\beginsong
\vio\C  \hskip20pt\|\v2 \ \setbox\hunkbox\hbox{\music\char\hex48}%
\|\group{\\{\a1}\\{\a1}\\{\a1}\\{\a1}}
{\\{1}\\{1}\\{1}\\{1}}\ubeam14\go\setbox\hunkbox\hbox{%
\music\char\hex4A}\|\hskip10pt\hfill
\endsong\offinterlineskip
\parskip0pt
\endBeispiel}
\vskip -1cm
\subsubheading{Taktstriche}
\item{R1)} Taktstriche gliedern den musikalischen Ablauf im Notenbild.
\item{R2)} Im einstimmigen Satz befindet sich am Zeilenanfang kein
Taktstrich, im Satz von Akkoladen   werden die einzelnen Systeme unter
Ber"ucksichtigung der Instrumentengruppen in Partituren
durchgezogen (\lit{\ziegen, \defi{44}f}).
\item{R3)} Gr"o\3ere Abschnitte werden durch \disp{Doppelstriche}
( \dbl\ ),
z.B. bei Tonartwechsel, voneinander getrennt. Das Ende
eines Musikst"uckes wird durch \disp{Schlu\3striche} ( \gleich\ )
angezeigt (\lit{\ziegen, \defi{46}}).
\item{R4)} Soll ein Abschnitt wiederholt werden, so wird dies durch
Wiederholungszeichen angezeigt \hfill\break( \lrepeat \dots
\lrrepeat\dots\rrepeat\ ). Weicht beim Wiederholen der Schlu\3
ab, so wird dies durch \disp{K"asten} vermerkt
( \vbox{{\offinterlineskip \dimen3=\ht\strutbox\advance\dimen3-0.2pt
\hbox to 40pt{\strut \vrule depth-3pt\rlap{1.}%
\leaders\hrule height \ht\strutbox depth-\dimen3\hfill\vrule depth-3pt}
\kern-3pt
\hbox to 40pt{\strut \vrule \hfill \dots\hfill:\kern2pt\vrule}}}\kern2pt
\vbox{{\offinterlineskip \dimen3=\ht\strutbox\advance\dimen3-0.2pt
\hbox to 40pt{\strut \vrule depth-3pt\rlap{2.}%
\leaders\hrule height \ht\strutbox depth-\dimen3\hfill}\kern-3pt
\hbox to 40pt{\strut \vrule width 2pt\hfill \dots\hfill           }}} )

Eine weitere Strukturierung wird erreicht durch sogenannte
\disp{Orientierungsziffern} oder \disp{Buchstaben} \boxed1,
\ball1%
oder \boxed{\rm A}, die sich oberhalb eines Taktstriches befinden. Ebenso
werden Takte gez"ahlt und die Taktzahl am Anfang der Zeile vermerkt.

Eine Notenzeile kann nur nach einem Taktstrich umbrochen werden.
Ausnahmen ergeben sich, falls die einzelnen Texte sehr gro\3en
horizontalen Raum beanspruchen und daher kein gleichm"a\3iger
Zei\-len\-umbruch erzielt werden kann. In einem solchen Fall darf in der
Taktmitte umbrochen werden.
\Bemerkung Da die Taktstriche im laufenden Text angegeben werden, wird
ihre genaue Positionierung in Kapitel {\advance\chap1 \the\chap}
beschrieben. \endBemerkung
\subheading{Ausf"uhrung des Absteckens}
\subsubheading{Einf"ugen von zus"atzlichem Notenschriftmaterial}
Das erste zu l"osende Problem ist das Einf"ugen von zus"atzlichem
Notenschriftmaterial in den fortlaufenden Text.
\item{1)} Jede Zeile ist mit  Notenlinien zu unterlegen.
\item{2)} F"ur Notenschl"ussel und Vorzeichnung am Zeilenanfang ist
horizontaler Raum bereitzuhalten.
\item{3)} Der Wechsel von Notenschl"ussel, Vorzeichnung und Taktart am
Zeilenanfang ist am Ende der vorherigen Zeile nochmals anzuzeigen.

Der Zeilenumbruchalgorithmus (s. {\advance\chap-1 \the\chap.3}\XX)
arbeitet so, da\3 mit dem Umbruch erst nach der Feststellung des
Absatzendes begegonnen wird. Dann gibt es jedoch keine
M"oglichkeit, anschlie\3end noch zus"atzlichen Text einzuf"ugen.

\subsubsubheading{Verfahren 1}
Das \TeX-Kommando |\vadjust{|\<text>|}| erm"oglicht es, Text aus einer
horizontalen Liste {(s. \advance\chap-1 \the\chap.4\XX)}
in die "au\3ere vertikale Liste zu "ubertragen.
Der Text wird erst nach Abarbeitung des Zeilenumbruchalgorithmus
hinter der Zeile eingef"ugt, in der er aufgetreten ist. Bei konstanter
Zeilentiefe kann man durch negativen vertikalen Kern zur
Zeilengrundlinie zur"uckkehren und den Text z.B. an den Zeilenanfang
setzen. "Ubertr"agt man in jeder Zeile den aktuellen Notenschl"ussel und
die aktuelle Vorzeichnung sowie das Liniensystem mit |\vadjust| in die
vertikale Liste, so k"onnen diese Zeichen nachtr"aglich noch eingef"ugt
werden.

Bei Verwirklichung dieses Verfahrens treten folgende Probleme
auf:
\item{1)} Das Makro |\vadjust| mu\3 so eingesetzt werden, da\3 es in jeder
Zeile mindestens einmal vorkommt, unabh"angig von der Zeilenl"ange.
\item{2)} Taucht das Makro |\vadjust| mehrfach in einer Zeile auf, so
wird nach obigem Schema die Vorzeichnung mehrfach "ubereinander\-gesetzt.
Bei Notenschl"ussel- oder Tonartwechsel innerhalb der Zeile werden so
verschiedene Zeichen "ubereinandergesetzt.
\item{3)} F"ur Notenschl"ussel und Vorzeichnung mu\3 am Anfang jeder
Zeile gen"ugend horizontaler Raum freigelassen werden.
\medskip
Die erste Forderung  kann erf"ullt werden, indem man die
"Ubertragung in Verbindung mit dem Setzen eines Taktstriches vornimmt.
Da in konventioneller Musik in jeder Zeile mindestens ein Taktstrich
vorkommt, ist die aufgestellte Forderung hier erf"ullt.

Das mehrfache "Ubereinandersetzen
 kann nur verhindert werden, indem man ein Verfahren
sucht, das nur das erste der durch |\vadjust| in die vertikale Liste
hinter der jeweiligen "ubertragen Elemente ausw"ahlt und setzt. Dieses
Verfahren kann jedoch nicht mit \TeX\ allein realisiert werden, da es
keine M"oglichkeit gibt, das erste Element nach der Box mit  dem
Zeileninhalt zu erkennen. Es gibt ein \TeX-Kommando (|\special|), das
Informationen  an das Treiber-Programm  des jeweiligen Ausgabeger"ates
"ubergibt, welches diese abh"angig von der Zeilen- und Spaltenposition
auf dem Notenblatt auswerten und entscheiden kann, welche Zeichenfolge
gesetzt werden soll. Dieses Verfahren ist jedoch kompliziert und macht
das Notensatzsystem vom Ausgabeger"at abh"angig.

Das Einf"ugen von freiem Raum am Zeilenanfang
kann mittels des Zeilenumbruchalgorithmus einfach
gel"ost werden. Der Glue, der hinter jeder Note gesetzt wird, mu\3 so
gestaltet werden, da\3 bei Zeilen\-%
umbruch jeweils die Breite des aktuellen
Notenschl"ussels und der Vorzeichnung freigelassen wird. Eine
M"oglichkeit, dies zu erreichen, wurde bereits in {\advance\chap-1
\the\chap.3.6\XX} gezeigt.
\Bemerkung \item{1)} Wie in Kapitel {\advance\chap-1 \the\chap}
beschrieben, ist es m"oglich,
hinter jedem Zeichen eine Penalty einzuf"ugen, um den Zeilenumbruch vor
einem
Notenschl"ussel und Vorzeichenwechsel zu unterbinden, aber den Umbruch
danach zu f"ordern, d.h. einen Wechsel am Zeilenende zu  bevorzugen.
Man erh"alt so die neue Vorzeichnung oder den neuen Notenschl"ussel am
Zeilenende und am Anfang der neuen Zeile. Die Verdopplung der Taktangabe
bei Wechsel l"a\3t sich jedoch mit diesem Verfahren
nicht erreichen, da die
Taktangabe nicht an jedem Zeilenanfang angegeben werden mu\3.
\item{2)} Die angegebene L"osung ist nicht befriedigend, da sie vom
Ausgabeger"at abh"angig ist, au\3erdem die Tiefe der Zeilen konstant
sein mu\3 und nicht alle oben genannten Forderungen erf"ullt werden.

\subsubsubheading{Verfahren 2}
Eine zweite M"oglichkeit, das Problem zu l"osen, ist durch das
|\discretionary|-Komman\-do (s. {\advance\chap-1 \the\chap.3.1%
}\XX) gegeben.
Dieses Kommando bewirkt, da\3
 im Fall des Zeilenumbruches am Zeilenende der \tex{pre-break text} und
am Anfang der neuen Zeile der \tex{post-break text} eingef"ugt wird,
andernfalls wird der  \tex{no-break text} gesetzt. Jedoch d"urfen
die Texte nur Elemente vom Typ Box, Kern oder Penalty enthalten. Ein
Erweitern oder Verringern der Abst"ande in diesem Text ist also nicht
 m"oglich. Dies ist auch zur L"osung des Problems nicht notwendig.

\Beispiel
\item{}
Im normalen Textsatz ist      die Kontrollsequenz
|\-| gleichbedeutend mit
 \hbox{|\discretionary{-}{}{}|}. Wird |\-| an den Trennstellen eines
Wortes eingef"ugt, so wird also im Falle des Zeilenumbruches an einer
dieser Stellen ein Trennstrich - eingef"ugt, andernfalls nichts.
\item{}
Um eine
Trennung des Wortes \disp{backen} zu erm"oglichen, kann
|ba\discretionary{k-}{k}{ck}en| notiert werden.
Im Falle eines Zeilenumbruches wird
|ck| zu |k-k|. Mit diesem Verfahren k"onnen alle Forderungen, die durch
die Satz- und Notationsregeln zur Gestaltung der ``"au\3eren Form''
 gegeben
sind, erf"ullt werden. Dazu ist es jedoch notwendig, die den
Zeilenumbruch bestimmenden Parameter so zu "andern,
da\3 ein Zeilenumbruch
nur an einem \tex{discretionary}-Kommando stattfinden kann. Dies kann
erreicht werden, indem man sowohl |\hyphenpenalty| und
|\exhyphenpenalty| als auch den zus"atzlichen Kosten
|\finalhyphendemerits| und |\doublehyphendemerits|,  die in
Abh"angigkeit von der Umgebung der Zeile addiert werden, jeweils
negative Werte zuweist, so da\3 ein Zeilenumbruch an einem
\tex{discretionary}-Kommando eine niedrige Badness erzeugt.

\Bemerkung
\item{1)} Auch in diesem Fall ist es nicht vorteilhaft, neben den
Trennungsm"oglichkeiten an einem Taktstrich zus"atzliche
Trennungsm"oglichkeiten innerhalb eines Taktes, z.B. nach einer
Note, anzugeben, jedoch aus einem anderen Grund als bei der ersten
L"osungsm"oglichkeit. \par
\item{}Da der Wert von |\hyphenpenalty| sich nicht
"andert, w"urden Umbruchpunkte innerhalb eines Taktes genauso
bewertet wie Umbruchpunkte am Taktstrich.
Es ist also keine Unterscheidung mehr m"oglich. Dies widerspricht jedoch
der Forderung, da\3 ein
Bruch der Zeile am Taktstrich in jedem Fall zu
bevorzugen ist. Aus diesem Grund wurde das Notensatzsystem so
konzipiert, da\3 kein Bruch innerhalb eines Taktes stattfinden kann.
Ist dies dennoch erw"unscht, so k"onnen zus"atzlich
Umbruchm"oglichkeiten durch Angabe von |\-| z.B. in der Taktmitte
angegeben werden.

\item{2)} Mit diesem Verfahren k"onnen die Linien erst in der zweiten
Zeile unterlegt werden. Die erste Zeile mu\3 daher gesondert bearbeitet
werden. Dies ist kein Nachteil, denn dieses Vorgehen erm"oglicht es,
einen Einzug der ersten Zeile zu ber"ucksichtigen. Dies wird im
n"achsten Abschnitt n"aher beschrieben.
\endBeispiel

\subsubheading{Konstruktionen}
 Im folgenden werden die Konstruktionen f"ur das Liniensystem sowie den
Takt-, Tonart- und Notenschl"usselwechsel beschrieben.

\subsubsubheading{Konstruktion der Notenlinien}
Eine Notenlinie wird durch eine schwarz ausgef"ullte Box,
          in der \TeX-Terminologie
mit \disp{Rule} bezeichnet, dargestellt.
 Die H"ohe der Rule entspricht der St"arke einer d"unnen Linie
 ({\advance\chap-2 \the\chap.3.3}\XX).
Die Breite wird durch die aktuellen
Seitenbreite (d.h. |\hsize|) gegeben, wobei die Breite in der ersten
Zeile um den Betrag des Einzuges (|\parindent|) verk"urzt ist.
F"unf dieser Linien werden in einem Abstand von einer Notenkopfh"ohe
untereinander gesetzt, d.h. in einer vertikalen Liste verarbeitet.

Da das Liniensystem nur unterlegt werden soll, darf es nicht in die
horizontale Berechnung eingehen. Dies kann wie in
{\advance\chap-1 \the\chap.2.2} \XX
beschrieben,
durch Erzeugen einer horizontalen Box der Breite 0\pt\ geschehen,
wobei das Liniensystem "uber den rechten Rand hinausragt.

Es ergibt sich so die folgende {Box-Glue-Kombination}:
\begindisplay
|\hbox to 0pt{\vbox{\hr\kern\nhh\hr\kern\nhh\hr\kern\nhh\hr|%
|\kern\nhh\hr}|,
\enddisplay
 wobei |\hr| die Rule |\hrule height|\<Zeilenst"arke>| depth
0pt width|\<Zeilenl"ange> bezeichnet.
\Bemerkung
Das Liniensystem ist so angelegt, da\3 die unterste Linie   mit
der Grundlinie der ganzen Zeile "ubereinstimmt ({\advance\chap-1
\the\chap.2.4}\XX).
Dies erschien bei der Konzeption des Notensatzsystems unter Verwendung
von \TeX\ g"unstiger. In anderen Notensatzsystemen, z.B. dem von Gourlay
(\lit{\gourlay})
wird jedoch die Mittellinie (dritte Linie) als Grundlinie
ausgezeichnet.

\subsubsubheading{Der Taktwechsel}
Zu unterscheiden ist zwischen den beiden Taktartnotationen:
\item{a)} Taktangabe innerhalb des Zeilensystems,
\item{b)} Taktangabe oberhalb des Systems.

Im Fall b) wird der Taktwechsel am Zeilenende nicht zus"atzlich
angek"undigt. Er soll deshalb hier nicht betrachtet werden.

Die Forderungen an die Taktangabe k"onnen leicht erf"ullt werden durch
das Kommando

|\discretionary{|\<Taktangabe>|}|
\par
\indent\hbox{}\hskip75pt
|{|\<Zeilensystem>\<Notenschl"ussel>\<Tonart>\<Taktangabe>|}|
\par
\indent\hbox{}\hskip75pt
|{|\<Taktangabe>|}|,

wobei \<Taktangabe> die Box bezeichnet, die die aktuelle Taktangabe
enth"alt. Entsprechendes gilt f"ur \<Zeilensystem> und \<Tonart>.

\subsubsubheading{Der Tonartwechsel}
Der Tonartwechsel kann auf "ahnliche Weise beschrieben werden. Jedoch
ist zu beachten, da\3 die vorher g"ultige Tonart aufgel"ost werden mu\3.
Dazu werden die Versetzungszeichen in zwei verschiedenen Token-Registern
gespeichert (s.\lit{\TeXbook, S.121 ff (Kap. 15)}), wobei das eine die
Versetzungszeichen  der aktuellen Tonart und das
andere die aktuelle Tonart mit den jeweiligen Aufl"osungszeichen
enth"alt.

Bei Tonartwechsel wird zun"achst nur das erste Register durch die neue
Tonart ersetzt, und nachdem der Doppelstrich, die ``aufgel"oste'' vorige
Tonart und die neue Tonart gesetzt wurden, das zweite Register durch die
aktuelle ``aufgel"oste'' Tonart ersetzt. \par
Die Forderungen, die an den
Tonartwechsel gestellt sind, werden dann durch das Kommando

|\discretionary{|\<Doppelstrich>\<aufgel"oste Tonart>\<neue Tonart>|}|
\par
\indent\hbox{}\hskip75pt
|{|\<Zeilensystem>\<Notenschl"ussel>\<neueTonart>|}|\hfil\break
\indent\hbox{}\hskip75pt
|{|\<Doppelstrich>\<aufgel"oste Tonart>\<neue Tonart>|}|\par

erf"ullt.

Gleichzeitig mu\3 die Definition der Kontrollsequenz |\-|,
  die den Zeilenumbruch nach einem
Taktstrich regelt, der neuen Tonart angepa\3t werden, und zwar in
\begindisplay
|\discretionary{}{|\<Zeilensystem>\<Notenschl"ussel>%
\<neue Tonart>|}{}|.
\enddisplay
\subsubsubheading{Der Notenschl"usselwechsel}
Im Unterschied zu Taktart und Tonart besitzt der Notensch"ussel im
Zeileninneren eine andere Gr"o\3e als am Zeilenrand, es mu\3 also ein
anderes Zeichen verwendet werden. Au\3erdem mu\3 nicht unbedingt
zus"atzlicher horizontaler Raum zur Verf"ugung gestellt werden. Aus
diesem Grund wird der Notenschl"ussel im Zeileninneren behandelt wie die
Versetzungszeichen vor einer Note im Taktinneren. Dies soll im n"achsten
Kapitel n"aher erl"autert werden.

Wie bei der Tonart wird auch der Notenschl"ussel in einem Token-Register
gespeichert, das bei Schl"ussel\-wechsel ausgetauscht wird. Es ist zu
beachten, da\3 ein Schl"usselwechsel eine Umpositionierung der
Versetzungszeichen  der Vorzeichnung notwendig macht.

\Beispiel
%Versetzungszeichen
{\hsize7cm
\advance\hsize2\iindent\parindent=2\iindent
\beginsong
\vio\Es\hskip20pt \E\hskip20pt\bass\Es\ \hfill
\=\endsong}
\endBeispiel
\vskip-1cm

\Bemerkung

\item{1)} Da nur Taktart und Tonart einen \tex{pre-break text}
ben"otigen,
kann eine verfeinerte Bewertung erfolgen, indem man |\exhyphenpenalty|
und |\hyphenpenalty| verschiedene Werte zuweist, um einen Umbruch bei
Takt- oder Tonartwechsel zu bevorzugen.


\item{2)} Die genauen Definitionen sind im Format zu finden.
\endBemerkung

\subsubheading{Abstecken}

Das Problem des gleichm"a\3igen Absteckens kann mit \TeX\ auf einfache
Weise gel"ost werden, indem man nach dem in \XX
{\advance\chap-1 \the\chap.2.4} angegebenen
Verfahren den \tex{Interline Glue} festlegt.
Nach \XX \the\chap.1.2
betr"agt die Berechnungsgrundlage f"ur den Abstand
zwischen zwei Liniensystemen zwei Rastralh"ohen. Dieser Wert wird nun
f"ur den nat"urlichen Abstand des Parameters |\baselineskip| angesetzt.

F"ur den Parameter |\lineskiplimit| ist eine halbe Rastralh"ohe
vorgesehen. Dieser Wert wird auch f"ur den nat"urlichen Abstand von
|\lineskip| festgelegt.
W"ahlt man nun als Stauchm"oglichkeit f"ur |\baselineskip| und
|\lineskip| den gleichen Wert, so ist gew"ahrleistet, da\3 die Zeilen
sich bei maximaler Stauchung nicht "uberschneiden k"onnen. Die
Abst"ande k"onnen bis zu einer Rastralh"ohe vergr"o\3ert werden.

Gebe  der Parameter    |\staffheight|
 die Rastralh"ohe an. Dann
ergibt sich  f"ur die {Interline-Glue}-Parameter:
\begindisplay
|\baselineskip = 3 \staffheight plus \staffheight minus 1/2 \staffheight|
\cr
|\lineskiplimit = 1/2 \staffheight|
\cr
|\lineskip = 1/2 \staffheight plus \staffheight minus 1/2 \staffheight|
\enddisplay

Dieser Interline Glue wurde auch f"ur die
im Anhang D gesetzten  Beispiele verwendet.

\vfill\eject

