Hi Simon,
I was surprised to find that we now have a voiced-position property
for rests instead of using staff-position; so far so good.
Unfortunately, it doesn’t seem to act like it should, or am I missing
anything?
Funnily, I've never come across this property even though it was
introduced as early as 2015:
commit e86b2ea93e8b9e829520e258c24416060e296bdb
Author: Keith OHara <[email protected]>
Date: Sat Jan 3 14:29:39 2015 -0800
property to set voiced-rest positions; issue 3902
See also https://gitlab.com/lilypond/lilypond/-/work_items/3902. Does
the discussion in that issue cover what's bothering you in the current
behaviour?
Internally, voiced-position is read in Rest::staff_position_internal if
staff-position is not set manually for the rest in question. For rests
shorter than a minim, the voiced-position is taken as-is; for longer
rests, the rest gets aligned to a staff line, but I don't have time at
the moment to understand how the voiced-position override gets used in
that case.
I don't know exactly what triggered your question, but I'd suspect that
the answer might be: Just use staff-position.
Lukas