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