Le 13/08/2022 à 16:27, Thomas Morley a écrit :
(Btw, there is a recent coding by Jean using it, posted here on the list.)
Actually not on this list, but on lilypond-user-fr.
https://lists.gnu.org/archive/html/lilypond-user-fr/2022-07/msg00093.html
I suppose you saw it because of
https://gitlab.com/lilypond/lilypond/-/issues/6396#note_1045570284
As I wrote, I often make experiments. Here I'd start with
\markup
\overlay {
\stencil
#(stencil-with-color (make-filled-box-stencil '(0 . 10) '(0 . 10)) red)
\whiteout
\stencil
#(ly:stencil-outline
(stencil-with-color (make-filled-box-stencil '(0 . 5) '(0 . 5)) cyan)
(make-filled-box-stencil '(0 . 8) '(0 . 8)))
}
Beware: ly:stencil-outline affects whiteout in 'box style because
'box just uses the extents, but not in 'outline style.
\markup \combine
\with-color "red" \filled-box #'(-10 . 10) #'(-10 . 10) #0
\override #'(style . outline) % comment/uncomment
\whiteout \with-outline a b
Probably continuing by researching for stencil-true-extent.
Alas, skylines are not scheme accessible afaik.
Depends on what you call Scheme-accessible. Not quite all the
C++ functions have Scheme equivalents, but some do. Some of
these Scheme functions were added quite recently when I implemented
\with-true-dimension, then chord grids.
$ git grep "ly:skyline-" -- lily/skyline-scheme.cc
lily/skyline-scheme.cc:25:LY_DEFINE (ly_skyline_touching_point,
"ly:skyline-touching-point",
lily/skyline-scheme.cc:45:LY_DEFINE (ly_skyline_distance,
"ly:skyline-distance",
lily/skyline-scheme.cc:63:LY_DEFINE (ly_skyline_max_height,
"ly:skyline-max-height",
lily/skyline-scheme.cc:73:LY_DEFINE (ly_skyline_max_height_position,
"ly:skyline-max-height-position",
lily/skyline-scheme.cc:83:LY_DEFINE (ly_skyline_height, "ly:skyline-height",
lily/skyline-scheme.cc:95:LY_DEFINE (ly_skyline_empty_p,
"ly:skyline-empty?",
lily/skyline-scheme.cc:123:LY_DEFINE (ly_skyline_pad, "ly:skyline-pad",
Ofcourse show-horizontal/vertical-skylines will help. as Jean wrote, though
that was not invented a few years back.
As sort of a summary, I'd like to emphasize that the work on user
requests on the mailing-list is the most promising part to get more
insight in LilyPond internals.
<nod in agreement>
The good advice "take another tutorial" _is_ good, but I will not follow it.
Ask again in another decade or better two.
I never seriously used a C++ tutorial :-)
(OK, I did read C tutorials.)
Cheers,
Jean