使用 JFugue 将减弦定义为罗马数字

Define diminished chord as a roman numeral with JFugue

所以我想要一个减七和弦,因为它是大调模式下的全音阶,经常用来代替小调模式下的大七和弦。 This site 说减和弦可以通过在和弦名称后使用 dim 来定义,但据我所知,这只适用于明确的字母名称。有什么办法让它适用于罗马数字吗?

以下程序:

ChordProgression cp = new ChordProgression("vii");
cp.setKey("C");
System.out.println(cp.getChords()[0].toHumanReadableString());
cp = new ChordProgression("vii*");
System.out.println(cp.getChords()[0].toHumanReadableString());
cp = new ChordProgression("viidim");
System.out.println(cp.getChords()[0].toHumanReadableString());

输出:

B4MIN
C4MIN
C4DIM

输出应该是B4DIM

要从 ChordProgression 产生减和弦,请在罗马数字末尾使用 'o' 或 'd'。

ChordProgression cp = new ChordProgression("viid").setKey("C");
System.out.println(cp);

此代码生成 B4DIM.