Thank you for your answer. I do use /once when appropriate, and defining a variable indeed helps with the typing. But I was hoping for a way of establishing that all hairpins that cross time signature changes extend beyond the barline, and if lilypond took care of this automatically it would be one less thing for me to worry about 🙂. Nuno Trocado ________________________________ From: Aaron Hill <lilyp...@hillvisions.com> Sent: Monday, March 1, 2021 10:25 PM To: N Trocado <uio...@hotmail.com> Cc: lilypond-user@gnu.org <lilypond-user@gnu.org> Subject: Re: Extend all hairpins over time signature changes
On 2021-03-01 9:52 am, N Trocado wrote: > I like to have hairpins cut through barlines, extending to the note > that ends them on the first beat of the next bar, whenever there's a > time signature change. Stopping short of the barline in this case, as > is the default, leaves a bit too much space between the end of the > hairpin and the dynamic symbol. > I know that I can \override Hairpin.to-barline = ##f. But would it be > possible to configure the default behavior to work as described, > instead of spraying overrides everywhere? Are you doing \once \override or just \override? A singular \override will affect all Hairpins from that point in the music forward (or until another \override or a \revert). Assuming you want this behavior for all Hairpins across all staves, just do the \override at a suitably global level. %%%% % Top-level or within \score \layout { \context { \Staff \override Hairpin.to-barline = ##f } } %%%% If you need to scope this to a particular Staff, either use the \with block or just \override as the first thing in the music: %%%% \new Staff \with { \override Hairpin.to-barline = ##f } { ... } % or % { \override Hairpin.to-barline = ##f ... } %%%% Finally, if you need a mixture of Hairpins that either extend to the note or stop at the barline, then you might want to define a helper variable: %%%% extend = -\tweak to-barline ##f \etc \fixed c' { \time 3/4 g2 a8 \extend \< b | \time 2/4 cis'2 \! } %%%% -- Aaron Hill