adding chord notation to notes of different lengths with NoteNames as Lyrics plugin
I am in need of some help with a plugin I am trying to modify. For weeks now, I have been attempting to make changes to the code but have not been successful. I am hoping that someone in this forum may be able to assist me.
My issue is with the plugin I am using and how it displays notes. As you can see in the attachment, the green circle represents the current situation where the notes are not imploded and cannot be given a chord notation, as shown in the blue circle. I am trying to achieve the notation seen in the blue circle. Additionally, I would like to know if it is possible to include the yellow tie as well, though I understand that may be more difficult.
The plugin I am using is this one: https://musescore.org/en/project/name-notes
If anyone has any ideas or can offer assistance, I would greatly appreciate it. Thank you in advance for your help.
Best,
Thomas
Attachment | Size |
---|---|
example plugin.png | 378.07 KB |
Comments
Hmmmm, it is not entirely clear to me what precisely you need.
Merging the note names from different voices is… probably possible, but not entirely easy as these are not really connected here. The note namer does not go left-to-right once, but it does that four times per stave, operating on one voice at a time, because that’s how Mu͒seScore’s data structures are laid out. I think you’d have to either cache all information in a suitable format somehow (and even determining that one is going to be hard) and apply them at the end, or (maybe better) postprocess the result to transform the inserted lyrics into the merged form.
As an added difficulty, if you have a situation like this…
… then the lyric for the F₄ must be in voice 2, whereas the lyric for the E₅ must be in voice 1, as the respective “other” voice does not have a note there. So you cannot just merge them all and distribute them onto the notes easily. I think you need a structure based on the tick, stave number, voice number, some element/cursor reference (needed to insert the lyrics later), … — this is going to be very involved.
I’m also not entirely sure how helpful the merging would be. In your example, the second A₄ is held and extends over the E₄ whereas the F₄, pressed at the same time as said A₄, isn’t.
Tieing between lyrics is not possible at all, unfortunately. What you can do is to use a stave with invisible stave lines, stemless, no barlines, and using note-name noteheads. Then split up the 4th note A into two 8th and tie them. That would look like this:
Not sure how much this would help, though… it’d also retain vertical ordering of chords and the note distances. Unsure whether it’s possible to move text on stave instead of notes and tie them, but I’m reasonably sure it’s not.
For anything that operates on notes with their duration, I’d use MIDI and check the note on/off events there; midicsv is a great tool to start with that (but mind that note off events normally occur some time before the next note starts, so some amount of “rounding/grid-fitting” would still be required). It’s also possible to read out the note values from plugins, but possibly harder. I’ve become fond of direct XML editing of the
.mscx
file instead of trying to bend the plugin API to fit my needs for many usecases, anyway…