\version "2.13.0" \pointAndClickOff #(define (move-left grob) (let* ((line-thickness (ly:staff-symbol-line-thickness grob)) (default-stem-thickness (* 1.3 line-thickness)) (X-extent (ly:stencil-extent (ly:note-head::print grob) 0)) (width (- (cdr X-extent) (car X-extent))) (offset (if (< 0 (ly:grob-property grob 'duration-log)) (- (/ default-stem-thickness 2) width) (- (* default-stem-thickness 2) width)))) offset)) #(define (move-right grob) (let* ((line-thickness (ly:staff-symbol-line-thickness grob)) (default-stem-thickness (* 1.3 line-thickness)) (X-extent (ly:stencil-extent (ly:note-head::print grob) 0)) (width (- (cdr X-extent) (car X-extent))) (offset (if (< 0 (ly:grob-property grob 'duration-log)) (- width (/ default-stem-thickness 2)) (- width (* default-stem-thickness 2))))) offset)) \relative { % adjust Stem 'length and 'extra-offset if % the second is at one end of the stem: \once \override Stem #'length = #7.85 \once \override Stem #'extra-offset = #'(0.065 . -0.45) <\tweak #'X-offset #move-right d \tweak #'X-offset #move-left e gis>4 \once \override Stem #'length = #7.85 \once \override Stem #'extra-offset = #'(0.065 . -0.45) <\tweak #'X-offset #move-right d \tweak #'X-offset #move-left e gis>2 % for some reason, it won't work unless you input the tweak first: <\tweak #'X-offset #move-left b' \tweak #'X-offset #move-right a e>4 % ie. this doesn't work: % 4 <\tweak #'X-offset #move-left b \tweak #'X-offset #move-right a e>1 }