4.3.3 Was sind Engraver?

Jedes Zeichen des fertigen Notensatzes von LilyPond wird von einem Engraver (Stempel) produziert. Es gibt also einen Engraver, der die Systeme erstellt, einen, der die Notenköpfe ausgibt, einen für die Hälse, einen für die Balken usw. Insgesamt gibt es über 120 Engraver! Zum Glück braucht man für die meisten Partituren nur ein paar Engraver, und für einfache Partituren muss man eigentlich überhaupt nichts über sie wissen.

Engraver leben und wirken aus den Kontexten heraus. Engraver wie der Metronome_mark_engraver, dessen Aktion und Ausgabe sich auf die gesamte Partitur bezieht, wirken in der obersten Kontextebene – dem Score-Kontext.

Der Clef_engraver (Schlüssel-Stempel) und der Key_engraver (Vorzeichen-Stempel) finden sich in jedem Staff-Kontext, denn unterschiedliche Systeme könnten unterschiedliche Tonarten und Notenschlüssel brauchen.

Der Note_heads_engraver (Notenkopf-Stempel) und der Stem_engraver (Hals-Stempel) befinden sich in jedem Voice-Kontext, der untersten Kontextebene.

Jeder Engraver bearbeitet die bestimmten Objekte, die mit seiner Funktion assoziiert sind, und verwaltet die Eigenschaften dieser Funktion. Diese Eigenschaften, wie etwa die Eigenschaften, die mit Kontexten assoziiert sind, können verändert werden, um die Wirkungsweise des Engravers oder das Erscheinungsbild der von ihm produzierten Elemente in der Partitur zu ändern.

Alle Engraver haben zusammengesetzte Bezeichnung, die aus den (englischen) Wörtern ihrer Funktionsweise bestehen. Nur das erste Wort hat einen Großbuchstaben, und die restlichen Wörter werden mit einem Unterstrich angefügt. Ein Staff_symbol_engraver verantwortet also die Erstellung der Notenlinien, ein Clef_engraver entscheidet über die Art der Notenschlüssel und setzt die entsprechenden Symbole; damit wird gleichzeitig die Referenztonhöhe auf dem Notensystem festgelegt.

Hier die meistgebräuchlichen Engraver mit ihrer Funktion. Sie werden sehen, dass es mit etwas Englischkenntnissen einfach ist, die Funktion eines Engravers von seiner Bezeichnung abzuleiten.

EngraverFunktion
Accidental_engraverErstellt Versetzungszeichen, vorgeschlagene und Warnversetzungszeichen.
Beam_engraverErstellt Balken.
Clef_engraverErstellt Notenschlüssel.
Completion_heads_engraverTeilt Noten in kleiner Werte, wenn sie über den Taktstrich reichen.
Dynamic_engraverErstellt Dynamik-Klammern und Dynamik-Texte.
Forbid_line_break_engraverVerbietet Zeilenumbrüche, solange ein musikalisches Element aktiv ist.
Key_engraverErstellt die Vorzeichen.
Metronome_mark_engraverErstellt Metronom-Bezeichnungen.
Note_heads_engraverErstellt Notenköpfe.
Rest_engraverErstellt Pausen.
Staff_symbol_engraverErstellt die (standardmäßig) fünf Notenlinien des Systems.
Stem_engraverErstellt die Notenhälse und Tremolos mit einem Hals.
Time_signature_engraverErstellt die Taktartbezeichnung.

Es soll später gezeigt werden, wie die LilyPond-Ausgabe verändert werden kann, indem die Wirkungsweise der Engraver beeinflusst wird.

Siehe auch

Referenz der Interna: Engravers and Performers.


LilyPond – Learning Manual v2.23.82 (Entwicklungszweig).