On 14 août 2012, at 08:37, Werner LEMBERG <w...@gnu.org> wrote:

> 
>> Had a chance to look into it.
> 
> Thanks.
> 

Hey Werner,

I'll explain more below.

>> The too-closeness is registering, so the issue is either one of:
>> 
>> 1) The details list for slurs needs different values.

Try stuff like
\override Slur #'details #slur-tie-extrema-min-distance-penalty = #5000
or
\override Slur #'details #slur-tie-extrema-min-distance = #1

Check out around line 344 of slur-configuration.cc and you'll see how these 
parameters are used.

>> 
>> 2) Not enough potential slurs are being generated and thus there is
>>   no candidate that is far enough away from the tie.

LilyPond generates a certain number of possible curves and then scores them and 
returns the best one.

What I mean here is that LilyPond is not generating the curve you want as a 
candidate.  You can increase region-size to do this (in my previous e-mail I 
had forgotten what it was called, but it's called region size, so \override 
Slur #'details #'region-size = #10 for example).

>> 
>> I tried to tinker with (1) but couldn't get it work.  I haven't
>> tried (2) yet but see if you can increase the attachment range (I
>> forget how to do this...maybe changing minimum-length) and see if
>> that helps.  Once you've exhausted (1) and (2), ping the list w/ the
>> results.
> 
> I fear that I don't really understand what you want me to do.  The
> correct solution to the problem is to make the slur end one step lower
> on the right side, similar to the left side.  IMHO, this is such an
> obvious solution that it should be found programmatically also.
> Actually, I can't imagine how this slur end point is *not* a
> candidate, so this looks like a bug.
> 
> Is there a possibility to make lilypond print out the list of
> candidates of a given slur?
> 

I'm not sure.

It's all about finding the right values.  Try, for example:

\version "2.17.0"

 \paper {
   ragged-right = ##f
 }

 \relative c' {
  \override Slur #'details #'slur-tie-extrema-min-distance-penalty = #4.5
  \override Slur #'details #'slur-tie-extrema-min-distance = #0.5
   \time 5/4 g'2.( ~ g8 a4. ~ |
   a1) r4
 }

This gives you what you want.  I agree with you that LilyPond should find this 
programatically.  So play around with lots of values for the parameters above, 
see if they have an impact on the regtests, and if they don't effect present 
slurs and give you the result you want than you can propose it as a patch to 
scm/layout-slur.scm.

Cheers,
MS
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to