Tablature for accordion

• Feb 15, 2014 - 06:24
S5 - Suggestion

I wanted to add a custom tablature to an accordion staff (I play diatonic accordion), but we can only select "standard" for the Staff type.

I built the latest version.


Is this something that exists already in the world, or something new you are trying to invent? If it is something used commonly, and if MuseScore's tablature mechanism supports it (it still has to be horizontal lines with numbers indicating "fret" numbers - not sure how that would apply to accordion), the MuseScore's instruments.xml should add that as an option - although I think this is more of a feature request than a bug report. Meanwhile, though, you can edit instruments.xml yourself to add an entry with the necessary "string" data to enable tablature staves to be selected.

Sure, for years many many people learn to play diatonic accordion (and harmonica) using tablatures! Just like with guitar. There exist 2 different notation systems for accordion tablature. The Corgeron system where each row is a row of buttons on the keyboard, the other is the Push/Pull system (ak CADB) where there only 2 row, one for pulled notes and on for pushed notes. The numbers represents the button to push. You can see examples here : // (sorry, in French)

The software TablEdit offers harmonica and accordion tablature staffs.

You're right, from your point of view, I see this as a feature request. Personally, I first though it was a bug where MuseScore wasn't allowing me to choose Tablature for the staff type.

With the staff style editor, if I chose 2 strings, it's getting closer to an accordion tablature staff. I'll have a look a the XML file, but there might be a need for some customization in the staff style editor dialog. The only real setting missing is the ability to define a letter at the beginning for each row/string. But I think that would also be useful for string too, would it? For exemple when musiciens tune their string differently.

One other little thing that would help is to add the option "under the lines" for "Marks are drawn".

To be clear: MuseScore *will* allow you to select tablature as a staff type for an instrument *if* there is string data configured for the instrument in instruments.xml.

If you think the existing tablature facility would be useful for accordion with only the addition of a letter name at the beginning of each staff line, then probably we should add the necessary info to instruments.xml to for this. You've done PR's before, right? You could perhaps do this yourself better than anyone.

Right now it's an open question as to how custom string tunings would be marked on the score Different publishers do it differently, so it's kind of expected the user will just devise his own out notation of staff text or whatever. The idea of putting strings info at the beginning of each staff line makes a lot of sense, but I don't know if it's actually common in the string world? Anyhow, you could of course hack up your own version of this using text, add it to your palette, and add it by hand.

Thanks Marc for you reply. Yes, I've done PR before.

I looked at instruments.xml, and it's quite hermetic. Should I add a whole new instrument for "diatonic accordion tablature", or just a new element to the already present "accordion" instrument?

If I'm right, I should add an instrument which would include a line like
< stafftype staffTypePreset="tabAccordionPT">tablature< /stafftype>

But I don't see where the staffTypePreset values are defined. Could you give me an example or tell me where I could find information on the way MuseScore defines the instruments and the tablature?


There is some kind of documentation of the instruments.xml syntax that might help you exploring this side of MuseScore…

The main issue I see with adding a staff type for accordion is that it will probably be a lot different than guitar tablature. There are some code in MuseScore to associate a fret number and a string number to a note and I doubt this code would work for accordion.

On a related note, there is a plugin for diatonic accordion in MuseScore 1.3

Again, I'm trying to find a way to have button accordion tablatures in MuseScore.

I managed to do something quite similar using guitar tablatures, but there's a few essential things missing to make it possible.

In fact, only 2 additional things are needed :
- The possibility to write an apostrophe next to the button number
- A text entry at the begin of the tab staff to indicated the tab system used (Push/Pull or row tonality). That's like having the tuning of each strings on a guitar tab.

So I'm wondering what would be the best avenue for the development of button accordion (or harmonica) tablatures. Plugins are to limited and doesn't produce a visual layout like guitar tabs.

Then, should I try to extend the guitar tab with a few more options? Or should I start a whole new group of "StaffGroup::ACCORDION" for accordions ?

