Zurück: Mehrere Partituren in einem Buch, NachOben: Eingabestruktur
Eine .ly
-Datei kann eine belibige Anzahl an Ausdrücken
auf der obersten Ebene beinhalten, wobei ein Ausdrück der obersten
Ebene einer der folgenden sein kann:
\paper
, \midi
und
\layout
. Derartige Definitionen auf oberster Ebene verändern
die globalen Einstellungen für das ganze „Buch“. Wenn mehr
als eine derarte Definition desselben Typs angegeben wird, hat
die spätere Vorrang.
#(set-default-paper-size "a7" 'landscape)
oder
#(ly:set-option 'point-and-click #f)
.
\header
-Umgebung. Damit wird die globale Titelei
eingestellt. Das ist die Umgebung, in der sich Definition für
das ganze Buch befinden, wie Komponist, Titel usw.
\score
-Umgebung. Die in ihr enthaltene Partitur wird
zusammen mit anderen vorkommenden \score
-Umgebungen gesammelt
und in ein \book
zusammengefasst. Dieses Verhalten kann
verändert werden, indem die Variable toplevel-score-handler
auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich
in der Datei ../scm/lily.scm.
\book
-Umgebung fasst mehrere Sätze (d. h. mehrere
\score
-Umgebungen) logisch in ein Dokument zusammen.
Wenn mehrere \score
-Partituren vorkommen, wird für jede
\book
-Umgebung eine eigene Ausgabedatei erstellt, in der
alle in der Umgebung enthaltenen Partituren zusammengefasst sind.
Der einzige Grund, explizit eine \book
-Umgebung zu setzen,
ist, wenn mehrere Ausgabedateien aus einer einzigen Quelldatei
erstellt werden sollen. Eine Ausnahme sind lilypond-book-Dokumente,
in denen eine \book
-Umgebung explizit hinzugefügt werden
muss, wenn mehr als eine \score
- oder \markup
-Umgebung
im gleichen Beispiel angezeigt werden soll. Dieses Verhalten
kann verändert werden, indem die Variable toplevel-book-handler
auf höchster Ebene gesetzt wird. Die Definition des Standards
findet sich in der Datei ../scm/lily.scm.
\bookpart
-Umgebung. Ein Buch (\book
) kann in
mehrere Teile untergliedert sein, indem \bookpart
-Umgebungen
eingesetzt werden. Jeder Buchabschnitt beginnt auf einer neuen
Seite und kann eigene Papierdefinitionen in einer \paper
-Umgebung
haben.
{ c'4 d' e'2 }
Dieses Beispiel wird von LilyPond automatisch in einer
\score
-Umgebung in einem Buch interpretiert und
mit anderen \score
-Umgebungen und musikalischen
Ausdrücken auf der höchsten Ebene zusammen ausgegeben.
Anders gesagt: eine Datei, die nur das obige Beispiel
beinhaltet, wird übersetzt zu
\book { \score { \new Staff { \new Voice { { c'4 d' e'2 } } } } \layout { } \header { } }
Dieses Verhalten kann verändert werden, indem die Variable
toplevel-music-handler
auf der oberseten Ebene gesetzt
wird. Die Definition des Standards findet sich in der Datei
../scm/lily.scm.
\markup { 2. Die erste Zeile der zweiten Strophe. }
Textbeschriftungen werden über, zwischen oder unter musikalischen Ausdrücken gesetzt, so wie sie notiert werde.
foo = { c4 d e d }
Sie kann dann später in der Datei eingesetzt werden, indem \foo
geschrieben wird. Die Beizeichnung der Variable darf nur aus
alphabetischen Zeichen bestehen, keine Zahlen, Unter- oder Bindestriche.
Das folgende Beispiel zeigt drei Dinge, die auf der obersten Ebene notiert werden können:
\layout { % Zeilen rechtsbündig setzen ragged-right = ##t } \header { title = "Do-re-mi" } { c'4 d' e2 }
An einer beliebigen Stelle der Datei kann jede der folgenden lexikalen Anweisungen notiert werden:
\version
\include
\sourcefilename
\sourcefileline
%
.
%{ .. %}
.
Hanbuch zum Lernen: Wie eine LilyPond-Eingabe-Datei funktioniert.