abc plugin fails with "tag mismatch"

• Feb 20, 2015 - 10:31
Type
Functional
Severity
S5 - Suggestion
Status
closed
Project

My abc gets converted fine when I paste it directly into abc2xml.appspot.com but I get the "tag mismatch at line 5 column 7" error when using the plugin in Musescore. I've used this plugin many many times without problem in the past.

I'm wondering if there's a permissions problem with the webservice powering the abc conversion (http://abc2xml.appspot.com/). Maybe it's not accepting connections direct from Musescore.


Comments

Hi,

I just downloaded MuseScore for the first time and I have the same problem with version 1.3. I also downloaded beta 2.0 but I can't find any ABC import in the beta version at all. So far I have been using Tabledit so I have a workaround by first importing with TE and then saving it in Music XML format for MuseScore, but it would be nice to get a fix.

PS. It would be great if no net connection would be required for the ABC import. Some 10+ years ago I was working with a tiny MS Visual basic based project for an ABC importer and if my memory serves, a good file description about the abc format was available at that time.

PPS. There seems to be a file definition of the 2.1 version here:

http://abcnotation.com/wiki/abc:standard:v2.1#information_field_definit…

Status (old) needs info fixed

The problem was server side. The plugin in 1.3 and in 2.0 should now work.

Having the conversion made online enables this kind of fix without deploying a new plugin. This is enough for me to justify internet connection for it. And there are many other reasons to do it online.

Well, for the user it means that he needs to allow a hole in the firewall for the plugin and let unknown stuff to be downloaded from an unknown site. If one is concerned about net security it's then safer to use other means to convert ABC files.

Thanks to lasconic for fixing the problem, however I agree with robopo that a local abc conversion plugin would be preferable. And it would also work when there's no/flaky internet connection.

You are of course welcome to write such a plugin! But the downside would be, you or the user of the plugin would have to also download and install the necessary third-party tool (abc2xml) and make sure the plugin can locate it on all platforms. Also, probably, download and install the python libraries it depends on, except on platforms where a standalone executable is available. And then, of course, live with the fact that the user of the plugin won't be be able to take advantage of the regular improvements made in that tool.

it's not a bad idea to have a version of the plugin with all of those complications and limitations for the relatively rare cases where the current version won't work, but still, the current approach is pretty clearly the better solution for most people. I think the people tech-savvy enough to be OK with installing the third party tool & python libraries, and to update them as appropriate, would also not really need a plugin in MuseScore to run that tool for them but would also be perfectly happy running it on the command or from with EasyABC or similar.

Writing such a plugin would be interesting yes, but I'm currently working with Android projects and CG so I personally don't have any spare time in the near future. Perhaps someone else has if not the MuseScore team.

Being a newcomer to MoseScore I don't understand the necessity for abc2xml or Python. Isn't MoseScore written in C++ with Ot? In the project I mentioned we simply parsed the ABC text file based on the ABC file description without any bindings to external libraries. It was not a notation SW though but rather was interested in the Key, chords and measure structure of the tune etc. However, all the note information was parsed too but for transposing purposes only.

(For the curious, what the program did was it created small printable visiting card size+ charts with beat marks/chords and measure dividers for base and backup quitar players. A tool for dance bands. It would actually be a nice feature in a notation sw but had no future as a standalone program written in VB).

Converting from abc to MusicXML is a highly complex thing - at least, if you want to do a good job of it. abc2xml, a Python program by Wim Vree, is the best tool that exists for doing this. So it makes sense for any MuseScore plugin to simply use this excellent pre-existing tool rather than spend many many months writing a replacement from scratch that probably still wouldn't be as good as abc2xml, which really is state of the art.

@Mark
Sure things can get complicated depending what the goal is and depending the internal notation representation required. Can't say anything about MusicXML if that is what MuseScore really requires for the conversion as I'm not familiar with either. Remembering that ABC is mostly used for simple folk tunes even TableEdits ABC import has worked flawlessly for years and its help file still refers to the Walshaws original ABC site (nonexisting any more) for the file format - we used that definition too. If every ABC version and dialect would have to be supported then it surely would get complicated and even abc2xml says it can't do them all - as confessed on the site pointed at by Thomas above.