nächstes: Musikalische Ausdrücke ineinander verschachteln, voriges: Einführung in die Dateistruktur von LilyPond, aufwärts: Wie eine LilyPond-Datei funktioniert
Im vorigen Kapitel, Einführung in die Dateistruktur von LilyPond,
wurde die allgemeine Struktur einer LilyPond-Quelldatei
beschrieben. Aber anscheinend haben wir die wichtigste
Frage ausgelassen, nämlich wie man herausfindet, was nach
dem \score
geschrieben werden soll.
In Wirklichkeit ist das aber gar kein Geheimnis. Diese Zeile ist die Antwort:
Eine Partitur fängt immer mit \score
an, gefolgt
von einem einzelnen musikalischen Ausdruck.
Vielleicht wollen Sie noch einmal Musikalische Ausdrücke erklärt überfliegen. In diesem Kapitel wurde gezeigt, wie sich große musikalische Ausdrücke aus kleinen Teilen zusammensetzen. Noten können zu Akkorden verbunden werden usw. Jetzt gehen wir aber in die andere Richtung und betrachten, wie sich ein großer musikalischer Ausdruck zerlegen lässt.
\score { { % diese Klammer startet den großen mus. Ausdruck \new GrandStaff << ...hier eine ganze Wagner-Oper einfügen... >> } % diese Klammer beendet den Ausdruck \layout { } }
Eine Wagner-Oper ist mindestens doppelt so lang wie dieses Handbuch,
beschränken wir uns also auf einen Sänger und Klavier. Wir brauchen
keine Orchesterpartitur (GrandStaff
) dafür, darum lassen wir
den Befehl weg. Wir brauchen aber einen Sänger und ein Klavier.
\score { { << \new Staff = "Sänger" << >> \new PianoStaff = Klavier << >> >> } \layout { } }
Zur Erinnerung: mit <<
und >>
werden Noten gleichzeitig
gesetzt; wir wollen ja auch Klavier- und Sängerstimme gleichzeitig
und nicht hintereinander haben. Bei genauerem Hinsehen fällt auf, dass
die << ... >>
-Konstruktion für die Notenzeile des Sängers eigentlich
nicht unbedingt nötig wäre, da sie ja nur einen (sequenzielle) musikalischen
Ausdruck enthält, nämlich alle Noten des Sängers hintereinander. Daher
könnte an sich auch einfach ein {...}
benutzt werden. Die
Spitzklammern sind allerdings notwendig, sobald die Notenzeile mehrere
parallelle Ausdrücke – wie etwa zwei parallele Stimmen oder eine Stimme
mit zugehörigem Text – enthält.
Wir werden die Musik später in das Beispiel einfügen, im Moment begnügen
wir uns mit einigen Platzhalter-Noten und -Texten.
\score { << \new Staff = "Sänger" << \new Voice = "Singstimme" { c'1 } \addlyrics { And } >> \new PianoStaff = "Klavier" << \new Staff = "oben" { } \new Staff = "unten" { } >> >> \layout { } }
Jetzt haben wir viel mehr Details. Wir haben ein System (engl. staff)
für einen Sänger, in dem sich wieder eine Stimme (engl. voice)
befindet. Voice
bedeutet für LilyPond eine Stimme (sowohl
gesungen als auch gespielt) und evtl. zusätzlich einen Text. Zusätzlich
werden zwei Notensysteme für das Klavier mit dem Befehl \new
PianoStaff
gesetzt. PianoStaff
bezeichnet die Piano-Umgebung (etwa
durchgehende Taktstriche und die geschweifte Klammer am Anfang), in der
dann wiederum zwei eigene Systeme ("upper" für die rechte Hand und
"lower"
für die linke) erstellt werden.
Jetzt könnte man in diese Umgebung Noten einfügen. Innerhalb der
geschweiften Klammern neben \new Voice = vocal
könnte man
\relative c'' { r4 d8\noBeam g, c4 r }
schreiben. Aber wenn man seine Datei so direkt schreibt, wird
der \score
-Abschnitt sehr lang und es wird ziemlich schwer zu
verstehen, wie alles zusammenhängt. Darum bietet es sich an, Bezeichner
(oder Variablen) zu verwenden.
melodie = \relative c'' { r4 d8\noBeam g, c4 r } Text = \lyricmode { And God said, } oben = \relative c'' { <g d g,>2~ <g d g,> } unten = \relative c { b2 e2 } \score { << \new Staff = "Sänger" << \new Voice = "Singstimme" { \melodie } \addlyrics { \Text } >> \new PianoStaff = "Klavier" << \new Staff = "oben" { \oben } \new Staff = "unten" { \clef "bass" \unten } >> >> \layout { } }
Achten Sie auf den Unterschied zwischen Noten, die mit \relative
oder direkt in einem musikalischen Ausruck eingegeben werden, und
dem Text des Lieds, der innerhalb \lyricmode
angegeben
werden muss. Diese Unterscheidung ist für LilyPond essentiell,
um zu entscheiden, ob der folgende Inhalt als Musik oder Text
interpretiert werden soll. Wie könnte LilyPond sonst entscheiden,
ob {a b c}
die drei Noten a, b und c darstellen soll oder
den Text eines Lieds über das Alphabet!
Beim Schreiben (oder Lesen) einer \score
-Umgebung
sollte man langsam und sorgfältig vorgehen. Am besten fängt
man mit dem größten Gebilde an und definiert dann die darin
enthaltenen kleineren der Reihe nach. Es hilft auch, sehr
genau mit den Einzügen zu sein, so dass jede Zeile, die
der gleichen Ebene angehört, wirklich horizontal an der
gleichen Stelle beginnt.
Benutzerhandbuch: Struktur einer Partitur.
Diese Seite ist für LilyPond-2.11.58 (Entwicklungszweig).
Fehler bitte an http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs melden.
Ihre Vorschläge für die Dokumentation sind willkommen.