[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Fix 524 (pitched trill accidental forgetfulness)
From: |
Neil Puttock |
Subject: |
Re: [PATCH] Fix 524 (pitched trill accidental forgetfulness) |
Date: |
Wed, 11 Jun 2008 23:31:34 +0100 |
2008/6/11 Mats Bengtsson <address@hidden>:
> If you manage to digest all the code related to autoAccidentals,
> I'm sure you will sooner or later discover that localKeySignature
> indeed is reset every bar line, at least if you have the default
> settings for autoAccidentals.
Well, I'm sticking my neck out a bit since I have only really digested
the code for pitched trills, but I don't think I will make that
discovery, for the following reasons:
- there's no bar line acknowledger in accidental-engraver.cc
- the function update_local_key_signature is only called by
process_music (), which checks whether the key signature has changed
- apart from update_local_key_signature, the only changes to
localKeySignature are made in stop_translation_timestep (), whereby
new entries are prepended to the list (with a duplication check)
- since the autoAccidentals/Cautionaries code needs to keep track of
pitches from previous bars, it wouldn't make sense to reset the
localKeySignature list at a bar line.
The strange thing is that the description for localKeySignature was
changed *after* Rune rewrote the accidental rules; it's much more
suited to the behaviour before the rewrite, since process_music ()
used to do two checks: one for a key signature change, and another for
the start of a bar by reading measurePosition.
Regards,
Neil