Chord names and names in italian stile
Hi,
I haven't found a suitable solution for italian chord names consistent with transposition, so I'm ready to try to create a plugin (clearly if such a plugin already exists... well let me know... ;-)
I just want to find the text parts that have been introduced with Cntr-k, and substitute that one. My goal is to retain the possibility to transpose it and have all names displying correctly. Currently id works just with anglosaxon names.
The plan is to create a cursor, loop on all notes and set the text part of those notes but in the developer's docs I couldn't find a way to get to the text that was introduced via C-k. And related to this my question is: when you enter a chord name via C-k, what object is that? simple text or special. Does it has an attribute for the chord name and one for the display name?
cursor.isChord() return true just on chords or on all notes? Despite the name it seems to me that it return True on all notes...
thanks in advance for any hint
sandro
*:-)
Comments
Chord names in Plugins are called Harmonies, not Chords (which there is a collection of one or more Notes, hence isChord() returns true on every note and false on a rest). Check http://musescore.org/en/plugin-development/harmony-object.
I don't think the plugin framework is up to the task you're planning, what you most probably really need to do is to create a special version of an italian chord style xml file.
Check http://musescore.org/en/handbook/chord-name and have a look at the xml files in ...MuseScore\styles\
In reply to Chord names in Plugins are by Jojo-Schmitz
Thanks Jojo,
what you say is pretty clear and makes total sense to me (save for the fact that I would imagine a isHarmony() method on crusor object). Harmony object has the id used in chods.xml and has the base that I guess is used when transposing the score.
I opened chords.xml and other xml in that directory but I can't understand where the name of the chord is composed...
Ok, I now found a pretty clear comment:
Italian / solfege chord names
<sym code="0xe201" name="C"/>
<sym code="0xe202" name="D"/>
<sym code="0xe203" name="E"/>
<sym code="0xe204" name="F"/>
<sym code="0xe205" name="G"/>
<sym code="0xe206" name="A"/>
<sym code="0xe207" name="B"/>
Uncommenting it was all I needed, even thought I haven't really understood what it did!
sandro
*:-)
In reply to chord style by sandroden
This is code I added to the chord description files that use the MuseJazz font. What it does is redefine the letters A-G to display using character codes 0xe201-oxe207 (rather the usual ASCII codes 0x41-0x47). This works with MuseJazz only, because I also added the syllabkes Do-La at those character positions :-).
My hope is that for a future release there will be native support for these syllables just as there is for the German "H". Possibly 2.0, possibly after.