1 @c -*- coding: utf-8; mode: texinfo; -*-
4 Translation of GIT committish: 4582b7b24d22b2041bfcba49e716a714effcce92
7 When revising a translation, copy the HEAD committish of the
8 version that you are working on. See TRANSLATION for details.
15 @translationof Music engraving
17 Dieser Abschnitt erklärt die Ziele und die Architektur von LilyPond.
21 * Automatisierter Notensatz::
23 * Die Darstellung der Musik::
29 @unnumberedsubsec Notensatz
30 @translationof Engraving
35 @cindex Gravur, Notensatz
36 @cindex Plattendruck, Noten
38 Die Kunst des Notensatzes wird auch als Notenstich bezeichnet. Dieser
39 Begriff stammt aus dem traditionellen Notendruck. Noch bis vor etwa 20
40 Jahren wurden Noten erstellt, indem man sie in eine Zink- oder Zinnplatte
41 schnitt oder mit Stempeln schlug. Diese Platte wurde dann mit Druckerschwärze
42 versehen, so dass sie in den geschnittenen und gestempelten Vertiefungen
43 blieb. Diese Vertiefungen schwärzten dann ein auf die Platte gelegtes
44 Papier. Das Gravieren wurde vollständig von Hand erledigt. Es war darum
45 sehr mühsam, Korrekturen anzubringen, weshalb man von vornherein richtig
46 schneiden musste. Es handelte sich dabei um ein sehr spezialisiertes Handwerk.
48 Heutzutage wird fast alle gedruckte Musik von Computern erstellt. Das
49 hat einige deutliche Vorteile: Drucke sind billiger als die gravierten
50 Platten und der Computersatz kann per E-Mail verschickt werden. Leider
51 hat der intensive Einsatz des Computers die graphische Qualität
52 des Notensatzes vermindert. Mit dem Computer erstellte Noten sehen
53 langweilig und mechanisch aus, was es erschwert, von ihnen zu spielen.
56 @c introduce illustrating aspects of engraving, font...
57 Die Abbildung unten illustriert den Unterschied zwischen
58 traditionellem Notensatz und einem typischen Computersatz. Das
59 dritte Bild zeigt, wie LilyPond die Formen des traditionellen
60 Satzes nachahmt. Das linke Bild zeigt ein eingescanntes b-Vorzeichen
61 aus einer 2000 herausgegebenen Edition. Das mittlere Bild
62 zeigt das b-Vorzeichen derselben Musik aus einer handgestochenen
63 Bärenreiter-Ausgabe. Das linke Bild zeigt die typischen Makel
64 des Computer-Satzes: Die Notenlinien sind sehr dünn, die Schwärze
65 des Vorzeichens entspricht den dünnen Linien und hat eine gerade
66 Form mit scharfen Ecken und Kanten. Im Gegensatz dazu hat das
67 Bärenreiter-Vorzeichen dicke, geradezu sinnlich rundliche
68 Formen. Unser Symbol für das Vorzeichen hat neben anderen
69 auch dieses b als Vorbild. Es ist abgerundet und passt zu unseren
70 Notenlinien, die sehr viel dicker sind als die der entsprechenden
73 @multitable @columnfractions .125 .25 .25 .25 .125
77 @image{pictures/henle-flat-gray,,4cm}
80 @image{pictures/henle-flat-gray,,,png}
85 @image{pictures/baer-flat-gray,,4cm}
88 @image{pictures/baer-flat-gray,,,png}
93 @image{pictures/lily-flat-bw,,4cm}
96 @image{pictures/lily-flat-bw,,,png}
100 @image{pictures/henle-flat-bw,,,png}
101 @image{pictures/baer-flat-bw,,,,png}
102 @image{pictures/lily-flat-bw,,,png}
110 LilyPond Feta-Schriftart (2003)
120 @c introduce illustrating aspects of engraving, spacing...
121 Die Verteilung der Noten innerhalb des Taktes sollte ihrer Dauer
122 entsprechen. Moderne Partituren zeigen diese Verhältnisse jedoch
123 mit einer mathematischen Präzision, die nur sehr schlechte
124 Ergebnisse bringt. Im nächsten Beispiel ist ein Motiv zweimal
125 gesetzt: einmal mit den exakten mathematischen Längenverhältnissen, dann
126 mit kleinen Korrekturen. Welches von beiden ist mit dieser Korrektur
129 @cindex Optischer Ausgleich
130 @c file spacing-optical.
131 @c need to include it here, because we want two images.
152 \override NoteSpacing #'stem-spacing-correction = #0.6
177 \override NoteSpacing #'stem-spacing-correction = #0.0
178 \override NoteSpacing #'same-direction-correction = #0.0
179 \override StaffSpacing #'stem-spacing-correction = #0.0
185 @cindex normale Rhythmen
186 @cindex normale Abstände
187 @cindex Abstände, normal
188 @cindex Rhythmen, normal
190 In diesem Ausschnitt kommen nur Viertel vor, Noten, die in einem
191 gleichmäßigen Rhythmus gespielt werden. Die Abstände sollten das
192 widerspiegeln. Leider lässt uns aber das Auge im Stich: es beachtet
193 nicht nur den Abstand von aufeinander folgenden Notenköpfen, sondern
194 auch den ihrer Hälse. Also müssen Noten, deren Hälse in direkter
195 Folge zuerst nach oben und dann nach unten ausgerichtet sind, weiter
196 auseinander gezogen werden, während die unten/oben-Folge engere
197 Abstände fordert, und das alles auch noch in Abhängigkeit von der
198 vertikalen Position der Noten. Das obere Beispiel ist mit dieser
199 Korrektur gesetzt, das untere ohne. In letzterem Fall bilden sich
200 für das Auge bei unten/oben-Folgen Notenklumpen mit schmalen Abständen
201 zwischen den Notenhälsen.
205 Musiker sind üblicherweise zu sehr damit beschäftigt, die Musik aufzuführen,
206 als dass sie das Aussehen der Noten studieren könnten; und diese
207 Beschäftigung mit typographischen Details mag akademisch wirken.
208 Das ist sie aber nicht. Unser Beispielstück hat einen
209 monotonen Rhythmus, und wenn alle Zeilen einförmig aussehen, wird
210 das Notenblatt zu einem Labyrinth. Wenn der Spieler auch nur
211 einmal wegschaut oder kurze Zeit unkonzentriert ist, findet er
212 nicht mehr zurück zu der Stelle, an der er war.
214 Der dichtere Eindruck, den die dickeren Notenlinien und schwereren
215 Notationssymbole schaffen, eignet sich auch besser für Noten,
216 die weit vom Leser entfernt stehen, etwa auf einem Notenständer.
217 Eine sorgfältige Verteilung der Zwischenräume erlaubt es, die
218 Noten sehr dicht zu setzen, ohne dass die Symbole zusammenklumpen.
219 Dadurch werden unnötige Seitenumbrüche vermieden, so dass man
220 nicht so oft blättern muss.
222 Dies sind die Anforderungen der Typographie: Das Layout sollte
223 schön sein -- nicht aus Selbstzweck, sondern um dem Leser zu helfen. Für
224 Aufführungsmaterial ist das umso wichtiger, denn Musiker haben eine begrenzte
225 Aufnahmefähigkeit. Je weniger Mühe nötig ist, die Noten zu erfassen, desto mehr
226 Zeit bleibt für die Gestaltung der eigentlichen Musik. Das heißt: Gute
227 Typographie führt zu besseren Aufführungen!
229 Die Beispiele haben gezeigt, dass der Notensatz eine subtile und
230 komplexe Kunst ist und gute Ergebnisse nur mit viel Erfahrung
231 erlangt werden können, die Musiker normalerweise nicht haben.
232 LilyPond stellt unser Bemühen dar, die graphische Qualität
233 handgestochener Notenseiten ins Computer-Zeitalter zu transportieren
234 und sie für normale Musiker erreichbar zu machen. Wir haben
235 unsere Algorithmen, die Gestalt der Symbole und die Programm-Einstellungen
236 darauf abgestimmt, einen Ausdruck zu erzielen, der der Qualität
237 der alten Editionen entspricht, die wir so gerne betrachten
238 und aus denen wir gerne spielen.
242 @node Automatisierter Notensatz
243 @unnumberedsubsec Automatisierter Notensatz
244 @translationof Automated engraving
246 @cindex Notensatz, automatisch
247 @cindex automatischer Notensatz
249 Wie sollen wir also jetzt die Typographie anwenden?
250 Wie können wir erwarten, dass wir in der Lage wären,
251 ein Programm zu schreiben, dass den Beruf des
252 Notenstechers ersetzt, wo dieser doch mehr als zehn
253 Jahre braucht, um ein Meister zu werden?
255 Wir können es tatsächlich nicht! Da Typographie allein
256 durch das menschliche Auge bestimmt ist, kann der Mensch
257 nicht ersetzt werden. Aber sehr viel mechanische Arbeit
258 kann automatisiert werden. Indem etwa LilyPond die üblichen
259 Situationen kennt und bewältigt, können die restlichen
260 Fehler von Hand beseitigt werden. Das ist schon ein
261 großer Fortschritt im Vergleich zu den existierenden
262 Programmen. Und mit der Zeit können immer mehr Fälle
263 automatisiert werden, so dass immer weniger Eingriffe
264 von Hand notwendig werden.
267 Als wir anfingen, haben wir LilyPond vollständig in der Programmiersprache C++
268 geschrieben. Das hieß, dass der Funktionsumfang des Programms vollständig durch
269 die Programmierer festgelegt war. Das stellte sich aus einer Reihe von Gründen
270 als unzureichend heraus:
273 @item Wenn LilyPond Fehler macht, muss der Benutzer die
274 Einstellungen ändern können. Er muss also Zugang zur
275 Formatierungsmaschinerie haben. Deshalb können die Regeln und
276 Einstellungen nicht beim Kompilieren des Programms festgelegt
277 werden, sondern sie müssen zugänglich sein, während das Programm
281 @item Notensatz ist eine Frage des Augenmaßes, und damit auch vom
282 Geschmack abhängig. Benutzer können mit unseren Entscheidungen
283 unzufrieden sein. Darum müssen also auch die Definitionen des
284 typographischen Stils dem Benutzer zugänglich sein.
286 @item Schließlich verfeinern wir unseren Formatierungsalgorithmus
287 immer weiter, also müssen die Regeln auch flexibel sein. Die
288 Sprache C++ zwingt zu einer bestimmten Gruppierungsmethode,
289 die nicht den Regeln für den Notensatz entspricht.
292 @cindex Scheme-Programmiersprache
294 Diese Probleme wurden angegangen, indem ein Übersetzer für
295 die Programmiersprache Scheme integriert wurde und Teile
296 von LilyPond in Scheme neu geschrieben wurden. Die derzeitige
297 Formatierungsarchitektur ist um die Notation von graphischen
298 Objekten herum aufgebaut, die von Scheme-Variablen und -Funktionen
299 beschrieben werden. Diese Architektur umfasst Formatierungsregeln,
300 typographische Stile und individuelle Formatierungsentscheidungen.
301 Der Benutzer hat direkten Zugang zu den meisten dieser Einstellungen.
303 Scheme-Variablen steuern Layout-Entscheidungen. Zum Beispiel haben
304 viele graphische Objekte eine Richtungsvariable, die zwischen
305 oben und unten (oder rechts und links) wählen kann. Hier etwa
306 sind zwei Akkorde mit Akzenten und Arpeggien.
307 Beim ersten Akkord sind alle Objekte nach unten (oder links)
308 ausgerichtet, beim zweiten nach oben (rechts).
310 @lilypond[quote,ragged-right]
312 \override SpacingSpanner #'spacing-increment = #3
313 \override TimeSignature #'transparent = ##t
315 \stemDown <e g b>4_>-\arpeggio
316 \override Arpeggio #'direction = #RIGHT
317 \stemUp <e g b>4^>-\arpeggio
321 @cindex Formatierung einer Partitur
322 @cindex Partitur, Formatierung
323 @cindex Formatierungsregeln
326 Der Prozess des Notensetzens besteht für das Programm darin,
327 die Variablen der graphischen Objekte zu lesen und zu
328 schreiben. Einige Variablen haben festgelegte Werte. So
329 ist etwa die Dicke von vielen Linien – ein Charakteristikum
330 des typographischen Stils – von vornherein festgelegt.
331 Wenn sie geändert werden, ergibt sich ein anderer typographischer Eindruck.
333 @lilypond[quote,ragged-right]
336 c'4-~ c'16 as g f e16 g bes c' des'4
341 \override Beam #'beam-thickness = #0.3
342 \override Stem #'thickness = #0.5
343 \override Bar #'thickness = #3.6
344 \override Tie #'thickness = #2.2
345 \override StaffSymbol #'thickness = #3.0
346 \override Tie #'extra-offset = #'(0 . 0.3)
352 Formatierungsregeln sind auch vorbelegte Variablen. Zu jedem Objekt gehören
353 Variablen, die Prozeduren enthalten. Diese Prozeduren machen die eigentliche
354 Satzarbeit aus, und wenn man sie durch andere ersetzt, kann die Darstellung
355 von Objekten verändert werden. Im nächsten Beispiel wird die Regel, nach der
356 die Notenköpfe gezeichnet werden, während des Ausschnitts verändert.
358 @lilypond[quote,ragged-right]
359 #(set-global-staff-size 30)
361 #(define (mc-squared grob orig current)
362 (let* ((interfaces (ly:grob-interfaces grob))
363 (pos (ly:grob-property grob 'staff-position)))
364 (if (memq 'note-head-interface interfaces)
366 (ly:grob-set-property! grob 'stencil
367 (grob-interpret-markup grob
368 (make-lower-markup 0.5
372 ((-2) (make-smaller-markup (make-bold-markup "2")))
375 \new Voice \relative c' {
377 \set autoBeaming = ##f
380 \once \override NoteHead #'stencil = #note-head::brew-ez-stencil
381 \once \override NoteHead #'font-size = #-7
382 \once \override NoteHead #'font-family = #'sans
383 \once \override NoteHead #'font-series = #'bold
385 \once \override NoteHead #'style = #'cross
387 \applyOutput #'Voice #mc-squared
390 { d8[ es-( fis^^ g] fis2-) }
391 \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
398 @node Welche Symbole?
399 @unnumberedsubsec Welche Symbole?
400 @translationof What symbols to engrave?
409 Während des Notensatzprozesses entscheidet sich, wo
410 Symbole platziert werden. Das kann aber nur gelingen,
411 wenn vorher entschieden wird, @emph{welche} Symbole
412 gesetzt werden sollen, also welche Art von Notation benutzt
415 Die heutige Notation ist ein System zur Musikaufzeichnung,
416 das sich über die letzten 1000 Jahre entwickelt hat. Die
417 Form, die heute üblicherweise benutzt wird, stammt aus dem
418 Barock. Auch wenn sich die grundlegenden Formen (also
419 die Notenköpfe, das Fünfliniensystem) nicht verändert haben,
420 entwickeln sich die Details trotzdem immer noch weiter, um
421 die Errungenschaften der Neuen Musik darstellen zu können. Die
422 Notation umfasst also 500 Jahre Musikgeschichte. Ihre Anwendung
423 reicht von monophonen Melodien bis zu ungeheuer komplexem Kontrapunkt
424 für großes Orchester.
426 Wie bekommen wir dieses vielköpfige Monster zu fassen?
427 Unsere Lösung ist es, eine strikte Trennung zwischen der Notation,
428 also welche Symbole benutzt werden, und dem Satz, also wohin sie
429 gesetzt werden, zu machen. Um das Problem anzupacken, haben wir
430 es in kleine (programmierbare) Happen zerteilt, so dass jede Art
431 von Symbol durch ein eigenes Plugin verarbeitet wird. Alle Plugins
432 kooperieren durch die LilyPond-Architektur. Sie sind vollständig
433 modular und unabhängig und können somit auch unabhängig voneinander
434 entwickelt werden. Der Schreiber, der die Musik in Graphik umwandelt,
435 ist ein Kopist oder Notenstecher (engl. engraver). Darum werden
436 die Plugins als @code{engraver} bezeichnet.
438 Im nächsten Beispiel wird gezeigt, wie mit dem Plugin für die Notenköpfe,
439 dem @code{Note_heads_engraver} (@qq{Notenkopfstecher}) der Satz begonnen wird.
441 @lilypond[quote,ragged-right]
442 \include "engraver-example.ily"
449 \remove "Stem_engraver"
450 \remove "Phrasing_slur_engraver"
451 \remove "Slur_engraver"
452 \remove "Script_engraver"
453 \remove "Beam_engraver"
454 \remove "Auto_beam_engraver"
458 \remove "Accidental_engraver"
459 \remove "Key_engraver"
460 \remove "Clef_engraver"
461 \remove "Bar_engraver"
462 \remove "Time_signature_engraver"
463 \remove "Staff_symbol_engraver"
464 \consists "Pitch_squash_engraver"
471 Dann fügt ein @code{Staff_symbol_engraver} (@qq{Notensystemstecher})
472 die Notenlinien hinzu.
474 @lilypond[quote,ragged-right]
475 \include "engraver-example.ily"
482 \remove "Stem_engraver"
483 \remove "Phrasing_slur_engraver"
484 \remove "Slur_engraver"
485 \remove "Script_engraver"
486 \remove "Beam_engraver"
487 \remove "Auto_beam_engraver"
491 \remove "Accidental_engraver"
492 \remove "Key_engraver"
493 \remove "Clef_engraver"
494 \remove "Bar_engraver"
495 \consists "Pitch_squash_engraver"
496 \remove "Time_signature_engraver"
503 Der @code{Clef_engraver} (@qq{Notenschlüsselstecher}) definiert
504 eine Referenzstelle für das System.
506 @lilypond[quote,ragged-right]
507 \include "engraver-example.ily"
514 \remove "Stem_engraver"
515 \remove "Phrasing_slur_engraver"
516 \remove "Slur_engraver"
517 \remove "Script_engraver"
518 \remove "Beam_engraver"
519 \remove "Auto_beam_engraver"
523 \remove "Accidental_engraver"
524 \remove "Key_engraver"
525 \remove "Bar_engraver"
526 \remove "Time_signature_engraver"
533 Der @code{Stem_engraver} (@qq{Halsstecher}) schließlich fügt
536 @lilypond[quote,ragged-right]
537 \include "engraver-example.ily"
544 \remove "Phrasing_slur_engraver"
545 \remove "Slur_engraver"
546 \remove "Script_engraver"
547 \remove "Beam_engraver"
548 \remove "Auto_beam_engraver"
552 \remove "Accidental_engraver"
553 \remove "Key_engraver"
554 \remove "Bar_engraver"
555 \remove "Time_signature_engraver"
562 Dem @code{Stem_engraver} wird jeder Notenkopf mitgeteilt,
563 der vorkommt. Jedes Mal, wenn ein Notenkopf erscheint (oder mehrere bei
564 einem Akkord), wird ein Hals-Objekt erstellt und an den
565 Kopf geheftet. Wenn wir dann noch engraver für Balken, Bögen,
566 Akzente, Vorzeichen, Taktlinien, Taktangaben und Tonartbezeichnungen
567 hinzufügen, erhalten wir eine vollständige Notation.
570 @lilypond[quote,ragged-right]
571 \include "engraver-example.ily"
576 @cindex Mehrstimmigkeit
577 @cindex Notensatz, Mehrstimmigkeit
580 Dieses System funktioniert gut für monophone Musik, aber wie geht
581 es mit Polyphonie? Hier müssen sich mehrere Stimmen ein System teilen.
583 @lilypond[quote,ragged-right]
584 \include "engraver-example.ily"
585 \new Staff << \topVoice \\ \botVoice >>
588 In diesem Fall benutzen beide Stimmen das System und die Vorzeichen gemeinsam,
590 Hälse, Bögen, Balken usw. sind jeder einzelnen Stimme eigen. Die engraver
591 müssen also gruppiert werden. Die Köpfe, Hälse, Bögen usw. werden
592 in einer Gruppe mit dem Namen @qq{Voice context} (Stimmenkontext)
593 zusammengefasst, die engraver für den Schlüssel, die Vorzeichen,
594 Taktstriche usw. dagegen in einer Gruppe mit dem Namen @qq{Staff context}
595 (Systemkontext). Im Falle von Polyphonie hat ein Staff-Kontext dann also
596 mehr als nur einen Voice-Kontext. Auf gleiche Weise können auch mehrere Staff-Kontexte
597 in einen großen Score-Kontext (Partiturkontext) eingebunden werden.
601 Programmreferenz: @rinternals{Contexts}.
604 @lilypond[quote,ragged-right]
605 \include "engraver-example.ily"
608 \new Staff << \topVoice \\ \botVoice >>
609 \new Staff << \pah \\ \hoom >>
614 @node Die Darstellung der Musik
615 @unnumberedsubsec Die Darstellung der Musik
616 @translationof Music representation
619 @cindex rekursive Strukturen
621 Idealerweise ist das Eingabeformat für ein komplexes Satzsystem die
622 abstrakte Beschreibung des Inhaltes. In diesem Fall wäre das die
623 Musik selber. Das stellt uns aber vor ein ziemlich großes Problem,
624 denn wie können wir definieren, was Musik wirklich ist? Anstatt darauf
625 eine Antwort zu suchen, haben wir die Frage einfach umgedreht. Wir
626 schreiben ein Programm, das den Notensatz beherrscht und machen das
627 Format so einfach wie möglich. Wenn es nicht mehr vereinfacht
628 werden kann, haben wir per Definition nur noch den reinen Inhalt. Unser
629 Format dient als die formale Definition eines Musiktextes.
631 Die Syntax ist gleichzeitig die Benutzerschnittstelle bei LilyPond,
632 darum soll sie einfach zu schreiben sein; z. B. bedeutet
639 eine Viertel c' und eine Achtel d', wie in diesem Beispiel:
647 In kleinem Rahmen ist diese Syntax sehr einfach zu benutzen. In
648 größeren Zusammenhängen aber brauchen wir Struktur. Wie sonst kann
649 man große Opern oder Symphonien notieren? Diese Struktur wird
650 gewährleistet durch sog. music expressions (Musikausdrücke): indem
651 kleine Teile zu größeren kombiniert werden, kann komplexere Musik
652 dargestellt werden. So etwa hier:
654 @lilypond[quote,verbatim,fragment,relative=1]
659 Gleichzeitig erklingende Noten werden hinzugefügt, indem man alle in @code{<<} und @code{>>} einschließt.
661 @c < > is not a music expression,
662 @c so we use <<>> iso. <> to drive home the point of
663 @c expressions. Don't change this back --hwn.
668 @lilypond[quote,fragment,relative=1]
669 \new Voice { <<c4 d4 e>> }
673 Um aufeinanderfolgende Noten darzustellen, werden sie in geschweifte Klammern gefasst:
675 @code{@{@tie{}@dots{}@tie{}@}}
678 @{ f4 <<c4 d4 e4>> @}
681 @lilypond[quote,relative=1,fragment]
686 Dieses Gebilde ist in sich wieder ein Ausdruck, und kann
687 daher mit einem anderen Ausdruck kombiniert werden (hier mit einer Halben).
690 << g2 \\ @{ f4 <<c4 d4 e4>> @} >>
693 @lilypond[quote,fragment,relative=2]
694 \new Voice { << g2 \\ { f4 <<c d e>> } >> }
697 Solche geschachtelten Strukturen können sehr gut in einer
698 kontextunabhängigen Grammatik beschrieben werden. Der Programmcode
699 für den Satz ist auch mit solch einer Grammatik erstellt. Die Syntax
700 von LilyPond ist also klar und ohne Zweideutigkeiten definiert.
702 Die Benutzerschnittstelle und die Syntax werden als erstes vom Benutzer
703 wahrgenommen. Teilweise sind sie eine Frage des Geschmackes und werden viel
704 diskutiert. Auch wenn Geschmacksfragen ihre Berechtigung
705 haben, sind sie nicht sehr produktiv. Im großen Rahmen von LilyPond
706 spielt die Eingabe-Syntax nur eine geringe Rolle, denn eine logische
707 Syntax zu schreiben ist einfach, guten Formatierungscode aber sehr viel
708 schwieriger. Das kann auch die Zeilenzahl der Programmzeilen zeigen:
709 Analysieren und Darstellen nimmt nur etwa 10% des Codes ein:
711 @node Beispielanwendung
712 @unnumberedsubsec Beispielanwendung
713 @translationof Example applications
715 @cindex einfaches Beispiel
716 @cindex Beispiel, einfach
718 Wir haben LilyPond als einen Versuch geschrieben, wie man die Kunst des
719 Musiksatzes in ein Computerprogramm gießen kann. Dieses
720 Programm kann nun dank vieler harter Arbeitsstunden benutzt werden,
721 um sinnvolle Aufgaben zu erledigen. Die einfachste ist dabei der
724 @lilypond[quote,relative=1]
732 Indem wir Akkordsymbole und einen Text hinzufügen, erhalten wir
735 @lilypond[quote,ragged-right]
737 \chords { c2 c f2 c }
743 \addlyrics { twin -- kle twin -- kle lit -- tle star }
747 Mehrstimmige Notation und Klaviermusik kann auch gesetzt werden. Das
748 nächste Beispiel zeigt einige etwas exotischere Konstruktionen:
752 title = "Screech and boink"
753 subtitle = "Random complex notation"
754 composer = "Han-Wen Nienhuys"
758 \context PianoStaff <<
763 \revert Stem #'direction
765 \set subdivideBeams = ##t
777 \set followVoice = ##t
778 c'''32([ b''16 a''16 gis''16 g''32)]
780 s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
782 s4 \autoBeamOff d''8.. f''32
788 \new Staff = "down" {
791 \set subdivideBeams = ##f
792 \override Stem #'french-beaming = ##t
793 \override Beam #'beam-thickness = #0.3
794 \override Stem #'thickness = #4.0
801 \override Staff.Arpeggio #'arpeggio-direction =#down
802 <cis, e, gis, b, cis>4\arpeggio
809 tempoWholesPerMinute = #(ly:make-moment 60 8)
815 \consists Horizontal_bracket_engraver
821 Die obenstehenden Beispiele wurde manuell erstellt, aber das ist nicht
822 die einzige Möglichkeit. Da der Satz fast vollständig automatisch abläuft,
823 kann er auch von anderen Programmen angesteuert werden, die Musik oder Noten
824 verarbeiten. So können etwa ganze Datenbanken musikalischer Fragmente automatisch
825 in Notenbilder umgewandelt werden, die dann auf Internetseiten oder
826 in Multimediapräsentation Anwendung finden.
828 Dieses Benutzerhandbuch zeigt eine weitere Möglichkeit: Die Noten werden als
829 reiner Text eingegeben und können darum sehr einfach integriert werden
830 in andere textbasierte Formate wie etwa @LaTeX{}, HTML oder, wie in diesem
831 Fall, Texinfo. Durch ein spezielles Programm werden die Eingabefragmente durch
832 Notenbilder in der resultierenden PDF- oder HTML-Datei ersetzt. Dadurch ist
833 es sehr einfach, Noten und Text zu kombinieren.