Comment #4 on issue 1471 by d...@gnu.org: accidentals after a clef change are not printed
http://code.google.com/p/lilypond/issues/detail?id=1471

Ok, here is the full job which passes the regtest without difference in output, but produces the following image for the test file of this bug report.

There are several downsides to this patch: the most important one likely being that it uses +nan.0 for signifying an unspecified alteration. Replacing this by 1000 had the unexpected result of causing extra naturals upon a clef change. +nan.0, apart from being more appropriate, has no discernible sign, so it does not suffer from that defect.

Using #f lead to errors because alterations are compared using `='. The code became more complex than expected because localKeySignature is getting _stuffed_ with non-altered pitches as well as altered ones. If one does not leave them untouched, one gets nonsensical cautionary accidentals after clef changes. Weeding them out altogether will change the accidental behavior, likely to the behavior that this strange measure is trying to fix in the first place.

Attachments:
        0001-Issue-1471-Invalidate-alterations-upon-key-change-ra.patch  3.2 KB
        junk.preview.png  2.9 KB


_______________________________________________
bug-lilypond mailing list
bug-lilypond@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-lilypond

Reply via email to