B.3.1 Musikalische Funktionen darstellen
Wenn man eine musikalische Funktion erstellt, ist es oft
hilfreich sich anzuschauen, wie musikalische Funktionen
intern gespeichert werden. Das kann mit der Funktion
\displayMusic
erreicht werden:
{ \displayMusic { c'4\f } }
zeigt:
(make-music 'SequentialMusic 'elements (list (make-music 'EventChord 'elements (list (make-music 'NoteEvent 'duration (ly:make-duration 2 0 1 1) 'pitch (ly:make-pitch 0 0 0)) (make-music 'AbsoluteDynamicEvent 'text "f")))))
Normalerweise gibt LilyPond diese Ausgabe auf der Konsole mit allen anderen Nachrichten aus. Um die wichtigen Nachrichten in einer Datei zu speichern, kann die Ausgabe in eine Datei umgeleitet werden:
lilypond file.ly >display.txt
Mit etwas Umformatierung ist die gleiche Information sehr viel einfacher zu lesen:
(make-music 'SequentialMusic 'elements (list (make-music 'EventChord 'elements (list (make-music 'NoteEvent 'duration (ly:make-duration 2 0 1 1) 'pitch (ly:make-pitch 0 0 0)) (make-music 'AbsoluteDynamicEvent 'text "f")))))
Eine musikalische { ... }
-Sequenz hat die Bezeichnung
SequentialMusic
und ihre inneren Ausdrücke werden als
Liste in seiner 'elements
-Eigenschaft gespeichert. Eine
Note ist als als ein EventChord
-Ausdruck dargestellt,
der ein NoteEvent
-Objekt (welches Dauer und
Tonhöhe speichert) und zusätzliche Information enthält (in
diesem Fall ein AbsoluteDynamicEvent
mit einer
"f"
-Text-Eigenschaft.