new files: jazz templates, demo & chord styles

• Jun 8, 2011 - 18:04
S5 - Suggestion

Here are files I would like to see added to the MuseScore distribution, both for the trunk and for the 1.x branch.

To install in "styles". This is the latest version of my customizable chord definition file, using Trebuchet MS as the font for the "missing" symbols from MuseJazz. Not ideal, but I think the best compromise.

To install in "demos". This is a demo "score" showing a representative set of symbols that are obtained by default using customchords.xml. I think this is probably more useful than the "create chord chart" plug-in, which is kind of overwhelming in the number of chords displayed, and requires work to get it to use the desired chord definition file.

Jazz Lead Sheet.mscz
Jazz Lead Sheet 2.mscz
To install in "templates". These are templates for creating lead sheets using customchords.xml for chords and Trebuchet MS for titles and several other text elements. The only difference between the templates is that "2" is already set up for two staves, using two separate instruments so that "hide empty staves" can work. This is as discussed in my tutorial.

To install in "demos". This is a sample lead sheet creating using the Jazz Lead Sheet 2 template and demonstrating many of the techniques discussed in my tutorial. Feel free to rename this file to something that makes the purpose more clear (eg, "demo_lead_sheet").

I hope to also add a big band template and a small sample score for that, but that might be another week or so.

One important note about customchords.xml and templates based on it: scores created using customchords.xml won't open properly on systems that lack that file. You'll get an error about the file being missing, and the score will open with no chords. So that introduces a small incompatibility, which I know 1.x is trying to avoid. But this only affects scores created using this file, a clear message is produced naming the missing file, and 1.0 users can download customchords.xml via the link in my tutorial without the need to actually update to 1.x. So I'm hoping this will be OK. BTW, this raises the need to have an easily-discoverable repository for user-contributed styles, templates, etc.


Great !
I'm ok with the demo and templates but I do have one request regarding the customchords.xml. As you mention at the end of your post, if someone doesn't have this file, it will not work. The same way, if someone customized the file and send a musescore file to a friend, this friend will not be able to see the score the same way. So maybe you could create 2 or 3 files based on your customchords.xml to accomodate the most used combination of symbols based on your experience. The leadsheet tutorial could be changed accordingly with something like "If you want triangle & circle, pick this file and stop reading now". Feel free to join IRC to discuss this further.

Sorry, IRC seems beyond my skills at the moment:-(. I'll try to figure it out later.

Anyhow, I had actually already created such customized files, but was thinking it would be better not to proliferate the number of these files shipped. My thinking was, Werner had mentioned adding a feature to the trunk where if you've customized the chord style, MuseScore would automatically save the whole chord list as part of your document, to maximize portability, but that the "built in" styles would not be saved in that way. I was thinking it made sense to minimize the number of "built in" styles, then, and was proposing adding just this one. But there's probably no harm in shipping several styles, but perhaps not having MuseScore consider them built in, and indeed, it's probably best that MuseScore *not* consider any of these built in, since they are meant to be customizable.

BTW, if it were possible to port those changes to the branch (having customized styles saved as part of the document), I wonder if that would turn out to be backward compatible? I'm still not clear on how this feature works. It would be quite cool if this could allow customized chord symbols to be made portable in 1.x.

But I'll play around with this some more today and upload a few more versions: one patterned after the Real Book, one after the New Real Book, and one making maximum use of the "symbol" approach as opposed to abbreviations (eg, triangle for major). I'll also upload corresponding chord chart demo files for them.

OK, I have new versions of the files; the previous ones can be ignored. As per our discussion offline, I have now provided versions of the chord descriptions for Real Book & New Real Book styles, as well as a symbol-heavy version (using triangle, minus, circle, and oslash) in addition to the version I originally posted. That original version has been renamed from customchords to muse_cchords, in keeping with what I think should be a consistent naming where all files derived from this base should end in "_cchords". The other versions are rb_cchords, nrb_cchords, and sym_cchords.

I'm also attaching updated templates and the demo song All_Dudes, all using muse_cchords. I plan to update my tutorial accordingly at some point.

Finally, I am attaching two updated versions of existing files: styles/chords.xml plugins/chordchart.js. The update to chords.xml adds the new chord ids that I created. The update to chordchart.js cleans up the list of chords displayed and adds the new chords. It also prompts for the chord description file to use rather than having that hard-coded. Ideally, it would default to the current chord description file, but I couldn't find a way to get that. I had to rename the uploaded version chordchart_jjs.txt to get past the upload filter. But with these improvements, I don't think we need chordsymbols.mscz (from my first upload batch) any more.

BTW, I have a program WinMerge that I think might be able to produce "patch" files.

Attachment Size
All_Dudes.mscz 5.81 KB
Jazz Lead Sheet.mscz 1.78 KB
Jazz Lead Sheet 2.mscz 1.81 KB
muse_cchords.xml 40.78 KB
rb_cchords.xml 40.79 KB
nrb_cchords.xml 40.78 KB
sym_cchords.xml 40.78 KB
chords.xml 30.45 KB
chordchart_js.txt 4.11 KB

Looks great Marc. Your contributions will be added to 1.x and the trunk. For the trunk it will be added to the MuseScore Code part of the code repository and thus not as an External Resource, since Werner is going to add the chords as a style inside the score files for portability reasons. The license policy explains what it means when code needs to be committed to MuseScore Code. It is required you sign the MuseScore CLA in order to accept your contribution. Note: the CLA is only for MuseScore Code related patches. Other contributions such as documentation do not fall under this CLA.

Understood, and done.

BTW, I still haven't given up on my long term suggestion for tokenizing and parsing chords using a rule-based system as opposed needing each chord to be described individually in all its variants. If nothing else, it would be useful for dealing with situations where someone wants to have a chord like Cma7#9sus4omit5add6 or whatever and there just isn't a chord id for it. But I'm excited to see what's already coming with the chord style editor!

Title new files: customchords.xml, templates, demo new files: jazz templates, demo & chord styles
Status (old) active fixed

I renamed the style file with cchords first. It makes more sense to go from general to particular, like in a package hierarchy. I changed the templates and the demo accordingly (there was a typo in the Jazz 2 template).
Commited in r4364 & r4365

Cool. I actually went back and forth on which way to do the naming. I too preferred the cchords first too, but I went with what I did simply because it was more consistent with the existing stdchords and jazzchords. Nice that it gave you a chance to find the typo - odd, though, that MuseScore never complained when I put in a nonexistent filename there.