Re: 'to-barline' doesn't stop glissando from crossing the barline.
[email protected] Mon, 27 Jul 2026 18:14:08 +0000
| Newsgroups | gmane.comp.gnu.lilypond.general |
|---|---|
| Message-ID | <20260727181408.Horde.EpZxp4NlegQd4G9aMd8ZNMc@webmail.infopower.nl> |
Quoting Thomas Morley <[email protected]>: > 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 Oh, ok, it doesn't have to reach the barline though, as long as it stops before it. Thanks, harry