|
Make RhythmicStaff show single notes for chords (issue 185)
RhythmicStaff uses Pitch_squash_engraver to move all note heads to a
common vertical position. With chords, at least two problems arise:
(1) As all notes from one chord collide now, so some of them used to
be moved aside. Hence, for each chord, two adjacent note heads
would appear in the output.
(2) For chords with dotted duration, Dot_column_engraver would put one
dot per note head into a DotColumn, where they would be spaced
apart. So for every note in the chord, one separate dot would be
visible.
Solve (1) by explicitly setting X-offset to 0 for squashed note heads
in the Pitch_squash_engraver.
Solve (2) by replacing Dot_column_engraver with a new
Squashed_dot_column_engraver. This variant puts only at most one dot
per time step onto a DotColumn, and marks any further ones as
transparent.
Update regression test rhythmic-staff.ly to include two chords.
|