]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/de/learning/fundamental.itely
Docs: remove implicit relative from translations; issue 4731
[lilypond.git] / Documentation / de / learning / fundamental.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
2
3 @ignore
4     Translation of GIT committish: e5a609e373eae846857f9a6d70a402a3d42b7d94
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes.
9 @end ignore
10
11 @c \version "2.19.22"
12 @c Translators: Till Paala, Reinhold Kainhofer
13
14 @node Grundbegriffe
15 @chapter Grundbegriffe
16 @translationof Fundamental concepts
17
18 Nachdem im Tutorial gezeigt wurde, wie aus einfachen Text-Dateien
19 wunderschön formatierte Musiknoten erzeugt werden können, stellt
20 dieses Kapitel die Konzepte und Techniken vor, wie auch komplexere
21 Partituren erstellt werden können.
22
23 @menu
24 * Wie eine LilyPond-Eingabe-Datei funktioniert::
25 * Voice enthält Noten::
26 * Kontexte und Engraver::
27 * Erweiterung der Beispiele::
28 @end menu
29
30 @node Wie eine LilyPond-Eingabe-Datei funktioniert
31 @section Wie eine LilyPond-Eingabe-Datei funktioniert
32 @translationof How LilyPond input files work
33
34 Das LilyPond Eingabeformat hat eine ziemlich freie Form, so dass
35 für erfahrene Benutzer viel Freiheit besteht, die Struktur ihrer
36 Quelldateien anzulegen.  Für Neulinge kann diese Flexibilität aber
37 erst einmal verwirrend sein.  In diesem Kapitel soll darum ein Teil
38 dieser Strukturen dargestellt werden, vieles aber zur Vereinfachung
39 auch weggelassen werden.  Für eine komplette Beschreibung des Eingabeformats
40 siehe @ruser{Die Dateistruktur}.
41
42 Die meisten Beispiele in diesem Handbuch sind kleine Schnipsel, wie
43 etwa dieser:
44
45 @example
46 c4 a b c
47 @end example
48
49 Wie hoffentlich bekannt ist, lässt sich solch ein Schnipsel nicht
50 in dieser Form übersetzen.  Diese Beispiele sind also nur Kurzformen
51 von wirklichen Beispielen.  Sie müssen wenigstens zusätzlich in
52 geschweifte Klammern gesetzt werden.
53
54 @example
55 @{
56   c4 a b c
57 @}
58 @end example
59
60 Die meisten Beispiele benutzen auch den @code{\relative c'}-Befehl.
61 Der ist nicht nötig, um die Dateien zu übersetzen, aber in den meisten
62 Fällen sieht der Notensatz seltsam aus, wenn man den Befehl
63 weglässt.
64
65 @lilypond[quote,fragment,ragged-right,verbatim]
66 \relative {
67   c''4 a b c
68 }
69 @end lilypond
70
71 Eine komplette Definition des Eingabeformats findet sich
72 im Kapitel @ruser{Die Dateistruktur}.
73
74 @menu
75 * Einführung in die Dateistruktur von LilyPond::
76 * Score ist ein (einziger)  zusammengesetzter musikalischer Ausdruck::
77 * Musikalische Ausdrücke ineinander verschachteln::
78 * Über die Nicht-Schachtelung von Klammern und Bindebögen::
79 @end menu
80
81 @node Einführung in die Dateistruktur von LilyPond
82 @subsection Einführung in die Dateistruktur von LilyPond
83 @translationof Introduction to the LilyPond file structure
84
85 @cindex Eingabeformat
86 @cindex Dateistruktur
87 @cindex Struktur, Datei
88
89 Ein grundlegendes Beispiel einer Eingabedatei für LilyPond lautet:
90
91 @example
92 \version @w{"@version{}"}
93
94 \header @{ @}
95
96 \score @{
97   @var{...zusammengesetzter Musik-Ausdruck...}  % Die gesamten Noten kommen hier hin!
98   \layout @{ @}
99   \midi @{ @}
100 @}
101 @end example
102
103 @noindent
104 Aufgrund der Flexibilität von LilyPond gibt es viele Variationen dieses
105 Schemas, aber dieses Beispiel dient als einfacher Ausgangspunkt.
106
107 @funindex \book
108 @funindex \score
109 @funindex book
110 @funindex score
111 @cindex book
112 @cindex score
113
114 Bisher hat noch keines der Beispiele den @code{\score@{@}}-Befehl
115 benutzt, da Lilypond derartige zusätzliche Befehle automatisch
116 bei Bedarf einfügt, wenn die Eingabedatei eine einfache Struktur
117 hat.
118
119 Sehen wir uns als ein solches einfaches Beispiel an:
120
121 @example
122 \relative @{
123   c''4 a d c
124 @}
125 @end example
126
127 @noindent
128 Im Hintergrund kommen hier noch einige Ebenen dazu: LilyPond-Code
129 in der obigen Form ist in Wirklichkeit eine Abkürzung.  Auch wenn man so
130 Dateien schreiben kann und sie auch korrekt gesetzt werden, heißt
131 der vollständige Code, der hier gemeint ist, eigentlich:
132
133 @example
134 \book @{
135   \score @{
136     \new Staff @{
137       \new Voice @{
138         \relative @{
139           c''4 a b c
140         @}
141       @}
142     @}
143     \layout @{ @}
144   @}
145 @}
146 @end example
147
148 @noindent
149 Mit anderen Worten:  Wenn die Eingabedatei einen einfachen Musik-Ausdruck
150 enthält, wird LilyPond die Datei so interpretieren, als ob dieser
151 Ausdruck in den oben gezeigten Befehlen eingegeben wurde.  Diese nötige
152 Struktur wird automatisch im Speicher beim Aufruf von LilyPond erzeugt,
153 ohne dass der Benutzer davon etwas bemerkt.
154
155 @cindex Implizite Kontexte
156 @cindex Kontexte, implizit
157
158 @strong{Ein Wort der Warnung ist jedoch angebracht!} Viele der Beispiele
159 in der Dokumentation von LilyPond lassen die @code{\new Staff} und @code{\new Voice}
160 Befehle zur Erzeugung einer Notenzeile und einer Stimme (beides ist in
161 LilyPond ein sogenannter Kontext) bewusst aus,
162 damit sie implizit von LilyPond im Speicher erzeugt werden.
163 Für einfache Dokumente funktioniert das im Allgemeinen sehr gut, für
164 komplexere Partituren können dadurch aber unerwartete Ergebnisse
165 entstehen, teilweise sogar unerwartete leere Notenzeilen.  Um
166 die entsprechenden Kontexte in diesem Fall explizit zu erzeugen,
167 siehe @ref{Kontexte und Engraver}.
168
169 @warning{Wenn mehr als ein paar Zeilen an Musik eingegeben werden,
170 empfiehlt es sich, die Notenzeilen und die Stimmen immer explizit
171 mit @code{\new Staff} und @code{\new Voice} zu erzeugen.}
172
173 Im Moment wollen wir aber zu unserem ersten Beispiel zurückkehren und
174 nur den @code{\score}-Befehl näher betrachten.
175
176 Eine Partitur (@code{\score}) muss immer mit einem musikalischen Ausdruck
177 beginnen.  Das ist letztendlich alle Musik, angefangen bei einer
178 einzelnen
179 Note bis hin zu einer riesigen Partitur mit vielen Notensystemen
180 (bezeichnet hier durch @code{GrandStaff}):
181
182 @example
183 @{
184   \new GrandStaff <<
185     @var{...hier die gesamte Partitur...}
186   >>
187 @}
188 @end example
189
190 @noindent
191 Da sich alles innerhalb der geschweiften Klammern @code{@{ ... @}}
192 befindet, wird es wie ein einziger musikalischer Ausdruck behandelt.
193
194
195 Ein @code{\score} auch andere Dinge enthalten, wie etwa
196
197 @example
198 \score @{
199   @{ c'4 a b c' @}
200   \layout @{ @}
201   \midi @{ @}
202   \header @{ @}
203 @}
204 @end example
205
206 @funindex \header
207 @funindex \layout
208 @funindex \midi
209 @funindex header
210 @funindex layout
211 @funindex midi
212 @cindex header
213 @cindex midi
214 @cindex Layout
215 @cindex Kopfzeile
216
217 @noindent
218 Wie man sieht, sind die drei Befehle @code{\header}, @code{\layout} und
219 @code{\midi} von spezieller Natur: Im Gegensatz zu vielen Anderen Befehlen,
220 die auch mit einem @code{\} beginnen, liefern sie @emph{keinen} Musikausdruck
221 und sind auch nicht Teil eines musikalischen Ausdrucks.  Daher können sie
222 sowohl innerhalb eines @code{\score}-Blocks als auch außerhalb plaziert
223 werden.  Tatsächlich werden einige dieser Befehle meist außerhalb des
224 @code{\score}-Blocksgesetzt, zum Beispiel findet sich der @code{\header}
225 sehr oft oberhalb der @code{\score}-Umgebung.  Das
226 funktioniert genauso gut.
227
228 Zwei bisher noch nicht aufgetauchte Befehle sind
229 @code{\layout @{ @}} und @code{\midi @{@}}.  Wenn sie in einer
230 Datei vorkommen, führt dies dazu, dass Lilypond eine druckfähige PDF-Datei
231 bzw. eine MIDI-Datei erzeugt.  Genauer beschrieben werden sie im
232 Benutzerhandbuch -- @ruser{Partiturlayout} und
233 @ruser{MIDI-Dateien erstellen}.
234
235 @cindex Partituren, mehrfache
236 @cindex book-Abschnitte, implizit
237 @cindex implizite book-Umgebung
238 @funindex \book
239 @funindex book
240
241 Ihr LilyPond Code kann auch mehrere @code{\score}-Blöcke enthalten.
242 Jeder davon wird als eigenständige Partitur interpretiert, die
243 allerdings alle in dieselbe Ausgabedatei plaziert werden.
244 Ein @code{\book}-Befehl ist nicht explizit notwendig -- er wird
245 implizit erzeugt.  Wenn jedoch für jeden @code{\score}-Block in einer
246 einzigen @file{.ly}-Datei eine eigene Ausgabe-Datei erzeugt werden soll,
247 dann muss jeder dieser Blöcke in einen eigenen @code{\book}-Block
248 gesetzt werden: Jeder @code{\book}-Block erzeugt dann eine
249 eigene Ausgabedatei.
250
251 Zusammenfassung:
252
253 Jeder @code{\book}-Block erzeugt eine eigene Ausgabedatei (z.B. eine
254 PDF-Datei).  Wenn Sie keinen derartigen Block explizit angegeben haben,
255 setzt LilyPond den gesamten Dateiinhalt innerhalb eines einzigen
256 impliziten @code{\book}-Blocks.
257
258 Jeder @code{\score}-Block beschreibt ein eigenständiges Musikstück
259 innerhalb des @code{\book}-Blocks.
260
261 @cindex Layout-Umgebung, Platzierung
262 @cindex Platzierung von layout-Umgebung
263
264 Jeder @code{\layout}-Block wirkt sich auf den @code{\score}- oder
265 @code{\book}-Block aus, in dem er auftritt.  So wirkt z.B. ein
266 @code{\layout}-Block innerhalb eines @code{\score}-Blocks nur auf
267 diesen einen Block und seinen gesamten Inhalt, ein @code{\layout}-Block
268 außerhalb eines @code{\score}-Blocks (und daher innerhalb des implizit
269 erzeugten oder explizit angegebenen @code{\book}-Blocks) jedoch auf
270 alle @code{\score}-Blocks innerhalb dieses @code{\book}-Blocks.
271
272 Nähere Details finden sich im Abschnitt @ruser{Mehrere Partituren in einem Buch}.
273
274 @cindex Variablen
275 @cindex Bezeichner
276
277 Eine gute Möglichkeit zur Vereinfachung sind selbst definierte Variablen, wie auch gezeigt in @ref{Stücke durch Bezeichner organisieren}.
278 Alle Vorlagen verwenden diese Möglichkeit:
279
280 @example
281 melodie = \relative @{
282   c'4 a b c
283 @}
284
285 \score @{
286   @{ \melodie @}
287 @}
288 @end example
289
290 Wenn LilyPond diese Datei analysiert, nimmt es den Inhalt
291 von @code{melodie} (alles nach dem Gleichheitszeichen) und
292 fügt ihn immer dann ein, wenn ein @code{\melodie}
293 vorkommt.  Die Namen sind frei wählbar, die Variable kann genauso
294 gut  @code{melodie}, @code{GLOBAL}, @code{rechteHandKlavier},
295 oder @code{foofoobarbaz} heißen.
296 Als Variablenname kann fast jeder beliebige Name benutzt werden,
297 allerdings dürfen nur Buchstaben vorkommen (also keine Zahlen, Unterstriche,
298 Sonderzeichen, etc.) und er darf nicht wie ein LilyPond-Befehl
299 lauten.  Für mehr Information siehe
300 @ref{Tipparbeit durch Variablen und Funktionen ersparen}.  Die genauen
301 Einschränkungen sind beschrieben in @ruser{Die Dateistruktur}.
302
303
304 @seealso
305 Eine vollständige Definition des Eingabeformats findet sich in
306 @ruser{Die Dateistruktur}.
307
308
309 @node Score ist ein (einziger)  zusammengesetzter musikalischer Ausdruck
310 @subsection Score ist ein (einziger)  zusammengesetzter musikalischer Ausdruck
311 @translationof Score is a (single) compound musical expression
312
313 @funindex \score
314 @funindex score
315 @cindex score
316 @cindex Partitur
317 @cindex Musikstück
318 @cindex zusammengesetzter Musikausdruck
319 @cindex Musikausdruck, zusammengesetzter
320
321
322 Im vorigen Kapitel, @ref{Einführung in die Dateistruktur von LilyPond},
323 wurde die allgemeine Struktur einer LilyPond-Quelldatei
324 beschrieben.  Aber anscheinend haben wir die wichtigste
325 Frage ausgelassen, nämlich wie man herausfindet, was nach
326 dem @code{\score} geschrieben werden soll.
327
328 In Wirklichkeit ist das aber gar kein Geheimnis.  Diese
329 Zeile ist die Antwort:
330
331 @quotation
332 @emph{Eine Partitur fängt immer mit @code{\score} an, gefolgt
333 von einem einzelnen musikalischen Ausdruck.}
334 @end quotation
335
336 @noindent
337 Vielleicht wollen Sie noch einmal
338 @ref{Musikalische Ausdrücke erklärt} überfliegen.  In diesem
339 Kapitel wurde gezeigt, wie sich große musikalische Ausdrücke
340 aus kleinen Teilen zusammensetzen.  Noten können zu Akkorden
341 verbunden werden usw. Jetzt gehen wir aber in die andere Richtung
342 und betrachten, wie sich ein großer musikalischer Ausdruck
343 zerlegen lässt. Zur Einfachheit soll nur ein Sänger und Klavier
344 in unserem Beispiel eingesetzt werden.  Wir brauchen
345 keine Systemgruppe (StaffGroup), die einfach nur bewirkt,
346 dass die Systeme mit einer Klammer zusammengefasst werden; sie
347 wird also entfernt.  Wir @emph{brauchen} aber einen Sänger und ein Klavier.
348
349 @example
350 \score @{
351   @{
352     <<
353       \new Staff = "Sänger" <<
354       >>
355       \new PianoStaff = "Klavier" <<
356       >>
357     >>
358   @}
359   \layout @{ @}
360 @}
361 @end example
362
363 Hier wurden die Systeme (Staff) benannt: @qq{Sänger} und
364 @qq{Klavier}.  Das ist nicht direkt notwendig in diesem Fall,
365 aber es ist gut, sich diese Schreibweise anzugewöhnen, damit man
366 immer sofort erkennt, um welches System es sich handelt.
367
368 Zur Erinnerung: mit @code{<<} und @code{>>} werden Noten gleichzeitig
369 gesetzt.  Dadurch werden Vokalstimme und Klaviersysteme übereinander
370 ausgegeben.  Die @code{<< ... >>}-Konstruktion ist für das
371 Sänger-System nicht notwendig, wenn hier nur die Noten einer
372 einzigen Stimme eingefügt werden sollen, aber @code{<< ... >>}
373 anstelle von geschwungenen Klammern sind notwendig,
374 sobald mehr als eine Stimme oder etwa eine Notenstimme und
375 Gesangstext eingefügt werden sollen.  In unserem Fall soll eine
376 Stimme mit Gesangstext notiert werden, sodass die spitzen Klammern
377 benötigt werden.  Die Noten sollen erst später hinzugefügt werden,
378 hier also erstmal nur ein paar Platzhalternoten und Text.  Wenn
379 Sie sich nicht erinnern, wie man Gesangstext notiert, lesen
380 Sie noch einmal @code{\addlyrics} in @ref{Setting simple songs}.
381
382 @c KEEP LY
383 @lilypond[verbatim,quote,ragged-right]
384 \score {
385   <<
386     \new Staff = "Sänger" <<
387       \new Voice = "Singstimme" { c'1 }
388       \addlyrics { And }
389     >>
390     \new PianoStaff = "Klavier" <<
391       \new Staff = "oben" { }
392       \new Staff = "unten" { }
393     >>
394   >>
395   \layout { }
396 }
397 @end lilypond
398
399 Jetzt haben wir viel mehr Details.  Wir haben ein System (engl. staff)
400 für einen Sänger, in dem sich wieder eine Stimme (engl. voice)
401 befindet.  @code{Voice} bedeutet für LilyPond eine Stimme (sowohl
402 gesungen als auch gespielt) und evtl. zusätzlich einen Text.  Zusätzlich
403 werden zwei Notensysteme für das Klavier mit dem Befehl @code{\new
404 PianoStaff} gesetzt.  @code{PianoStaff} bezeichnet die Piano-Umgebung (etwa
405 durchgehende Taktstriche und die geschweifte Klammer am Anfang), in der
406 dann wiederum zwei eigene Systeme ("oben" für die rechte Hand und
407 "unten"
408 für die linke) erstellt werden, auch wenn das untere System noch
409 einen Bassschlüssel erhalten muss.
410
411 Jetzt könnte man in diese Umgebung Noten einfügen.  Innerhalb der
412 geschweiften Klammern neben @code{\new Voice = "Singstimme"}
413 könnte man
414
415 @example
416 \relative @{
417   r4 d''8\noBeam g, c4 r
418 @}
419 @end example
420
421 @noindent
422 schreiben.  Aber wenn man seine Datei so direkt schreibt, wird
423 der @code{\score}-Abschnitt sehr lang und es wird ziemlich schwer zu
424 verstehen, wie alles zusammenhängt.  Darum bietet es sich an, Bezeichner
425 (oder Variablen) zu verwenden.  Sie wurden zu Beginn des vorigen
426 Abschnitts erklärt, erinnern Sie sich?  Damit wir sicher gehen
427 können, dass der Inhalt der @code{text}-Variable als Gesangstext
428 interpretiert wird, wird ihm @code{\lyricmode} vorangesetzt.  Wie
429 @code{\addlyrics} wird hiermit in den Eingabemodus für Gesangstext
430 gewechselt. Ohne diesen Befehl würde LilyPond versuchen, den Inhalt
431 der Variable als Noten zu interpretieren und dabei eine Menge
432 Fehler produzieren. (Einige andere Eingabemodi sind außerdem noch
433 verfügbar, siehe @ruser{Input modes}.)
434
435 Also haben wir, wenn wir ein paar Noten und einen Bassschlüssel
436 für die linke Hand hinzufügen, folgendes Beispiel:
437
438 @c KEEP LY
439 @lilypond[verbatim,quote,ragged-right]
440 melodie = \relative { r4 d''8\noBeam g, c4 r }
441 text    = \lyricmode { And God said, }
442 oben    = \relative { <g' d g,>2~ <g d g,> }
443 unten   = \relative { b,2 e }
444
445 \score {
446   <<
447     \new Staff = "Sänger" <<
448       \new Voice = "Singstimme" { \melodie }
449       \addlyrics { \text }
450     >>
451     \new PianoStaff = "Klavier" <<
452       \new Staff = "oben" { \oben }
453       \new Staff = "unten" {
454         \clef "bass"
455         \unten
456       }
457     >>
458   >>
459   \layout { }
460 }
461 @end lilypond
462
463 Beim Schreiben (oder Lesen) einer @code{\score}-Umgebung
464 sollte man langsam und sorgfältig vorgehen.  Am besten fängt
465 man mit dem größten Gebilde an und definiert dann die darin
466 enthaltenen kleineren der Reihe nach.  Es hilft auch, sehr
467 genau mit den Einzügen zu sein, so dass jede Zeile, die
468 der gleichen Ebene angehört, wirklich horizontal an der
469 gleichen Stelle beginnt.
470
471
472 @seealso
473 Benutzerhandbuch: @ruser{Struktur einer Partitur}.
474
475
476 @node Musikalische Ausdrücke ineinander verschachteln
477 @subsection Musikalische Ausdrücke ineinander verschachteln
478 @translationof Nesting music expressions
479
480 @cindex Notenzeilen, temporäre
481 @cindex Ossia
482 @cindex temporäre Notenzeilen
483
484 Notenzeilen (die @q{Staff}-Kontexte) müssen nicht unbedingt gleich
485 zu Beginn erzeugt werden -- sie können auch zu einem späteren
486 Zeitpunkt eingeführt weden.  Das ist vor allem nützlich, um
487 @rglosnamed{ossia,Ossias} zu erzeugen.  Hier folgt ein kurzes Beispiel,
488 wie eine zusätzliche temporäre Notenzeile für nur drei Noten erzeugt
489 werden kann:
490
491 @lilypond[verbatim,quote,ragged-right]
492 \new Staff {
493   \relative {
494     r4 g'8 g c4 c8 d |
495     e4 r8
496     <<
497       { f8 c c }
498       \new Staff {
499         f8 f c
500       }
501     >>
502     r4 |
503   }
504 }
505 @end lilypond
506
507 @noindent
508 Wie man sieht, ist die Größe des Notenschlüssels dieselbe, wie sie
509 auch bei einer Schlüsseländerung auftritt -- etwas kleiner als
510 der Schlüssel am Beginn einer Notenzeile.   Dies ist normal für
511 Notenschlüssel, die innerhalb einer Notenzeile gesetzt werden.
512
513 @cindex Notenzeile, Positionierung
514 @cindex Positionierung einer Notenzeile
515
516 Der Ossia-Abschnitt kann auch oberhalb der Hauptnotenzeile
517 gesetzt werden:
518
519 @c KEEP LY
520 @lilypond[verbatim,quote,ragged-right]
521 \new Staff = "Hauptzeile" {
522   \relative {
523     r4 g'8 g c4 c8 d |
524     e4 r8
525     <<
526       { f8 c c }
527       \new Staff \with {
528         alignAboveContext = #"Hauptzeile"
529       }{ f8 f c }
530     >>
531     r4 |
532   }
533 }
534 @end lilypond
535
536 Dieses Beispiel benutzt den @code{\with}-Befehl, der später noch
537 genauer erklärt wird.  Damit kann das Standardverhalten einer
538 einzelnen Notenzeile geändert werden: Hier wird einfach angegeben,
539 dass die neue Notenzeile oberhalb der bereits existierenden Zeile
540 mit Namen @qq{Hauptzeile} plaziert werden soll, anstatt
541 standardmäßig unterhalb.
542
543
544 @seealso
545 Ossia werden oft ohne Notenschlüssel und Taktangabe gedruckt, meist
546 auch etwas kleiner als die anderen Notenzeilen.  Dies ist natürlich
547 auch in LilyPond möglich, benötigt aber Befehle, die bisher noch
548 nicht vorgestellt wurden.  Siehe @ref{Größe von Objekten}
549 und @ruser{Ossia-Systeme}.
550
551
552 @node Über die Nicht-Schachtelung von Klammern und Bindebögen
553 @subsection Über die Nicht-Schachtelung von Klammern und Bindebögen
554 @translationof On the un-nestedness of brackets and ties
555
556 @cindex Klammern, geschachtelt
557 @cindex Schachtelung von Klammern
558 @cindex Klammer-Typen
559
560 Sie haben bisher zahlreiche verschiedene Arten von Klammern
561 und Klammer-artigen Konstruktionen beim Schreiben von Musik mit
562 LilyPond kennengelernt.  Diese folgen verschiedenen Regeln, die zu
563 Beginn vielleicht verwirrend wirken.  Bevor die genauen Regeln
564 vorgestellt werden, wollen wir die diversen Klammerarten und Arten
565 von Klammer-artigen Konstrukten kurz rekapitulieren:
566
567 @c attempt to force this onto a new page
568 @need 50
569 @multitable @columnfractions .3 .7
570 @headitem Klammerart
571   @tab Funktion
572 @item @code{@{ .. @}}
573   @tab Umschließt ein sequenzielles Musiksegment
574 @item @code{< .. >}
575   @tab Umschließt die Noten eines Akkords
576 @item @code{<< .. >>}
577   @tab Umschließt parallele Musikausdrücke
578 @item @code{( .. )}
579   @tab Markiert den Beginn und das Ende eines Haltebogens
580 @item @code{\( .. \)}
581   @tab Markiert den Beginn und das Ende eines Phasierungsbogens
582 @item @code{[ .. ]}
583   @tab Markiert den Beginn und das Ende eines manuell erzeugten Balkens
584 @end multitable
585
586 Zusätzlich sollten vielleicht noch einige weiter Konstruktionen
587 erwähnt werden, die Noten auf irgendeine Art und Weise verbinden:
588 Haltebögen (durch eine Tilde @code{~} markiert),
589 Triolen (als @code{\times x/y @{..@}} geschrieben) und
590 Vorschlagnoten (als @code{\grace@{..@}} notiert).
591
592 Außerhalb von LilyPond fordert die übliche Benutzung von
593 Klammern, dass die entsprechenden Arten korrekt verschachtelt
594 werden, wie z.B. in @code{<< [ @{ ( .. ) @} ] >>}.  Die
595 schließenden Klammern kommen dabei in der umgekehrten Reihenfolge
596 wie die öffnenden Klammern vor.  Dies ist auch in LilyPond
597 ein @strong{Muss} für die drei Klammerarten, die in obiger
598 Tabelle mit dem Wort @q{Umschließt} beschrieben werden -- sie
599 müssen korrekt geschachtelt werden.
600 Die restlichen Klammer-artigen Konstruktionen (durch @q{Markiert}
601 in der Tabelle oben beschrieben), die Haltebögen und die Triolen
602 brauchen jedoch mit
603 den anderen Klammern oder Klammer-artigen Konstrukten @strong{nicht}
604 unbedingt korrekt geschachtelt werden.  Tatsächlich sind sie auch
605 keine Klammern in dem Sinn, dass sie etwas umschließen, sondern
606 viel mehr Indikatoren, an welcher Stelle ein bestimmtes
607 musikalisches Objekt beginnt oder endet.
608
609 So kann also z.B. einen Phrasierungsbogen vor einem manuellen
610 Balken beginn, jedoch schon vor dem Ende des Balkens enden.
611 Dies mag zwar musikalisch wenig Sinn ergeben, ist aber in LilyPond
612 auch möglich:
613
614 @lilypond[quote,verbatim,ragged-right,relative=2]
615 { g8\( a b[ c b\) a] g4 }
616 @end lilypond
617
618 Im Allgemeinen können die verschiedenen Klammerarten,
619 Klammer-artigen Konstruktionen, Haltebögen,
620 Triolen und Vorschlagnoten beliebig kombiniert werden.
621 Das folgende Beispiel zeigt einen Balken, der in eine Triole reicht
622 (Zeile 1), eine Bindebogen, der ebenfalls in eine Triole
623 reicht (Zeile 2), einen Balken und einen Bindeboden in eine Triole,
624 ein Haltebogen, der über zwei Triolen läuft, sowie einen
625 Phrasierungsbogen, der in einer Triole beginnt (Zeilen 3 und 4).
626
627 @lilypond[quote,verbatim,ragged-right]
628 {
629 r16[ g \tuplet 3/2 { r16 e'8] }
630 g16( a \tuplet 3/2 { b16 d) e' }
631 g8[( a \tuplet 3/2 { b8 d') e'~] } |
632 \tuplet 5/4 { e'32\( a b d' e' } a'4.\)
633 }
634 @end lilypond
635
636
637 @node Voice enthält Noten
638 @section Voice enthält Noten
639 @translationof Voices contain music
640
641 Sänger brauchen Stimmen zum Singen, und LilyPond braucht sie auch:
642 in der Tat sind alle Noten für alle Instrumente in einer Partitur
643 innerhalb von Stimmen gesetzt.  Die Stimme ist das grundlegendste Prinzip
644 von LilyPond.
645
646 @menu
647 * Ich höre Stimmen::
648 * Stimmen explizit beginnen::
649 * Stimmen und Text::
650 @end menu
651
652 @node Ich höre Stimmen
653 @subsection Ich höre Stimmen
654 @translationof I'm hearing Voices
655
656 @cindex Polyphonie
657 @cindex Ebenen
658 @cindex mehrere Stimmen
659 @cindex Stimmen, mehrere
660 @cindex Voice context
661 @cindex context, Voice
662 @cindex Kontext, Stimme
663 @cindex Stimmenkontext
664 @cindex gleichzeitige Noten
665 @cindex Stimmen versus Akkorde
666 @cindex Akkorde versus Stimmen
667 @cindex Noten gleichzeitig
668
669 Die grundlegendsten und innersten Ebenen ein einer LilyPond-Partitur
670 werden @qq{Voice context} (Stimmenkontext) oder auch nur @qq{Voice}
671 (Stimme) genannt.  Stimmen werden in anderen Notationsprogrammen
672 manchmal auch als @qq{layer} (Ebene) bezeichnet.
673
674 Tatsächlich ist die Voice-Ebene die einzige, die wirklich Noten
675 enthalten kann.  Wenn kein Voice-Kontext explizit erstellt wird,
676 wird er automatisch erstellt, wie am Anfang dieses Kapitels
677 gezeigt.  Manche Instrumente wie etwa die Oboe können nur eine
678 Note gleichzeitig spielen.  Noten für solche Instrumente brauchen nur
679 eine einzige Stimme.  Instrumente, die
680 mehrere Noten gleichzeitig spielen können, wie das Klavier, brauchen
681 dagegen oft mehrere Stimmen, um die verschiedenen gleichzeitig
682 erklingenden Noten mit oft unterschiedlichen Rhythmen darstellen
683 zu können.
684
685 Eine einzelne Stimme kann natürlich auch vielen Noten in einem Akkord
686 enthalten -- wann also braucht man dann mehrere Stimmen? Schauen wir
687 uns zuerst dieses Beispiel mit vier Akkorden an:
688
689 @lilypond[quote,verbatim,ragged-right]
690 \relative {
691   \key g \major
692   <d' g>4 <d fis> <d a'> <d g>
693 }
694 @end lilypond
695
696 Das kann ausgedrückt werden, indem man die einfachen spitzen Klammern
697 @code{< ... >} benützt, um Akkorde anzuzeigen.  Hierfür braucht man
698 nur eine Stimme.  Aber gesetzt der Fall das Fis sollte eigentlich
699 eine Achtelnote sein, gefolgt von einer Achtelnote G (als Durchgangsnote
700 hin zum A)? Hier haben wir also zwei Noten, die zur gleichen Zeit
701 beginnen, aber unterschiedliche Dauern haben: die Viertelnote D und die
702 Achtelnote Fis.  Wie können sie notiert werden? Als Akkord kann man sie
703 nicht schreiben, weil alle Noten in einem Akkord die gleiche Länge besitzen
704 müssen.  Sie können auch nicht als aufeinanderfolgende Noten geschrieben
705 werden, denn sie beginnen ja zur selben Zeit.  In diesem Fall also brauchen
706 wir zwei Stimmen.
707
708 Wie aber wird das in der LilyPond-Syntax ausgedrückt?
709
710 @funindex << \\ >>
711 @funindex \\
712
713 Die einfachste Art, Fragmente mit mehr als einer Stimme auf einem System
714 zu notieren, ist, die Stimmen nacheinander (jeweils mit den Klammern
715 @code{@{ ... @}}) zu schreiben und dann mit den spitzen Klammern
716 (@code{<<...>>}) simultan zu kombinieren.  Die beiden Fragmente müssen
717 zusätzlich noch mit zwei Backslash-Zeichen (@code{\\}) voneinander
718 getrennt werden, damit sie als zwei unterschiedliche Stimmen erkannt
719 werden.  Ohne diese Trenner würden sie als eine einzige Stimme notiert
720 werden.  Diese Technik ist besonders dann angebracht, wenn es sich bei
721 den Noten um hauptsächlich homophone Musik handelt, in der hier und da
722 polyphone Stellen vorkommen.
723
724 So sieht es aus, wenn die Akkorde in zwei Stimmen aufgeteilt werden
725 und zur Durchgangsnote noch ein Bogen hinzugefügt wird:
726
727 @lilypond[quote,verbatim,ragged-right]
728 \relative {
729   \key g \major
730   %    Voice "1"               Voice "2"
731   << { g'4 fis8( g) a4 g } \\ { d4 d d d }  >>
732 }
733 @end lilypond
734
735 Beachten Sie, dass die Hälse der zweiten Stimme nun nach unten zeigen.
736
737 Hier ein anderes Beispiel:
738
739 @lilypond[quote,verbatim,ragged-right,relative=2]
740 \key d \minor
741 %    Voice "1"             Voice "2"
742 << { r4 g g4. a8 }    \\ { d,2 d4 g }       >>
743 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >>
744 << { a2. r4 }         \\ { fis2. s4 }       >>
745 @end lilypond
746
747 Es ist nicht notwendig, für jeden Takt eine eigene
748 @code{<< \\ >>}-Konstruktion zu benutzen.  Bei Musik mit nur wenigen
749 Noten pro Takt kann es die Quelldatei besser lesbar machen, aber
750 wenn in einem Takt viele Noten vorkommen, kann man die gesamten Stimmen
751 separat schreiben, wie hier:
752
753 @lilypond[quote,verbatim,ragged-right]
754 <<
755   \key d \minor
756   \relative { % Voice "1"
757     r4 g' g4. a8 |
758     bes4 bes c bes |
759     a2. r4 |
760   } \\
761   \relative { % Voice "2"
762     d'2 d4 g |
763     g4 g g8( a) g4 |
764     fis2. s4 |
765   }
766 >>
767 @end lilypond
768
769 Dieses Beispiel hat nur zwei Stimmen, aber die gleiche Konstruktion kann
770 angewendet werden, wenn man drei oder mehr Stimmen hat, indem man weitere
771 Backslash-Trenner hinzufügt.
772
773 Die Stimmenkontexte tragen die Namen @code{"1"}, @code{"2"} usw. Der erste
774 Kontext stellt die @qq{äußeren} Stimmen ein, die höchste Stimme im
775 Kontext @code{"1"} und die tiefste Stimme im Kontext @code{"2"}.  Die
776 inneren Stimmen kommen in die Kontexte @code{"3"} und @code{"4"}.  In
777 jeder dieser Kontexte wird die vertikale Ausrichtung von Bögen, Hälsen,
778 Dynamik usw. entsprechend eingestellt.
779
780 @lilypond[quote,verbatim]
781 \new Staff \relative {
782   % Main voice
783   c'16 d e f
784   %    Voice "1"     Voice "2"                Voice "3"
785   << { g4 f e } \\ { r8 e4 d c8~ } >> |
786   << { d2 e }   \\ { c8 b16 a b8 g~ 2 } \\ { s4 b c2 } >> |
787 }
788 @end lilypond
789
790 Diese Stimmen sind alle getrennt von der Hauptstimme, die die Noten
791 außerhalb der @code{<< .. >>}-Konstruktion beinhaltet.  Lassen wir es
792 uns die @emph{simultane Konstruktion} nennen.  Bindebögen und Legatobögen
793 können nur Noten in der selben Stimmen miteinander verbinden und können
794 also somit nicht aus der simultanen Konstruktion hinausreichen.  Umgekehrt
795 gilt, dass parallele Stimmen aus eigenen simultanen Konstruktionen auf
796 dem gleichen Notensystem die gleiche Stimme sind.  Auch andere, mit dem
797 Stimmenkontext verknüpfte Eigenschaften erstrecken sich auf alle
798 simultanen Konstrukte.  Hier das gleiche Beispiel, aber mit unterschiedlichen Farben für die Notenköpfe der unterschiedlichen Stimmen.
799 Beachten Sie, dass Änderungen in einer Stimme sich nicht auf die anderen
800 Stimmen erstrecken, aber sie sind weiterhin in der selben Stimme vorhanden,
801 auch noch später im Stück.  Beachten Sie auch, dass übergebundene Noten
802 über die gleiche Stimme in zwei Konstrukten verteilt werden können, wie
803 hier an der blauen Dreieckstimme gezeigt.
804
805 @lilypond[quote,verbatim]
806 \new Staff \relative {
807   % Main voice
808   c'16 d e f
809   <<   % Bar 1
810     {
811       \voiceOneStyle
812       g4 f e
813     }
814   \\
815     {
816       \voiceTwoStyle
817       r8 e4 d c8~
818     }
819   >> |
820   <<  % Bar 2
821      % Voice 1 continues
822     { d2 e }
823   \\
824      % Voice 2 continues
825     { c8 b16 a b8 g~ 2 }
826   \\
827     {
828       \voiceThreeStyle
829       s4 b c2
830     }
831   >> |
832 }
833 @end lilypond
834
835 @funindex \voiceOneStyle
836 @funindex \voiceTwoStyle
837 @funindex \voiceThreeStyle
838 @funindex \voiceFourStyle
839 @funindex \voiceNeutralStyle
840
841 Die Befehle @code{\voiceXXXStyle} sind vor allem dazu da, um in
842 pädagogischen Dokumenten wie diesem hier angewandt zu werden.
843 Sie verändern die Farbe des Notenkopfes, des Halses und des Balkens, und
844 zusätzlich die Form des Notenkopfes, damit die einzelnen Stimmen
845 einfach auseinander gehalten werden können.  Die erste Stimme ist als
846 rote Raute definiert, die zweite Stimme als blaue Dreiecke, die dritte
847 Stimme als grüne Kreise mit Kreuz und die vierte Stimme (die hier nicht
848 benutzt wird) hat dunkelrote Kreuze.  @code{\voiceNeutralStyle} (hier auch
849 nicht benutzt) macht diese Änderungen rückgängig.  Später soll gezeigt
850 werden, wie Befehle wie diese vom Benutzer selber erstellt werden
851 können.  Siehe auch @ref{Sichtbarkeit und Farbe von Objekten} und
852 @ref{Variablen für Optimierungen einsetzen}.
853
854 @cindex Polyphonie und relativer Notationsmodus
855 @cindex relativer Notationsmodus und Polyphonie
856
857 Polyphonie ändert nicht die Verhältnisse der Noten innerhalb eines
858 @code{\relative}-Blocks.  Jede Note wird weiterhin relativ zu
859 der vorherigen Note errechnet, oder relativ zur ersten Note des vorigen
860 Akkords.  So ist etwa hier
861
862 @example
863 \relative c' @{ NoteA << < NoteB NoteC > \\ NoteD >> NoteE @}
864 @end example
865
866 @noindent
867 @code{NoteB} bezüglich @code{NoteA}                      @*
868 @code{NoteC} bezüglich @code{NoteB}, nicht @code{noteA};   @*
869 @code{NoteD} bezüglich @code{NoteB}, nicht @code{NoteA} oder
870 @code{NoteC};                                                 @*
871 @code{NoteE} bezüglich @code{NoteD}, nicht @code{NoteA} errechnet.
872
873 Eine andere Möglichkeit ist, den @code{\relative}-Befehl vor jede
874 Stimme zu stellen.  Das bietet sich an, wenn die Stimmen weit voneinander
875 entfernt sind.
876
877 @example
878 \relative c' @{ NoteA ... @}
879 <<
880   \relative c'' @{ < NoteB NoteC > ... @}
881 \\
882   \relative g' @{ NoteD ... @}
883 >>
884 \relative c' @{ NoteE ... @}
885 @end example
886
887 Zum Schluss wollen wir die Stimmen in einem etwas komplizierteren Stück
888 analysieren.  Hier die Noten der ersten zwei Takte von Chopins
889 @notation{Deux Nocturnes}, Op. 32.  Dieses Beispiel soll später in diesem
890 und dem nächsten Kapitel benutzt werden, um verschiedene Techniken,
891 Notation zu erstellen, zu demonstrieren.  Ignorieren Sie deshalb an diesem
892 Punkt alles in folgendem Code, das Ihnen seltsam vorkommt, und konzentrieren
893 Sie sich auf die Noten und die Stimmen.  Die komplizierten Dinge werden
894 in späteren Abschnitten erklärt werden.
895
896 @c The following should appear as music without code
897 @lilypond[quote,ragged-right]
898 \new Staff \relative {
899   \key aes \major
900   <<  % Voice one
901     { c''2 aes4. bes8 }
902   \\  % Voice two
903     {
904       % Ignore these for now - they are explained in Ch 4
905       \once \override NoteColumn.ignore-collision = ##t
906       <ees, c>2
907       \once \override NoteColumn.force-hshift = #0.5
908       des2
909     }
910   \\  % No voice three
911   \\  % Voice four
912     {
913       \override NoteColumn.force-hshift = #0
914       aes'2 f4 fes
915     }
916   >> |
917   <c ees aes c>1 |
918 }
919 @end lilypond
920
921 Die Richtung der Hälse wird  oft benutzt, um anzuzeigen, dass zwei
922 gleichzeitige Melodien sich fortsetzen.  Hier zeigen die Hälse aller
923 oberen Noten nach oben und die Hälse aller unteren Noten nach unten.
924 Das ist der erste Anhaltspunkt, dass mehr als eine Stimme benötigt
925 wird.
926
927 Aber die wirkliche Notwendigkeit für mehrere Stimmen tritt erst
928 dann auf, wenn unterschiedliche Noten gleichzeitig erklingen, aber
929 unterschiedliche Dauern besitzen.  Schauen Sie sich die Noten
930 auf dem dritten Schlag im ersten Takt an.  Das As ist eine punktierte
931 Viertel, das F ist eine Viertel und das Des eine Halbe.  Sie können
932 nicht als Akkord geschrieben werden, denn alle Noten in einem Akkord
933 besitzen die gleiche Dauer.  Sie können aber auch nicht nacheinander
934 geschrieben werden, denn sie beginnen auf der gleichen Taktzeit.  Dieser
935 Taktabschnitt benötigt drei Stimmen, und normalerweise schreibt man
936 drei Stimmen für den ganzen Takt, wie im Beispiel unten zu sehen ist;
937 hier sind unterschiedliche Köpfe und Farben für die verschiedenen Stimmen
938 eingesetzt.  Noch einmal: der Quellcode für dieses Beispiel wird später
939 erklärt werden, deshalb ignorieren Sie alles, was Sie hier nicht
940 verstehen können.
941
942 @c The following should appear as music without code
943 @c The three voice styles should be defined in -init
944 @lilypond[quote,ragged-right]
945 \new Staff \relative {
946   \key aes \major
947   <<
948     {  % Voice one
949       \voiceOneStyle
950       c''2 aes4. bes8
951     }
952   \\  % Voice two
953     { \voiceTwoStyle
954       % Ignore these for now - they are explained in Ch 4
955       \once \override NoteColumn.ignore-collision = ##t
956       <ees, c>2
957       \once \override NoteColumn.force-hshift = #0.5
958       des2
959     }
960   \\  % No Voice three (we want stems down)
961   \\  % Voice four
962     { \voiceThreeStyle
963       \override NoteColumn.force-hshift = #0
964       aes'2 f4 fes
965     }
966   >> |
967   <c ees aes c>1 |
968 }
969 @end lilypond
970
971 Versuchen wir also, diese Musik selber zu notieren.  Wie wir sehen
972 werden, beinhaltet das einige Schwierigkeiten.  Fangen wir an, wie
973 wir es gelernt haben, indem wir mit der @code{<< \\  >>}-Konstruktion
974 die drei Stimmen des ersten Taktes notieren:
975
976 @lilypond[quote,verbatim,ragged-right]
977 \new Staff \relative {
978   \key aes \major
979   <<
980     { c''2 aes4. bes8 } \\ { <ees, c>2 des } \\ { aes'2 f4 fes }
981   >> |
982   <c ees aes c>1 |
983 }
984 @end lilypond
985
986 @cindex Hals nach unten
987 @cindex Hals nach oben
988 @cindex Notenhals, Richtung
989 @cindex Richtung des Notenhalses
990 @cindex Notenhalsrichtung
991 @cindex Stimmen und Notenhalsrichtung
992 @cindex Notenhalsrichtung in Stimmen
993
994 Die Richtung des Notenhalses wird automatisch zugewiesen; die ungeraden
995 Stimmen tragen Hälse nach oben, die gerade Hälse nach unten.  Die Hälse
996 für die Stimmen 1 und 2 stimmen, aber die Hälse in der dritten Stimme
997 sollen in diesem Beispiel eigentlich nach unten zeigen.  Wir können das
998 korrigieren, indem wir die dritte Stimme einfach auslassen und die
999 Noten in die vierte Stimme verschieben.  Das wird einfach vorgenommen,
1000 indem noch ein Paar @code{\\}-Stimmen hinzugefügt wird.
1001
1002 @lilypond[quote,verbatim,ragged-right]
1003 \new Staff \relative {
1004   \key aes \major
1005   <<  % Voice one
1006     { c''2 aes4. bes8 }
1007   \\  % Voice two
1008     { <ees, c>2 des }
1009   \\  % Omit Voice three
1010   \\  % Voice four
1011     { aes'2 f4 fes }
1012   >> |
1013   <c ees aes c>1 |
1014 }
1015 @end lilypond
1016
1017 @noindent
1018 Wie zu sehen ist, ändert das die Richtung der Hälse, aber die horizontale
1019 Ausrichtung der Noten ist nicht so, wie wir sie wollen.  LilyPond
1020 verschiebt die inneren NOten wenn sie oder ihre Hälse mit den äußeren
1021 Stimmen zusammenstoßen würden, aber das ist nicht richtig für Klaviermusik.
1022 In anderen Situationen können die Verschiebungen von LilyPond nicht
1023 ausreichend sein, um Überlappungen aufzulösen.  LilyPond stellt verschiedene
1024 Möglichkeiten zur Verfügung, um die horizontale Ausrichtung von Noten
1025 zu beeinflussen.  Wir sind aber noch nicht so weit, dass wir diese Funktionen
1026 anwenden könnten.  Darum heben wir uns das Problem für einen späteren Abschnitt
1027 auf; siehe @code{force-hshift}-Eigenschaft in
1028 @ref{Überlappende Notation in Ordnung bringen}.
1029
1030 @warning{Gesangstext und Strecker (wie etwa Bögen, Crescendo-Klammern usw.) können
1031 nicht von einer Stimme zur anderen erstellt werden.}
1032
1033 @seealso
1034 Notationsreferenz: @ruser{Mehrere Stimmen}.
1035
1036
1037 @node Stimmen explizit beginnen
1038 @subsection Stimmen explizit beginnen
1039 @translationof Explicitly instantiating voices
1040
1041 @funindex \voiceOne
1042 @funindex voiceOne
1043 @funindex \voiceTwo
1044 @funindex voiceTwo
1045 @funindex \voiceThree
1046 @funindex voiceThree
1047 @funindex \voiceFour
1048 @funindex voiceFour
1049 @funindex \oneVoice
1050 @funindex oneVoice
1051 @funindex \new Voice
1052 @cindex Voice context, erstellen von
1053 @cindex Stimmenkontexte, erstellen von
1054
1055 Voice-Kontexte können auch manuell innerhalb
1056 eines @code{<< >>}-Abschnittes initiiert werden.  Mit den Befehlen
1057 @code{\voiceOne} bis hin zu @code{\voiceFour} kann jeder Stimme
1058 entsprechendes Verhalten von vertikaler Verschiebung und Richtung
1059 von Hälsen und anderen Objekten hinzugefügt werden.  In längeren
1060 Partituren können die Stimmen damit besser auseinander gehalten
1061 werden.
1062
1063 Die @code{<< \\ >>}-Konstruktion, die wir im vorigen Abschnitt
1064 verwendet haben:
1065
1066 @example
1067 \new Staff @{
1068   \relative @{
1069     << @{ e'4 f g a @} \\ @{ c,4 d e f @} >>
1070   @}
1071 @}
1072 @end example
1073
1074 @noindent
1075 ist identisch mit
1076
1077 @example
1078 \new Staff <<
1079   \new Voice = "1" @{ \voiceOne \relative @{ e'4 f g a @} @}
1080   \new Voice = "2" @{ \voiceTwo \relative @{ c'4 d e f @} @}
1081 >>
1082 @end example
1083
1084 Beide würden folgendes Notenbild erzeugen:
1085
1086 @c The following example should not display the code
1087 @lilypond[ragged-right,quote]
1088 \new Staff <<
1089   \new Voice = "1" { \voiceOne \relative { e'4 f g a } }
1090   \new Voice = "2" { \voiceTwo \relative { c'4 d e f } }
1091 >>
1092 @end lilypond
1093
1094 @cindex Stimmen, mehrere zu einer zusammenführen
1095 @cindex eine Stimme wiederherstellen
1096
1097 Der @code{\voiceXXX}-Befehl setzt die Richtung von Hälsen,
1098 Bögen, Artikulationszeichen, Text, Punktierungen und Fingersätzen.
1099 @code{\voiceOne} und @code{\voiceThree} lassen diese Objekte
1100 nach oben zeigen, @code{\voiceTwo} und @code{\voiceFour}
1101 dagegen lassen sie abwärts zeigen. Diese Befehle erzeugen eine
1102 horizontale Verschiebung, wenn es erforderlich ist, um Zusammenstöße
1103 zu vermeiden.  Der Befehl
1104 @code{\oneVoice} stellt wieder auf das normale Verhalten um.
1105
1106 Schauen wir uns in einigen einfachen Beispielen an, was genau
1107 die Befehle @code{\oneVoice}, @code{\voiceOne} und @code{voiceTwo}
1108 mit Text, Bögen und Dynamikbezeichnung anstellen:
1109
1110 @lilypond[quote,ragged-right,verbatim]
1111 \relative {
1112   % Default behavior or behavior after \oneVoice
1113   c'4 d8~ 8 e4( f | g4 a) b-> c |
1114 }
1115 @end lilypond
1116
1117 @lilypond[quote,ragged-right,verbatim]
1118 \relative {
1119   \voiceOne
1120   c'4 d8~ 8 e4( f | g4 a) b-> c |
1121   \oneVoice
1122   c,4 d8~ 8 e4( f | g4 a) b-> c |
1123 }
1124 @end lilypond
1125
1126 @lilypond[quote,ragged-right,verbatim]
1127 \relative {
1128   \voiceTwo
1129   c'4 d8~ 8 e4( f | g4 a) b-> c |
1130   \oneVoice
1131   c,4 d8~ 8 e4( f | g4 a) b-> c |
1132 }
1133 @end lilypond
1134
1135 Schauen wir und nun drei unterschiedliche Arten an, den gleichen
1136 Abschnitt polyphoner Musik zu notieren, jede Art mit ihren
1137 Vorteilen in unterschiedlichen Situationen.  Wir benutzen dabei
1138 das Beispiel vom vorherigen Abschnitt.
1139
1140 Ein Ausdruck, der direkt innerhalb einer @code{<< >>}-Umgebung
1141 auftritt, gehört der Hauptstimme an.  Das ist nützlich, wenn zusätzliche
1142 Stimme auftreten, während die Hauptstimme sich fortsetzt.  Hier also
1143 eine bessere Version des Beispiels aus dem vorigen Abschnitt.  Die
1144 farbigen Kreuz-Notenköpfe zeigen, dass die Hauptstimme sich jetzt in
1145 einem einzigen Stimmen (@code{voice})-Kontext befindet.  Somit kann ein
1146 Phrasierungsbogen ober sie gesetzt werden.
1147
1148 @lilypond[quote,ragged-right,verbatim]
1149 \new Staff \relative {
1150   \voiceOneStyle
1151   % This section is homophonic
1152   c'16^( d e f
1153   % Start simultaneous section of three voices
1154   <<
1155     % Continue the main voice in parallel
1156     { g4 f e | d2 e) | }
1157     % Initiate second voice
1158     \new Voice {
1159       % Set stems, etc., down
1160       \voiceTwo
1161       r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1162     }
1163     % Initiate third voice
1164     \new Voice {
1165       % Set stems, etc, up
1166       \voiceThree
1167       s2. | s4 b4 c2 |
1168     }
1169   >>
1170 }
1171 @end lilypond
1172
1173 @cindex Verschachteln von musikalischen Ausdrücken
1174 @cindex Verschachteln von gleichzeitigen Ausdrücken
1175 @cindex Ausdrücke, Verschachteln von
1176 @cindex Stimmen, temporär
1177 @cindex Stimmen, Verschachteln von
1178 @cindex Verschachteln von Stimmen
1179 @cindex temporäre Stimmen
1180
1181 Tiefer verschachtelte polyphone Konstrukte sind möglich, und
1182 wenn eine Stimme nur kurz auftaucht, kann das der bessere Weg
1183 sein, Noten zu setzen:
1184
1185 @lilypond[quote,ragged-right,verbatim]
1186 \new Staff \relative {
1187   c'16^( d e f
1188   <<
1189     { g4 f e | d2 e2) | }
1190     \new Voice {
1191       \voiceTwo
1192       r8 e4 d c8~
1193       <<
1194         { c8 b16 a b8 g~ 2 | }
1195         \new Voice {
1196           \voiceThree
1197           s4 b4 c2 |
1198         }
1199       >>
1200     }
1201   >>
1202 }
1203 @end lilypond
1204
1205 @cindex Platzhalternoten
1206 @cindex unsichtbare Noten
1207 @cindex Noten verstecken
1208
1209 Diese Methode, neue Stimmen kurzzeitig zu verschachteln, bietet sich
1210 an, wenn nur sehr kleine Abschnitte polyphonisch gesetzt sind.  Wenn
1211 aber die ganze Partitur polyphon ist, ist es meistens klarer, direkt
1212 unterschiedliche Stimmen über die gesamte Partitur hinweg einzusetzen.
1213 Hierbei kann man mit unsichtbaren Noten dann die Stellen überspringen,
1214 an denen die Stimme nicht auftaucht, wie etwa hier:
1215
1216 @lilypond[quote,ragged-right,verbatim]
1217 \new Staff \relative <<
1218   % Initiate first voice
1219   \new Voice {
1220     \voiceOne
1221     c'16^( d e f g4 f e | d2 e) |
1222   }
1223   % Initiate second voice
1224   \new Voice {
1225     % Set stems, etc, down
1226     \voiceTwo
1227     s4 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1228   }
1229   % Initiate third voice
1230   \new Voice {
1231     % Set stems, etc, up
1232     \voiceThree
1233     s1 | s4 b c2 |
1234   }
1235 >>
1236 @end lilypond
1237
1238 @subsubheading Notenkolumnen
1239
1240 @cindex Notenkolumne
1241 @cindex Notenkollision
1242 @cindex Zusammenstöße von Noten
1243 @cindex Kollisionen von Noten
1244 @cindex Vertikale Position
1245 @cindex shift-Befehle
1246 @cindex Verschieben von Noten
1247 @funindex \shiftOff
1248 @funindex \shiftOn
1249 @funindex \shiftOnn
1250 @funindex \shiftOnnn
1251 @funindex shiftOff
1252 @funindex shiftOn
1253 @funindex shiftOnn
1254 @funindex shiftOnnn
1255
1256 Dicht notierte Noten in einem Akkord, oder Noten auf der gleichen
1257 Taktzeit aber in unterschiedlichen Stimmen, werden in zwei, manchmal
1258 auch mehreren Kolumnen gesetzt, um die Noten am Überschneiden zu
1259 hindern.  Wir bezeichnen sie als Notenkolumnen.  Jede Stimme hat
1260 eine eigene Kolumne, und ein stimmenabhängiger Verschiebunsbefehl (engl.
1261 shift) wird eingesetzt, wenn eine Kollision auftreten könnte.
1262 Das zeigt das Beispiel oben.  Im zweiten Takt wird das C der zweiten
1263 Stimme nach rechts verschoben, relativ gesehen zum D der ersten Stimme,
1264 und im letzten Akkord wird das C der dritten Stimme auch nach
1265 rechts verschoben im Verhältnis zu den anderen Stimmen.
1266
1267 Die Befehle @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn} und
1268 @code{\shiftOff} bestimmen den Grad, zu dem Noten und Akkorde
1269 verschoben werden sollen, wenn sich sonst eine Kollision nicht
1270 vermeiden ließe.  Die Standardeinstellung ist, dass die äußeren
1271 Stimmen (also normalerweise Stimme 1 und 2) @code{\shiftOff}
1272 eingestellt haben, während für die inneren Stimmen (3 und 4)
1273 @code{\shiftOn} eingeschaltet ist.  Wenn eine Verschiebung
1274 auftritt, werden Stimmen 1 und 3 nach rechts und Stimmen 2 und 4
1275 nach links verschoben.
1276
1277 @code{\shiftOnn} und @code{\shiftOnnn} definieren weitere
1278 Verschiebungsebenen, die man kurzzeitig anwählen kann, um
1279 Zusammenstöße in komplexen Situationen aufzulösen, siehe auch
1280 @ref{Beispiele aus dem Leben}.
1281
1282 Eine Notenkolumne kann nur eine Note (oder einen Akkord) von
1283 einer Stimme mit Hälsen nach oben und eine Note (oder einen
1284 Akkord) von einer Stimme mit Hälsen nach unten tragen.  Wenn
1285 Noten von zwei Stimmen mit den Hälsen in die gleiche Richtung
1286 an der selben Stelle auftreten und in beiden Stimmen ist
1287 keine Verschiebung oder die gleiche Verschiebungsebene
1288 definiert, wird die Fehlermeldung
1289 @qq{zu viele kollidierende Notenspalten werden ignoriert}
1290 ausgegeben.
1291
1292
1293 @seealso
1294 Notationsreferenz: @ruser{Mehrere Stimmen}.
1295
1296
1297 @node Stimmen und Text
1298 @subsection Stimmen und Text
1299 @translationof Voices and vocals
1300
1301 Die Notation von Vokalmusik ihre eigene Schwierigkeit, nämlich
1302 die Kombination von zwei Ausdrücken: den Noten und dem Text.
1303 Achtung: Der Gesangstext wird auf Englisch @qq{lyrics} genannt.
1304
1305
1306 @funindex \new Lyrics
1307 @funindex \lyricsto
1308 @funindex lyricsto
1309 @funindex Lyrics
1310 @cindex Lyrics context, erstellen
1311 @cindex Gesangtext, Verbindung mit Noten
1312
1313 Wir haben schon den @code{\addlyrics@{@}}-Befehl betrachtet,
1314 mit dem einfache Partituren gut erstellt werden können.
1315 Diese Methode ist jedoch recht eingeschränkt.  Wenn der Notensatz
1316 komplexer wird, muss der Gesangstext mit einem neuen
1317 @code{Lyrics}-Kontext begonnen werden (mit dem Befehl
1318 @code{\new Lyrics}) und durch den Befehl @code{\lyricsto@{@}}
1319 mit einer bestimmten Stimme verknüpft werden, indem die
1320 Bezeichnung der Stimme benutzt wird.
1321
1322 @lilypond[quote,verbatim]
1323 <<
1324   \new Voice = "one" {
1325     \relative {
1326       \autoBeamOff
1327       \time 2/4
1328       c''4 b8. a16 | g4. f8 | e4 d | c2 |
1329     }
1330   }
1331   \new Lyrics \lyricsto "one" {
1332     No more let | sins and | sor -- rows | grow. |
1333   }
1334 >>
1335 @end lilypond
1336
1337 Beachten Sie, dass der Notentext nur mit einem @code{Voice}-Kontext
1338 verknüpft werden kann, nicht mit einem @code{Staff}-Kontext.
1339 In diesem Fall also müssen Sie ein System (@code{Staff}) und
1340 eine Stimme (@code{Voice}) explizit erstellen, damit alles
1341 funktioniert.
1342
1343 @cindex Gesangstext und Balken
1344 @cindex Text und Balken
1345 @cindex Balken und Text
1346 @funindex \autoBeamOff
1347 @funindex autoBeamOff
1348
1349 Die automatischen Balken, die LilyPond in der Standardeinstellung
1350 setzt, eignen sich sehr gut für instrumentale Musik, aber nicht
1351 so gut für Musik mit Text, wo man entweder gar keine Balken
1352 benutzt oder sie einsetzt, um Melismen zu verdeutlichen.
1353 Im Beispiel oben wird deshalb der Befehl @code{\autoBeamOff}
1354 eingesetzt um die automatischen Balken (engl. beam) auszuschalten.
1355
1356 @funindex \new ChoirStaff
1357 @funindex \lyricmode
1358 @funindex ChoirStaff
1359 @funindex lyricmode
1360 @cindex Vokalpartitur, Aufbau
1361 @cindex Chorpartitur, Aufbau
1362
1363 Wir wollen das frühere Beispiel von @notation{Judas Maccabæus}
1364 benutzen, um diese flexiblere Technik für Gesangstexte
1365 zu illustrieren.  Das Beispiel wurde so umgeformt, dass jetzt
1366 Variablen eingesetzt werden, um den Text und die Noten
1367 von der Partiturstruktur zu trennen.  Es wurde zusätzlich
1368 eine Chorpartiturklammer hinzugefügt.  Der Gesangtext muss mit
1369 @code{\lyricmode} eingegeben werden, damit er als Text und
1370 nicht als Noten interpretiert werden kann.
1371
1372 @lilypond[quote,verbatim]
1373 global = { \key f \major \time 6/8 \partial 8 }
1374
1375 SopOneMusic = \relative {
1376   c''8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ 4
1377 }
1378 SopOneLyrics = \lyricmode {
1379   Let | flee -- cy flocks the | hills a -- dorn, __
1380 }
1381 SopTwoMusic = \relative {
1382   r8 | r4. r4 c'8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
1383 }
1384 SopTwoLyrics = \lyricmode {
1385   Let | flee -- cy flocks the | hills a -- dorn,
1386 }
1387
1388 \score {
1389   \new ChoirStaff <<
1390     \new Staff <<
1391       \new Voice = "SopOne" {
1392         \global
1393         \SopOneMusic
1394       }
1395       \new Lyrics \lyricsto "SopOne" {
1396         \SopOneLyrics
1397       }
1398     >>
1399     \new Staff <<
1400       \new Voice = "SopTwo" {
1401         \global
1402         \SopTwoMusic
1403       }
1404       \new Lyrics \lyricsto "SopTwo" {
1405         \SopTwoLyrics
1406       }
1407     >>
1408   >>
1409 }
1410 @end lilypond
1411
1412 Dies ist die Grundstruktur für alle Chorpartituren.  Mehr
1413 Systeme können hinzugefügt werden, wenn sie gebraucht werden, mehr
1414 Stimmen können zu jedem System hinzugefügt werden, mehr
1415 Strophen können zum Text hinzugefügt werden, und schließlich
1416 können die Variablen schnell in eine eigene Datei verschoben
1417 werden, wenn sie zu lang werden sollten.
1418
1419 @cindex Choralnotation
1420 @cindex Hymnus-Notation
1421 @cindex SATB-Partitur
1422 @cindex mehrere Strophen
1423 @cindex Strophen, mehrere
1424 @cindex Choral mit mehreren Strophen
1425
1426 Hier ein Beispiel der ersten Zeile eines Chorals mit vier
1427 Strophen für gemischten Chor.  In diesem Fall ist der Text
1428 für alle vier Stimmen identisch.  Beachten Sie, wie die
1429 Variablen eingesetzt werden, um Inhalt (Noten und Text) und Form
1430 (die Partitur) voneinander zu trennen.  Eine Variable wurde
1431 eingesetzt, um die Elemente, die auf beiden Systemen auftauchen,
1432 aufzunehmen, nämlich Taktart und Tonart.  Solch eine
1433 Variable wird oft auch mit @qq{global} bezeichnet.
1434
1435 @lilypond[quote,verbatim]
1436 keyTime = { \key c \major \time 4/4 \partial 4 }
1437
1438 SopMusic   = \relative { c'4 | e4. e8 g4  g    | a4   a   g  }
1439 AltoMusic  = \relative { c'4 | c4. c8 e4  e    | f4   f   e  }
1440 TenorMusic = \relative  { e4 | g4. g8 c4.   b8 | a8 b c d e4 }
1441 BassMusic  = \relative  { c4 | c4. c8 c4  c    | f8 g a b c4 }
1442
1443 VerseOne =
1444   \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
1445 VerseTwo   =
1446   \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
1447 VerseThree =
1448   \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
1449 VerseFour  =
1450   \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
1451
1452 \score {
1453   \new ChoirStaff <<
1454     \new Staff <<
1455       \clef "treble"
1456       \new Voice = "Sop"  { \voiceOne \keyTime \SopMusic }
1457       \new Voice = "Alto" { \voiceTwo \AltoMusic }
1458       \new Lyrics \lyricsto "Sop" { \VerseOne   }
1459       \new Lyrics \lyricsto "Sop" { \VerseTwo   }
1460       \new Lyrics \lyricsto "Sop" { \VerseThree }
1461       \new Lyrics \lyricsto "Sop" { \VerseFour  }
1462     >>
1463     \new Staff <<
1464       \clef "bass"
1465       \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
1466       \new Voice = "Bass"  { \voiceTwo \BassMusic }
1467     >>
1468   >>
1469 }
1470 @end lilypond
1471
1472
1473 @seealso
1474 Notation Reference: @ruser{Notation von Gesang}.
1475
1476
1477 @node Kontexte und Engraver
1478 @section Kontexte und Engraver
1479 @translationof Contexts and engravers
1480
1481 Kontexte und Engraver (@qq{Stempel}) sind in den vorherigen
1482 Abschnitten schon aufgetaucht; hier wollen wir uns ihnen
1483 nun etwas ausführlicher widmen, denn sie sind sehr
1484 wichtig, um Feineinstellungen in der LilyPond-Notenausgabe
1485 vornehmen zu können.
1486
1487 @menu
1488 * Was sind Kontexte?::
1489 * Kontexte erstellen::
1490 * Was sind Engraver?::
1491 * Kontexteigenschaften verändern::
1492 * Engraver hinzufügen und entfernen::
1493 @end menu
1494
1495 @node Was sind Kontexte?
1496 @subsection Was sind Kontexte?
1497 @translationof Contexts explained
1498
1499 @cindex Kontexte erklärt
1500
1501 Wenn Noten gesetzt werden, müssen viele Elemente zu der Notenausgabe
1502 hinzugefügt werden,
1503 die im Quellcode gar nicht explizit vorkommen.  Vergleichen Sie
1504 etwa den Quellcode und die Notenausgabe des folgenden Beispiels:
1505
1506 @lilypond[quote,verbatim]
1507 \relative { cis''4 cis2. | a4 a2. | }
1508 @end lilypond
1509
1510 Der Quellcode ist sehr kurz und knapp, während in der
1511 Notenausgabe Taktlinien, Vorzeichen, ein Schlüssel und
1512 eine Taktart hinzugefügt wurden.  Während LilyPond
1513 den Eingabetext @emph{interpretiert}, wird die
1514 musikalische Information von rechts nach links gelesen,
1515 in etwa, wie man eine Partitur von links nach
1516 rechts liest.  Während das Programm den Code liest,
1517 merkt es sich, wo sich Taktgrenzen befinden und
1518 für welche Tonhöhen Versetzungszeichen gesetzt werden
1519 müssen.  Diese Information muss auf mehreren Ebenen
1520 gehandhabt werden, denn Versetzungszeichen etwa
1521 beziehen sich nur auf ein System, Taktlinien dagegen
1522 üblicherweise auf die gesamte Partitur.
1523
1524 Innerhalb von LilyPond sind diese Regeln und
1525 Informationshappen in @emph{Kontexten} (engl.
1526 contexts) gruppiert.  Der @code{Voice} (Stimmen)-Kontext
1527 wurde schon vorgestellt.  Daneben
1528 gibt es noch die @code{Staff} (Notensystem-) und
1529 @code{Score} (Partitur)-Kontexte.  Kontexte sind
1530 hierarchisch geschichtet um die hierarchische
1531 Struktur einer Partitur zu spiegeln.  Ein @code{Staff}-Kontext
1532 kann zum Beispiel viele @code{Voice}-Kontexte beinhalten,
1533 und ein @code{Score}-Kontext kann viele
1534 @code{Staff}-Kontexte beinhalten.
1535
1536 @quotation
1537 @sourceimage{context-example,5cm,,}
1538 @end quotation
1539
1540 Jeder Kontext hat die Aufgabe, bestimmte Notationsregeln
1541 zu erzwingen, bestimmte Notationsobjekte zu erstellen und
1542 verbundene Elemente zu ordnen.  Der @code{Voice}-Kontext
1543 zum Beispiel kann eine Vorzeichenregel einführen und der
1544 @code{Staff}-Kontext hält diese Regel dann aufrecht, um
1545 einzuordnen, ob ein Versetzungszeichen gesetzt werden
1546 muss oder nicht.
1547
1548 Ein anderes Beispiel: die Synchronisation der Taktlinien ist
1549 standardmäßig im @code{Score}-Kontext verankert.  Manchmal sollen
1550 die Systeme einer Partitur aber unterschiedliche Taktarten
1551 enthalten, etwa in einer polymetrischen Partitur mit
1552 4/4- und 3/4-Takt.  In diesem Fall müssen also die Standardeinstellungen
1553 der @code{Score}- und @code{Staff}-Kontexte verändert werden.
1554
1555 In einfachen Partituren werden die Kontexte implizit erstellt,
1556 und es kann sein, dass Sie sich dessen gar nicht bewusst sind.
1557 Für etwas größere Projekte, etwa mit vielen Systemen, müssen
1558 die Kontexte aber explizit erstellt werden, um sicher zu gehen,
1559 dass man auch wirklich die erwünschte Zahl an Systemen in der
1560 richtigen Reihenfolge erhält.  Wenn Stücke mit spezialisierter
1561 Notation gesetzt werden sollen, ist es üblich, die existierenden
1562 Kontexte zu verändern oder gar gänzlich neue zu definieren.
1563
1564 Zusätzlich zu den @code{Score,} @code{Staff} und
1565 @code{Voice}-Kontexten gibt es noch Kontexte, die zwischen
1566 der Partitur- und Systemebene liegen und Gruppen von Systemen
1567 kontrollieren.  Das sind beispielsweise der
1568 @code{PianoStaff} und @code{ChoirStaff}-Kontext.  Es gibt zusätzlich
1569 alternative Kontexte für Systeme und Stimmen sowie eigene Kontexte
1570 für Gesangstexte, Perkussion, Griffsymbole, Generalbass usw.
1571
1572 Die Bezeichnungen all dieser Kontexte werden von einem oder mehreren
1573 englischen
1574 Wörtern gebildet, dabei wird jedes Wort mit einem Großbuchstaben
1575 begonnen und direkt an das folgende ohne Bindestrich oder Unterstrich
1576 angeschlossen, etwa
1577 @code{GregorianTranscriptionStaff}.
1578
1579
1580 @seealso
1581 Notationreferenz: @ruser{Was sind Kontexte?}.
1582
1583
1584 @node Kontexte erstellen
1585 @subsection Kontexte erstellen
1586 @translationof Creating contexts
1587
1588 @funindex \new
1589 @funindex new
1590 @cindex Neue Kontexte
1591 @cindex Erstellen von Kontexten
1592 @cindex Kontexte, Erstellen
1593
1594 In einer Eingabedatei enthält eine @code{Score}-Umgebung (einen
1595 Kontext), die mit
1596 dem Befehl @code{\score} eingeleitet wird, nur einen einzigen
1597 musikalischen Ausdruck und mit ihm verknüpft eine Ausgabedefinition
1598 (entweder eine @code{\layout}- oder eine @code{\midi}-Umgebung).
1599 Üblicherweise wird der @code{Score}-Kontext automatisch von
1600 LilyPond erstellt, wenn der musikalische Ausdruck interpretiert
1601 wird.
1602
1603 Wenn nur ein System vorhanden ist, kann man es ruhig
1604 LilyPond überlassen, auch die @code{Voice}- und @code{Staff}-Kontexte
1605 zu erstellen, aber für komplexere Partituren ist es notwendig,
1606 sie mit einem Befehl zu erstellen.  Der einfachste Befehl
1607 hierzu ist @code{\new}.  Er wird dem musikalischen Ausdruck
1608 vorangestellt, etwa so:
1609
1610 @example
1611 \new @var{Typ} @var{musikalischer Ausdruck}
1612 @end example
1613
1614 @noindent
1615 wobei @var{Typ} eine Kontextbezeichnung (wie etwa @code{Staff} oder
1616 @code{Voice}) ist.  Dieser Befehl erstellt einen neuen Kontext und
1617 beginnt, den @var{muskalischen Ausdruck} innerhalb dieses
1618 Kontexts auszuwerten.
1619
1620 @warning{Der @bs{}@code{new Score}-Befehl sollte nicht benutzt werden,
1621 weil der Partitur-(Score)-Kontext der obersten Ebene
1622 normalerweise automatisch erstellt wird, wenn der musikalische Ausdruck
1623 innerhalb der @code{\score}-Umgebung interpretiert wird.  Standard-Werte
1624 von Kontexteigenschaften, die für einen bestimmten @code{Score} gelten
1625 sollen, können innerhalb der @bs{}@code{layout}-Umgebung definiert werden.
1626 Siehe @ref{Kontexteigenschaften verändern}.}
1627
1628 Wir haben schon viele explizite Beispiel gesehen, in denen
1629 neue @code{Staff}- und @code{Voice}-Kontexte erstellt wurden, aber
1630 um noch einmal ins Gedächtnis zu rufen, wie diese Befehle benutzt
1631 werden, hier ein kommentiertes Beispiel aus dem richtigen Leben:
1632
1633 @lilypond[quote,verbatim,ragged-right]
1634 \score {  % start of single compound music expression
1635   <<  % start of simultaneous staves section
1636     \time 2/4
1637     \new Staff {  % create RH staff
1638       \clef "treble"
1639       \key g \minor
1640       \new Voice {  % create voice for RH notes
1641         \relative {  % start of RH notes
1642           d''4 ees16 c8.
1643           d4 ees16 c8.
1644         }  % end of RH notes
1645       }  % end of RH voice
1646     }  % end of RH staff
1647     \new Staff <<  % create LH staff; needs two simultaneous voices
1648       \clef "bass"
1649       \key g \minor
1650       \new Voice {  % create LH voice one
1651         \voiceOne
1652         \relative {  % start of LH voice one notes
1653           g8 <bes d> ees, <g c>
1654           g8 <bes d> ees, <g c>
1655         }  % end of LH voice one notes
1656       }  % end of LH voice one
1657       \new Voice {  % create LH voice two
1658         \voiceTwo
1659         \relative {  % start of LH voice two notes
1660           g4 ees
1661           g4 ees
1662         }  % end of LH voice two notes
1663       }  % end of LH voice two
1664     >>  % end of LH staff
1665   >>  % end of simultaneous staves section
1666 }  % end of single compound music expression
1667 @end lilypond
1668
1669 (Beachten Sie, dass wir hier alle Zeilen, die eine neue
1670 Umgebung entweder mit einer geschweiften Klammer (@code{@{})
1671 oder doppelten spitzen Klammern (@code{<<}) öffnen, mit
1672 jeweils zwei Leerzeichen, und die entsprechenden
1673 schließenden Klammern mit der gleichen Anzahl Leerzeichen
1674 eingerückt werden.  Dies ist nicht erforderlich, es wird aber
1675 zu einem großen Teil die nicht passenden Klammerpaar-Fehler
1676 eliminieren und ist darum sehr empfohlen.  Es macht es
1677 möglich, die Struktur einer Partitur auf einen Blick zu
1678 verstehen, und alle nicht passenden Klammern
1679 erschließen sich schnell.  Beachten Sie auch, dass das
1680 untere Notensystem mit eckigen Klammern erstellt wird,
1681 denn innerhalb dieses Systems brauchen wir zwei Stimmen,
1682 um die Noten darzustellen.  Das obere System braucht
1683 nur einen einzigen musikalischen Ausdruck und ist deshalb
1684 von geschweiften Klammern umschlossen.)
1685
1686 @cindex Kontexte, Benennung
1687 @cindex Benennung von Kontexten
1688
1689 Der @code{\new}-Befehl kann einem Kontext auch einen
1690 Namen zur Identifikation geben, um ihn von anderen Kontexten des
1691 selben Typs zu unterscheiden:
1692
1693 @example
1694 \new @var{Typ} = @var{Name} @var{musikalischer Ausdruck}
1695 @end example
1696
1697 Beachten Sie den Unterschied zwischen der Bezeichnung des
1698 Kontexttyps (@code{Staff}, @code{Voice}, usw.) und dem
1699 Namen, der aus beliebigen Buchstaben bestehen kann
1700 und vom Benutzer frei erfunden werden kann.  Zahlen und
1701 Leerzeichen können auch benutzt werden, in dem Fall
1702 muss der Name aber von doppelten Anführungszeichen
1703 umgeben werden, also etwa
1704 @code{\new Staff = "Mein System 1" @var{musikalischer Ausdruck}}.
1705 Der Name wird
1706 benutzt, um später auf genau diesen spezifischen Kontext
1707 zu verweisen.  Dieses Vorgehen wurde schon in dem Abschnitt
1708 zu Gesangstexten angewandt, siehe @ref{Stimmen und Text}.
1709
1710
1711 @seealso
1712 Notationsreferenz: @ruser{Kontexte erstellen}.
1713
1714
1715 @node Was sind Engraver?
1716 @subsection Was sind Engraver?
1717 @translationof Engravers explained
1718
1719 @cindex Engraver
1720 @cindex Stempel (Engraver)
1721
1722 Jedes Zeichen des fertigen Notensatzes von LilyPond wird
1723 von einem @code{Engraver} (Stempel) produziert.  Es gibt
1724 also einen Engraver, der die Systeme erstellt, einen, der die
1725 Notenköpfe ausgibt, einen für die Hälse, einen für die
1726 Balken usw. Insgesamt gibt es über 120 Engraver! Zum
1727 Glück braucht man für die meisten Partituren nur ein
1728 paar Engraver, und für einfache Partituren muss man eigentlich
1729 überhaupt nichts über sie wissen.
1730
1731 Engraver leben und wirken aus den Kontexten heraus.  Engraver
1732 wie der @code{Metronome_mark_engraver}, dessen Aktion
1733 und Ausgabe sich auf die gesamte Partitur bezieht, wirken
1734 in der obersten Kontextebene -- dem @code{Score}-Kontext.
1735
1736 Der @code{Clef_engraver} (Schlüssel-Stempel) und der
1737 @code{Key_engraver} (Vorzeichen-Stempel)  finden sich in
1738 jedem @code{Staff}-Kontext, denn unterschiedliche Systeme
1739 könnten unterschiedliche Tonarten und Notenschlüssel
1740 brauchen.
1741
1742 Der @code{Note_heads_engraver} (Notenkopf-Stempel) und der
1743 @code{Stem_engraver} (Hals-Stempel) befinden sich in jedem
1744 @code{Voice}-Kontext, der untersten Kontextebene.
1745
1746 Jeder Engraver bearbeitet die bestimmten Objekte, die mit
1747 seiner Funktion assoziiert sind, und verwaltet die Eigenschaften
1748 dieser Funktion.  Diese Eigenschaften, wie etwa die Eigenschaften,
1749 die mit Kontexten assoziiert sind, können verändert werden,
1750 um die Wirkungsweise des Engravers oder das Erscheinungsbild
1751 der von ihm produzierten Elemente in der Partitur zu ändern.
1752
1753 Alle Engraver haben zusammengesetzte Bezeichnung, die aus
1754 den (englischen) Wörtern ihrer Funktionsweise bestehen.  Nur
1755 das erste Wort hat einen Großbuchstaben, und die restlichen
1756 Wörter werden mit einem Unterstrich angefügt.  Ein
1757 @code{Staff_symbol_engraver} verantwortet also die Erstellung
1758 der Notenlinien, ein @code{Clef_engraver} entscheidet über die
1759 Art der Notenschlüssel und setzt die entsprechenden Symbole; damit
1760 wird gleichzeitig die Referenztonhöhe auf dem Notensystem festgelegt.
1761
1762 Hier die meistgebräuchlichen Engraver mit ihrer Funktion.
1763 Sie werden sehen, dass es mit etwas Englischkenntnissen
1764 einfach ist, die Funktion eines Engravers von seiner Bezeichnung
1765 abzuleiten.
1766
1767 @multitable @columnfractions .3 .7
1768 @headitem Engraver
1769   @tab Funktion
1770 @item Accidental_engraver
1771   @tab Erstellt Versetzungszeichen, vorgeschlagene und Warnversetzungszeichen.
1772 @item Beam_engraver
1773   @tab Erstellt Balken.
1774 @item Clef_engraver
1775   @tab Erstellt Notenschlüssel.
1776 @item Completion_heads_engraver
1777   @tab Teilt Noten in kleiner Werte, wenn sie über die Taktlinie reichen.
1778 @item Dynamic_engraver
1779   @tab Erstellt Dynamik-Klammern und Dynamik-Texte.
1780 @item Forbid_line_break_engraver
1781   @tab Verbietet Zeilenumbrüche, solange ein musikalisches Element aktiv ist.
1782 @item Key_engraver
1783   @tab Erstellt die Vorzeichen.
1784 @item Metronome_mark_engraver
1785   @tab Erstellt Metronom-Bezeichnungen.
1786 @item Note_heads_engraver
1787   @tab Erstellt Notenköpfe.
1788 @item Rest_engraver
1789   @tab Erstellt Pausen.
1790 @item Staff_symbol_engraver
1791   @tab Erstellt die (standardmäßig) fünf Notenlinien des Systems.
1792 @item Stem_engraver
1793   @tab Erstellt die Notenhälse und Tremolos mit einem Hals.
1794 @item Time_signature_engraver
1795   @tab Erstellt die Taktartbezeichnung.
1796 @end multitable
1797
1798 @smallspace
1799
1800 Es soll später gezeigt werden, wie die LilyPond-Ausgabe
1801 verändert werden kann, indem die Wirkungsweise der
1802 Engraver beeinflusst wird.
1803
1804
1805 @seealso
1806 Referenz der Interna: @rinternals{Engravers and Performers}.
1807
1808
1809 @node Kontexteigenschaften verändern
1810 @subsection Kontexteigenschaften verändern
1811 @translationof Modifying context properties
1812
1813 @cindex Kontext-Eigenschaften, Verändern
1814 @cindex Eigenschaften von Kontexten
1815 @cindex Verändern von Kontext-Eigenschaften
1816 @funindex \set
1817 @funindex \unset
1818 @funindex set
1819 @funindex unset
1820
1821 Kontexte sind dafür verantwortlich, die Werte bestimmter
1822 Kontext-@emph{Eigenschaften} zu speichern.  Viele davon
1823 können verändert werden, um die Interpretation der
1824 Eingabe zu beeinflussen und die Ausgabe zu verändern.
1825 Kontexte werden mit dem @code{\set}-Befehl geändert.
1826 Er wird in Form
1827
1828 @example
1829 \set @var{KontextBezeichnung}.@var{eigenschaftsBezeichnung} = #@var{Wert}
1830 @end example
1831
1832 @noindent
1833 verwendet, wobei @var{KontextBezeichnung} üblicherweise
1834 @code{Score},
1835 @code{Staff} oder @code{Voice} ist.  Der erste Teil kann auch
1836 ausgelassen werden; in diesem Fall wird der aktuelle
1837 Kontext (üblicherweise @code{Voice}) eingesetzt.
1838
1839 Die Bezeichnung von Kontexten-Eigenschaften besteht
1840 aus zwei Wörtern, die ohne Unterstrich oder Bindestrich
1841 verbunden sind.  Alle außer dem ersten werden am Anfang
1842 groß geschrieben.  Hier einige Beispiele der gebräuchlichsten
1843 Kontext-Eigenschaften.  Es gibt sehr viel mehr.
1844
1845 @c attempt to force this onto a new page
1846 @need 50
1847 @multitable @columnfractions .25 .15 .45 .15
1848 @headitem eigenschaftsBezeichnung
1849   @tab Typ
1850   @tab Funktion
1851   @tab Beispiel-Wert
1852 @item extraNatural
1853   @tab boolescher Wert
1854   @tab Wenn wahr, werden zusätzliche Auflösungszeichen vor Versetzungszeichen gesetzt.
1855   @tab @code{#t}, @code{#f}
1856 @item currentBarNumber
1857   @tab Integer
1858   @tab Setzt die aktuelle Taktnummer.
1859   @tab @code{50}
1860 @item doubleSlurs
1861   @tab boolescher Wert
1862   @tab Wenn wahr, werden Legatobögen über und unter die Noten gesetzt.
1863   @tab @code{#t}, @code{#f}
1864 @item instrumentName
1865   @tab Text
1866   @tab Setzt die Instrumentenbezeichnung am Anfang eines Systems.
1867   @tab @code{"Cello I"}
1868 @item fontSize
1869   @tab reale Zahl
1870   @tab Vergrößert oder verkleinert die Schriftgröße.
1871   @tab @code{2.4}
1872 @item stanza
1873   @tab Text
1874   @tab Setzt den Text zu Beginn einer Strophe.
1875   @tab @code{"2"}
1876 @end multitable
1877
1878 @noindent
1879 Ein boolescher Wert ist entweder wahr  (@code{#t})
1880 oder falsch (@code{#f}),
1881 ein Integer eine positive ganze Zahl, ein Real (reelle Zahl) eine positive
1882 oder negative Dezimalzahl, und Text wird in doppelte
1883 Anführungszeichen (Shift+2) eingeschlossen.  Beachten Sie
1884 das Vorkommen des Rautenzeichens
1885 (@code{#}) an unterschiedlichen Stellen: als Teil eines
1886 booleschen Wertes vor dem @code{t} oder @code{f}, aber
1887 auch vor einem @emph{Wert} in der
1888 @code{\set}-Befehlskette.  Wenn ein boolescher Wert
1889 eingegeben werden soll, braucht man also zwei
1890 Rautenzeichen, z. B. @code{##t}.
1891
1892 @cindex Eigenschaften in Kontexten
1893 @cindex Veränderung von Eigenschaften in Kontexten
1894
1895 Bevor eine Eigenschaft geändert werden kann, muss man wissen,
1896 in welchem Kontext sie sich befindet.  Manchmal versteht das
1897 sich von selbst, aber in einigen Fällen kann es zunächst
1898 unverständlich erscheinen.  Wenn der falsche Kontext angegeben
1899 wird, wird keine Fehlermeldung produziert, aber die
1900 Veränderung wird einfach nicht ausgeführt.
1901 @code{instrumentName} befindet sich offensichtlich innerhalb
1902 von einem @code{Staff}-Kontext, denn das Notensystem soll
1903 benannt werden.  In dem folgenden Beispiel erhält das erste
1904 System korrekt die Instrumentenbezeichnung, das zweite aber
1905 nicht, weil der Kontext ausgelassen wurde.
1906
1907 @lilypond[quote,verbatim,ragged-right]
1908 <<
1909   \new Staff \relative {
1910     \set Staff.instrumentName = #"Soprano"
1911     c''2 c
1912  }
1913   \new Staff \relative {
1914     \set instrumentName = #"Alto"  % Wrong!
1915     d'2 d
1916  }
1917 >>
1918 @end lilypond
1919
1920 Denken Sie daran, dass der Standardkontext @code{Voice} ist; in dem
1921 zweiten @code{\set}-Befehl wird also die Eigenschaft @code{instrumentName}
1922 im @code{Voice}-Kontext auf @qq{Alto}, gesetzt, aber weil LilyPond diese
1923 Eigenschaft nicht im @code{Voice}-Kontext vermutet, passiert einfach
1924 gar nichts.  Das ist kein Fehler, und darum wird auch keine Fehlermeldung
1925 produziert.
1926
1927 Ebenso gibt es keine Fehlermeldung, wenn die Kontext-Bezeichnung
1928 falsch geschrieben wird und die Änderung also nicht ausgeführt werden
1929 kann.  Tatsächlich kann eine beliebige (ausgedachte) Kontextbezeichnung
1930 mit dem @code{\set}-Befehl eingesetzt werden, genauso wie die, die
1931 wirklich existieren.  Aber wenn LilyPond diese Bezeichnung nicht
1932 zuordnen kann, bewirkt der Befehl einfach gar nichts.  Manche Editoren,
1933 die Unterstützung für LilyPond-Befehle mitbringen, markieren existierende
1934 Kontextbezeichnungen mit einem Punkt, wenn man mit der Maus darüber
1935 fährt (wie etwa JEdit mit dem LilyPondTool), oder markieren
1936 unbekannte Bezeichnungen anders (wie ConTEXT).  Wenn Sie keinen
1937 Editor mit LilyPond-Unterstützung einsetzen, wird empfohlen, die
1938 Bezeichnungen in der Interna-Referenz zu überprüfen: siehe
1939 @rinternals{Tunable context properties}, oder
1940 @rinternals{Contexts}.
1941
1942 Die Eigenschaft @code{instrumentName} wird erst aktiv, wenn sie
1943 in einem @code{Staff}-Kontext gesetzt wird, aber manche Eigenschaften
1944 können in mehr als einem Kontext benutzt werden.  Als Beispiel mag die
1945 @code{extraNatural}-Eigenschaft dienen, die zusätzliche Erniedrigungszeichen
1946 setzt.  Die Standardeinstellung ist ##t (wahr) in allen Systemen.
1947 Wenn sie nur in einem @code{Staff} (Notensystem) auf ##f (falsch)
1948 gesetzt wird, wirkt sie sich auf alle Noten in diesem System aus.  Wird
1949 sie dagegen in der @code{Score}-Umgebung gesetzt, wirkt sich das
1950 auf alle darin enthaltenen Systeme aus.
1951
1952 Das also bewirkt, dass die zusätzlichen Erniedrigungszeichen in einem System
1953 ausgeschaltet sind:
1954
1955 @lilypond[quote,verbatim,ragged-right]
1956 <<
1957   \new Staff \relative {
1958     aeses'2 aes
1959   }
1960   \new Staff \relative {
1961     \set Staff.extraNatural = ##f
1962     aeses'2 aes
1963   }
1964 >>
1965 @end lilypond
1966
1967 @noindent
1968 während das dazu dient, sie in allen Systemen auszuschalten:
1969
1970 @lilypond[quote,verbatim,ragged-right]
1971 <<
1972   \new Staff \relative {
1973     aeses'2 aes
1974   }
1975   \new Staff \relative {
1976     \set Score.extraNatural = ##f
1977     aeses'2 aes
1978   }
1979 >>
1980 @end lilypond
1981
1982 Ein anderes Beispiel ist die Eigenschaft @code{clefTransposition}:
1983 wenn sie im @code{Score}-Kontext gesetzt wird, ändert sich sofort
1984 der Wert der Oktavierung in allen aktuellen Systemen und wird
1985 auf einen neuen Wert gesetzt, der sich auf alle Systeme auswirkt.
1986
1987 Der gegenteilige Befehl, @code{\unset}, entfernt die Eigenschaft
1988 effektiv wieder von dem Kontext: in den meisten Fällen wird der
1989 Kontext auf ihre Standardeinstellungen zurückgesetzt.
1990 Normalerweise wird aber @code{\unset} nicht benötigt,
1991 denn ein neues @code{\set} erledigt alles, was man braucht.
1992
1993 Die @code{\set}- und @code{\unset}-Befehle könne überall im
1994 Eingabequelltext erscheinen und werden aktiv von dem Moment, an
1995 dem sie auftreten bis zum Ende der Partitur oder bis die Eigenschaft
1996 mit @code{\set} oder @code{\unset} neu gesetzt wird.  Versuchen
1997 wir als Beispiel, die Schriftgröße mehrmals zu ändern, was sich unter anderem
1998 auf die Notenköpfe auswirkt.  Die Änderung bezieht sich immer auf den Standard,
1999 nicht vom letzten gesetzten Wert.
2000
2001 @lilypond[quote,verbatim,ragged-right]
2002 \relative {
2003   c'4 d
2004   % make note heads smaller
2005   \set fontSize = #-4
2006   e4 f |
2007   % make note heads larger
2008   \set fontSize = #2.5
2009   g4 a
2010   % return to default size
2011   \unset fontSize
2012   b4 c |
2013 }
2014 @end lilypond
2015
2016 Wir haben jetzt gesehen, wie sich die Werte von unterschiedlichen
2017 Eigenschaften ändern lassen.  Beachten Sie, dass Integer und
2018 Zahlen immer mit einem Rautenzeichen beginnen, während
2019 die Werte wahr und falsch (mit @code{##t} und @code{##f}
2020 notiert) immer mit zwei Rauten beginnen.  Eine Eigenschaft, die
2021 aus Text besteht, muss in doppelte Anführungsstriche gesetzt werden,
2022 auch wenn wir später sehen werden, dass Text auf eine sehr viel
2023 allgemeinere und mächtigere Art mit dem @code{\markup}-Befehl
2024 eingegeben werden kann.
2025
2026 @subsubheading Kontexteigenschaften mit @code{\with} setzen
2027
2028 @funindex \with
2029 @funindex with
2030 @cindex Kontexteigenschaft, setzen mit \with
2031
2032 Die Standardwerte von Kontexteigenschaften können zu dem Zeitpunkt
2033 definiert werden, an welchem der Kontext erstellt wird.  Manchmal
2034 ist das eine saubere Weise, eine Eigenschaft zu bestimmen, die für
2035 die gesamte Partitur erhalten bleiben soll.  Wenn ein Kontext mit
2036 einem @code{\new}-Befehl erstellt wird, können in einer
2037 direkt folgenden @code{\with @{ .. @}}-Umgebung die Eigenschaften
2038 bestimmt werden.  Wenn also die zusätzlichen
2039 Auflösungszeichen für eine ganze Partitur gelten sollen, könnte
2040 man schreiben:
2041
2042 @example
2043 \new Staff \with @{ extraNatural = ##f @}
2044 @end example
2045
2046 @noindent
2047 etwa so:
2048
2049 @lilypond[quote,verbatim,ragged-right]
2050 <<
2051   \new Staff
2052     \relative {
2053       gisis'4 gis aeses aes
2054     }
2055   \new Staff \with { extraNatural = ##f } {
2056     \relative {
2057       gisis'4 gis aeses aes
2058     }
2059   }
2060 >>
2061 @end lilypond
2062
2063 Eigenschaften, die auf diese Arte gesetzt werden, können immer noch
2064 dynamisch mit dem @code{\set}-Befehl geändert werden und mit
2065 @code{\unset} auf ihre Standardeinstellungen zurückgesetzt werden,
2066 wie sie vorher in der @code{\with}-Umgebung definiert wurden.
2067
2068 @cindex Schriftgröße, Standardeinstellung
2069 @cindex fontSize (Schriftgröße), Standardeinstellung
2070
2071 Wenn also die @code{fontSize}-Eigenschaft in einer @code{\with}-Umgebung
2072 definiert wird, wird der Standardwert für die Schriftgröße
2073 festgelegt.  Wenn dieser Wert später mit @code{\set} verändert
2074 wird, kann dieser neue Standardwert mit dem Befehl
2075 @code{\unset fontSize} wieder erreicht werden.
2076
2077 @subsubheading Kontexteigenschaften mit @code{\context} setzen
2078
2079 @cindex Kontexteigenschaften, mit \context setzen
2080 @cindex Eigenschaften von Kontexten, mit \context setzen
2081 @funindex \context
2082 @funindex context
2083
2084 Die Werte von Kontext-Eigenschaften können in @emph{allen} Kontexten
2085 eines bestimmten Typs (etwa alle @code{Staff}-Kontexte)
2086 gleichzeitig mit einem Befehl gesetzt werden.  Der Kontext wird
2087 spezifiziert, indem seine Bezeichnung benutzt wird, also etwa
2088 @code{Staff}, mit einem Backslash davor: @code{\Staff}.  Der Befehl
2089 für die Eigenschaft ist der gleiche, wie er auch in der
2090 @code{\with}-Konstruktion benutzt wird, wie oben gezeigt.  Er wird in
2091 eine @code{\context}-Umgebung eingebettet, welche wiederum innerhalb
2092 von einer @code{\layout}-Umgebung steht.  Jede @code{\context}-Umgebung
2093 wirkt sich auf alle Kontexte dieses Types aus, welche sich in der
2094 aktuellen Partitur befinden (d. h. innerhalb einer @code{\score}-
2095 oder @code{\book}-Umgebung).  Hier ist ein Beispiel, wie man diese
2096 Funktion anwendet:
2097
2098 @lilypond[verbatim,quote]
2099 \score {
2100   \new Staff {
2101     \relative {
2102       cisis''4 e d cis
2103     }
2104   }
2105   \layout {
2106     \context {
2107       \Staff
2108       extraNatural = ##t
2109     }
2110   }
2111 }
2112 @end lilypond
2113
2114 Wenn die Veränderung der Eigenschaft sich auf alle Systeme einer
2115 @code{score}-Umgebung beziehen soll:
2116
2117 @lilypond[quote,verbatim]
2118 \score {
2119   <<
2120     \new Staff {
2121       \relative {
2122         gisis'4 gis aeses aes
2123       }
2124     }
2125     \new Staff {
2126       \relative {
2127         gisis'4 gis aeses aes
2128       }
2129     }
2130   >>
2131   \layout {
2132     \context {
2133       \Score extraNatural = ##f
2134     }
2135   }
2136 }
2137 @end lilypond
2138
2139 @noindent
2140 Kontext-Eigenschaften, die auf diese Weise gesetzt werden, können für
2141 bestimmten Kontexte überschrieben werden, indem die
2142 @code{\with}-Konstruktion eingesetzt wird, oder mit @code{\set}-Befehlen
2143 innerhalb der aktuellen Noten.
2144
2145
2146 @seealso
2147 Notationsreferenz:
2148 @ruser{Die Standardeinstellungen von Kontexten ändern},
2149 @ruser{Der set-Befehl}.
2150
2151 Referenz der Interna:
2152 @rinternals{Contexts},
2153 @rinternals{Tunable context properties}.
2154
2155
2156 @node Engraver hinzufügen und entfernen
2157 @subsection Engraver hinzufügen und entfernen
2158 @translationof Adding and removing engravers
2159
2160 @cindex Engraver, Hinzufügen von
2161 @cindex Engraver, Entfernen von
2162 @cindex Hinzufügen von Engravern
2163 @cindex Entfernen von Engravern
2164
2165 @funindex \consists
2166 @funindex \remove
2167 @funindex consists
2168 @funindex remove
2169
2170 Wir haben gesehen, dass jeder Kontext eine Anzahl an Engravern
2171 (Stempeln) beinhaltet, von denen ein jeder einen bestimmten
2172 Teil des fertigen Notensatzes produziert, wie z. B. Taktlinien,
2173 Notenlinien, Notenköpfe, Hälse usw. Wenn ein Engraver aus
2174 einem Kontext entfernt wird, kann er seine Objekte nicht
2175 länger produzieren.  Das ist eine eher grobe Methode, die
2176 Notenausgabe zu beeinflussen, aber es kann von großem
2177 Nutzen sein.
2178
2179
2180 @subsubheading Einen einzelnen Kontext verändern
2181
2182 Um einen Engraver von einem einzelnen Kontext zu entfernen,
2183 wir der @code{\with}-Befehl eingesetzt, direkt hinter
2184 den Befehl zur Kontext-Erstellung geschrieben, wie
2185 in dem vorigen Abschnitt gezeigt.
2186
2187 Als ein Beispiel wollen wir das Beispiel aus dem letzten
2188 Abschnitt produzieren, aber die Notenlinien entfernen.  Erinnern
2189 Sie sich, dass die Notenlinien vom @code{Staff_symbol_engraver}
2190 erstellt werden.
2191
2192 @lilypond[quote,verbatim,ragged-right]
2193 \new Staff \with {
2194   \remove "Staff_symbol_engraver"
2195 }
2196 \relative {
2197   c'4 d
2198   \set fontSize = #-4  % make note heads smaller
2199   e4 f |
2200   \set fontSize = #2.5  % make note heads larger
2201   g4 a
2202   \unset fontSize  % return to default size
2203   b4 c |
2204 }
2205 @end lilypond
2206
2207 @cindex Ambitus-Engraver
2208
2209 Engraver können auch zu einem bestimmten
2210 Kontext hinzugefügt werden.  Dies geschieht
2211 mit dem Befehl
2212
2213 @code{\consists @var{Engraver_bezeichnung}}
2214
2215 @noindent
2216 welcher auch wieder innerhalb der @code{\with}-Umgebung
2217 gesetzt wird.  Einige Chorpartituren zeigen einen
2218 Ambitus direkt zu Beginn der ersten Notenzeile, um
2219 den Stimmumfang des Stückes anzuzeigen, siehe auch
2220 @rglos{ambitus}.  Der Ambitus wird vom
2221 @code{Ambitus_engraver} erstellt, der normalerweise
2222 in keinem Kontext enthalten ist.  Wenn wir
2223 ihn zum @code{Voice}-Kontext hinzufügen, errechnet
2224 er automatisch den Stimmumfang für diese einzelne Stimme
2225 und zeigt ihn an:
2226
2227 @lilypond[quote,verbatim,ragged-right]
2228 \new Staff <<
2229   \new Voice \with {
2230     \consists "Ambitus_engraver"
2231   } {
2232     \relative {
2233       \voiceOne
2234       c''4 a b g
2235     }
2236   }
2237   \new Voice {
2238     \relative {
2239       \voiceTwo
2240       c'4 e d f
2241     }
2242   }
2243 >>
2244 @end lilypond
2245
2246 @noindent
2247 wenn wir den Ambitus-Engraver allerdings zum
2248 @code{Staff}-Kontext hinzufügen, wird der Stimmumfang aller
2249 Stimmen in diesem Notensystem errechnet:
2250
2251 @lilypond[quote,verbatim,ragged-right]
2252 \new Staff \with {
2253   \consists "Ambitus_engraver"
2254 }
2255 <<
2256   \new Voice {
2257     \relative {
2258       \voiceOne
2259       c''4 a b g
2260     }
2261   }
2262   \new Voice {
2263     \relative {
2264       \voiceTwo
2265       c'4 e d f
2266     }
2267   }
2268 >>
2269 @end lilypond
2270
2271
2272 @subsubheading Alle Kontexte des gleichen Typs verändern
2273
2274 @funindex \layout
2275
2276 Die vorigen Beispiele zeigen, wie man Engraver in einem
2277 bestimmten Kontext hinzufügen oder entfernen kann.  Es ist
2278 auch möglich, Engraver in jedem Kontext eines bestimmten
2279 Typs hinzuzufügen oder zu entfernen.  Dazu werden die
2280 Befehle in dem entsprechenden Kontext in einer
2281 @code{\layout}-Umgebung gesetzt.  Wenn wir also z. B.
2282 den Ambitus für jedes Notensystem in einer Partitur
2283 mit vier Systemen anzeigen wollen, könnte das so aussehen:
2284
2285 @lilypond[quote,verbatim,ragged-right]
2286 \score {
2287   <<
2288     \new Staff {
2289       \relative {
2290         c''4 a b g
2291       }
2292     }
2293     \new Staff {
2294       \relative {
2295         c'4 a b g
2296       }
2297     }
2298     \new Staff {
2299       \clef "G_8"
2300       \relative {
2301         c'4 a b g
2302       }
2303     }
2304     \new Staff {
2305       \clef "bass"
2306       \relative {
2307         c4 a b g
2308       }
2309     }
2310   >>
2311   \layout {
2312     \context {
2313       \Staff
2314       \consists "Ambitus_engraver"
2315     }
2316   }
2317 }
2318 @end lilypond
2319
2320 @noindent
2321 Die Werte der Kontext-Eigenschaften können auch für
2322 alle Kontexte eines bestimmten Typs auf die gleiche
2323 Weise geändert werden, indem der @code{\set}-Befehl in
2324 einer @code{\context}-Umgebung angewendet wird.
2325
2326
2327 @seealso
2328 Notationsreferenz: @ruser{Umgebungs-Plugins verändern},
2329 @ruser{Die Standardeinstellungen von Kontexten ändern}.
2330
2331 @knownissues
2332 Die @code{Stem_engraver} und @code{Beam_engraver} fügen ihre
2333 Objekte an Notenköpfe an.  Wenn der @code{Note_heads_engraver}
2334 entfernt wird, werden keine Notenköpfe erstellt und demzufolge auch keine
2335 Hälse oder Bögen dargestellt.
2336
2337
2338 @node Erweiterung der Beispiele
2339 @section Erweiterung der Beispiele
2340 @translationof Extending the templates
2341
2342 Sie haben sich durch die Übung gearbeitet, Sie
2343 wissen jetzt, wie Sie Notensatz produzieren, und Sie
2344 haben die grundlegenden Konzepte verstanden.  Aber wie
2345 erhalten Sie genau die Systeme, die Sie brauchen? Es
2346 gibt eine ganze Anzahl an fertigen Vorlagen
2347 (siehe @ref{Vorlagen}), mit denen Sie beginnen
2348 können.  Aber was, wenn Sie nicht genau das finden,
2349 was Sie brauchen? Lesen Sie weiter.
2350
2351 @menu
2352 * Sopran und Cello::
2353 * Vierstimmige SATB-Partitur::
2354 * Eine Partitur von Grund auf erstellen::
2355 * Tipparbeit durch Variablen und Funktionen ersparen::
2356 * Partitur und Stimmen::
2357 @end menu
2358
2359
2360 @node Sopran und Cello
2361 @subsection Sopran und Cello
2362 @translationof Soprano and cello
2363
2364 @cindex Template, Verändern von
2365 @cindex Vorlage, Verändern von
2366 @cindex Veränderung von Vorlagen
2367
2368 Beginnen Sie mit der Vorlage, die Ihren Vorstellungen
2369 am nächsten kommt.  Nehmen wir einmal an, Sie wollen
2370 ein Stück für Sopran und Cello schreiben.  In diesem
2371 Fall könnten Sie mit der Vorlage @qq{Noten und Text}
2372 (für die Sopran-Stimme) beginnen.
2373
2374 @example
2375 \version @w{"@version{}"}
2376 melody = \relative @{
2377   \clef "treble"
2378   \key c \major
2379   \time 4/4
2380   a4 b c d
2381 @}
2382
2383 text = \lyricmode @{
2384   Aaa Bee Cee Dee
2385 @}
2386
2387 \score @{
2388   <<
2389     \new Voice = "one" @{
2390       \autoBeamOff
2391       \melody
2392     @}
2393     \new Lyrics \lyricsto "one" \text
2394   >>
2395   \layout @{ @}
2396   \midi @{ @}
2397 @}
2398 @end example
2399
2400 Jetzt wollen wir die Cello-Stimme hinzufügen.  Schauen wir uns das
2401 Beispiel @qq{Nur Noten} an:
2402
2403 @example
2404 \version @w{"@version{}"}
2405
2406 melody = \relative @{
2407   \clef "treble"
2408   \key c \major
2409   \time 4/4
2410   a4 b c d
2411 @}
2412
2413 \score @{
2414   \new Staff \melody
2415   \layout @{ @}
2416   \midi @{ @}
2417 @}
2418 @end example
2419
2420 Wir brauchen den @code{\version}-Befehl nicht zweimal.  Wir
2421 brauchen aber den @code{melody}-Abschnitt.  Wir wollen
2422 keine zwei @code{\score} (Partitur)-Abschnitte -- mit zwei
2423 @code{\score}-Abschnitten würden wir zwei Stimmen
2424 getrennt voneinander erhalten.  In diesem Fall wollen wir
2425 sie aber zusammen, als Duett.  Schließlich brauchen wir
2426 innerhalb des @code{\score}-Abschnittes nur einmal die
2427 Befehle @code{\layout} und @code{\midi}.
2428
2429 Wenn wir jetzt einfach zwei @code{melody}-Abschnitte in
2430 unsere Datei kopieren würden, hätten wir zwei @code{melody}-Variable.
2431 Das würde zu keinem Fehler führen, aber die zweite von ihnen
2432 würde für beide Melodien eingesetzt werden.  Wir müssen
2433 ihnen also andere Bezeichnungen zuweisen, um sie voneinander
2434 zu unterscheiden.  Nennen wir die Abschnitte also @code{SopranNoten}
2435 für den Sopran und @code{CelloNoten} für die Cellostimme.  Wenn
2436 wir schon dabei sind, können wir @code{text}auch nach
2437 @code{SoprText} umbenennen.  Denken Sie daran, beide
2438 Vorkommen der Bezeichnung zu ändern: einmal die Definition
2439 gleich am Anfang (@code{melody = \relative c' @{ }) und
2440 dann auch noch die Benutzung der Variable innerhalb des
2441 @code{\score}-Abschnittes.
2442
2443 Gleichzeitig können wir auch noch das Notensystem für das
2444 Cello ändern -- das Cello hat normalerweise einen Bassschlüssel.
2445 Wir ändern auch die Noten etwas ab.
2446
2447 @example
2448 \version @w{"@version{}"}
2449
2450 SopranNoten = \relative @{
2451   \clef "treble"
2452   \key c \major
2453   \time 4/4
2454   a4 b c d
2455 @}
2456
2457 SoprText = \lyricmode @{
2458   Aaa Bee Cee Dee
2459 @}
2460
2461 CelloNoten = \relative @{
2462   \clef "bass"
2463   \key c \major
2464   \time 4/4
2465   d4 g fis8 e d4
2466 @}
2467
2468 \score @{
2469   <<
2470     \new Voice = "eins" @{
2471       \autoBeamOff
2472       \SopranNoten
2473     @}
2474     \new Lyrics \lyricsto "eins" \Soprantext
2475   >>
2476   \layout @{ @}
2477   \midi @{ @}
2478 @}
2479 @end example
2480
2481 Das sieht schon vielversprechend aus, aber die Cello-Stimme
2482 erscheint noch nicht im Notensatz -- wir haben vergessen,
2483 sie in den @code{\score}-Abschnitt einzufügen.  Wenn die
2484 Cello-Stimme unterhalb des Soprans erscheinen soll, müssen
2485 wir
2486
2487 @example
2488 \new Staff \CelloNoten
2489 @end example
2490
2491 @noindent
2492 unter dem Befehl für den Sopran hinzufügen.  Wir brauchen auch
2493 die spitzen Klammern (@code{<<} und @code{>>}) um die
2494 Noten, denn damit wird LilyPond mitgeteilt, dass mehr als
2495 ein Ereignis gleichzeitig stattfindet (in diesem Fall sind es
2496 zwei @code{Staff}-Instanzen).  Der @code{\score}-Abschnitt
2497 sieht jetzt so aus:
2498
2499 @c Indentation in this example is deliberately poor
2500 @example
2501 \score @{
2502   <<
2503     <<
2504       \new Voice = "eins" @{
2505         \autoBeamOff
2506         \SopranNoten
2507       @}
2508       \new Lyrics \lyricsto "eins" \SoprText
2509     >>
2510     \new Staff \CelloNoten
2511   >>
2512   \layout @{ @}
2513   \midi @{ @}
2514 @}
2515 @end example
2516
2517 @noindent
2518 Das sieht etwas unschön aus, vor allem die Einrückung stimmt
2519 nicht mehr.  Das können wir aber schnell in Ordnung bringen.
2520 Hier also die gesamte Vorlage für Sopran und Cello:
2521
2522 @lilypond[quote,verbatim,ragged-right,addversion]
2523 sopranoMusic = \relative {
2524   \clef "treble"
2525   \key c \major
2526   \time 4/4
2527   a4 b c d
2528 }
2529
2530 sopranoLyrics = \lyricmode {
2531   Aaa Bee Cee Dee
2532 }
2533
2534 celloMusic = \relative {
2535   \clef "bass"
2536   \key c \major
2537   \time 4/4
2538   d4 g fis8 e d4
2539 }
2540
2541 \score {
2542   <<
2543     <<
2544       \new Voice = "one" {
2545         \autoBeamOff
2546         \sopranoMusic
2547       }
2548       \new Lyrics \lyricsto "one" \sopranoLyrics
2549     >>
2550     \new Staff \celloMusic
2551   >>
2552   \layout { }
2553   \midi { }
2554 }
2555 @end lilypond
2556
2557
2558 @seealso
2559 Die Vorlagen, mit denen wir begonnen haben, können im
2560 Anhang @qq{Vorlagen} gefunden werden, siehe
2561 @ref{Ein einzelnes System}.
2562
2563
2564 @node Vierstimmige SATB-Partitur
2565 @subsection Vierstimmige SATB-Partitur
2566 @translationof Four-part SATB vocal score
2567
2568 @cindex Vorlage, SATB
2569 @cindex Vorlage, Chorpartitur
2570 @cindex SATB-Vorlage
2571 @cindex Chorpartitur, Vorlage
2572
2573 Die meisten Partituren für vierstimmigen gemischten Chor
2574 mit Orchesterbegleitung (wie etwa Mendelssohns @notation{Elias}
2575 oder Händels @notation{Messias})  sind so aufgebaut, dass
2576 für jede der vier Stimmen ein eigenes System besteht und
2577 die Orchesterbegleitung dann als Klavierauszug darunter
2578 notiert wird.  Hier ein Beispiel aus Händels @notation{Messias}:
2579
2580 @c The following should appear as music without code
2581 @lilypond[quote,ragged-right]
2582 global = { \key d \major \time 4/4 }
2583
2584 sopranoMusic = \relative {
2585   \clef "treble"
2586   r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
2587 }
2588 sopranoWords = \lyricmode {
2589   Wor -- thy | is the lamb | that was slain |
2590 }
2591 altoMusic = \relative {
2592   \clef "treble"
2593   r4 a'2 a4 | fis4. fis8 a2 | g4 fis e2 |
2594 }
2595 altoWords = \sopranoWords
2596 tenorMusic = \relative {
2597   \clef "G_8"
2598   r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
2599 }
2600 tenorWords = \sopranoWords
2601 bassMusic = \relative {
2602   \clef "bass"
2603   r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
2604 }
2605 bassWords = \sopranoWords
2606 upper = \relative {
2607   \clef "treble"
2608   \global
2609   r4 <a' d fis>2 <a e' a>4
2610   <d fis d'>4. <d fis d'>8 <a d a'>2
2611   <g cis g'>4 <a d fis> <a cis e>2
2612 }
2613 lower = \relative {
2614   \clef "bass"
2615   \global
2616   <d, d'>4 <d d'>2 <cis cis'>4
2617   <b b'>4. <b' b'>8 <fis fis'>2
2618   <e e'>4 <d d'> <a' a'>2
2619 }
2620
2621 \score {
2622   <<  % combine ChoirStaff and PianoStaff in parallel
2623     \new ChoirStaff <<
2624       \new Staff = "sopranos" <<
2625         \set Staff.instrumentName = #"Soprano"
2626         \new Voice = "sopranos" {
2627           \global
2628           \sopranoMusic
2629         }
2630       >>
2631       \new Lyrics \lyricsto "sopranos" {
2632         \sopranoWords
2633       }
2634       \new Staff = "altos" <<
2635         \set Staff.instrumentName = #"Alto"
2636         \new Voice = "altos" {
2637           \global
2638           \altoMusic
2639         }
2640       >>
2641       \new Lyrics \lyricsto "altos" {
2642         \altoWords
2643       }
2644       \new Staff = "tenors" <<
2645         \set Staff.instrumentName = #"Tenor"
2646         \new Voice = "tenors" {
2647           \global
2648           \tenorMusic
2649         }
2650       >>
2651       \new Lyrics \lyricsto "tenors" {
2652         \tenorWords
2653       }
2654       \new Staff = "basses" <<
2655         \set Staff.instrumentName = #"Bass"
2656         \new Voice = "basses" {
2657           \global
2658           \bassMusic
2659         }
2660       >>
2661       \new Lyrics \lyricsto "basses" {
2662         \bassWords
2663       }
2664     >>  % end ChoirStaff
2665
2666     \new PianoStaff <<
2667       \set PianoStaff.instrumentName = #"Piano"
2668       \new Staff = "upper" \upper
2669       \new Staff = "lower" \lower
2670     >>
2671   >>
2672 }
2673 @end lilypond
2674
2675 Keine der Vorlage bietet diesen Aufbau direkt an.  Die Vorlage, die
2676 am nächsten daran liegt, ist @qq{SATB-Partitur und automatischer
2677 Klavierauszug}, siehe @ref{Vokalensemble}.  Wir müssen diese
2678 Vorlage aber so anpassen, dass die Noten für das Klavier nicht
2679 automatisch aus dem Chorsatz generiert werden.  Die Variablen
2680 für die Noten und den Text des Chores sind in Ordnung, wir
2681 müssen nun noch Variablen für die Klaviernoten hinzufügen.
2682
2683 Die Reihenfolge, in welcher die Variablen in das Chorsystem
2684 (@code{ChoirStaff}) eingefügt werden, entspricht nicht der
2685 in dem Beispiel oben.  Wir wollen sie so sortieren, dass die
2686 Texte jeder Stimme direkt unter den Noten notiert werden.
2687 Alle Stimmen sollten als @code{\voiceOne} notiert werden,
2688 welches die Standardeinstellung ist; wir können also die
2689 @code{\voiceXXX}-Befehle entfernen.  Wir müssen auch noch
2690 den Schlüssel für den Tenor ändern.  Die Methode, mit der
2691 der Text den Stimmen zugewiesen wird, ist uns noch nicht
2692 bekannt, darum wollen wir sie umändern auf die Weise, die
2693 wir schon kennen.  Wir fügen auch noch Instrumentbezeichnungen
2694 zu den Systemen hinzu.
2695
2696 Damit erhalten wir folgenden @code{ChoirStaff}:
2697
2698 @example
2699 \new ChoirStaff <<
2700   \new Staff = "sopranos" <<
2701     \set Staff.instrumentName = #"Sopran"
2702     \new Voice = "sopranos" @{
2703       \global
2704       \sopranoMusic
2705     @}
2706   >>
2707   \new Lyrics \lyricsto "sopranos" @{
2708     \sopranoWords
2709   @}
2710   \new Staff = "altos" <<
2711     \set Staff.instrumentName = #"Alt"
2712     \new Voice = "altos" @{
2713       \global
2714       \altoMusic
2715     @}
2716   >>
2717   \new Lyrics \lyricsto "altos" @{
2718     \altoWords
2719   @}
2720   \new Staff = "tenors" <<
2721     \set Staff.instrumentName = #"Tenor"
2722     \new Voice = "tenors" @{
2723       \global
2724       \tenorMusic
2725     @}
2726   >>
2727   \new Lyrics \lyricsto "tenors" @{
2728     \tenorWords
2729   @}
2730   \new Staff = "basses" <<
2731     \set Staff.instrumentName = #"Bass"
2732     \new Voice = "basses" @{
2733       \global
2734       \bassMusic
2735     @}
2736   >>
2737   \new Lyrics \lyricsto "basses" @{
2738     \bassWords
2739   @}
2740 >>  % end ChoirStaff
2741 @end example
2742
2743 Als nächstes müssen wir das Klaviersystem bearbeiten.
2744 Das ist einfach: wir nehmen einfach den Klavierteil
2745 aus der @qq{Piano solo}-Vorlage:
2746
2747 @example
2748 \new PianoStaff <<
2749   \set PianoStaff.instrumentName = #"Piano  "
2750   \new Staff = "oben" \oben
2751   \new Staff = "unten" \unten
2752 >>
2753 @end example
2754
2755 @noindent
2756 und fügen die Variablen @code{oben}
2757 und @code{unten} hinzu.
2758
2759 Das Chorsystem und das Pianosystem müssen mit
2760 spitzen Klammern kombiniert werden, damit beide
2761 übereinander erscheinen:
2762
2763 @example
2764 <<  % ChoirStaff und PianoStaff parallel kombinieren
2765   \new ChoirStaff <<
2766     \new Staff = "sopranos" <<
2767       \new Voice = "sopranos" @{
2768         \global
2769         \sopranoMusic
2770       @}
2771     >>
2772     \new Lyrics \lyricsto "sopranos" @{
2773       \sopranoWords
2774      @}
2775     \new Staff = "altos" <<
2776       \new Voice = "altos" @{
2777         \global
2778         \altoMusic
2779       @}
2780     >>
2781     \new Lyrics \lyricsto "altos" @{
2782       \altoWords
2783     @}
2784     \new Staff = "tenors" <<
2785       \clef "G_8"  % tenor clef
2786       \new Voice = "tenors" @{
2787         \global
2788         \tenorMusic
2789       @}
2790     >>
2791     \new Lyrics \lyricsto "tenors" @{
2792       \tenorWords
2793     @}
2794     \new Staff = "basses" <<
2795       \clef "bass"
2796       \new Voice = "basses" @{
2797         \global
2798         \bassMusic
2799       @}
2800     >>
2801     \new Lyrics \lyricsto "basses" @{
2802       \bassWords
2803     @}
2804   >>  % end ChoirStaff
2805
2806   \new PianoStaff <<
2807     \set PianoStaff.instrumentName = #"Piano"
2808     \new Staff = "upper" \upper
2809     \new Staff = "lower" \lower
2810   >>
2811 >>
2812 @end example
2813
2814 Alles miteinander kombiniert und mit den Noten für drei
2815 Takte sieht unser Beispiel nun so aus:
2816
2817 @lilypond[quote,verbatim,ragged-right,addversion]
2818 global = {
2819   \key d \major
2820   \time 4/4
2821 }
2822 sopranoMusic = \relative {
2823   \clef "treble"
2824   r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
2825 }
2826 sopranoWords = \lyricmode {
2827   Wor -- thy | is the lamb | that was slain |
2828 }
2829 altoMusic = \relative {
2830   \clef "treble"
2831   r4 a'2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2832 }
2833 altoWords = \sopranoWords
2834 tenorMusic = \relative {
2835   \clef "G_8"
2836   r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
2837 }
2838 tenorWords = \sopranoWords
2839 bassMusic = \relative {
2840   \clef "bass"
2841   r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
2842 }
2843 bassWords = \sopranoWords
2844 upper = \relative {
2845   \clef "treble"
2846   \global
2847   r4 <a' d fis>2 <a e' a>4
2848   <d fis d'>4. <d fis d'>8 <a d a'>2
2849   <g cis g'>4 <a d fis> <a cis e>2
2850 }
2851 lower = \relative {
2852   \clef "bass"
2853   \global
2854   <d, d'>4 <d d'>2 <cis cis'>4
2855   <b b'>4. <b' b'>8 <fis fis'>2
2856   <e e'>4 <d d'> <a' a'>2
2857 }
2858
2859 \score {
2860   <<  % combine ChoirStaff and PianoStaff in parallel
2861     \new ChoirStaff <<
2862       \new Staff = "sopranos" <<
2863         \set Staff.instrumentName = #"Soprano"
2864         \new Voice = "sopranos" {
2865           \global
2866           \sopranoMusic
2867         }
2868       >>
2869       \new Lyrics \lyricsto "sopranos" {
2870         \sopranoWords
2871       }
2872       \new Staff = "altos" <<
2873         \set Staff.instrumentName = #"Alto"
2874         \new Voice = "altos" {
2875           \global
2876           \altoMusic
2877         }
2878       >>
2879       \new Lyrics \lyricsto "altos" {
2880         \altoWords
2881       }
2882       \new Staff = "tenors" <<
2883         \set Staff.instrumentName = #"Tenor"
2884         \new Voice = "tenors" {
2885           \global
2886           \tenorMusic
2887         }
2888       >>
2889       \new Lyrics \lyricsto "tenors" {
2890         \tenorWords
2891       }
2892       \new Staff = "basses" <<
2893         \set Staff.instrumentName = #"Bass"
2894         \new Voice = "basses" {
2895           \global
2896           \bassMusic
2897         }
2898       >>
2899       \new Lyrics \lyricsto "basses" {
2900         \bassWords
2901       }
2902     >>  % end ChoirStaff
2903
2904     \new PianoStaff <<
2905       \set PianoStaff.instrumentName = #"Piano  "
2906       \new Staff = "upper" \upper
2907       \new Staff = "lower" \lower
2908     >>
2909   >>
2910 }
2911 @end lilypond
2912
2913
2914 @node Eine Partitur von Grund auf erstellen
2915 @subsection Eine Partitur von Grund auf erstellen
2916 @translationof Building a score from scratch
2917
2918 @cindex Template, eigene schreiben
2919 @cindex Vorlagen, eigene schreiben
2920 @cindex eigene Vorlagen erstellen
2921 @cindex Erstellen von eigenen Vorlagen
2922 @cindex Schreiben von eigenen Vorlagen
2923
2924 Wenn Sie einige Fertigkeit im Schreiben von LilyPond-Code
2925 gewonnen haben, werden Sie vielleicht feststellen, dass es
2926 manchmal einfacher ist, von Grund auf anzufangen, anstatt
2927 die fertigen Vorlagen zu verändern.  Auf diese Art könne Sie
2928 auch Ihren eigenen Stil entwickeln, und ihn der Musik anpassen,
2929 die Sie notieren wollen.  Als Beispiel wollen wir demonstrieren,
2930 wie man die Partitur für ein Orgelpreludium von Grund auf
2931 konstruiert.
2932
2933 Beginnen wir mit dem Kopf, dem @code{header}-Abschnitt.
2934 Hier notieren wir den Titel, den Namen des Komponisten usw.
2935 Danach schreiben wir die einzelnen Variablen auf und
2936 schließlich am Ende die eigentliche Partitur, den
2937 @code{\score}-Abschnitt.  Beginnen wir mit einer groben
2938 Struktur, in die wir dann die Einzelheiten nach und nach
2939 eintragen.
2940
2941 Als Beispiel benutzen wir zwei Takte aus dem Orgelpreludium
2942 @notation{Jesu, meine Freude} von J. S. Bach, notiert
2943 für zwei Manuale und Pedal.  Sie können die Noten am Ende
2944 dieses Abschnittes sehen.  Das obere Manual trägt zwei Stimmen,
2945 das untere und das Pedalsystem jeweils nur eine.  Wir
2946 brauchen also vier Variablen für die Noten und eine, um
2947 Taktart und Tonart zu definieren.
2948
2949 @example
2950 \version @w{"@version{}"}
2951 \header @{
2952   title = "Jesu, meine Freude"
2953   composer = "J. S. Bach"
2954 @}
2955 keyTime = @{ \key c \minor \time 4/4 @}
2956 ManualOneVoiceOneMusic = @{ s1 @}
2957 ManualOneVoiceTwoMusic = @{ s1 @}
2958 ManualTwoMusic = @{ s1 @}
2959 PedalOrganMusic = @{ s1 @}
2960
2961 \score @{
2962 @}
2963 @end example
2964
2965 Im Moment haben wir eine unsichtbare
2966 Note in jede Stimme eingesetzt (@code{s1}).
2967 Die Noten werden später hinzugefügt.
2968
2969 Als nächstes schauen wir uns an, was in die
2970 Partitur (die @code{\score}-Umgebung)
2971 kommt.  Dazu wird einfach die Notensystemstruktur
2972 konstruiert, die wir benötigen.  Orgelmusik
2973 wird meistens auf drei Systemen notiert, eins
2974 für jedes Manual und ein drittes für die Pedalnoten.
2975 Die Systeme für die Manuale werden mit einer
2976 geschweiften Klammer verbunden, wir
2977 benutzen hier also ein @code{PianoStaff}.
2978 Das erste Manualsystem braucht zwei Stimmen,
2979 das zweite nur eine.
2980
2981 @example
2982 \new PianoStaff <<
2983   \new Staff = "ManualOne" <<
2984     \new Voice @{
2985       \ManualOneVoiceOneMusic
2986     @}
2987     \new Voice @{
2988       \ManualOneVoiceTwoMusic
2989     @}
2990   >>  % Ende ManualOne Systemkontext
2991   \new Staff = "ManualTwo" <<
2992     \new Voice @{
2993       \ManualTwoMusic
2994     @}
2995   >>  % Ende ManualTwo Systemkontext
2996 >>  % Ende PianoStaff Kontext
2997 @end example
2998
2999 Als nächstes soll das System für das Pedal hinzugefügt
3000 werden.  Es soll unter das Klaviersystem gesetzt
3001 werden, aber muss gleichzeitig mit ihm erscheinen.
3002 Wir brauchen also spitze Klammern um beide
3003 Definitionen.  Sie wegzulassen würde eine Fehlermeldung
3004 in der Log-Datei hervorrufen.  Das ist ein sehr
3005 häufiger Fehler, der wohl auch Ihnen früher
3006 oder später unterläuft.  Sie können das fertige
3007 Beispiel am Ende des Abschnittes kopieren und die
3008 Klammern entfernen, um zu sehen, wie die
3009 Fehlermeldung aussehen kann, die Sie in solch
3010 einem Fall erhalten würden.
3011
3012 @example
3013 <<  % PianoStaff and Pedal Staff must be simultaneous
3014   \new PianoStaff <<
3015     \new Staff = "ManualOne" <<
3016       \new Voice @{
3017         \ManualOneVoiceOneMusic
3018       @}
3019       \new Voice @{
3020         \ManualOneVoiceTwoMusic
3021       @}
3022     >>  % end ManualOne Staff context
3023     \new Staff = "ManualTwo" <<
3024       \new Voice @{
3025         \ManualTwoMusic
3026       @}
3027     >>  % end ManualTwo Staff context
3028   >>  % end PianoStaff context
3029   \new Staff = "PedalOrgan" <<
3030     \new Voice @{
3031       \PedalOrganMusic
3032     @}
3033   >>
3034 >>
3035 @end example
3036
3037 Es ist nicht notwendig, die simultane Konstruktion
3038 @code{<< .. >>} innerhalb des zweiten Manualsystems
3039 und des Pedalsystems zu benutzen, denn sie enthalten
3040 nur eine Stimme.  Andererseits schadet es nichts, sie
3041 zu schreiben, und es ist eine gute Angewohnheit, immer
3042 die spitzen Klammern nach einem @code{\new Staff} zu
3043 schreiben, wenn mehr als eine Stimme vorkommen könnten.
3044 Für Stimmen (@code{Voice}) dagegen gilt genau das
3045 Gegenteil: eine neue Stimme sollte immer von
3046 geschweiften Klammern (@code{@{ .. @}}) gefolgt
3047 werden, falls Sie ihre Noten in mehrere Variable aufteilen,
3048 die nacheinander gesetzt werden sollen.
3049
3050 Fügen wir also diese Struktur zu der @code{\score}-Umgebung
3051 hinzu und bringen wir die Einzüge in Ordnung.  Gleichzeitig
3052 wollen wir die richtigen Schlüssel setzen und die Richtung der
3053 Hälse und Bögen in den Stimmen des oberen Systems
3054 kontrollieren, indem die obere Stimme ein
3055 @code{\voiceOne}, die untere dagegen ein @code{\voiceTwo}
3056 erhält.  Die Taktart und Tonart werden mit unserer fertigen
3057 Variable @code{\keyTime} eingefügt.
3058
3059 @example
3060 \score @{
3061   <<  % PianoStaff and Pedal Staff must be simultaneous
3062     \new PianoStaff <<
3063       \new Staff = "ManualOne" <<
3064         \keyTime  % set time signature and key
3065         \clef "treble"
3066         \new Voice @{
3067           \voiceOne
3068           \ManualOneVoiceOneMusic
3069         @}
3070         \new Voice @{
3071           \voiceTwo
3072           \ManualOneVoiceTwoMusic
3073         @}
3074       >>  % end ManualOne Staff context
3075       \new Staff = "ManualTwo" <<
3076         \keyTime
3077         \clef "bass"
3078         \new Voice @{
3079           \ManualTwoMusic
3080         @}
3081       >>  % end ManualTwo Staff context
3082     >>  % end PianoStaff context
3083     \new Staff = "PedalOrgan" <<
3084       \keyTime
3085       \clef "bass"
3086       \new Voice @{
3087         \PedalOrganMusic
3088       @}
3089     >>  % end PedalOrgan Staff
3090   >>
3091 @}  % end Score context
3092 @end example
3093
3094 @cindex Spreizbarkeit von Systemen
3095 @cindex Dehnung von Systemen, vertikal
3096 @cindex Systeme, vertikales Dehnen
3097
3098 Das Layout des Orgelsystems oben ist fast perfekt, es hat jedoch einen kleinen
3099 Fehler, den man nicht bemerken kann, wenn man nur ein einzelnes System
3100 betrachtet:  Der Abstand des Pedalsystems zum System der linken Hand
3101 sollte in etwa der gleiche sein wie der Abstand zwischen den Systemen
3102 der linken und rechten Hand.  Die Dehnbarkeit von Systemen in einem
3103 Klaviersystem (@code{PianoStaff})-Kontext ist beschränkt (sodass der
3104 Abstand zwischen den Systemen der linken und rechten Hand nicht zu groß
3105 wird), und das Pedalsystem sollte sich genauso verhalten.
3106
3107 @cindex Untereigenschaft
3108 @cindex sub-properties
3109 @cindex graphische Objekte
3110 @cindex Grobs
3111 @cindex Objekte, graphische
3112
3113 Die Spreizbarkeit von Systemen kann mit der @code{staff-staff-spacing}-Eigenschaft
3114 des @code{VerticalAxisGroup}-@qq{graphischen Objekts} (üblicherweise als
3115 @qq{Grob} innerhalb der LilyPond-Dokumentation bezeichnet) kontrolliert
3116 werden.  An dieser Stelle brauchen Sie sich um die Details nicht zu
3117 sorgen, sie werden später erklärt.  Sehr Neugierige können sich den
3118 Abschnitt @ruser{Grundlagen zum Verändern von Eigenschaften} anschauen.  Im Moment
3119 kann man nicht nur die @code{strechability} (Spreizbarkeit)-Untereigenschaft verändern,
3120 darum müssen hier auch die anderen Untereigenschaften kopiert werden.  Die
3121 Standardeinstellungen dieser Untereigenschaften finden sich in der Datei
3122 @file{scm/define-grobs.scm} in den Definitionen für den
3123 @code{VerticalAxisGroup}-Grob.  Der Wert für @code{strechability} wird aus
3124 der Definition für das Klaviersystem (@code{PianoStaff}) entnommen
3125 (in der Datei @file{ly/engraver-init.ly}), damit die Werte identisch
3126 sind.
3127
3128 @example
3129 \score @{
3130   <<  % PianoStaff and Pedal Staff must be simultaneous
3131     \new PianoStaff <<
3132       \new Staff = "ManualOne" <<
3133         \keyTime  % set key and time signature
3134         \clef "treble"
3135         \new Voice @{
3136           \voiceOne
3137           \ManualOneVoiceOneMusic
3138         @}
3139         \new Voice @{
3140           \voiceTwo
3141           \ManualOneVoiceTwoMusic
3142         @}
3143       >>  % end ManualOne Staff context
3144       \new Staff = "ManualTwo" \with @{
3145         \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3146       @} <<
3147         \keyTime
3148         \clef "bass"
3149         \new Voice @{
3150           \ManualTwoMusic
3151         @}
3152       >>  % end ManualTwo Staff context
3153     >>  % end PianoStaff context
3154     \new Staff = "PedalOrgan" <<
3155       \keyTime
3156       \clef "bass"
3157       \new Voice @{
3158         \PedalOrganMusic
3159       @}
3160     >>  % end PedalOrgan Staff
3161   >>
3162 @}  % end Score context
3163 @end example
3164
3165 Damit ist das Grundgerüst fertig.  Jede Orgelmusik mit drei
3166 Systemen hat die gleiche Struktur, auch wenn die Anzahl der Stimmen
3167 in einem System sich ändern kann.  Jetzt müssen wir nur noch
3168 die Noten einfügen und alle Teile zusammenfügen, indem wir
3169 die Variablen mit einem Backslash in die Partitur einbauen.
3170
3171 @lilypond[quote,verbatim,ragged-right,addversion]
3172 \header {
3173   title = "Jesu, meine Freude"
3174   composer = "J S Bach"
3175 }
3176 keyTime = { \key c \minor \time 4/4 }
3177 ManualOneVoiceOneMusic = \relative {
3178   g'4 g f ees |
3179   d2 c2 |
3180 }
3181 ManualOneVoiceTwoMusic = \relative {
3182   ees'16 d ees8~ 16 f ees d c8 d~ d c~ |
3183   8 c4 b8 c8. g16 c b c d |
3184 }
3185 ManualTwoMusic = \relative {
3186   c'16 b c8~ 16 b c g a8 g~ 16 g aes ees |
3187   f16 ees f d g aes g f ees d e8~ 8es16 f ees d |
3188 }
3189 PedalOrganMusic = \relative {
3190   r8 c16 d ees d ees8~ 16 a, b g c b c8 |
3191   r16 g ees f g f g8 c,2 |
3192 }
3193
3194 \score {
3195   <<  % PianoStaff and Pedal Staff must be simultaneous
3196     \new PianoStaff <<
3197       \new Staff = "ManualOne" <<
3198         \keyTime  % set time signature and key
3199         \clef "treble"
3200         \new Voice {
3201           \voiceOne
3202           \ManualOneVoiceOneMusic
3203         }
3204         \new Voice {
3205           \voiceTwo
3206           \ManualOneVoiceTwoMusic
3207         }
3208       >>  % end ManualOne Staff context
3209       \new Staff = "ManualTwo" \with {
3210         \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3211       } <<
3212         \keyTime
3213         \clef "bass"
3214         \new Voice {
3215           \ManualTwoMusic
3216         }
3217       >>  % end ManualTwo Staff context
3218     >>  % end PianoStaff context
3219     \new Staff = "PedalOrgan" <<
3220       \keyTime
3221       \clef "bass"
3222       \new Voice {
3223         \PedalOrganMusic
3224       }
3225     >>  % end PedalOrgan Staff context
3226   >>
3227 }  % end Score context
3228 @end lilypond
3229
3230 @seealso
3231 Glossar:
3232 @rglos{system}.
3233
3234
3235 @node Tipparbeit durch Variablen und Funktionen ersparen
3236 @subsection Tipparbeit durch Variablen und Funktionen ersparen
3237 @translationof Saving typing with variables and functions
3238
3239 @cindex Variablen
3240
3241 Bis jetzt wurde immer derartige Notation vorgestellt:
3242
3243 @lilypond[quote,verbatim,ragged-right]
3244 hornNotes = \relative { c''4 b dis c }
3245
3246 \score {
3247   {
3248     \hornNotes
3249   }
3250 }
3251 @end lilypond
3252
3253 Sie können sich vorstellen, dass das etwa für minimalistische
3254 Musik sehr nützlich sein könnte:
3255
3256 @lilypond[quote,verbatim,ragged-right]
3257 fragmentA = \relative { a'4 a8. b16 }
3258 fragmentB = \relative { a'8. gis16 ees4 }
3259 violin = \new Staff {
3260   \fragmentA \fragmentA |
3261   \fragmentB \fragmentA |
3262 }
3263
3264 \score {
3265   {
3266     \violin
3267   }
3268 }
3269 @end lilypond
3270
3271 Diese Variablen (die man auch als Makros oder Benutzer-Befehl
3272 bezeichnet) können jedoch auch für eigene Anpassungen eingesetzt
3273 werden:
3274
3275 @c TODO Avoid padtext - not needed with skylining
3276 @lilypond[quote,verbatim,ragged-right]
3277 dolce = \markup { \italic \bold dolce }
3278 padText = { \once \override TextScript.padding = #5.0 }
3279 fthenp=_\markup {
3280     \dynamic f \italic \small { 2nd } \hspace #0.1 dynamic p
3281 }
3282
3283 violin = \relative {
3284   \repeat volta 2 {
3285     c''4._\dolce b8 a8 g a b
3286     \padText
3287     c4.^"hi there!" d8 e' f g d
3288     c,4.\fthenp b8 c4 c-.
3289   }
3290 }
3291
3292 \score {
3293   {
3294     \violin
3295   }
3296   \layout{ragged-right=##t}
3297 }
3298 @end lilypond
3299
3300 Derartige Variablen sind offensichtlich sehr nützlich, zu Tipparbeit zu ersparen.  Aber es lohnt sich schon, sie zu
3301 benutzen, wenn man sie nur einmal benutzen will, denn sie
3302 vereinfachen die Struktur einer Datei sehr stark.  Hier das
3303 vorige Beispiel ohne jede Benutzung von Variablen.  Es ist
3304 sehr viel schwerer lesbar, besonders die letzte Zeile.
3305
3306 @example
3307 violin = \relative @{
3308   \repeat volta 2 @{
3309     c''4._\markup @{ \italic \bold dolce @} b8 a8 g a b
3310     \once \override TextScript.padding = #5.0
3311     c4.^"hi there!" d8 e' f g d
3312     c,4.\markup @{
3313       \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
3314     @}
3315     b8 c4 c-. |
3316   @}
3317 @}
3318 @end example
3319
3320 @c TODO Replace the following with a better example  -td
3321 @c Skylining handles this correctly without padText
3322
3323 Bisher haben wir vor allem statische Ersetzungen betrachtet:
3324 wenn LilyPond etwa @code{\padText} sieht, wird es ersetzt mit
3325 all dem Code, mit dem wir es definiert haben (also alles,
3326 was sich rechts von @code{padtext=} befindet).
3327
3328 LilyPond kann auch nicht-statische Ersetzungen bewältigen.  Man
3329 kann sie sich als Funktionen vorstellen.
3330
3331 @lilypond[quote,verbatim,ragged-right]
3332 padText =
3333 #(define-music-function
3334      (padding)
3335      (number?)
3336    #{
3337      \once \override TextScript.padding = #padding
3338    #})
3339
3340 \relative {
3341   c'''4^"piu mosso" b a b |
3342   \padText #1.8
3343   c4^"piu mosso" d e f |
3344   \padText #2.6
3345   c4^"piu mosso" fis a g |
3346 }
3347 @end lilypond
3348
3349 Die Benutzung von Variablen ist auch eine gute Möglichkeit,
3350 Arbeit zu vermeiden, wenn sich einmal die Syntax von LilyPond
3351 ändern sollte (siehe auch @rprogram{Updating old input files
3352 with convert-ly}).
3353 Wenn man eine einzige Definition hat (wie etwa @code{\dolce}),
3354 die für alle Vorkommen in der Notation eingesetzt wird, muss
3355 man auch nur einmal diese Definition aktualisieren, anstatt
3356 dass man sie in jeder @file{.ly}-Datei einzeln ändern müsste.
3357
3358
3359 @node Partitur und Stimmen
3360 @subsection Partitur und Stimmen
3361 @translationof Scores and parts
3362
3363 In Orchestermusik werden alle Noten zweimal gedruckt.  Einmal
3364 in einer Stimme für die Spieler, und einmal ein der Partitur
3365 für den Dirigenten.  Variablen können benutzen, um sich doppelte
3366 Arbeit zu ersparen.  Die Noten werden nur einmal eingegeben und
3367 in einer Variable abgelegt.  Der Inhalt der Variable wird dann
3368 benutzt um sowohl die Stimme als auch die Partitur zu erstellen.
3369
3370 Es bietet sich an, die Noten in einer extra Datei abzulegen.
3371 Nehmen wir an, dass die Datei @file{horn-music.ly} folgende
3372 Noten eines Horn/@/Fagott-Duos enthält:
3373
3374 @example
3375 hornNotes = \relative @{
3376   \time 2/4
3377   r4 f8 a | cis4 f | e4 d |
3378 @}
3379 @end example
3380
3381 @noindent
3382 Eine Stimme wird also erstellt, indem man folgendes in eine
3383 Datei schreibt:
3384
3385 @example
3386 \include "horn-music.ly"
3387
3388 \header @{
3389   instrument = "Horn in F"
3390 @}
3391
3392 @{
3393  \transpose f c' \hornNotes
3394 @}
3395 @end example
3396
3397 Die Zeile
3398
3399 @example
3400 \include "horn-music.ly"
3401 @end example
3402
3403 @noindent
3404 ersetzt den Inhalt von @file{horn-music.ly} an dieser Position
3405 in der Datei, sodass @code{hornNotes} im Folgenden definiert
3406 ist.  Der Befehl @code{\transpose f@tie{}c'} zeigt an, dass
3407 das Argument (@code{\hornNotes}) eine Quinte nach oben transponiert
3408 werden soll.  Klingendes @code{f} wird als @code{c'}, wie es
3409 die Stimmung eines normalen F-Hornes verlangt.  Die Transposition
3410 kann in folgender Notenausgabe gesehen werden:
3411
3412 @lilypond[quote,ragged-right]
3413 \transpose f c' \relative {
3414   \time 2/4
3415   r4 f8 a | cis4 f | e4 d |
3416 }
3417 @end lilypond
3418
3419 In Ensemblestücken sind manche Stimmen für viele Takte stumm.
3420 Das wird durch eine besondere Pause notiert, die Mehrtaktpause.
3421 Sie wird mit einem großen @code{R} notiert, gefolgt von der
3422 Dauer (@code{1}@tie{}für eine Ganze, @code{2}@tie{}für eine Halbe usw.).  Indem man die Dauern multipliziert, kann man auch
3423 längere Dauern erzeugen.  Diese Pause etwa dauert drei Takte
3424 in einem 2/4-Takt:
3425
3426 @example
3427 R2*3
3428 @end example
3429
3430 Wenn die Stimme gesetzt wird, werden Mehrtaktpausen komprimiert.  Das geschieht, indem man folgendes in die Datei
3431 schreibt:
3432
3433 @example
3434 \set Score.skipBars = ##t
3435 @end example
3436
3437 @noindent
3438 Dieser Befehl setzt die Eigenschaft @code{skipBars} im
3439 @code{Score}-Kontext auf wahr (@code{##t}).  Die Pause und diese Option zu der Musik von oben hinzugefügt, ergibt folgendes
3440 Beispiel:
3441
3442 @lilypond[quote,ragged-right]
3443 \transpose f c' \relative {
3444   \time 2/4
3445   \set Score.skipBars = ##t
3446   R2*3 |
3447   r4 f8 a | cis4 f | e4 d |
3448 }
3449 @end lilypond
3450
3451 Die Partitur wird erstellt, indem man alle Noten kombiniert.
3452 Angenommen, die andere Stimme ist in @code{bassoonNotes}
3453 in der Datei @file{bassoon-music.ly} definiert, würde eine
3454 Partitur erstellt mit:
3455
3456 @example
3457 \include "bassoon-music.ly"
3458 \include "horn-music.ly"
3459
3460 <<
3461   \new Staff \hornNotes
3462   \new Staff \bassoonNotes
3463 >>
3464 @end example
3465
3466 @noindent
3467 woraus sich ergibt:
3468
3469 @lilypond[quote,ragged-right]
3470 \relative <<
3471   \new Staff {
3472     \clef "treble"
3473     \time 2/4
3474     R2*3 |
3475     r4 f8 a | cis4 f | e4 d |
3476   }
3477   \new Staff {
3478     \clef "bass"
3479     \time 2/4
3480     r4 d,8 f | gis4 c | b4 bes |
3481     a8 e f4 | g4 d | gis4 f |
3482   }
3483 >>
3484 @end lilypond