I'm a bit afraid about all the work needed to start a whole new group. And it doesn't seem necessary if guitar tab already fulfill almost all the requirements.

Any thought or advice on this?

As a first step, my idea would be to simply allow the user to enter the numbers in the tab. No error checking and no sound playing associated with it. It'd be a linked staff anyway, so the playback would play the real note. Eventually, this could be extended to propose a diversity a accordion keyboards (C/D, D/C#, B/C, etc..).

The term tablature is rather overloaded in music history and in the end it might include almost any kind of notation which does not uses the usual note signs (or their ancestors: I do not think that Franconian or nematic notations could be considered "tablatures"...).

Tablatures have been widely used for a variety of instruments: string instruments (lutes and viols initially, nowadays guitars and other plucked string instruments); keyboard instruments (the 'infamous' German keyboard tablature!), and so on.

If it is not clear already, MuseScore "tablature" refers to the first case quoted above: lute, viol, and then guitar, bass (and correlated instruments) tablatures. It is a kind of notation which has more that half a millenium of history, and which by itself includes an amazing variety of solutions and special cases. Support for it is already rather complex, diverting it to support unrelated use cases is likely to make it a nightmare to debug, maintain and support.

Adding just an apostrophe seems a rather trivial change. Except that the whole of fret mark entry, display and, in general, management does not expect it, so a fair amount of code has to be changed, short-cut management has to be changed and so on, just to accommodate this "trivial change". And, once this 'diversion' introduced, the 'waterfall effect' is right behind the corner.

So, in my opinion, the tablature feature is specialized for plucked string instruments and should not be altered for unrelated use cases.

Then, what to do?

As you suggest, adding a new staff group for this is possibly going to be rather complex and expensive in term of changes to the existing code base.

However, indications for diatonic accordion, as far as I understand them from your examples, are non-playing (at least not by themselves) execution instructions, conveyed by text strings and attached to specific time ticks. They have a defined (or definible) textual and typographic format. In the end, they share several characteristics with chord symbols.

It might be worth experimenting if adding another Element::Type item taking Harmony as an example, but having its own parsing, laying out and drawing routines could arrive at the required goal with a manageable amount of work and of change to existing code base.

A specific element type could also implement specific actions, for instance, for advancing to the next beat (or given tick) as the chord symbol entry routine does, for moving to one or another line and so on.

Keeping this element type by itself would also make additional improvements and expansions easier to implement with less 'ripple effects' on other features.

This approach would probably require more work than other approaches at the beginning, but I suspect in the long run it will be much more easy to extend, improve and maintain.

Hoping this helps in some way...


Thanks for your comments. That's right, accordion tablatures in MuseScore don't need to be playable. But they need to be written over lines (like in my previous post). Numbers need to attach to their respective notes, like with lyrics or figured bass.

Having worked with figured bass lately, I now think the easiest approach to implement accordion tablatures could be to copy-paste the figure bass functions and rename them... but I don,t feel it's efficient.

That's why I'd prefer the line height issue with figured bass get fixed rather that duplicating functions that already work great.

Related to this subject, see my contribution (first reply) on the French forum:
As said in a previous comment, a plugin was written (see also last comments in the same mentioned thread) but not compatible with 2.0, and without knowing if it will be another day.

Meanwhile, after few attempts for create a template for diatonic accordion (maybe another better way, but no sure, and not found from now), I am convinced that the diversion of the continuous bass feature gives very good results, with the exception of the case (line height) noted above.

If I recall well (these attemps go back a few months), you can find a workaround, by selecting the wrong place numbers and amending the offset in the Inspector, but this is time consuming.
See, e.g., the result obtained on a workpiece. I get exactly the same display as a well-known method :
La Valse à Ollu.mscz (P=Pousser/Push, T=Tirer/Pull, and BA for bass/chords)

About the instrument:

(for the record, and just for the record, my interest for this instrument - for playing traditionnal music, of which Celtic music - is particularly due to my elderly father, who played and loved this instrument)
Sorry for this personal aside ... :(