Instead of suppressing the warning, given that LilyPond adds an invisible
"auxiliary" stem to the whole notes, for creating the tremolo beam,
I think it should be better to explicitly set the stems on both notes,
according to the beam's position:

%%%
\version "2.22.0"

upper = { s1 }

lower =  {
  \clef treble
  \override Beam.positions = #'(10 . 11)
  \repeat tremolo 8 { \stemUp c''''16 \change Staff = "upper" \stemDown
c''''16 }
}

\score {
  <<
    \new Staff = "upper" \upper
    \new Staff = "lower" \lower
  >>
}
%%%

On Wed, Nov 3, 2021 at 3:48 PM Knute Snortum <[email protected]> wrote:

> On Wed, Nov 3, 2021 at 5:44 AM Paolo Prete <[email protected]> wrote:
> >
> > Hello,
> >
> > I'm experiencing strange beams on cross-staff tremolos on whole notes.
> > The beam in the below snippet: 1) is not placed at the middle of the two
> notes and 2) it is too close to the ledger lines.
> >
> > Is this expected?
> > Is there a way to fix 1) + 2) without \tweak(ing)?
> >
> > thanks,
> > P
> >
> > %%%%%%%%%%%%%%%%%%%
> > \version "2.22.0"
> >
> > upper = { s1 s }
> >
> > lower =  {
> >
> > \clef treble
> > \repeat tremolo 8 { c''''16 \change Staff = "upper" c''''16 }
> > \break s1
> >
> > }
> >
> > \score {
> >   <<
> >     \new Staff = "upper" \upper
> >     \new Staff = "lower" \lower
> >   >>
> > }
> > %%%%%%%%%%%%%%%%%%%
>
> The only way I know to fix this is by overriding beam positions.  In
> this case, doing so produces a warning, which I have suppressed.
>
> %%%
> \version "2.22.0"
>
> upper = { s1 }
>
> lower =  {
>   \clef treble
>   \override Beam.positions = #'(10 . 11)
>   #(ly:expect-warning (_ "weird stem size, check for narrow beams"))
>   \repeat tremolo 8 { c''''16 \change Staff = "upper" c''''16 }
> }
>
> \score {
>   <<
>     \new Staff = "upper" \upper
>     \new Staff = "lower" \lower
>   >>
> }
> %%%
>
> --
> Knute Snortum
>

Reply via email to