5 texidoc = "It is possible to have different staff distances between
6 the staffs of a piano system, but it requires some advanced Scheme code.
7 Currently, this is for testing purposes. "
13 #(define ((futz-alignment-callback distance count) grob axis)
15 "Check if we're the system number COUNT, and if yes, set fixed distance to
16 DISTANCE; then call the original callback. "
18 ((a (ly:grob-parent grob axis))
19 (o (ly:grob-original a))
21 (ly:spanner-broken-into o)
28 (equal? (list-ref bs count) a)
30 (ly:grob-set-property! a 'forced-distance distance))
32 (Align_interface::fixed_distance_alignment_callback grob axis)) )
35 \relative c'' \context PianoStaff
37 verticalAlignmentChildCallback = #(futz-alignment-callback 20 1)
39 %% Every cross staff beam will trigger
40 %% alignment unless autokneeing is switched off
41 \override Beam #'auto-knee-gap = #'()
49 \once \override Stem #'direction = #UP
58 \once \override Stem #'direction = #UP
63 \context Staff = down {
67 \paper { raggedright = ##T }