David Kastrup wrote:
> This sounds to me like giving users a low-level manual way to fudge
> around a bug/design mistake.  This sounds like something that should
> happen automatically in most cases.

Interesting idea. As a first attempt, I tried making the functionality
of the \arpeggioArrowUp command dependent on the 'connectArpeggios
context property, but obviously I'm doing something wrong. Does anyone
know why this doesn't work? Can anyone see how to make this work? If
not, are there other oppositions to my earlier solution of defining new
commands?

Thanks.
- Mark

\version "2.13.3"

arpeggioArrowUp = {
  \applyContext
    #(lambda (x)
       (if (eq? #t (ly:context-property x 'connectArpeggios))
           #{
          \revert PianoStaff.Arpeggio #'stencil
          \revert PianoStaff.Arpeggio #'X-extent
          \override PianoStaff.Arpeggio #'arpeggio-direction = #UP
       #}
           #{
          \revert Arpeggio #'stencil
          \revert Arpeggio #'X-extent
          \override Arpeggio #'arpeggio-direction = #UP
       #}))
}

\new PianoStaff \relative c'' <<
  \new Staff {
    \arpeggioArrowUp
    <c e g c>4\arpeggio
    \arpeggioNormal
    <c e g c>4\arpeggio
    \set PianoStaff.connectArpeggios = ##t
    \arpeggioArrowUp
    <c e g c>4\arpeggio
  }
  \new Staff {
    \clef bass
      <c,, e g c>4\arpeggio
      <c e g c>4\arpeggio
      <c e g c>4\arpeggio
  }
>>


      


_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to