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.