Nick Payne<address@hidden> writes:
See below. When I shift the first note in voiceTwo to avoid a
collision with the note in voiceFour, the dot on the rest that begins
voiceOne gets separated from the rest and pretty much disappears under
the following accidental. It looks to me as though Lilypond is trying
to keep the dots for the rest in voiceOne and the A in voiceFour
vertically aligned, regardless of whether the rest and the A are
vertically aligned. You can see this quite clearly by setting the
hshift value to something larger such as #2.
I guess that this sort of thing needs some accounting and/or linear
programming in order to arrive at a good solution. You go down the note
column and put all "natural" dot columns in one list. Then you assign
the best columns overall. Opening a new column in the total is
expensive (but less so if the vertical distance to the last column is
large), displacing a dot from its note costs corresponding to the
displacement, least total cost is taken. Something like that.