Re: Tie between staves of a PianoStaff

2024-05-09 Thread Werner LEMBERG


> Thanks for your contributions. They inspired me to an easy bypass:
> ties may not work between staves, but slurs do, and the difference
> is not really conspicuous.  [...]

By the way, the original problem is an ooold bug:

  https://gitlab.com/lilypond/lilypond/-/issues/555


 Werner



Re: Tie between staves of a PianoStaff

2024-05-09 Thread Knute Snortum
On Thu, May 9, 2024 at 6:27 AM Kris Van Bruwaene  wrote:

> Thanks for your contributions. They inspired me to an easy bypass: ties
> may not work between staves, but slurs do, and the difference is not really
> conspicuous. Result attached.
>

That's great!  I'd change one thing -- not related to cross-staves ties.
In the right-hand set of temporary voices, third voice, I'd start with
\voiceFour instead of \voiceThree.  Now the need for \stemDown \slurDown
goes away:

  \new Voice { \voiceFour % ties (actually slurs) between staves
  s2 b2( \change Staff = "down" \voiceOne b4) \change Staff = "up" s4 %
2
  }

Also, just for future reference, if you just have one slur or tie (or other
things like fematas) to change up or down, you can use the direction
indicators:

  b2_( % slur down
  b2^( % slur up


--
Knute Snortum


Re: Tie between staves of a PianoStaff

2024-05-09 Thread Kris Van Bruwaene
Thanks for your contributions. They inspired me to an easy bypass: ties may not 
work between staves, but slurs do, and the difference is not really 
conspicuous. Result attached.



On Wednesday, 8 May 2024 at 18:44:10 CEST, David Wright 
 wrote: 





On Wed 08 May 2024 at 13:40:23 (+), Kris Van Bruwaene wrote:

> Is there a simple solution for putting a tie between staves of a pianostaff? 
> I need to tie a note of the lower voice on the upper staff to a note of the 
> upper voice on the lower staff. I found this on StackExchange: 
> https://music.stackexchange.com/questions/74383/lilypond-ties-across-staves 
> but it's five years old and seems rather difficult to implement.
> I use version 2.24.2 on Debian.


I'd agree with Knute: you have to bite the bullet and learn \shape.

But in the old stackexchange post, I'd be tempted to make the tie
unambiguous. The result is not publishable, but I don't think it
leaves room for doubt, even with no extra work, and it's \break-
able at either barline. (I'm assuming the lower e /is/ restruck
in measure two.)

Cheers,
David.



myTie.pdf
Description: Adobe PDF document
\version "2.24.2"
organUp = \relative c' {
\clef treble
\key e \minor
r2\mf
<< 
  { \voiceOne
  c4 d | e2( g)
  } 
  \new Voice { \voiceTwo
  s2 | s2 e
  }
  \new Voice { \voiceThree % ties (actually slurs) between staves
  s2 \stemDown \slurDown b2( \change Staff = "down" \voiceOne b4) \change Staff = "up" s4 % 2
  }
>>
}

organDown = \relative c' {
\clef bass
\key e \minor
<< 
  { \voiceOne
  r4 b2 a4 | g2 s4 a
  }
  \new Voice { \voiceTwo
  e1 ~ | e4 d c2
  }
>>
}
\score {
  \new PianoStaff \with { midiInstrument = #"church organ" } <<
\new Staff = "up" \organUp
\new Staff = "down" \organDown
  >>
  \layout { }
}


Re: Tie between staves of a PianoStaff

2024-05-08 Thread David Wright
On Wed 08 May 2024 at 13:40:23 (+), Kris Van Bruwaene wrote:
> Is there a simple solution for putting a tie between staves of a pianostaff? 
> I need to tie a note of the lower voice on the upper staff to a note of the 
> upper voice on the lower staff. I found this on StackExchange: 
> https://music.stackexchange.com/questions/74383/lilypond-ties-across-staves 
> but it's five years old and seems rather difficult to implement.
> I use version 2.24.2 on Debian.

I'd agree with Knute: you have to bite the bullet and learn \shape.

But in the old stackexchange post, I'd be tempted to make the tie
unambiguous. The result is not publishable, but I don't think it
leaves room for doubt, even with no extra work, and it's \break-
able at either barline. (I'm assuming the lower e /is/ restruck
in measure two.)

Cheers,
David.
\version "2.18.2"
\language "deutsch"

\header { tagline = ##f } \layout { indent = 0 ragged-right = ##t }

global = {
  \key c \major
  \numericTimeSignature
  \time 3/4
  \set Timing.beamExceptions = #'()
}

right = \relative c'' {
  \global
  2 (4~~2^~< e cis'>)r4
}

left = {
  \global
  << { s2. s2. gis'8_(fis' e' dis' e' fis') } \\
 { \stemUp dis'2( e'4^~e')( \showStaffSwitch \change Staff = "right" \stemDown cis'2_~) cis' } >>
}

\score {
  \new PianoStaff <<
\new Staff = "right" \right
\new Staff = "left" { \clef treble \left }
  >>
  \layout { }
}


tie.pdf
Description: Adobe PDF document


Re: Tie between staves of a PianoStaff

2024-05-08 Thread Knute Snortum
On Wed, May 8, 2024 at 6:41 AM Kris Van Bruwaene  wrote:

> Is there a simple solution for putting a tie between staves of a
> pianostaff? I need to tie a note of the lower voice on the upper staff to a
> note of the upper voice on the lower staff. I found this on StackExchange:
> https://music.stackexchange.com/questions/74383/lilypond-ties-across-staves
> but it's five years old and seems rather difficult to implement.
> I use version 2.24.2 on Debian.
>

 As far as I know, there is no easy way to do this.  The StackExchange
answer is the way I'd do it.  It involves two ideas: changing staves and
temporary voices.  I use staff changes so much I always have this setup for
my LilyPond code:

%%%
\version "2.24.3"

% Put somewhere near the top of the file, or in an include file
staffUp   = \change Staff = "upper"
staffDown = \change Staff = "lower"

% Create rightHand and leftHand variables
rightHand = \relative {
  c''2 \staffDown \voiceOne c, \staffUp c'1
}

leftHand = \relative {
  \clef bass
  c2 \voiceTwo c c1
}

% Label the two staves upper and lower
\score {
  \new PianoStaff <<
\new Staff = "upper" \rightHand
\new Staff = "lower" \leftHand
  >>
}
%%%

The other part is knowing how to create temporary voices in LilyPond.  The
way used in the StackExchange example looks like this:

<<

{

% music here

}

\\

{

% music here

}

>>


The idea is that one voice will overlap the other as the two voices will
render simultaneously. Putting these two ideas together gives you the
ability to tie across staves. If the tie does not look the way you want it
to, you can control its shape with the shape command, which looks like this:


\shape #'((0 . 0) (0 . 0) (0 . 0) (0 . 0)) Tie


So it is complex, but hopefully this has been instructive for you.


--
Knute Snortum


Tie between staves of a PianoStaff

2024-05-08 Thread Kris Van Bruwaene
Is there a simple solution for putting a tie between staves of a pianostaff? I 
need to tie a note of the lower voice on the upper staff to a note of the upper 
voice on the lower staff. I found this on StackExchange: 
https://music.stackexchange.com/questions/74383/lilypond-ties-across-staves but 
it's five years old and seems rather difficult to implement.
I use version 2.24.2 on Debian.