lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Staff change in piano music - a general approach?


From: Jan Warchoł
Subject: Re: Staff change in piano music - a general approach?
Date: Fri, 31 Dec 2010 16:25:36 +0100

2010/12/31 jakob lund <address@hidden>:
>
> I'm probably missing something here, but in your example it seems that
>
> \score {
>       \new Staff <<
>               \global
>               \new Voice << \soprano  \alto >>
>               \new Voice \tenor
>       >>
> }

Jakob, your solution above inspired me to create the following construct:


\version "2.12.3"

global = {
       \time 2/2
       \key d \minor
}

soprano = \relative c'' {

       \repeat volta 2 {
               g'4 g d4. e8 |
               fis4 fis g d |
               g g d4. e8 |
               fis4 fis g2 |
       }

       g4 g g4. f8 |
       g8 a bes4 f2 |
       f4 f f4. e8 |
       f8 d g4 d4. e8 |

       \repeat volta 2 {
               f g f es d4. c8 |
               bes8 a bes c d4. e8 |
               f g f es d4 c8 bes |
               a g fis4 g2 |
       }
}

alto = \relative c'' {

       \repeat volta 2 {
               % \stemUp
               b4 c b4. c8 |
               d4 d8 c b2 |
               b4 c b4. c8 |
               d4 d b2 |
       }

       b4 c b4. c8 |
       d4 d d2 |
       % \stemDown
       d4 a bes2 |
       bes4 g8 a bes2 |

       \repeat volta 2 {
               bes4 a bes4. a8 |
               g f g a bes4. c8 |
               d4 c bes g |
               f8 e d c b2 |
       }
}

tenor = \relative c' {

       \repeat volta 2 {
               \change Staff = "upper"
               \voiceTwo
               g'4 g g2 |
               a4 a g2 |
               g4 g g2 |
               a4 a g2 |
       }

       g4 g g4. a8 |
       bes4 bes bes2 |
       \change Staff = "lower"
           \voiceOne
       f4 f d2 |
       d4 es d2 |

       \repeat volta 2 {
               d4 c d2 |
               es2 d4 f |
               f2 f4 e |
               a,2 g |
       }
}

bass = \relative c' {

       \repeat volta 2 {
               g4 c, g'2 |
               d g |
               g4 c, g'2 |
               d g, |
       }

       g'4 c, g'2 |
       g4 g bes2 |
       \voiceTwo
       bes,4 f' bes,2 |
       bes4 es bes2 |

       \repeat volta 2 {
               bes4 f' bes,2 |
               es bes |
               bes4 f' bes, c |
               d2 g, |
       }
}



rightHand = { <<
       \global
       \clef treble
           \new Voice { \voiceOne << \soprano \alto >> }
       \new Voice { \tenor }
          >>
}

leftHand = {
       \global
       \clef bass
           \bass
}

\score {
       \new PianoStaff <<
               \new Staff = "upper" \rightHand
               \new Staff = "lower" \leftHand
       >>
}

It's not perfect (sometimes an 8th note gets an unflagged stem or a
quarter gets a flagged one), but i think it's as elegant as we can
get.
I attach the result (made by LilyPond 2.13.44, but i suppose 2.12
would handle it similarly).

cheers,
Janek

PS Happy new year! :)

Attachment: mixing voices.pdf
Description: Adobe PDF document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]