]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/de/essay/engraving.itely
Merge branch 'lilypond/translation' of ssh://git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / Documentation / de / essay / engraving.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2
3 @ignore
4     Translation of GIT committish: 4582b7b24d22b2041bfcba49e716a714effcce92
5
6
7     When revising a translation, copy the HEAD committish of the
8     version that you are working on.  For details, see the Contributors'
9     Guide, node Updating translation committishes..
10 @end ignore
11
12 @c \version "2.13.4"
13
14 @node Notensatz
15 @chapter Notensatz
16 @translationof Music engraving
17
18 Dieser Abschnitt erklärt die Ziele und die Architektur von LilyPond.
19
20 @menu
21 * Notensatz::
22 * Automatisierter Notensatz::
23 * Welche Symbole?::
24 * Die Darstellung der Musik::
25 * Beispielanwendung::
26 @end menu
27
28
29 @node Notensatz
30 @unnumberedsubsec Notensatz
31 @translationof Engraving
32
33 @cindex Notensatz
34 @cindex Typographie
35 @cindex Notengravur
36 @cindex Gravur, Notensatz
37 @cindex Plattendruck, Noten
38
39 Die Kunst des Notensatzes wird auch als Notenstich bezeichnet. Dieser 
40 Begriff stammt aus dem traditionellen Notendruck. Noch bis vor etwa 20 
41 Jahren wurden Noten erstellt, indem man sie in eine Zink- oder Zinnplatte 
42 schnitt oder mit Stempeln schlug. Diese Platte wurde dann mit Druckerschwärze
43  versehen, so dass sie in den geschnittenen und gestempelten Vertiefungen 
44 blieb. Diese Vertiefungen schwärzten dann ein auf die Platte gelegtes 
45 Papier. Das Gravieren wurde vollständig von Hand erledigt. Es war darum 
46 sehr mühsam, Korrekturen anzubringen, weshalb man von vornherein richtig
47  schneiden musste. Es handelte sich dabei um ein sehr spezialisiertes Handwerk.
48
49 Heutzutage wird fast alle gedruckte Musik von Computern erstellt. Das 
50 hat einige deutliche Vorteile: Drucke sind billiger als die gravierten
51 Platten und der Computersatz kann per E-Mail verschickt werden. Leider
52 hat der intensive Einsatz des Computers die graphische Qualität
53 des Notensatzes vermindert. Mit dem Computer erstellte Noten sehen 
54 langweilig und mechanisch aus, was es erschwert, von ihnen zu spielen.
55
56
57 @c introduce illustrating aspects of engraving, font...
58 Die Abbildung unten illustriert den Unterschied zwischen  
59 traditionellem Notensatz und einem typischen Computersatz. Das 
60 dritte Bild zeigt, wie LilyPond die Formen des traditionellen
61 Satzes nachahmt. Das linke Bild zeigt ein eingescanntes b-Vorzeichen 
62 aus einer 2000 herausgegebenen Edition. Das mittlere Bild
63 zeigt das b-Vorzeichen derselben Musik aus einer handgestochenen 
64 Bärenreiter-Ausgabe. Das linke Bild zeigt die typischen Makel
65 des Computer-Satzes: Die Notenlinien sind sehr dünn, die Schwärze 
66 des Vorzeichens entspricht den dünnen Linien und hat eine gerade 
67 Form mit scharfen Ecken und Kanten. Im Gegensatz dazu hat das
68 Bärenreiter-Vorzeichen dicke, geradezu sinnlich rundliche
69 Formen. Unser Symbol für das Vorzeichen hat neben anderen 
70 auch dieses b als Vorbild. Es ist abgerundet und passt zu unseren
71 Notenlinien, die sehr viel dicker sind als die der entsprechenden
72 Computer-Ausgabe.
73
74 @multitable @columnfractions .125 .25 .25 .25 .125
75 @item @tab
76 @ifnotinfo
77 @iftex
78 @image{pictures/henle-flat-gray,,4cm}
79 @end iftex
80 @ifnottex
81 @image{pictures/henle-flat-gray,,,png}
82 @end ifnottex
83
84 @tab
85 @iftex
86 @image{pictures/baer-flat-gray,,4cm}
87 @end iftex
88 @ifnottex
89 @image{pictures/baer-flat-gray,,,png}
90 @end ifnottex
91
92 @tab
93 @iftex
94 @image{pictures/lily-flat-bw,,4cm}
95 @end iftex
96 @ifnottex
97 @image{pictures/lily-flat-bw,,,png}
98 @end ifnottex
99 @end ifnotinfo
100 @ifinfo
101 @image{pictures/henle-flat-bw,,,png}
102 @image{pictures/baer-flat-bw,,,,png}
103 @image{pictures/lily-flat-bw,,,png}
104 @end ifinfo
105
106 @item @tab
107 Henle (2000)
108 @tab
109 Bärenreiter (1950)
110 @tab
111 LilyPond Feta-Schriftart (2003)
112
113 @end multitable
114
115
116 @cindex Musiksymbole
117 @cindex Schriftart
118 @cindex Dichte
119 @cindex Balance
120
121 @c introduce illustrating aspects of engraving, spacing...
122 Die Verteilung der Noten innerhalb des Taktes sollte ihrer Dauer
123 entsprechen. Moderne Partituren zeigen diese Verhältnisse jedoch 
124 mit einer mathematischen Präzision, die nur sehr schlechte 
125 Ergebnisse bringt. Im nächsten Beispiel ist ein Motiv zweimal
126 gesetzt: einmal mit den exakten mathematischen Längenverhältnissen, dann
127 mit kleinen Korrekturen. Welches von beiden ist mit dieser Korrektur
128 gesetzt?
129
130 @cindex Optischer Ausgleich
131 @c file spacing-optical.
132 @c need to include it here,  because we want two images.
133 @lilypond
134 \paper {
135   ragged-right = ##t
136   indent = #0.0
137 }
138
139 music = {
140    c'4 e''4 e'4 b'4 |
141    \stemDown
142    b'8[ e'' a' e'']
143    \stemNeutral
144    e'8[ e'8 e'8 e'8]
145 }
146
147 \score
148 {
149   \music
150   \layout {
151     \context {
152       \Staff
153       \override NoteSpacing #'stem-spacing-correction = #0.6
154     }
155   }
156 }
157 @end lilypond
158
159 @lilypond
160 \paper {
161   ragged-right = ##t
162   indent = #0.0
163 }
164
165 music = {
166    c'4 e''4 e'4 b'4 |
167    \stemDown
168    b'8[ e'' a' e'']
169    \stemNeutral
170    e'8[ e'8 e'8 e'8]
171 }
172 \score
173 {
174   \music
175   \layout {
176     \context {
177       \Staff
178       \override NoteSpacing #'stem-spacing-correction = #0.0
179       \override NoteSpacing #'same-direction-correction = #0.0
180       \override StaffSpacing #'stem-spacing-correction = #0.0
181     }
182   }
183 }
184 @end lilypond
185
186 @cindex normale Rhythmen
187 @cindex normale Abstände
188 @cindex Abstände, normal
189 @cindex Rhythmen, normal
190
191 In diesem Ausschnitt kommen nur Viertel vor, Noten, die in einem
192  gleichmäßigen Rhythmus gespielt werden. Die Abstände sollten das
193  widerspiegeln. Leider lässt uns aber das Auge im Stich: es beachtet
194  nicht nur den Abstand von aufeinander folgenden Notenköpfen, sondern
195  auch den ihrer Hälse. Also müssen Noten, deren Hälse in direkter
196  Folge zuerst nach oben und dann nach unten ausgerichtet sind, weiter
197  auseinander gezogen werden, während die unten/oben-Folge engere
198  Abstände fordert, und das alles auch noch in Abhängigkeit von der 
199 vertikalen Position der Noten. Das obere Beispiel ist mit dieser 
200 Korrektur gesetzt, das untere ohne. In letzterem Fall bilden sich 
201 für das Auge bei unten/oben-Folgen Notenklumpen mit schmalen Abständen 
202 zwischen den Notenhälsen.
203
204 @cindex Typographie
205
206 Musiker sind üblicherweise zu sehr damit beschäftigt, die Musik aufzuführen, 
207 als dass sie das Aussehen der Noten studieren könnten; und diese 
208 Beschäftigung mit typographischen Details mag akademisch wirken. 
209 Das ist sie aber nicht. Unser Beispielstück hat einen 
210 monotonen Rhythmus, und wenn alle Zeilen einförmig aussehen, wird 
211 das Notenblatt zu einem Labyrinth. Wenn der Spieler auch nur 
212 einmal wegschaut oder kurze Zeit unkonzentriert ist, findet er 
213 nicht mehr zurück zu der Stelle, an der er war.
214
215 Der dichtere Eindruck, den die dickeren Notenlinien und schwereren
216 Notationssymbole schaffen, eignet sich auch besser für Noten,
217 die weit vom Leser entfernt stehen, etwa auf einem Notenständer.
218 Eine sorgfältige Verteilung der Zwischenräume erlaubt es, die 
219 Noten sehr dicht zu setzen, ohne dass die Symbole zusammenklumpen. 
220 Dadurch werden unnötige Seitenumbrüche vermieden, so dass man 
221 nicht so oft blättern muss.
222
223 Dies sind die Anforderungen der Typographie: Das Layout sollte
224 schön sein -- nicht aus Selbstzweck, sondern um dem Leser zu helfen. Für 
225 Aufführungsmaterial ist das umso wichtiger, denn Musiker haben eine begrenzte
226 Aufnahmefähigkeit. Je weniger Mühe nötig ist, die Noten zu erfassen, desto mehr
227 Zeit bleibt für die Gestaltung der eigentlichen Musik. Das heißt: Gute 
228 Typographie führt zu besseren Aufführungen!
229
230 Die Beispiele haben gezeigt, dass der Notensatz eine subtile und 
231 komplexe Kunst ist und gute Ergebnisse nur mit viel Erfahrung 
232 erlangt werden können, die Musiker normalerweise nicht haben.
233 LilyPond stellt unser Bemühen dar, die graphische Qualität
234 handgestochener Notenseiten ins Computer-Zeitalter zu transportieren 
235 und sie für normale Musiker erreichbar zu machen. Wir haben 
236 unsere Algorithmen, die Gestalt der Symbole und die Programm-Einstellungen
237 darauf abgestimmt, einen Ausdruck zu erzielen, der der Qualität 
238 der alten Editionen entspricht, die wir so gerne betrachten 
239 und aus denen wir gerne spielen.
240
241
242
243 @node Automatisierter Notensatz
244 @unnumberedsubsec Automatisierter Notensatz
245 @translationof Automated engraving
246
247 @cindex Notensatz, automatisch
248 @cindex automatischer Notensatz
249
250 Wie sollen wir also jetzt die Typographie anwenden?
251 Wie können wir erwarten, dass wir in der Lage wären, 
252 ein Programm zu schreiben, dass den Beruf des 
253 Notenstechers ersetzt, wo dieser doch mehr als zehn 
254 Jahre braucht, um ein Meister zu werden?
255
256 Wir können es tatsächlich nicht! Da Typographie allein 
257 durch das menschliche Auge bestimmt ist, kann der Mensch 
258 nicht ersetzt werden. Aber sehr viel mechanische Arbeit 
259 kann automatisiert werden. Indem etwa LilyPond die üblichen 
260 Situationen kennt und bewältigt, können die restlichen 
261 Fehler von Hand beseitigt werden. Das ist schon ein 
262 großer Fortschritt im Vergleich zu den existierenden 
263 Programmen. Und mit der Zeit können immer mehr Fälle 
264 automatisiert werden, so dass immer weniger Eingriffe 
265 von Hand notwendig werden.
266
267
268 Als wir anfingen, haben wir LilyPond vollständig in der Programmiersprache C++
269 geschrieben. Das hieß, dass der Funktionsumfang des Programms vollständig durch
270 die Programmierer festgelegt war. Das stellte sich aus einer Reihe von Gründen
271 als unzureichend heraus:
272
273 @itemize @bullet
274 @item Wenn LilyPond Fehler macht, muss der Benutzer die
275 Einstellungen ändern können. Er muss also Zugang zur 
276 Formatierungsmaschinerie haben. Deshalb können die Regeln und 
277 Einstellungen nicht beim Kompilieren des Programms festgelegt 
278 werden, sondern sie müssen zugänglich sein, während das Programm
279 aktiv ist.
280
281
282 @item Notensatz ist eine Frage des Augenmaßes, und damit auch vom
283  Geschmack abhängig. Benutzer können mit unseren Entscheidungen 
284 unzufrieden sein. Darum müssen also auch die Definitionen des 
285 typographischen Stils dem Benutzer zugänglich sein.
286
287 @item Schließlich verfeinern wir unseren Formatierungsalgorithmus 
288 immer weiter, also müssen die Regeln auch flexibel sein. Die
289 Sprache C++ zwingt zu einer bestimmten Gruppierungsmethode, 
290 die nicht den Regeln für den Notensatz entspricht.
291 @end itemize
292
293 @cindex Scheme-Programmiersprache
294
295 Diese Probleme wurden angegangen, indem ein Übersetzer für 
296 die Programmiersprache Scheme integriert wurde und Teile
297 von LilyPond in Scheme neu geschrieben wurden. Die derzeitige 
298 Formatierungsarchitektur ist um die Notation von graphischen 
299 Objekten herum aufgebaut, die von Scheme-Variablen und -Funktionen
300 beschrieben werden. Diese Architektur umfasst Formatierungsregeln,
301 typographische Stile und individuelle Formatierungsentscheidungen. 
302 Der Benutzer hat direkten Zugang zu den meisten dieser Einstellungen.
303
304 Scheme-Variablen steuern Layout-Entscheidungen. Zum Beispiel haben 
305 viele graphische Objekte eine Richtungsvariable, die zwischen 
306 oben und unten (oder rechts und links) wählen kann. Hier etwa 
307 sind zwei Akkorde mit Akzenten und Arpeggien. 
308 Beim ersten Akkord sind alle Objekte nach unten (oder links)
309  ausgerichtet, beim zweiten nach oben (rechts).
310
311 @lilypond[quote,ragged-right]
312 \new Score \with {
313    \override SpacingSpanner #'spacing-increment = #3
314    \override TimeSignature #'transparent = ##t
315 } \relative c' {
316    \stemDown <e g b>4_>-\arpeggio
317    \override Arpeggio #'direction = #RIGHT
318    \stemUp <e g b>4^>-\arpeggio
319 }
320 @end lilypond
321
322 @cindex Formatierung einer Partitur
323 @cindex Partitur, Formatierung
324 @cindex Formatierungsregeln
325
326 @noindent
327 Der Prozess des Notensetzens besteht für das Programm darin,
328 die Variablen der graphischen Objekte zu lesen und zu
329 schreiben. Einige Variablen haben festgelegte Werte. So 
330 ist etwa die Dicke von vielen Linien – ein Charakteristikum 
331 des typographischen Stils – von vornherein festgelegt. 
332 Wenn sie geändert werden, ergibt sich ein anderer typographischer Eindruck.
333
334 @lilypond[quote,ragged-right]
335 fragment = {
336    \clef bass f8 as8
337    c'4-~ c'16 as g f e16 g bes c' des'4
338 }
339 <<
340    \new Staff \fragment
341    \new Staff \with {
342       \override Beam #'beam-thickness = #0.3
343       \override Stem #'thickness = #0.5
344       \override Bar #'thickness = #3.6
345       \override Tie #'thickness = #2.2
346       \override StaffSymbol #'thickness = #3.0
347       \override Tie #'extra-offset = #'(0 .  0.3)
348       }
349       \fragment
350 >>
351 @end lilypond
352
353 Formatierungsregeln sind auch vorbelegte Variablen. Zu jedem Objekt gehören
354 Variablen, die Prozeduren enthalten. Diese Prozeduren machen die eigentliche 
355 Satzarbeit aus, und wenn man sie durch andere ersetzt, kann die Darstellung 
356 von Objekten verändert werden. Im nächsten Beispiel wird die Regel, nach der 
357 die Notenköpfe gezeichnet werden, während des Ausschnitts verändert.
358
359 @lilypond[quote,ragged-right]
360 #(set-global-staff-size 30)
361
362 #(define (mc-squared grob orig current)
363   (let* ((interfaces (ly:grob-interfaces grob))
364          (pos (ly:grob-property grob 'staff-position)))
365     (if (memq 'note-head-interface interfaces)
366         (begin
367           (ly:grob-set-property! grob 'stencil
368             (grob-interpret-markup grob
369               (make-lower-markup 0.5
370                 (case pos
371                   ((-5) "m")
372                   ((-3) "c ")
373                   ((-2) (make-smaller-markup (make-bold-markup "2")))
374                   (else "bla")))))))))
375
376 \new Voice \relative c' {
377   \stemUp
378   \set autoBeaming = ##f
379   \time 2/4
380   <d f g>4
381   \once \override NoteHead #'stencil = #note-head::brew-ez-stencil
382   \once \override NoteHead #'font-size = #-7
383   \once \override NoteHead #'font-family = #'sans
384   \once \override NoteHead #'font-series = #'bold
385   <d f g>4
386   \once \override NoteHead #'style = #'cross
387   <d f g>4
388   \applyOutput #'Voice #mc-squared
389   <d f g>4
390   <<
391     { d8[ es-( fis^^ g] fis2-) }
392     \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
393   >>
394 }
395 @end lilypond
396
397
398
399 @node Welche Symbole?
400 @unnumberedsubsec Welche Symbole?
401 @translationof What symbols to engrave?
402
403 @cindex Notensatz
404 @cindex Typographie
405 @cindex Stempel
406 @cindex Matrize
407 @cindex Engraver
408 @cindex Plugin
409
410 Während des Notensatzprozesses entscheidet sich, wo
411 Symbole platziert werden. Das kann aber nur gelingen, 
412 wenn vorher entschieden wird, @emph{welche} Symbole
413 gesetzt werden sollen, also welche Art von Notation benutzt
414 werden soll.
415
416 Die heutige Notation ist ein System zur Musikaufzeichnung,
417 das sich über die letzten 1000 Jahre entwickelt hat. Die 
418 Form, die heute üblicherweise benutzt wird, stammt aus dem 
419 Barock. Auch wenn sich die grundlegenden Formen (also
420 die Notenköpfe, das Fünfliniensystem) nicht verändert haben, 
421 entwickeln sich die Details trotzdem immer noch weiter, um 
422 die Errungenschaften der Neuen Musik darstellen zu können. Die 
423 Notation umfasst also 500 Jahre Musikgeschichte. Ihre Anwendung 
424 reicht von monophonen Melodien bis zu ungeheuer komplexem Kontrapunkt 
425 für großes Orchester.
426
427 Wie bekommen wir dieses vielköpfige Monster zu fassen? 
428 Unsere Lösung ist es, eine strikte Trennung zwischen der Notation, 
429 also welche Symbole benutzt werden, und dem Satz, also wohin sie 
430 gesetzt werden, zu machen. Um das Problem anzupacken, haben wir 
431 es in kleine (programmierbare) Happen zerteilt, so dass jede Art 
432 von Symbol durch ein eigenes Plugin verarbeitet wird. Alle Plugins
433  kooperieren durch die LilyPond-Architektur. Sie sind vollständig 
434 modular und unabhängig und können somit auch unabhängig voneinander
435  entwickelt werden. Der Schreiber, der die Musik in Graphik umwandelt,
436  ist ein Kopist oder Notenstecher (engl. engraver). Darum werden 
437 die Plugins  als @code{engraver} bezeichnet.
438
439 Im nächsten Beispiel wird gezeigt, wie mit dem Plugin für die Notenköpfe, 
440 dem @code{Note_heads_engraver} (@qq{Notenkopfstecher}) der Satz begonnen wird.
441
442 @lilypond[quote,ragged-right]
443 \include "engraver-example.ily"
444
445 \score {
446   \topVoice
447   \layout {
448     \context {
449       \Voice
450       \remove "Stem_engraver"
451       \remove "Phrasing_slur_engraver"
452       \remove "Slur_engraver"
453       \remove "Script_engraver"
454       \remove "Beam_engraver"
455       \remove "Auto_beam_engraver"
456     }
457     \context {
458       \Staff
459       \remove "Accidental_engraver"
460       \remove "Key_engraver"
461       \remove "Clef_engraver"
462       \remove "Bar_engraver"
463       \remove "Time_signature_engraver"
464       \remove "Staff_symbol_engraver"
465       \consists "Pitch_squash_engraver"
466     }
467   }
468 }
469 @end lilypond
470
471 @noindent
472 Dann fügt ein @code{Staff_symbol_engraver} (@qq{Notensystemstecher}) 
473 die Notenlinien hinzu.
474
475 @lilypond[quote,ragged-right]
476 \include "engraver-example.ily"
477
478 \score {
479   \topVoice
480   \layout {
481     \context {
482       \Voice
483       \remove "Stem_engraver"
484       \remove "Phrasing_slur_engraver"
485       \remove "Slur_engraver"
486       \remove "Script_engraver"
487       \remove "Beam_engraver"
488       \remove "Auto_beam_engraver"
489     }
490     \context {
491       \Staff
492       \remove "Accidental_engraver"
493       \remove "Key_engraver"
494       \remove "Clef_engraver"
495       \remove "Bar_engraver"
496       \consists "Pitch_squash_engraver"
497       \remove "Time_signature_engraver"
498     }
499   }
500 }
501 @end lilypond
502
503 @noindent
504 Der @code{Clef_engraver} (@qq{Notenschlüsselstecher}) definiert 
505 eine Referenzstelle für das System.
506
507 @lilypond[quote,ragged-right]
508 \include "engraver-example.ily"
509
510 \score {
511   \topVoice
512   \layout {
513     \context {
514       \Voice
515       \remove "Stem_engraver"
516       \remove "Phrasing_slur_engraver"
517       \remove "Slur_engraver"
518       \remove "Script_engraver"
519       \remove "Beam_engraver"
520       \remove "Auto_beam_engraver"
521     }
522     \context {
523       \Staff
524       \remove "Accidental_engraver"
525       \remove "Key_engraver"
526       \remove "Bar_engraver"
527       \remove "Time_signature_engraver"
528     }
529   }
530 }
531 @end lilypond
532
533 @noindent
534 Der @code{Stem_engraver} (@qq{Halsstecher}) schließlich fügt
535  Hälse hinzu.
536
537 @lilypond[quote,ragged-right]
538 \include "engraver-example.ily"
539
540 \score {
541   \topVoice
542   \layout {
543     \context {
544       \Voice
545       \remove "Phrasing_slur_engraver"
546       \remove "Slur_engraver"
547       \remove "Script_engraver"
548       \remove "Beam_engraver"
549       \remove "Auto_beam_engraver"
550     }
551     \context {
552       \Staff
553       \remove "Accidental_engraver"
554       \remove "Key_engraver"
555       \remove "Bar_engraver"
556       \remove "Time_signature_engraver"
557     }
558   }
559 }
560 @end lilypond
561
562 @noindent
563 Dem @code{Stem_engraver} wird jeder Notenkopf mitgeteilt, 
564 der vorkommt. Jedes Mal, wenn ein Notenkopf erscheint (oder mehrere bei 
565 einem Akkord), wird ein Hals-Objekt erstellt und an den 
566 Kopf geheftet. Wenn wir dann noch engraver für Balken, Bögen, 
567 Akzente, Vorzeichen, Taktlinien, Taktangaben und Tonartbezeichnungen 
568 hinzufügen, erhalten wir eine vollständige Notation.
569
570
571 @lilypond[quote,ragged-right]
572 \include "engraver-example.ily"
573 \score { \topVoice }
574 @end lilypond
575
576 @cindex Polyphonie
577 @cindex Mehrstimmigkeit
578 @cindex Notensatz, Mehrstimmigkeit
579 @cindex Kontexte
580
581 Dieses System funktioniert gut für monophone Musik, aber wie geht 
582 es mit Polyphonie? Hier müssen sich mehrere Stimmen ein System teilen.
583
584 @lilypond[quote,ragged-right]
585 \include "engraver-example.ily"
586 \new Staff << \topVoice \\ \botVoice >>
587 @end lilypond
588
589 In diesem Fall benutzen beide Stimmen das System und die Vorzeichen gemeinsam,
590 aber die 
591 Hälse, Bögen, Balken usw. sind jeder einzelnen Stimme eigen. Die engraver 
592 müssen also gruppiert werden. Die Köpfe, Hälse, Bögen usw. werden 
593 in einer Gruppe mit dem Namen @qq{Voice context} (Stimmenkontext) 
594 zusammengefasst, die engraver für den Schlüssel, die Vorzeichen, 
595 Taktstriche usw. dagegen in einer Gruppe mit dem Namen @qq{Staff context} 
596 (Systemkontext). Im Falle von Polyphonie hat ein Staff-Kontext dann also 
597 mehr als nur einen Voice-Kontext. Auf gleiche Weise können auch mehrere Staff-Kontexte
598 in einen großen Score-Kontext (Partiturkontext) eingebunden werden.
599
600
601 @seealso
602 Programmreferenz: @rinternals{Contexts}.
603
604
605 @lilypond[quote,ragged-right]
606 \include "engraver-example.ily"
607 \score {
608    <<
609       \new Staff << \topVoice \\ \botVoice >>
610       \new Staff << \pah \\ \hoom >>
611    >>
612 }
613 @end lilypond
614
615 @node Die Darstellung der Musik
616 @unnumberedsubsec Die Darstellung der Musik
617 @translationof Music representation
618
619 @cindex Syntax
620 @cindex rekursive Strukturen
621
622 Idealerweise ist das Eingabeformat für ein komplexes Satzsystem die 
623 abstrakte Beschreibung des Inhaltes. In diesem Fall wäre das die 
624 Musik selber. Das stellt uns aber vor ein ziemlich großes Problem, 
625 denn wie können wir definieren, was Musik wirklich ist? Anstatt darauf 
626 eine Antwort zu suchen, haben wir die Frage einfach umgedreht. Wir
627 schreiben ein Programm, das den Notensatz beherrscht und machen das 
628 Format so einfach wie möglich. Wenn es nicht mehr vereinfacht 
629 werden kann, haben wir per Definition nur noch den reinen Inhalt. Unser 
630 Format dient als die formale Definition eines Musiktextes.
631
632 Die Syntax ist gleichzeitig die Benutzerschnittstelle bei LilyPond, 
633 darum soll sie einfach zu schreiben sein; z. B. bedeutet
634
635 @example
636 c'4 d'8
637 @end example
638
639 @noindent
640 eine Viertel c' und eine Achtel d', wie in diesem Beispiel:
641
642 @lilypond[quote]
643 {
644   c'4 d'8
645 }
646 @end lilypond
647
648 In kleinem Rahmen ist diese Syntax sehr einfach zu benutzen. In 
649 größeren Zusammenhängen aber brauchen wir Struktur. Wie sonst kann 
650 man große Opern oder Symphonien notieren? Diese Struktur wird 
651 gewährleistet durch sog. music expressions (Musikausdrücke): indem 
652 kleine Teile zu größeren kombiniert werden, kann komplexere Musik 
653 dargestellt werden. So etwa hier:
654
655 @lilypond[quote,verbatim,fragment,relative=1]
656 f4
657 @end lilypond
658
659 @noindent
660 Gleichzeitig erklingende Noten werden hinzugefügt, indem man alle in @code{<<} und @code{>>} einschließt.
661
662 @c < > is not a music expression,
663 @c so we use <<>> iso. <> to drive home the point of
664 @c expressions.  Don't change this back --hwn.
665 @example
666 <<c4 d4 e4>>
667 @end example
668
669 @lilypond[quote,fragment,relative=1]
670 \new Voice { <<c4 d4 e>> }
671 @end lilypond
672
673 @noindent
674 Um aufeinanderfolgende Noten darzustellen, werden sie in geschweifte Klammern gefasst:
675
676 @code{@{@tie{}@dots{}@tie{}@}}
677
678 @example
679 @{ f4 <<c4 d4 e4>> @}
680 @end example
681
682 @lilypond[quote,relative=1,fragment]
683 { f4 <<c d e4>> }
684 @end lilypond
685
686 @noindent
687 Dieses Gebilde ist in sich wieder ein Ausdruck, und kann 
688 daher mit einem anderen Ausdruck kombiniert werden (hier mit einer Halben).
689
690 @example
691 << g2 \\ @{ f4 <<c4 d4 e4>> @} >>
692 @end example
693
694 @lilypond[quote,fragment,relative=2]
695 \new Voice { << g2 \\ { f4 <<c d e>> } >> }
696 @end lilypond
697
698 Solche geschachtelten Strukturen können sehr gut in einer 
699 kontextunabhängigen Grammatik beschrieben werden. Der Programmcode 
700 für den Satz ist auch mit solch einer Grammatik erstellt. Die Syntax 
701 von LilyPond ist also klar und ohne Zweideutigkeiten definiert.
702
703 Die Benutzerschnittstelle und die Syntax werden als erstes vom Benutzer 
704 wahrgenommen. Teilweise sind sie eine Frage des Geschmackes und werden viel
705 diskutiert. Auch wenn Geschmacksfragen ihre Berechtigung 
706 haben, sind sie nicht sehr produktiv. Im großen Rahmen von LilyPond 
707 spielt die Eingabe-Syntax nur eine geringe Rolle, denn eine logische 
708 Syntax zu schreiben ist einfach, guten Formatierungscode aber sehr viel 
709 schwieriger. Das kann auch die Zeilenzahl der Programmzeilen zeigen: 
710 Analysieren und Darstellen nimmt nur etwa 10% des Codes ein:
711
712 @node Beispielanwendung
713 @unnumberedsubsec Beispielanwendung
714 @translationof Example applications
715
716 @cindex einfaches Beispiel
717 @cindex Beispiel, einfach
718
719 Wir haben LilyPond als einen Versuch geschrieben, wie man die Kunst des 
720 Musiksatzes in ein Computerprogramm gießen kann. Dieses 
721 Programm kann nun dank vieler harter Arbeitsstunden benutzt werden, 
722 um sinnvolle Aufgaben zu erledigen. Die einfachste ist dabei der 
723 Notendruck.
724
725 @lilypond[quote,relative=1]
726 {
727   \time 2/4
728   c4 c g'4 g a4 a g2
729 }
730 @end lilypond
731
732 @noindent
733 Indem wir Akkordsymbole und einen Text hinzufügen, erhalten wir 
734 ein Lead Sheet.
735
736 @lilypond[quote,ragged-right]
737 <<
738    \chords { c2 c f2 c }
739    \new Staff
740    \relative c' {
741      \time 2/4
742      c4 c g' g a a g2
743    }
744    \addlyrics { twin -- kle twin -- kle lit -- tle star }
745 >>
746 @end lilypond
747
748 Mehrstimmige Notation und Klaviermusik kann auch gesetzt werden. Das 
749 nächste Beispiel zeigt einige etwas exotischere Konstruktionen:
750
751 @lilypond[quote]
752 \header {
753   title = "Screech and boink"
754   subtitle = "Random complex notation"
755   composer = "Han-Wen Nienhuys"
756 }
757
758 \score {
759   \context PianoStaff <<
760     \new Staff = "up" {
761       \time 4/8
762       \key c \minor
763       << {
764         \revert Stem #'direction
765         \change Staff = down
766         \set subdivideBeams = ##t
767         g16.[
768           \change Staff = up
769           c'''32
770           \change Staff = down
771           g32
772           \change Staff = up
773           c'''32
774           \change Staff = down
775           g16]
776         \change Staff = up
777         \stemUp
778         \set followVoice = ##t
779         c'''32([ b''16 a''16 gis''16 g''32)]
780       } \\ {
781         s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
782       } \\ {
783         s4 \autoBeamOff d''8.. f''32
784       } \\ {
785         s4 es''4
786       } >>
787     }
788
789     \new Staff = "down" {
790       \clef bass
791       \key c \minor
792       \set subdivideBeams = ##f
793       \override Stem  #'french-beaming = ##t
794       \override Beam  #'beam-thickness = #0.3
795       \override Stem  #'thickness = #4.0
796       g'16[ b16 fis16 g16]
797       << \makeClusters {
798         as16 <as b>
799         <g b>
800         <g cis>
801       } \\ {
802         \override Staff.Arpeggio  #'arpeggio-direction =#down
803         <cis, e, gis, b, cis>4\arpeggio
804       }
805     >> }
806   >>
807   \midi {
808     \context {
809       \Score
810       tempoWholesPerMinute = #(ly:make-moment 60 8)
811     }
812   }
813   \layout {
814     \context {
815       \Staff
816       \consists Horizontal_bracket_engraver
817     }
818   }
819 }
820 @end lilypond
821
822 Die obenstehenden Beispiele wurde manuell erstellt, aber das ist nicht 
823 die einzige Möglichkeit. Da der Satz fast vollständig automatisch abläuft, 
824 kann er auch von anderen Programmen angesteuert werden, die Musik oder Noten
825 verarbeiten. So können etwa ganze Datenbanken musikalischer Fragmente automatisch 
826 in Notenbilder umgewandelt werden, die dann auf Internetseiten oder 
827 in Multimediapräsentation Anwendung finden.
828
829 Dieses Benutzerhandbuch zeigt eine weitere Möglichkeit: Die Noten werden als 
830 reiner Text eingegeben und können darum sehr einfach integriert werden
831 in andere textbasierte Formate wie etwa @LaTeX{}, HTML oder, wie in diesem 
832 Fall, Texinfo. Durch ein spezielles Programm werden die Eingabefragmente durch 
833 Notenbilder in der resultierenden PDF- oder HTML-Datei ersetzt. Dadurch ist
834 es sehr einfach, Noten und Text zu kombinieren.
835