Le 18/03/2022 à 22:57, Simon Albrecht a écrit :
Hello everybody,
I hope it is appropriate for me to post this here, I haven’t closely
followed development for a long time.
I have a custom accidental style following 18th century usage (example
attached) which fails in 2.23.6 because the internals have changed.
Namely, for the sixth note in the attached example, the alteration
value query returns the symbol tied instead of a number.
I’ve tried to find the merge request or issue corresponding to this
change, and haven’t found anything. Even looking directly at
<https://gitlab.com/lilypond/lilypond/-/blob/master/scm/music-functions.scm#L1696>
shows no change. Can someone point me in the right direction to
understand how I should adapt my code?
I do think this accidental style might be a worthwhile addition to
openLilyLib or even to LilyPond itself, but I’m not sure the coding is
good enough.
Could be
commit 2151499a7ca37a8138cea630be96da5daea88159
Author: Jean Abou Samra <j...@abou-samra.fr>
Date: Sun Jul 4 17:17:28 2021 +0200
Base accidental rules on global timing, not measure position
measurePosition stops increasing during a cadenza. It is thus
unreliable for determining automatic accidentals, which
(unlike, e.g., automatic beams) should only depend on measure
boundaries, not on the measures' inner structure. Issue #6153
was caused by incorrect detection of consecutive notes due to
this. Use the context's current moment instead. This also
fixes a similar problem with partials: the function was called
with the bare measurePosition, but the locations stored in
localAlterations had a version that is normalized by adding
a multiple of the measure length to make it positive.
The current moment is not passed to the functions as the measure
position used to be since it can be easily retrieved with
ly:context-current-moment.
Closes #6153.
but I have no time to check. Does that help already?