Comment #7 on issue 3160 by [email protected]: chord names pushed into the staff
http://code.google.com/p/lilypond/issues/detail?id=3160

Conceptually, things that implement the axis-group-interface have widths, heights, and skylines that are 100% linked to the elements they contain. I think it's important to maintain this distinction. So, for example, you could create a transparent stub grob that causes the VerticalAxisGroup of Dynamics to always have a skyline. But this would pose the issue of where to put said baseline. For example, in the case:

<<
\Staff { c,,,,,4 }
\Lyrics { }
\Staff { r2 c'''''4 }


where is the baseline established and how long is it? If it is at the same X position as one of the two notes, it will cause radically different spacing then if it is between them. That is why I think these axis groups should be removed all together if they have no elements - it is a conceptually cleaner approach.

To me, removeEmpty means "if there is no musical information, remove." That is, if there are no notes. There may be, however, rests, time signatures, etc.. However, if there are no grobs period, then the containing axis group is empty and as it has no height apart from its elements. Thus, a baseline cannot be established to it because it is "solid" nowhere.


Reply via email to