Looks very good. I looked for unwanted side-effects, and found no problems. The old code did a very bad thing, ignoring the "self-alignment-X/Y" request if the parent was a paper-column.
https://codereview.appspot.com/108110044/diff/80001/lily/paper-column.cc File lily/paper-column.cc (right): https://codereview.appspot.com/108110044/diff/80001/lily/paper-column.cc#newcode226 lily/paper-column.cc:226: Paper_column::get_generic_interface_extent (Grob *column, SCM interface, Axis a) I don't understand what 'generic' means over just get_interface_extent(c, i, a) but I leave it to you to name your function. https://codereview.appspot.com/108110044/diff/80001/lily/self-alignment-interface.cc File lily/self-alignment-interface.cc (right): https://codereview.appspot.com/108110044/diff/80001/lily/self-alignment-interface.cc#newcode82 lily/self-alignment-interface.cc:82: MAKE_SCHEME_CALLBACK (Self_alignment_interface, centered_on_note_columns, 1); Looks like somebody had a similar idea. This function seems to be used only for dynamics in a Dynamics context. https://codereview.appspot.com/108110044/ _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel