Le mercredi 19 juillet 2023 à 22:11 +0200, Valentin Petzel a écrit :
Good point, I didn’t think of that! Also I know that using a callback on
bound-details would work as well, but I’m not sure if this is the best way to
replace a single value in an alist (what if you want to change other parts of
the alist independently?).
That is indeed a problem, but note that the same problem exists with before-line-breaking (you can't write two independent before-line-breaking overrides, you need to combine them).
Maybe the whole transformer thing should be something that Lilypond supports
in it’s core? Like, any grob property may also have a list of transformers
that get evaluated on getting the property.
Yes, it would be quite nice to be able to stack transformers. Defining good semantics (e.g., interaction with \temporary and \revert) is not really trivial though.
Relatedly, it would be nice at some point to gain support for callbacks in subproperties.