Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(61)

Issue 319910043: Allow fixed spacing of symbols in church rests

Can't Edit
Can't Publish+Mail
Start Review
Created:
7 years, 3 months ago by david.nalesnik
Modified:
7 years, 2 months ago
Reviewers:
Dan Eble
CC:
lilypond-devel_gnu.org
Visibility:
Public.

Description

Allow fixed spacing of symbols in church rests By default, the symbols making up a church rest are spread to fill the available space in a measure. Setting the new property "church-rest-inner-padding" places symbols at the given distance from each other independently of measure width. Settings are disregarded if symbols would overlap as a consequence or would exceed the default separation, which is taken as a maximum.

Patch Set 1 #

Patch Set 2 : Add property to correct interface #

Patch Set 3 : Implement max separation #

Unified diffs Side-by-side diffs Delta from patch set Stats (+17 lines, -2 lines) Patch
M lily/multi-measure-rest.cc View 1 2 2 chunks +14 lines, -2 lines 0 comments Download
M scm/define-grob-properties.scm View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M scm/define-grobs.scm View 1 2 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 8
david.nalesnik
Please review. Thanks!
7 years, 3 months ago (2016-12-29 17:47:46 UTC) #1
david.nalesnik
Add property to correct interface
7 years, 3 months ago (2016-12-29 18:30:07 UTC) #2
Dan Eble
On 2016/12/29 17:47:46, david.nalesnik wrote: > Please review. Thanks! I haven't reviewed the code, but ...
7 years, 3 months ago (2016-12-30 16:59:55 UTC) #3
david.nalesnik
On 2016/12/30 16:59:55, Dan Eble wrote: > On 2016/12/29 17:47:46, david.nalesnik wrote: > > Please ...
7 years, 3 months ago (2016-12-30 17:56:33 UTC) #4
david.nalesnik
Please see http://www.mail-archive.com/lilypond-user@gnu.org/msg117437.html
7 years, 2 months ago (2016-12-31 17:22:56 UTC) #5
Dan Eble
On 2016/12/31 17:22:56, david.nalesnik wrote: > Please see http://www.mail-archive.com/lilypond-user@gnu.org/msg117437.html I believe I've done my part ...
7 years, 2 months ago (2016-12-31 21:36:39 UTC) #6
david.nalesnik
Implement max separation
7 years, 2 months ago (2017-01-05 14:43:01 UTC) #7
david.nalesnik
7 years, 2 months ago (2017-01-05 16:00:07 UTC) #8
On 2016/12/30 16:59:55, Dan Eble wrote:
> On 2016/12/29 17:47:46, david.nalesnik wrote:
> > Please review.  Thanks!
> 
> I haven't reviewed the code, but the description makes me wonder, is the
current
> behavior not a bug?  Gould says "In tradition engraving," which appears to be
> her term for the style using church rests, "a rest bar takes the space the
> graphic symbol needs ..." (Behind Bars, p.565).  Although she goes on to
> recommend against "tradition engraving," it seems that the bars should be
sized
> to the rests, not the other way around.
> 
> Is it important to preserve the old algorithm at all?  If not, call it a bug
and
> throw it out.  If it is important to preserve, could it be handled with a
> conversion rule so that your new algorithm can be the default?

I've had time to think about this, and I think my comments below will be a more
direct response
to your concerns!

Bars *are* sized to fit the rest, but this issue is complicated by available
space.
 
When ragged-right is #t, bars fit the rest, though an effort is made to give
extra space to rests
proportional to their duration (the property space-increment).  Gould is in
favor of this practice.  Setting
spacing-increment to 0 gives you measures with only enough space to contain
their rests:

{
  \override MultiMeasureRest.expand-limit = 101
  \override MultiMeasureRest.space-increment = 0
  \compressFullBarRests
  R1*3
  R1*5
  R1*7
  R1*9
  R1*101
}

But when the contents of the measure aren't the only factors in deciding measure
size, what happens
to the church rest?  The engraving examples I cited allow flexibility in the
spacing of church rest
symbols.  When the rest is too diffuse, however, it becomes harder to take in.

So I believe that the bug here is that LilyPond does not limit the
stretchability of the
rest.  The third patch set addresses that.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b