lilypond-devel
[Top][All Lists]
Advanced

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

Re: cross-staff versions of \arpeggioArrowUp etc.


From: Mark Polesky
Subject: Re: cross-staff versions of \arpeggioArrowUp etc.
Date: Wed, 29 Jul 2009 09:30:58 -0700 (PDT)

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
  }
>>


      




reply via email to

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