Cool. My one concern with this is that it has no horizontally scannable note/chord mode. It’s super common for humans to read a sequence of notes left to right, or write it that way, but it’s also just more efficient in terms of scanning / reading.
Can I suggest a guarded mode that specifies how far apart each given note/chord is by the count, e.g.
#1.0:verse1
Am - C - G - E - F F F F
#
You could then repeat this or overlay a melody line like
I considered it but decided against it in the first version, because specifying note durations is too tricky. It was more important to get the .mid -> MTXT conversion and live-performance recording working, where notes usually have irregular note lengths.
Representations like "C4 0.333 D4 0.333 E4 0.25" feel too hard to read.
Can I suggest a guarded mode that specifies how far apart each given note/chord is by the count, e.g.
You could then repeat this or overlay a melody line like Etc. I think this would be easier to parse and produce for an LLM, and it’s would compile back to the original spec easily as well.