The current accidental-implementation is not flexible enough.
The webern accidental requires an ugly hack, and Valentins suggestion
for distinguishing neighboring notes is currently not possible.
I therefore suggest:
- Extend localKeySignature to for each local accidental also to contain
information about the measure-position at which the note ends.
- move check_pitch_against_signature (from accidental_engraver.cc) to
scheme.
In the list of accidental-rules, the type-laziness-pairs will be
replaced with scheme functions. - so that instead of
\set Staff.autoAccidentals = '(Staff (same-octave . 0))
one would say
\set Staff.autoAccidentals = `(Staff ,(make-default-accidental-rule
'same-octave 0))
where make-default-accidental-rule makes a four argument scheme-function
- taking a localKeySignature, a pitch, a bar_number and a
measure_position - and returning what check_pitch_against_signature
currently returns.
I think I should be able to do these changes as soon as I get the green
light.
-Rune
_______________________________________________
lilypond-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-devel