justastranger
justastranger

Reputation: 31

How to make a cross staff arpeggio with arrow on lilypond

i'm transcribing a score and I need to make a cross staff arpeggio with an arrow like this:

enter image description here

I tried using with this:

\version "2.20.0"

\score{
  \new PianoStaff <<
    \new Staff = "up" {
      {
    \set PianoStaff.connectArpeggios = ##t
    \arpeggioArrowUp
    <e' g'' c''>1\arpeggio\fermata \bar "|."
      }
    }
    \new Staff = "down" {
      {
    \clef F
    \arpeggioArrowUp
    <c c,>1\arpeggio_\fermata
      }
    }
  >>
}

but it doesn't work. I have searched on different snippets but I can't find anything.

Thanks for the help.

Upvotes: 1

Views: 336

Answers (2)

ksnortum
ksnortum

Reputation: 3057

And that can be shortened to this (especially at the end of a piece):

\version "2.20.0"

\score{
  \new PianoStaff <<
    \new Staff = "up" {
      {
    \set PianoStaff.connectArpeggios = ##t
    \once \override PianoStaff.Arpeggio.arpeggio-direction = #UP
    <e' g'' c''>1\arpeggio\fermata \bar "|."
      }
    }
    \new Staff = "down" {
      {
    \clef F
    <c c,>1\arpeggio_\fermata
      }
    }
  >>
}

Upvotes: 2

Owain Evans
Owain Evans

Reputation: 384

see Arrow on cross-staves arpeggio
Code taken from there. It works.

\version "2.20.0"

arpeggioArrowUp = {
  \revert PianoStaff.Arpeggio.stencil
  \revert PianoStaff.Arpeggio.X-extent
  \override PianoStaff.Arpeggio.arpeggio-direction = #UP
}
\score{
  \new PianoStaff <<
    \new Staff = "up" {
      {
    \set PianoStaff.connectArpeggios = ##t
    \arpeggioArrowUp
    <e' g'' c''>1\arpeggio\fermata \bar "|."
      }
    }
    \new Staff = "down" {
      {
    \clef F
    \arpeggioArrowUp
    <c c,>1\arpeggio_\fermata
      }
    }
  >>
}

Upvotes: 4

Related Questions