lilypond-devel
[Top][All Lists]
Advanced

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

cross-staff versions of \arpeggioArrowUp etc.


From: Mark Polesky
Subject: cross-staff versions of \arpeggioArrowUp etc.
Date: Tue, 28 Jul 2009 22:42:47 -0700 (PDT)

\arpeggioArrowUp etc. doesn't work with cross-staff arpeggios
because the arpeggio-direction property is overridden at the 
Voice level, and not the PianoStaff level. To facilitate this
situation for users, I propose adding these four commands to
ly/property-init.ly:

connectArpeggioArrowUp = {
  \revert PianoStaff.Arpeggio #'stencil
  \revert PianoStaff.Arpeggio #'X-extent
  \override PianoStaff.Arpeggio #'arpeggio-direction = #UP
}
connectArpeggioArrowDown = {
  \revert PianoStaff.Arpeggio #'stencil
  \revert PianoStaff.Arpeggio #'X-extent
  \override PianoStaff.Arpeggio #'arpeggio-direction = #DOWN
}
connectArpeggioNormal = {
  \revert PianoStaff.Arpeggio #'stencil
  \revert PianoStaff.Arpeggio #'X-extent
  \revert PianoStaff.Arpeggio #'arpeggio-direction
  \revert PianoStaff.Arpeggio #'dash-definition
}
connectArpeggioBracket = {
  \revert PianoStaff.Arpeggio #'X-extent
  \override PianoStaff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
}

_______________________

Then, for cross-staff arrowed (or bracket) arpeggios, the
user would be able to just do this:

\version "2.13.3"

\new PianoStaff \relative c'' <<
  \set PianoStaff.connectArpeggios = ##t
  \new Staff {
    <c e g c>4\arpeggio
    \connectArpeggioArrowUp
    <g c e g>4\arpeggio    
    \connectArpeggioArrowDown
    <e g c e>4\arpeggio    
    \connectArpeggioNormal
    <c e g c>4\arpeggio
  }
  \new Staff {
    \clef bass
    \repeat unfold 4 {
      <c,, e g c>4\arpeggio
    }
  }
>>

_______________________


Good idea? Bad idea? Support? Opposition?
Thanks.
- Mark



      




reply via email to

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