lilypond-user
[Top][All Lists]
Advanced

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

Re: "exploding" a choirStaff


From: Michiel Lange
Subject: Re: "exploding" a choirStaff
Date: Mon, 28 Feb 2005 22:45:49 +0100
User-agent: Mozilla Thunderbird 0.8 (Windows/20040913)

It was indeed silly of me to forget (not intentional) the lilypond version... I'm sorry for that... (it was 2.4.2 btw) Yet you did a great job, for it was indeed the thing I was looking for! Thanks for that!

I am fairly new to Lilypond, using it for a few months yet, and trying to get the things together by typing over pieces of music I have collected in the past... It is pretty hard to determine how much is needed to get a real idea of the problem, and I thought the problem was solely in the \score, and in an attempt not to spam the list too much with long messages, I tried to cut out as much as to give an idea of the problem... with that I cut away the header and version fields as well... obviously a lack of coffee, as at least the version is indeed very important... and I know that... please forgive me for doing a too thorough job of cutting the piece, I will try to better my life on that :-)

Thanks for the answer... Maybe this is something for the online knowledge base of Lilypond... if people agree with me, I could try to write a small piece that shows what happens... I am struggling to get the lyrics in the music as they are supposed, but that should be a minor problem... I think I have to add a Voice for that in the new staves. But already I am becoming a very happy man... This cool program can really do almost everything! amazing! it has changed my life ;-)

Thanks!
Michiel
Mats Bengtsson wrote:

It's always very difficult to understand and find problems in
an uncomplete section of code. You have much better chances to
get relevant answers if you make a small but complete toy example
that illustrates what you tried and want to do (also, every so often,
you find the solution yourself during the preparation of the small
example). Also, always tell what LilyPond version you use, since
LilyPond keeps evolving from version to version.

Did you see the example called staff-halfway.ly in the "Regression Test"
document at www.lilypond.org? It shows the easiest way to create
additional staves in the middle of a piece. However, since LilyPond
always orders the staves vertically in the order they first appear in
the \score{...} section, this will probably not give the result you
want. The best solution is probably to use the RemoveEmptyStaffContext
feature and create all the staves already from the top of the score.
Something like:

\score{
  \context ChoirStaff <<
    \context Staff = separateSopranos{ s1*20}
    \context Staff = women <<
      \context Voice = sop {\sopm
                            \change Staff=separateSopranos \amensop}
      \context Voice = alt {\altm \amenalt}
    >>
  ...
  >>
\layout{\context {\RemoveEmptyStaffContext}}
}

The s1*20 should be modified to keep the top Staff context alive until
the voice moves up.

   /Mats


Michiel Lange wrote:

I have this piece of music I'm working on, and for the greater part the music of the Sopranos and Altos are combined on a Staff with the usage of VoiceOne and VoiceTwo. The same goes up for the Tenors and Basses.

Almost at the end of the piece I wanted to "explode" the combined voices into separate staves, and thought I would solve it this way in the Score (see \score part below). However, Lilypond starts to cross fingers, wants to go back in time and another bunch of errors... Obviously, I am doing something utterly stupid... but what is it?

Thanks in advance!
- Michiel

--> score snippet <--
\score
{
       << {
       \context ChoirStaff<<
               \context Staff = women <<
               \key ges \major \clef violin
               \context Voice= sop
               {
                       \relative c''
                       {
                               \voiceOne << \sopm >>
                       }
               }
               \context Voice=alt
               {
                       \relative c''
                       {
                               \voiceTwo << \altm >>
                       }
               }
               >>
               \lyricsto sop \new Lyrics \lyrenw
               \context Staff = men <<
                       \clef bass \key ges \major
                       \context Voice=ten
                       {
                               \relative c'
                               {
                                       \voiceOne << \tenm >>
                               }
                       }
                       \context Voice=bas
                       {
                               \relative c'
                               {
                                       \voiceTwo << \basm >>
                               }
                       }
                       \lyricsto ten \new Lyrics \lyrenm
               >>
       >>
       \context ChoirStaff
       <<
               \context Staff=sopamen
               <<
                       \key ges \major \clef violin
                       \context Voice=amensop
                       {
                               \relative c''
                               {
                                       \amensopm
                               }
                       }
                       \lyricsto amensop \new Lyrics \amensopl
               >>
               \context Staff=altamen
               <<
                       \key ges \major \clef violin
                       \context Voice=amenalt
                       {
                               \relative c'
                               {
                                       \amenaltm
                               }
                       }
                       \lyricsto amenalt \new Lyrics \amenaltl
               >>
               \context Staff=tenamen
               <<
                       \key ges \major \clef violin
                       \context Voice=amenten
                       {
                               \relative c'
                               {
                                       \amentenm
                               }
                       }
                       \lyricsto amenten \new Lyrics \amentenl
               >>
               \context Staff=basamen
               <<
                       \key ges \major \clef bass
                       \context Voice=amenbas
                       {
                               \relative c,
                               {
                                       \amenbasm
                               }
                       }
                       \lyricsto amenbas \new Lyrics \amenbasl
               >>
       >> }
       \context PianoStaff <<
       \context Staff
       {
               \relative c'
               {
                       \key ges \major \clef violin
                       \pianor
               }
       }
       \new Staff
       {
               \relative c'
               {
                       \key ges \major \clef bass
                       \pianol
               }
       }
       >>
 >>
--> end of score snippet <--



_______________________________________________
lilypond-user mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-user







reply via email to

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