[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: repeat volta with partial, alternative endings and different \time i
From: |
Thomas Morley |
Subject: |
Re: repeat volta with partial, alternative endings and different \time in different voices |
Date: |
Mon, 10 Aug 2015 12:32:33 +0200 |
2015-08-10 10:23 GMT+02:00 Jonathan Scholbach <address@hidden>:
> Hello again ;-)
>
> I have a somewhat special piece of music: It has a partial and a volta
> with alternative endings. That's no problem. But on top it has different
> meters in the alternatives of the different voices. When I do not
> combine the voices in a ChoirStaff (or StaffGroup) everything works
> fine. But as soon as I put them together in a << >> the volta-bar :|
> vanishes. Do you have a solution for that? I am looking for a way to
> solve this without setting the volta-bar manually, since I want to
> produce adequate midi output, too.
>
> My minimal example:
>
> \version "2.19.22"
>
> global = { \time 3/2 \partial 2 }
>
> first = \relative c' {
> \repeat volta 2 { c2 \time 4/4 c4 c c c }
> \alternative {
> { \time 3/2
> \set Timing.measureLength = #(ly:make-moment 1)
> c1
> }
> { \time 3/2
> \set Timing.measureLength = #(ly:make-moment 1)
> d1
> }
> }
> \time 4/4 c4 c c c
> }
>
> second = \relative c' {
> \repeat volta 2 { c2 \time 4/4 c4 c c c }
> \alternative {
> { \time 3/2
> \set Timing.measureLength = #(ly:make-moment 1)
> c1
> }
> { \time 5/4
> \set Timing.measureLength = #(ly:make-moment 5/4)
> c4 d e f
> }
> }
> g
> \time 4/4 c4 c c c
> }
>
> % this works:
> \score { \new Staff { \global \first } }
> \score { \new Staff { \global \second } }
>
> % that does not work:
> \score {
> \new ChoirStaff <<
> \new Staff { \new Voice { \global \first } }
> \new Staff { \new Voice { \global \second } }
> >>
>
> \layout {
> \context {
> \Score
> \remove "Timing_translator"
> \remove "Default_bar_line_engraver"
> }
> \context {
> \Staff
> \consists "Timing_translator"
> \consists "Default_bar_line_engraver"
> }
> }%end of \layout
> }%end of \score
>
>
> Thank you for your help!
>
> Jonathan
You need to take care of "Repeat_acknowledge_engraver" and
"Volta_engraver" as well.
try to replace \score { \new ChoirStaff ... } with:
\score {
\new ChoirStaff
<<
\new Staff
%% include "Volta_engraver" for the topmost Staff only
\with { \consists "Volta_engraver" }
{ \new Voice { \global \first } }
\new Staff { \new Voice { \global \second } }
>>
\layout {
\context {
\Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
\remove "Repeat_acknowledge_engraver"
\remove "Volta_engraver"
}
\context {
\Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
\consists "Repeat_acknowledge_engraver"
%% include "Volta_engraver" for all Staffs
%\consists "Volta_engraver"
}
}%end of \layout
}%end of \score
HTH,
Harm