| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] | [Anfang] | [Inhalt] | [Index] | [ ? ] |
@translationof Input structure
Das hauptsächliche Eingabeformat von LilyPond sind Textdateien. Üblicherweise werden diese Dateien mit der Endung ‘.ly’ versehen.
| 3.1.1 Struktur einer Partitur | ||
| 3.1.2 Mehrere Partituren in einem Buch | ||
| 3.1.3 Mehrere Ausgabedateien aus einer Eingabedatei | ||
| 3.1.4 Dateinamen der Ausgabedateien | ||
| 3.1.5 Die Dateistruktur |
| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] | [Anfang] | [Inhalt] | [Index] | [ ? ] |
@translationof Structure of a score
Eine \score-Umgebung muss einen einzelnen musikalischen
Ausdruck beinhalten, der durch geschweifte Klammern begrenzt wird:
\score {
...
}
|
Achtung: Es darf nur ein äußerer musikalischer Ausdruck
in der score-Umgebung geschrieben werden, und er muss
von geschweiften Klammern umgeben sein.
Dieser einzelne musikalische Ausdruck kann beliebige Größe annehmen und andere musikalische Ausdrücke von beliebiger Komplexität beinhalten. Alle diese Beispiele sind musikalische Ausdrücke:
{ c'4 c' c' c' }
|
{ { c'4 c' c' c' } { d'4 d' d' d' } }
<< \new Staff { c'4 c' c' c' } \new Staff { d'4 d' d' d' } >>
{
\new GrandStaff <<
\new StaffGroup <<
\new Staff { \Flöte }
\new Staff { \Oboe }
>>
\new StaffGroup <<
\new Staff { \GeigeI }
\new Staff { \GeigeII }
>>
>>
}
|
Kommentare bilden eine Ausnahme dieser Regel. (Andere Ausnahmen
siehe Die Dateistruktur.) Sowohl einzeilige als auch
Blockkommentare (eingegrenzt durch %{ .. %}) können
an beliebiger Stelle einer Eingabedatei geschrieben werden. Sie
können innerhalb oder außerhalb der \score-Umgebung vorkommen,
und innerhalb oder außerhalb des einzelnen musikalischen Ausdrucks
innerhalb der \score-Umgebung.
Denken Sie daran, dass auch eine Datei, die nur eine \score-Umgebung
enhält, implizit in eine \book-Umgebung eingeschlossen wird. Eine
\book-Umgebung in einer Eingabdatei produziert wenigstens eine
Ausgabedatei, und standardmäßig wird der Name der Ausagabedatei aus dem
Namen der Eingabedatei abgeleitet. ‘fandangoforelephants.ly’ produziert
also ‘fandangoforelephants.pdf’.
Zu weiteren Einzelheiten zu \book-Umgebungen siehe
Mehrere Partituren in einem Buch,
Mehrere Ausgabedateien aus einer Eingabedatei und
Die Dateistruktur.
Handbuch zum Lernen: (learning)Arbeiten an Eingabe-Dateien in Abschnitt ‘Arbeiten an Eingabe-Dateien’ in Handbuch zum Lernen, (learning)Musikalische Ausdrücke erklärt in Abschnitt ‘Musikalische Ausdrücke erklärt’ in Handbuch zum Lernen, (learning)Score ist ein (einziger) zusammengesetzter musikalischer Ausdruck in Abschnitt ‘Score ist ein (einziger) zusammengesetzter musikalischer Ausdruck’ in Handbuch zum Lernen.
Notationsreferenz: Mehrere Partituren in einem Buch, Mehrere Ausgabedateien aus einer Eingabedatei und Die Dateistruktur.
| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] | [Anfang] | [Inhalt] | [Index] | [ ? ] |
@translationof Multiple scores in a book
Eine Partitur kann mehrere musikalische Stücke und verschiedene
Texte beinhalten. Beispiele hierzu sind etwa eine Etüdensammlung
oder ein Orchesterstück mit mehreren Sätzen. Jeder Satz wird
in einer eigenen \score-Umgebung notiert:
\score {
..Noten..
}
|
und Texte werden mit einer \markup-Umgebung geschrieben:
\markup {
..Text..
}
|
Alle Sätze und Texte, die in derselben ‘.ly’-Datei vorkommen, werden normalerweise in eine einzige Ausgabedatei gesetzt.
\score {
..
}
\markup {
..
}
\score {
..
}
|
Eine wichtige Ausnahme stellen Dokumente dar,
die mit lilypond-book erstellt werden, für die Sie explizit
\book-Umgebungen notieren müssen, weil sonst nur die erste
\score- bzw. \markup-Umgebung angezeigt wird.
Der Kopfbereich für jedes Musikstück kann innerhalb der \score-Umgebung
definiert werden. Die piece-(Stück)-Bezeichnung aus dieser
\header-Umgebung wird vor jedem Satz ausgegeben. Die Überschrift für
ein ganzes Buch kann innerhalb von \book notiert werden, aber wenn
diese Umgebung fehlt, wird die \header-Umgebung genommen, die auf
erster Ebene der Datei notiert ist.
\header {
title = "Acht Miniaturen"
composer = "Igor Stravinsky"
}
\score {
…
\header { piece = "Romanze" }
}
\markup {
..Text der zweiten Strophe..
}
\markup {
..Text der dritten Strophe..
}
\score {
…
\header { piece = "Menuetto" }
}
|
Stücke können innerhalb eines Buches mit \bookpart gruppiert
werden. Derartige Buchabschnitte werden durch einen Seitenumbruch
voneinander getrennt und können wie auch das ganze Buch selber mit
einem Titel innerhalb einer \header-Umgebung beginnen.
\bookpart {
\header {
title = "Buchtitel"
subtitle = "Erster Teil"
}
\score { … }
…
}
\bookpart {
\header {
subtitle = "Zweiter Teil"
}
\score { … }
…
}
|
| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] | [Anfang] | [Inhalt] | [Index] | [ ? ] |
@translationof Multiple output files from one input file
Wenn Sie mehrere Ausgabedateien aus derselben ‘.ly’-Datei haben
wollen, können Sie mehrere \book-Umgebungen hinzufügen, wobei
jede Umgebung eine neue Ausgabedatei produziert. Wenn Sie keine
\book-Umgebung in der Eingabedatei angeben, wird die Datei von
LilyPond implizit als eine große \book-Umgebung behandelt, siehe
auch Die Dateistruktur.
Wenn man mehrere Dateien aus einer einzigen Eingabedatei erstellt, stellt
LilyPond sicher, dass keine der Ausgabedateien der vorhandenen
\book-Umgebungen eine andere Ausgabedatei, etwa von der vorherigen
\book-Umgebung, überschreibt.
Dies geschieht, indem ein Suffix an den Ausgabenamen für jede
\book-Umgebung gehängt wird, die den Dateinamen der Eingabdatei
als Grundlage nimmt.
Das Standardverhalten ist es, einen Zahlen-Suffix für die Namen hinzuzufügen, die in Konflikt stehen. Der Code
\book {
\score { … }
\layout { … }
}
\book {
\score { … }
\layout { … }
}
\book {
\score { … }
\layout { … }
}
|
produziert also
| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] | [Anfang] | [Inhalt] | [Index] | [ ? ] |
@translationof Output file names
LilyPond stellt die Möglichkeit zur Verfügung zu kontrollieren, welche Dateinamen für welche Back-ends benutzt werden sollen, wenn die Ausgabedateien erstellt werden.
Im vorhergehenden Abschnitt wurde gezeigt, wir LilyPond gleichnamige
Ausgabedateien verhindert, wenn mehrere Ausgabedateien aus derselben
Eingabedatei erstellt werden. Es gibt auch die Möglichkeit, eigene
Suffixe für jeden \book-Abschnitt zu definieren, sodass man etwa
Dateinamen wie ‘eightminiatures-Romanze.pdf’, ‘eightminiatures-Menuetto.pdf’
und ‘eightminiatures-Nocturne.pdf’ produzieren kann, indem man
eine \bookOutputSuffix-Angabe in jede \book-Umgebung
einfügt.
\book {
\bookOutputSuffix "Romanze"
\score { … }
\layout { … }
}
\book {
\bookOutputSuffix "Menuetto"
\score { … }
\layout { … }
}
\book {
\bookOutputSuffix "Nocturne"
\score { … }
\layout { … }
}
|
Man kann auch einen anderen Dateinamen für die Ausgabedatei einer
\book-Umgebung erstellen, indem man \bookOutputName-Angabe
macht:
\book {
\bookOutputName "Romanze"
\score { … }
\layout { … }
}
\book {
\bookOutputName "Menuetto"
\score { … }
\layout { … }
}
\book {
\bookOutputName "Nocturne"
\score { … }
\layout { … }
}
|
Die obige Datei produziert folgene Ausgabedateien:
| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] | [Anfang] | [Inhalt] | [Index] | [ ? ] |
@translationof File structure
Eine ‘.ly’-Datei kann eine beliebige Anzahl an Ausdrücken auf der obersten Ebene beinhalten, wobei ein Ausdruck 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 derartige Definition desselben Typs auf oberster Ebene
angegeben wird, hat die spätere Vorrang. Für Einzelheiten, wie dadurch
die \layout-Umgebung beeinflusst wird, siehe
Die \layout-Umgebung.
#(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 { }
}
\paper { }
\header { }
}
|
Dieses Verhalten kann verändert werden, indem die Variable
toplevel-music-handler auf der obersten 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 Bezeichnung 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
%.
%{ .. %}.
Leerzeichen zwischen Einheiten in der Eingabe werden generell ignoriert und können nach Belieben weggelassen werden oder hinzugefügt werden, um die Lesbarkeit des Codes zu verbessern. Mindestens ein Leerzeichen sollte jedoch unter folgenden Umständen immer eingesetzt werden, um Fehler zu vermeiden:
\ beginnt,
# beginnen.
lyricmode) müssen Leerzeichen
zwischen alle Ausdrücke in \override- und \set-Befehlen
gesetzt werden. Insbesondere müssen um Punkte und Gleichzeitszeichen
in Befehlen wie \override Score.LyricTex.font-size = #5)
und vor dem gesamten Befehl geschrieben werden.
Handbuch zum Lernen: (learning)Wie eine LilyPond-Eingabe-Datei funktioniert in Abschnitt ‘Wie eine LilyPond-Eingabe-Datei funktioniert’ in Handbuch zum Lernen.
Notationsreferenz:
Die \layout-Umgebung.
| [ < ] | [ > ] | [ << ] | [ Nach oben ] | [ >> ] |
Dieses Dokument wurde erzeugt von gub am 13. Juli 2020 durch texi2html 1.82.
Andere Sprachen: English, català, español, français, italiano, 日本語.
Über die automatische Sprachauswahl.