Re: 'to-barline' doesn't stop glissando from crossing the barline.

Thomas Morley <[email protected]> Sun, 26 Jul 2026 23:55:51 +0200
Newsgroups gmane.comp.gnu.lilypond.general
Message-ID <CABsfGyVjyYAEL3mLw0yXCJ7yG2QN3_ffzth0dtbV_03LdU4LHA@mail.gmail.com>
Am So., 26. Juli 2026 um 23:16 Uhr schrieb <[email protected]>:
>
>
> Quoting Thomas Morley <[email protected]>:
>
> > Am So., 26. Juli 2026 um 21:45 Uhr schrieb <[email protected]>:
> >>
> >> Another problem (I know I can tackle it with a cadanza) that I think
> >> should have worked but didn't -- probably due to my lack of knowledge
> >> of lilypond -- is the following bar:
> >>
> >> \version "2.24.1"
> >>
> >> \new TabStaff \fixed c {
> >>    \tabFullNotation
> >>    \slurUp < f'-4\2 >8[ < f'-4\2 >16 ( < d'-1\2 >16 )]
> >>    < c'-3\3 >8[  < d'-1\2 >8] (
> >>    \once \override TabNoteHead.transparent = ##t
> >>    < d'\3 >8 )
> >>    \once \override Glissando.bound-details.to-barline = ##t
> >>    < f'-4\2 >4. \glissando
> >>    \hideNotes
> >>      \grace < d'-4\3 >32
> >>    \unHideNotes
> >> }
> >>
> >>
> >> I know, the \grace note extends into the next bar, but the directive
> >> to stop before the barline seems quite
> >> clear to me. Any hints again? (I'm starting to feel quite silly now...)
> >>
> >> harry
> >>
> >>
> >>
> >
> > The property 'to-barline is a stand-alone property, not a sub-property
> > of 'bound-details.
> >
> > Alas, if you use it correctly it crashes.
> > You discovered a very long standing, so far undetected bug.
> > I just wrote a bug-report:
> > https://gitlab.com/lilypond/lilypond/-/work_items/6951
> >
> > If you really need it you can do (as MWE):
> > \new TabStaff
> > {
> >    \once \override Glissando.to-barline = ##t
> >    \once \override Glissando.extra-dy = #-0.75
> >    \once \override Glissando.bound-details.right.Y = 3.75
> >    g'1 \glissando
> >    f'
> > }
> >
> > Or probably something like below (your example):
> > \new TabStaff \fixed c {
> >    \tabFullNotation
> >    \slurUp < f'-4\2 >8[ < f'-4\2 >16 ( < d'-1\2 >16 )]
> >    < c'-3\3 >8[  < d'-1\2 >8] (
> >    \once \override TabNoteHead.transparent = ##t
> >    < d'\3 >8 )
> >    <<
> >         < f'-4\2 >4.\glissando
> >         {
> >              s4 s16.
> >              \once \omit Flag
> >              \once \override TabNoteHead.stencil = #point-stencil
> >              \once \omit Stem
> >              < d'-4\3 >32
> >         }
> >    >>
> > }
> >
> > Cheers,
> >   Harm
>
> Thanks Harm,
> does it still make sense to file bug reports for 2.24? Or does it
> occur in 2.26 too.

It is still present in 2.27.2. Follow the provided link...

> Anyway, that 'stand-alone property'... I must admit that I barely know
> what I'm doing, so a lot comes down to trial and error. I tried
> Glissando.to-barline and that didn't work. So I reasoned that as it
> has to with a right boundary, maybe it would work with bound-details
> included.
>
> Your first work-around requires tweaking every time, the second one
> with the 'empty' voice seems more elegant to me, so that's what I'm
> going to try.

I'd recommend the first.
extra-dy will always be 0.75 or -0.75
You'll need to find the needed value for
Glissando.bound-details.right.Y by try and error, though.
You may want to create a function for it:

glissToBar =
#(define-event-function (dir y-off mus)(ly:dir? number? ly:music?)
#{
  \tweak to-barline ##t
  \tweak extra-dy #(* dir 0.75)
  \tweak bound-details.right.Y #y-off
  $mus
#})

\new TabStaff
{
   g'1\glissToBar #DOWN #3.75 \glissando f'
   f'-\glissToBar #UP #3.75 \glissando g'
   c'-\glissToBar #UP #2.25 \glissando d'
}

You may differ, though ;)

Cheers,
  Harm