Hi david I think the hairpin alignment is with the DynamicText which aligns under the note. So by moving the text the hairpin follows.
\once \override DynamicText.X-offset = #'x So you could do { c''4\< \once \override DynamicText.X-offset = #'1.1 c''2.\ff | R1 | } However in the first \! although ends the Hairpin can not be moved (that I know of). Two solutions i see. 1. create a hairpin Long = #(define-music-function (parser location str) (number?) #{ -\markup { \halign #-1 \rotate #180 \combine \draw-line #`(,str . 0.7) \draw-line #`(,str . -0.7) } #} ) { c''4_\Long #-7.5 c''2. | R1 | c''4\< \once \override DynamicText.X-offset = #'1.1 c''2.\ff | R1 | } 2. create an invisible dynamic inv = #(make-dynamic-script "") { c''4\< \once \override DynamicText.X-offset = #'5.1 c''2.\inv | R1 | c''4\< \once \override DynamicText.X-offset = #'1.1 c''2.\ff | R1 | } HTH Stephen
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user