\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{|\|}| 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|\| depth 0pt width|\ 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{|\|}| \par \indent\hbox{}\hskip75pt |{|\\\\|}| \par \indent\hbox{}\hskip75pt |{|\|}|, wobei \ die Box bezeichnet, die die aktuelle Taktangabe enth"alt. Entsprechendes gilt f"ur \ und \. \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{|\\\|}| \par \indent\hbox{}\hskip75pt |{|\\\|}|\hfil\break \indent\hbox{}\hskip75pt |{|\\\|}|\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{}{|\\% \|}{}|. \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