Comment #8 on issue 3330 by [email protected]: bracketify-stencil moves
grob's refpoint
http://code.google.com/p/lilypond/issues/detail?id=3330
Yes, what the patch above does seems obviously correct. A construction
like (☺) where ☺ is something that is usually centered, would be expected
to have its left extent '[', its reference point '.', and its right
extent ']' arranged like this:
[ . ]
That would be fine if LilyPond spaced markup in a line using the extents,
placing ']' against the '[' of the next markup.
However, LilyPond spaces markup by placing the the reference point '.'
relative to the end ']' of the extent of the markup to the left. That
means the left extent of a markup '[ .' backspaces onto whatever is at its
left. If we put something like (☺) in a sentence it backspace over the
object to its left.
Historically, backspace was encoded as a zero-length markup arranged like
this:
][ .
This kind of backspace would not move the cursor if we spaced markups in a
line based on extents.
Issue 732 tried to place markups in a line based on extents, breaking
backspacing. While fixing the backspace, I made backspace into
negative-length :
] .[
Now backspace should work if we place markups in a line based on extents.
I did not, however, keep that aspect of the original patch, because that
aspect of the patch did not solve any problems identified in the issue.
I think the patch above, together with a change to place markups in a line
based on extents, would make everything simpler. The question is whether
it works for existing uses.
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings