nächstes: Auflösung von Zusammenstößen, voriges: Einfache Mehrstimmigkeit, aufwärts: Mehrere Stimmen
Voice-Kontexte können auch manuell innerhalb
eines << >>
-Abschnittes initiiert werden. Mit den Befehlen
\voiceOne
bis hin zu \voiceFour
kann jeder Stimme
entsprechendes Verhalten von vertikaler Verschiebung und Richtung
von Hälsen und anderen Objekten hinzugefügt werden.
Genauer gesagt,
<< \upper \\ \lower >>
entspricht
<< \new Voice = "1" { \voiceOne \upper } \new Voice = "2" { \voiceTwo \lower } >>
Der \voiceXXX
-Befehl setzt die Richtung von Hälsen,
Bögen, Artikulationszeichen, Text, Punktierungen und Fingersätzen.
\voiceOne
und \voiceThree
lassen diese Objekte
nach oben zeigen,
\voiceTwo
und \voiceFour
dagegen lassen sie abwärts zeigen. Der Befehl
\oneVoice
stellt wieder auf das normale Verhalten um.
Ein Ausdruck, der direkt innerhalb einer << >>
-Umgebung
auftritt, gehört der Hauptstimme an. Das ist nützlich, wenn zusätzliche
Stimme auftreten, während die Hauptstimme sich fortsetzt. Hier also
eine bessere Version des Beispiels aus dem vorigen Abschnitt. Die
farbigen Kreuz-Notenköpfe zeigen, dass die Hauptstimme sich jetzt in
einem einzigen Stimmen (voice
)-Kontext befindet.
\new Staff \relative c' { \override NoteHead #'style = #'cross \override NoteHead #'color = #red c16 d e f \voiceOne << { g4 f e | d2 e2 } \new Voice="1" { \voiceTwo r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 \oneVoice } \new Voice { \voiceThree s2. | s4 b4 c2 \oneVoice } >> \oneVoice }
Und mit der richtigen Definition der Stimmen kann die Melodie auch übergebunden werden.
\new Staff \relative c' { c16^( d e f \voiceOne << { g4 f e | d2 e2) } \context Voice="1" { \voiceTwo r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 \oneVoice } \new Voice { \voiceThree s2. s4 b4 c2 \oneVoice } >> \oneVoice }
Indem man den \\
-Trenner vermeidet, gelingt es auch, mehrstimmige
Abschnitte ineinander zu schachteln, was in manchen Fällen die bessere
und natürlichere Lösung sein kann.
\new Staff \relative c' { c16^( d e f \voiceOne << { g4 f e | d2 e2) } \context Voice="1" { \voiceTwo r8 e4 d c8 ~ | << {c8 b16 a b8 g ~ g2} \new Voice { \voiceThree s4 b4 c2 \oneVoice } >> \oneVoice } >> \oneVoice }
In manchen Fällen von sehr komplexer polyphoner Musik können noch mehr Stimmen benötigt werden, um Zusammenstöße zwischen Noten zu vermeiden. Zusätzliche Stimmen werden durch einen neuen Bezeichner erstellt, wie das nächste Beispiel zeigt.
voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice) \relative c''' << { \voiceOne g4 ~ \stemDown g32[ f( es d c b a b64 )g] } \\ { \voiceThree b4} \\ { \voiceFive d,} \\ { \voiceTwo g,} >>
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.