bug-lilypond
[Top][All Lists]
Advanced

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

Rest Collision Bug


From: David Raleigh Arnold
Subject: Rest Collision Bug
Date: Sat, 22 Jan 2005 21:16:51 -0500
User-agent: KMail/1.7.1

There is a rule which is quite obscure now about collision of
rests and notes when there are three or four voices on a staff.  If
there is not enough space between the upper and lower voices for a
rest for an inside voice, that rest is placed *before* a stem,
*always*, never tucked in under the lower note head, whether there is
room there or not.  That's easy to implement because one would have to
give the rest a pitch to get a collision, so that's the only condition
you need.  I've got more than a whole page of examples from 1808-1810
with one in almost every measure.  Unfortunately the publisher
copyrighted the scans.  They weren't dirt cheap then the way they are
now.  The only place I've ever seen it stated as a rule was on the
Denemo website IIRC.  I can't imagine how it got there, since it's not
in Stone or Read and I've never seen it expressed anywhere else.  It's
absolutely certain though.  If the rest were placed below or over the
note head it would be wrongly perceived as belonging to the lower or
upper voice instead of a middle.  I suspect that you have been
concerned about collisions between notes and rests.  Much easier than
notes and notes, which might be on either side.  The rest is in front.
That's it.  There isn't any way you can help a user who gives a rest
an unsuitable pitch.  They just have to know the rule to give
such a rest a pitch lying along a stem.  Which stem?  The user has to
decide the pitch.  All LilyPond can do is to place the middle voice
rest a sufficient distance before the stem so as not to be seen as
over or under a note head.

It's a bug. In the following, the rest should be to the left of
the stem.  I hope this gets attention before I have another
3-voice project, and I hope that shifting rests is easier now than
it used to be.  daveA

% rest_collision_bug.ly
\version "2.4.2"

vone = { 
\clef "G_8"
c'4 d' e' c'
c'1
}

vtwo = {
a4 a, a,2
a,1
}

vthree = { \tieDown
e4\rest a2.~ 
a1)
}

\score { \new Staff <<
\new Voice {\voiceOne \vone}
\new Voice {\voiceTwo \vtwo}
\new Voice {\voiceThree \vthree}
>>}
% end

-- 
The only technical exercises for guitar which are worthy of the
instrument consist in "Dynamic Guitar Technique".  I promise miracles.
Get it at:  http://www.openguitar.com/dynamic.html    
daveA         David Raleigh Arnold          dra..at..openguitar.com







reply via email to

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