On April 2, 2014 12:08:34 AM CDT, Urs Liska <address@hidden> wrote:
Am 02.04.2014 07:22, schrieb Guy Stalnaker:
I noticed this recently but did not have time to post to the list. Now I
do so here 'tis.
I checked the docs and in the section on TPC
(http://www.lilypond.org/doc/v2.18/Documentation/notation/multiple-voices#single_002dstaff-polyphony)
I see no note or warning that what I see is "expected". What do I see?
If I set some measures with rests followed by some notes, followed by
two voices set using the TPC syntax ( << \voiceOne {} \new Voice {
\voiceTwo } >> \voiceOne ), following the conclusion of the TPC section,
subsequent rests are engraved as if two voices still exist, as if (I
pray I'm using the correct
terminology) the "temporary context" has not
been removed, i.e., it was not temporary and continues to influence the
engraving of the staff.
Is there a "purge" or "clean" or "clear" or "release" command one might
use to fix this? In the past I've used manual rest placement to move
them where they should be, but I should not need to do that. The rest
placement remains incorrect whether I use \voiceTwo or \voiceFour for
the \new Voice in the TPC.
You write \voiceOne after the closing >> brackets. That makes LilyPond
think you want to continue with an "upper" voice.
Write \oneVoice in the same place and you'll have what you (presumably)
want.
HTH
Urs
Here's some test music that shows what I'm seeing.
<code>
\version
"2.16.0"
\language "english"
\header {
title = "Rest placement error?"
subtitle = "After Temporary Polyphonic Context"
subsubtitle = "Rests appear as if for upper voice"
}
global = {
\key c \major
\time 3/4
}
sopranoVoice = {
\global
\dynamicUp
\partial 4 r4 |
r2.^\markup {Rests where they are supposed to be} |
r |
r |
r \bar "||"
g'4 \mp ^\markup {Calmly} a'8 a' b'4 |
c''4. d''8 c''4 |
b'8[ g'] g'[ b'] d''4 |
e''8 c'' d''2 |
<< \voiceOne { d''4 g''8[ fs''] e''( d'') |
c''8 c'' d''4( e'') |
f''4 a' c'' |
d''2 c''4 |
c''2. ~ |
c''2. }
\new Voice { \voiceTwo d''4 ^\markup { TPC starts here} b'8 a' g'4 |
a'8 a' b'4( c''8 b') |
a'4
f' a' |
b'2 c''4 |
c''2. ~ |
c''2. } >> \voiceOne |
r ^\markup {Error here - acts like there are two voices!} |
r |
r |
r |
r |
}
sopranoVoicePart = \new Staff \with {
instrumentName = "S."
midiInstrument = "clarinet"
} { \sopranoVoice }
\score {
<<
\sopranoVoicePart
\layout { }
\midi { }
}
</code>