lilypond-user
[Top][All Lists]
Advanced

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

Re: Hairpin inside slur?


From: pls
Subject: Re: Hairpin inside slur?
Date: Sun, 27 Jul 2014 23:12:05 +0200


On 27.07.2014, at 22:11, Mike Solomon <address@hidden> wrote:


On Jul 27, 2014, at 10:18 PM, pls <address@hidden> wrote:

Hey all,

today I experimented with hairpins inside slurs and encountered a strange phenomenon: 

\version "2.19.11"

exOne = { 
  \override Slur.height-limit = 20
  \override DynamicLineSpanner #'outside-staff-priority = ##f  
  c'32 ( g'32 ^\< c''32 g''32\! a''32 ^\> g''32 e''32\! g'32 )   
}

exTwo = { 
  \override Slur.height-limit = 20
  \override DynamicLineSpanner #'outside-staff-priority = ##f  
  e32 (  g32_\< b32 c'32\! d'32_\> c'32  g32\! e32 )    
}

{
  \exOne 
}

{
  \exTwo 
}

<hairpins-inside-slurs.png>

The second example works as expected.  I’m running out of ideas why the hairpins can’t be moved inside the slur in the first example.  Am I missing something?

Thanks for your help!

patrick

The slur is ignoring the hairpin and vice versa, so the lack of an intersection in the second example is serendipitous and not the result of any collision avoidance mechanism.

Currently, in addition to note-heads and stems, slurs avoid what are called “extra-objects”.  These objects are hard-coded into the Slur engraver and are things like tuplet numbers, scripts, and fingerings.  Hairpins and DynamicLineSpanners are currently not in this category.

So unfortunately it is currently not possible in the way you’re aiming for.

But, there is one possibility worth studying:

exOne = {
  \override Slur.height-limit = 20
  \override DynamicLineSpanner #'outside-staff-priority = #20
  \override Slur #'outside-staff-priority = #21
  c'32 ( g'32 ^\< c''32 g''32\! a''32 ^\> g''32 e''32\! g'32 )   
}

{
  \exOne
}

If you go with this, I'd recommend thinning out the girth of the hairpin, as a slur that high is a bit of an eyesore IMO.

Thanks, Mike!


reply via email to

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