[ << Allgemeine Eingabe und Ausgabe ] | [Anfang][Inhalt][Index][ ? ] | [ Abstände >> ] | ||
[ < Mehrere Partituren in einem Buch ] | [ Nach oben : Eingabestruktur ] | [ Titel > ] |
3.1.3 Die Dateistruktur
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:
-
Eine Ausgabedefinition, wie
\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. -
Ein direkter Scheme-Ausdruck, wie etwa
#(set-default-paper-size "a7" 'landscape)
oder#(ly:set-option 'point-and-click #f)
. -
Eine
\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. -
Eine
\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 Variabletoplevel-score-handler
auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich in der Datei ‘../scm/lily.scm’. -
Eine
\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 Variabletoplevel-book-handler
auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich in der Datei ‘../scm/lily.scm’. -
Eine
\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. -
Ein zusammengesetzter musikalischer Ausdruck wie etwa
{ 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’. -
Eine Textbeschriftung, eine Strophe etwa:
\markup { 2. Die erste Zeile der zweiten Strophe. }
Textbeschriftungen werden über, zwischen oder unter musikalischen Ausdrücken gesetzt, so wie sie notiert werde.
-
Eine Variable, wie
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
-
Ein einzeiliger Kommentar, beginnend mit
%
. -
Ein mehrzeiliger Kommentar, umgeben von
%{ .. %}
.
Siehe auch
Hanbuch zum Lernen: Wie eine LilyPond-Eingabe-Datei funktioniert.
[ << Allgemeine Eingabe und Ausgabe ] | [Anfang][Inhalt][Index][ ? ] | [ Abstände >> ] | ||
[ < Mehrere Partituren in einem Buch ] | [ Nach oben : Eingabestruktur ] | [ Titel > ] |