bug-lilypond
[Top][All Lists]
Advanced

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

Re: autochange with multiple voices


From: Thomas Morley
Subject: Re: autochange with multiple voices
Date: Tue, 18 Aug 2015 22:32:07 +0200

2015-08-18 11:57 GMT+02:00 David Kastrup <address@hidden>:
> Nik Repka <address@hidden> writes:
>
>> I am attempting to make a scales sheet for piano.  I need to use autochange
>> simultaneously in two voices.
>>
>> I am using the syntax from this snippet page:
>> http://www.lilypond.org/doc/v2.15/Documentation/snippets-big-page#keyboards-using-autochange-with-more-than-one-voice.
>>
>> The issue I am having is that autochange only works on the top voice, and it
>> drags the lower voice up into the top staff.  Here is the code:
>>
>> \version "2.18.2"
>>
>> scaleRH = \relative c' {c d e f g a b c c b a g f e d c
>> g a b c d e fis g g fis e d c b a g}
>>
>> scaleLH = \relative c {c d e f g a b c c b a g f e d c
>> g a b c d e fis g g fis e d c b a g}
>>
>>
>> \score {
>>    \new PianoStaff
>>
>>       << \new Staff = "up"
>>          <<
>>            \new Voice {
>>            \voiceOne
>>            \autochange
>>
>>            \scaleRH
>>
>>            }
>>
>>            \new Voice {
>>            \voiceTwo \autochange
>>
>>            \scaleLH
>>            }
>>          >>
>>
>>       \new Staff = "down" {
>>           \clef bass
>>       }
>>       >>
>> }
>
> Ok, disregard my previous reply.  It turns out that the whole
> catastrophe happens _exclusively_ when the first note of the first voice
> is c' (or probably one of cis' cisis' ces' ceses').

This not entirely true.

It happens when the first note is the same as the turning point.
Because 2.19.25 allows for different turning points, we can test easily:

\version "2.19.25"

scaleRH = \relative c' { d c d e }

scaleLH = \relative c { d c d e }


\new PianoStaff
  << \new Staff = "up"
     <<
       \new Voice {
         \voiceOne
         \autochange d'
         \scaleRH
       }

       \new Voice {
         \voiceTwo
         \autochange d'
         \scaleLH
       }
     >>
  \new Staff = "down" {
      \clef bass
  }
  >>


returns badly as well.

Investgating further ...


Cheers,
  Harm



reply via email to

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