Le 17/02/2022 à 22:58, Kieren MacMillan a écrit :
Hi Jean,
By the way: pedantically, I would recommend
Thanks for that.
Basically, \null leads to point-stencil, which has
the extent '(0 . 0) on both axes -- a single-point
interval. That's small, but not totally empty.
empty-interval is '(+inf.0 . -inf.0) which is truly
empty, and this is the extent of empty-stencil on
both axes.
I've found interesting failures when using empty-stencil, e.g., this snippet
based on a David K suggestion:
%%% SNIPPET BEGINS
\version "2.23.4"
ignoreH =
\propertyTweak horizontal-skylines ##f
\propertyTweak extra-spacing-width #empty-interval
\etc
ignoreV =
\propertyTweak vertical-skylines ##f
\propertyTweak extra-spacing-height #empty-interval
\etc
ignore = \ignoreH \ignoreV \etc
{
c'4-\ignore _\f
% c'4-\ignore ^\markup "test" %% uncomment to see failure
}
%%% SNIPPET ENDS
Sometime it's very hard to know what to use in Lilypond… <sigh>
Uh-oh.
https://gitlab.com/lilypond/lilypond/-/merge_requests/1216
Here the failure is caused by the skylines set to
##f. The error only occurs when the script is positioned
up (“^”), so you can work around it until the fix appears
in a release by changing the position indicator to “_”
(it will still give warnings though). Depending on your
taste and how hardly you want the overrides to remove
the object's presence in spacing, you could even set
X-extent/Y-extent to #empty-interval rather than
extra-spacing-width/extra-spacing-height (the 2.23.6
documentation has a new section on horizontal spacing
with an example that illustrates the difference, see
http://lilypond.org/doc/v2.23/Documentation/notation/spacing-between-adjacent-columns).
That also gives warnings, also taken care of by the
linked merge request.
Cheers,
Jean