LilyPond erweitern: 1.3.1 Musikalische Funktionen darstellen

### 1.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.

Andere Sprachen: English, español.

#### LilyPond – Extending