lilypond-user
[Top][All Lists]
Advanced

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

Rest placement following use of Temporary Polyphonic Context is wrong


From: Guy Stalnaker
Subject: Rest placement following use of Temporary Polyphonic Context is wrong
Date: Wed, 02 Apr 2014 00:22:20 -0500
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130801 Thunderbird/17.0.8

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.

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>

--
"There is only love, and then oblivion. Love is all we have
to set against hatred." (paraphrased) Ian McEwan

Guy Stalnaker
address@hidden



reply via email to

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