No courtesy clef 2.X->3.0

• Aug 18, 2018 - 11:51
Reported version
3.0
Type
Functional
Severity
S4 - Minor
Status
active
Project

Tested with self built MuseScore on OS: Windows 10 (10.0), Arch.: x86_64, MuseScore version (32-bit): 3.0.0, revision: 44304ca

  1. Open attached score
  2. Go to measure 25 (make sure it is not the last measure in the system)
    Result: courtesy clef has not been added
    no_courtesy_keysig.PNG
Attachment Size
2510026.mscz 93.71 KB

Comments

There should be no courtesy clef before the end repeat bar line, since the bass trombone part uses the tenor clef for the whole repeated section. The bass clef should come after the end repeat bar line and before the time signature, which is correctly placed before the begin repeat bar line in 3.0 (see Behind Bars, pp. 234-235). This is a separate issue, however, and it relates to #228531: Courtesy clefs don't appear on lines ending in repeat barlines.

In fact, there is a clef segment at the end of measure 25. The segment is enabled, and there is a clef within the segment, but the clef has zero width and zero height, which is probably why you can't see it. The clef segment is just about as wide as a bass clef, which is why there is so much space between the rest and the bar line.

These lines in libmscore/measure.cpp are responsible for hiding the clef. It is not correct to hide a clef simply because it comes at the end of a repeatEnd measure, but the solution involves correctly placing the clef after the end repeat barline. And it must also be possible to add a courtesy clef before an end repeat barline when appropriate.