OK, David, so let's move one square backward and try to use staff-position. The following code does compile but doesn't do what I want. Perhaps what I'm trying to achieve is just not possible.
%%%%%%%%%%%%%%%%%%%%%% tweakTie = #(lambda (grob) (let* ((ties (ly:grob-array->list (ly:grob-object grob 'ties))) (notehead (ly:spanner-bound (car ties) LEFT)) (notehead-pos (ly:grob-property notehead 'staff-position)) (stem (ly:grob-object notehead 'stem)) (flag (ly:grob-object stem 'flag)) (dot (ly:grob-object notehead 'dot)) (dot-pos (if (ly:grob? dot) (ly:grob-property dot 'staff-position) #f))) (if (> (length ties) 1) (begin (if (ly:grob? flag) (ly:grob-set-property! flag 'Y-extent (cons 4 0))) (for-each (lambda (tie) (ly:grob-set-nested-property! tie '(details skyline-padding) 5)) ties))) (if (ly:grob? dot) (if (> dot-pos notehead-pos) (for-each (lambda (tie) (let ((tie-dir (ly:grob-property tie 'direction))) (if (= tie-dir 1) (begin (ly:grob-set-nested-property! tie '(details skyline-padding) 5) (ly:grob-set-property! tie 'Y-offset -0.25))))) ties))) (if (ly:grob? dot) (if (< dot-pos notehead-pos) (for-each (lambda (tie) (let ((tie-dir (ly:grob-property tie 'direction))) (if (= tie-dir -1) (begin (ly:grob-set-nested-property! tie '(details skyline-padding) 5) (ly:grob-set-property! tie 'Y-offset 0.25))))) ties))))) \layout { \context { \Score \override TieColumn.before-line-breaking = #tweakTie \override Tie.details.height-limit = #1.25 \override Tie.details.ratio = #0.25 \override Tie.details.between-length-limit = #1 \override Tie.details.wrong-direction-offset-penalty = #10 \override Tie.details.min-length = #2 \override Tie.details.min-length-penalty-factor = #30 \override Tie.details.center-staff-line-clearance = #0.05 \override Tie.details.tip-staff-line-clearance = #0.05 \override Tie.details.staff-line-collision-penalty = #0 \override Tie.details.dot-collision-clearance = #0 \override Tie.details.dot-collision-penalty = #0 \override Tie.details.note-head-gap = #0.15 \override Tie.details.stem-gap = #0.15 \override Tie.details.tie-column-monotonicity-penalty = #100 \override Tie.details.tie-tie-collision-penalty = #25 \override Tie.details.tie-tie-collision-distance = #0.5 \override Tie.details.horizontal-distance-penalty-factor = #0 \override Tie.details.same-dir-as-stem-penalty = #20 \override Tie.details.vertical-distance-penalty-factor = #10 \override Tie.details.intra-space-threshold = #0 \override Tie.details.outer-tie-length-symmetry-penalty-factor = #0 \override Tie.details.outer-tie-vertical-distance-symmetry-penalty-factor = #0 \override Tie.details.outer-tie-vertical-gap = #0 \override Tie.details.single-tie-region-size = #4 \override Tie.details.skyline-padding = #0.05 % or #5 \override Tie.details.multi-tie-region-size = #1 \override Tie.line-thickness = #0.25 \override Tie.thickness = #2 } } { \time 3/8 f''4~ f''8~ f''4.~ f''4~ f''8 } %%%%%%%%%%%%%%%%%%%%%%%% _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user