Chord names does not support "H" and "Bb" as chord names at the same time

• Sep 7, 2010 - 12:26
S4 - Minor

At the present time it seems MuseScore ignores chord "H" and would like to use "B" instead.
Though, it common practice when B=A# and H=Cb.

So it can be added as option to MuseScore users.


There is already an option for German Chordnames in Style -> Edit General style -> Chordnames.
But apparently, it does not work. Not sure what the expected behavior is.

The checkmark for "use German Chordnames" in Style -> Edit General style -> Chordnames doesn't stick, it is gone the next time you open that dialog. I guess that is the reason why it doesn't work.
This is the case since quite a while, at least since 0.9.6

Bye, Jojo

Yes. also does not allow to save the checkbox "Use German Chordnames" - may be because of another error?

German chord names kind of work, meaning you can input them in the score (using Ctrl+K to input chord name). But if you transpose the score, the H chords don't get transposed.

The state of the checkbox "use german names" doesn't get saved in the latest trunk either. Just tried it out. I think this is where the problem is.

As Jojo-Schmitz says, the "H" is not interpreted as a chord. You can see it if you enter a chord with specified bass note. If you enter "E/H" then the chord is changed to an "E" (without bass note).

This issue should be fixed. The option (and the internals?) is there so it shouldn't be that hard...

Title Chord names does not support "H" name as chord Chord names does not support "H" name as chord (with patch for trunk)


Attached is a patch which seems to fix the issue for the trunk (and possibly for the branch too). I made a quick test and now:

1) The "Use German names" setting does stick
2) When entering chords (if the above is set), it converts a lower-case 'h' into an upper-case 'H'

Note: be sure to have the chords.xml and stdchords.xml files (and possibly also jazzchords.xml) in a folder where MuseScore can find them!

Please review and enjoy!


Attachment Size
editstyle_cpp_r3708.diff_.txt 589 bytes

Doesn't work here. Same behavior as before the patch. It's added to trunk, right? Because I just updated the trunk with "svn up".

No, it has not been added to the trunk yet. Someone of the developers needs to apply the patch to the trunk for SVN update to work.

In the meantime, you may try to apply the patch to your local copy if you have the proper tools (in case, remove the ending part of the patch file name to have it to end with ".diff").


Perfect! No it works as it should. I just tried it for 2 min and everything I was missing now works. Thanks for the patch.

Status (old) closed active

There is still an Issue: while the german H is the english/international B, the english/international Bb is not a German Hb, but a remains a Bb

So B <-> H
Bm <-> Hm
B7 <-> H7
Bm7 <-> Hm7

but Bb <-> Bb (actually B flat is the german B, but usually written as Bb nowadays, as sort of a compromise to prevent confusion).

Got the same result as Jojo-Schmitz. Hb is not a german chord. A# is equal to Bb not Hb.

And as a sidenote: the staff is not updated when checking "use german names" and pressing OK. I think it should be :-)

True, the chords only get updated when you select (click) them once. In the current situation this is OK to me as we can have H7 and Bb in the same score, by selecting only one after having switched the accord style

Edit: no, this doesn't work, the Score get's updated, but that update is not displayed, you see the changes only if you close and re re-open the file again.

So I can have B and Bb (englisch) or H and Hb (wrong german), but not H and B (correct german) or H and Bb ("compromise but close enough" german)

Another ralated bug: the jazzcords.xml doesn't have the H in the same style as the others.

We need a major review/overhaul of the chord name implementation. The hard part is that we need to ensure:
- portability: when someone else opens your score, others see the same
- import/exportability to e.g. MusicXML
- musical context: so that transpose can work etc...
It have a hard time currently to find a good solution, which incorporates all the above requirements.

Here comes a suggestion. Don't know if it has been thought of.

What if the german chords are only a matter of display, so nothing is saved within a file concerning the german chords. Think of it as:
if (language using german chords)

Then nothing needs to be changed in the file. Export would still work. And for musical context nothing is changed in the data structure so also this should work.

Just my first thought.

If you prefer English chord notation in Germany, it is usually helpful to clarify that "B" does not mean B-flat but just B (or, in German, H). This is usually done by adding a natural-symbol (Auflösungszeichen) to the chord. A normal B-flat is then shown by Bb, as in the English notation.

One option to do that is the "Special Text symbols" that you can add to any chord (click on the keyboard-symbol in the format-bar at the bottom of the windows). However, I find that tiresome, and for me (using cchords_rb.xml as a style), the natural-symbol displays as subscript. Moving that upwards that is even more tiresome ...

This can be fixed by adding a new symbol and chord to the chords-style you are using. The following code works for me
(musescore 1.1 on Ubuntu Lucid):

Go to the fonts-section of the file and create a new symbol:
<sym code="0xe10e" name="sn"/>
0xe10e will display natural-symbol with the MuseJazz font. I only created this in the first font.

Go to the entities-section of the file and create a new entity:
<!ENTITY alter_nat "m:0:-5 sn m:0:5">

Got to the chord-list and create a new chord with a unique id:
<chord id="240">

To add a natural-symbol to any chord, type the root of the chord and 'n', the move to the next chord with space. The n will be turned into a natural-symbol. The chord is recognized by musescore and will be transposed correctly.

Title Chord names does not support "H" name as chord (with patch for trunk) Chord names does not support "H" and "Bb" as chord names at the same time

Can we have this fixed for 1.2 please?