[ << Allgemeine Eingabe und Ausgabe ] | [Anfang][Inhalt][Index][ ? ] | [ Abstände >> ] | ||
[ < LilyPond-Dateien einfügen ] | [ Nach oben : Arbeiten an Eingabe-Dateien ] | [ Variablen benutzen > ] |
3.3.2 Verschiedene Editionen aus einer Quelldatei
Es gibt verschiedene Funktionen, die es möglich machen, unterschiedliche Versionen einer Partitur aus der gleichen Quelldatei zu produzieren. Variablen werden am besten eingesetzt, wenn es darum geht, längere Notenpassagen und/oder Anmerkungen/Textmarken miteinander auf verschiedene Weise zu kombinieren. Tag-Marken dagegen werden am besten eingesetzt, wenn eine von mehreren kurzen alternativen Notenabschnitten ausgewählt werden soll. Egal welche Methode am Ende eingesetzt wird: Es erleichtert die Arbeit in jedem Fall, wenn die eigentlichen Noten und die Struktur der Paritur voneinander getrennt notiert werden – so kann die Struktur geändert werden, ohne dass man Änderungen an den Noten vornehmen muss.
Variablen benutzen | ||
Marken benutzen |
Variablen benutzen
Wenn Notenabschnitt in Variablen definiert werden, können sie an unterschiedlichen Stellen in der Partitur eingesetzt werden, siehe auch Stücke durch Bezeichner organisieren. Zum Beispiel enthält eine Vokalpartitur für ein a cappella Stück oft einen Klavierauszug, der das Einüben einfacher macht. Der Klavierauszug enthält die gleichen Noten, sodass man sie nur einmal notieren muss. Noten aus zwei Variablen können auf einem System kombiniert werden, siehe Automatische Kombination von Stimmen. Hier ein Beispiel:
SopranNoten = \relative c'' { a4 b c b8( a)} AltNoten = \relative g' { e4 e e f } TenorNoten = \relative c' { c4 b e d8( c) } BassNoten = \relative c' { a4 gis a d, } alleText = \lyricmode {King of glo -- ry } << \new Staff = "Sopran" \SopranNoten \new Lyrics \alleText \new Staff = "Alt" \AltNoten \new Lyrics \alleText \new Staff = "Tenor" { \clef "treble_8" \TenorNoten } \new Lyrics \alleText \new Staff = "Bass" { \clef "bass" \BassNoten } \new Lyrics \alleText \new PianoStaff << \new Staff = "RH" { \set Staff.printPartCombineTexts = ##f \partcombine \SopranNoten \AltNoten } \new Staff = "LH" { \set Staff.printPartCombineTexts = ##f \clef "bass" \partcombine \TenorNoten \BassNoten } >> >>
Unterschiedliche Partituren, die entweder nur den Chor oder das Klavier zeigen, können produziert werden, indem die Struktur verändert wird; die Noten müssen dazu nicht verändert werden.
Für längere Partituren können Variablen in eigene Dateien notiert werden, die dann eingebunden werden, siehe LilyPond-Dateien einfügen.
[ << Allgemeine Eingabe und Ausgabe ] | [Anfang][Inhalt][Index][ ? ] | [ Abstände >> ] | ||
[ < Variablen benutzen ] | [ Nach oben : Verschiedene Editionen aus einer Quelldatei ] | [ Zeichenkodierung > ] |
Marken benutzen
Der \tag #'TeilA
-Befehl markiert einen musikalischen
Ausdruck mit der Bezeichnung TeilA. Ausdrücke, die auf diese
Weise markiert werden, können mit ihrer Bezeichnung später ausgewählt
bzw. ausgefiltert werden. Das geschieht mit den Befehlen
\keepWithTag #'Bezeichnung
bzw. \removeWithTag #'Bezeichnung
.
Die Wirkung dieser Filter auf die markierten Notenabschnitte ist
wie folgt:
Filter | Resultat |
---|---|
Markierte Noten mit vorgesetztem | Unmarkierte Noten und Noten mit der Marke Bezeichnung werden gesetzt, Noten mit einer anderen Marke werden nicht angezeigt. |
Markierte Noten mit vorgesetztem | Unmarkierte Noten und Noten mit einer anderen Marke als Bezeichnung wird angezeigt, Noten markiert mit Bezeichnung werden nicht angezeigt. |
Markierte Noten, weder mit vorgesetztem | Alle markierten und unmarkierten Noten werden angezeigt. |
Die Argumente der Befehle \tag
, \keepWithTag
und
\removeWithTag
sollten ein Symbol sein (wie etwa
#'score
oder #'part
), gefolgt von einem musikalischen
Ausdruck.
Im folgenden Beispiel erscheinen zwei Versionen der Noten, eine zeigt Triller in normaler Notation, die andere zeigt sie ausgeschrieben:
Noten = \relative g' { g8. c32 d \tag #'trills {d8.\trill } \tag #'expand {\repeat unfold 3 {e32 d} } c32 d } \score { \keepWithTag #'trills \Noten } \score { \keepWithTag #'expand \Noten }
Entsprechend können auch Abschnitte ausgeschlossen werden; das erfordert manchmal weniger Schreibarbeit:
Noten = \relative g' { g8. c32 d \tag #'trills {d8.\trill } \tag #'expand {\repeat unfold 3 {e32 d} } c32 d } \score { \removeWithTag #'expand \Noten } \score { \removeWithTag #'trills \Noten }
Marken können auch auf Artikulationen, Text usw angewendet werden, indem man ihnen
-\tag #'your-tag
voranstellt (jedoch nach der Note, an die sie gebunden sind). Mit diesem Code etwa könnte man entweder Fingersatz oder aber einen Text ausgeben:
c1-\tag #'finger ^4 c1-\tag #'warn ^"Achtung!"
Mehrfache Marken können mithilfe von mehreren \tag
-Befehlen
notiert werden:
Noten = \relative c'' { \tag #'a \tag #'both { a a a a } \tag #'b \tag #'both { b b b b } } << \keepWithTag #'a \Noten \keepWithTag #'b \Noten \keepWithTag #'both \Noten >>
Mehrfache \removeWithTag
-Filter können auf einen
musikalischen Ausdruck angewendet werden, um mehrere unterschiedliche
markierte Abschnitte aus dem Druckbild zu entfernen.
Noten = \relative c'' { \tag #'A { a a a a } \tag #'B { b b b b } \tag #'C { c c c c } \tag #'D { d d d d } } { \removeWithTag #'B \removeWithTag #'C \Noten }
Zwei oder mehr \keepWithTag
-Filter in einem musikalischen
Ausdruck bewirken, dass alle markierten Abschnitte entfernt
werden, weil der erste Befehl alle markierten Abschnitt außer dem
im Befehl genannten wegfiltert und der zweite Befehl dann auch diesen
eben genannten zusätzlich entfernt.
Siehe auch
Handbuch zum Lernen: Stücke durch Bezeichner organisieren.
Notationsreferenz: Automatische Kombination von Stimmen, LilyPond-Dateien einfügen.
[ << Allgemeine Eingabe und Ausgabe ] | [Anfang][Inhalt][Index][ ? ] | [ Abstände >> ] | ||
[ < Variablen benutzen ] | [ Nach oben : Verschiedene Editionen aus einer Quelldatei ] | [ Zeichenkodierung > ] |