After using Dorico for over a year and many hundreds of scores, I feel I have mastered it - almost! I recently had todo some very repetitive tasks and began using the scripting feature within Dorico. This has worked like a charm - except for one command. I need to take several hundred pieces of music and generate Bb and Eb parts. I can use a script to create the two duplicate scores, naming them “Bb” and “Eb.” However, when I try to use a script to change their transposition (using the Clef and Transposition Overrides command) the resulting macro crashes Dorico consistently.
I have verified (by truncating my script at various points) that the script correctly opens the dialog for “Clef and Transposition Overrides” for the first (“Bb”) score. However, any attempt to actually change the transposition fails.
Here is the LUA code:
local app=DoApp.DoApp()
app:doCommand([[Project.Layouts.ClefAndTranspositionOverrides?LayoutID=4&LayoutIDArray=4]])
app:doCommand([[Project.Layouts.ClefAndTranspositionOverridesSetOverrides?LayoutID=4&BlobID=13]])
app:doCommand([[Project.Layouts.ClefAndTranspositionOverrides?LayoutID=5&LayoutIDArray=5]])
app:doCommand([[Project.Layouts.ClefAndTranspositionOverridesSetOverrides?LayoutID=5&BlobID=14]])
I am simply creating Bb and Eb instrument parts, so no funny key changes…
I am wondering if I need to actually learn the LUA scripting language to achieve success here. I would love to hear from others who have similar experience. I can program in many computer languages, so it should be possible!
I maintain my own personal fakebook for use in band gigs and solo engagements. For those of you who are not familiar with this, a fakebook is a compilation of lead sheets (melody and chords for tunes) and typically these are made available in C, Bb, and Eb editions so musicians playing different instruments (e.g., a Bb trumpet or Eb alto sax) can play together. I created my fakebook years ago using Finale. It has well over 1,000 pages - and I distribute it in PDF form for use on mobile tablets.
Over the past few months, I have converted all the lead sheets to Dorico, fixing errata and adding many tunes in the process. Now that I have all the “C” lead sheets, I wanted to find an automatic way to use them to create Bb and Eb versions.
I had assumed I could use scripts to do this - but unless I find a way to fill out Dorico’s dialogs using scripts, I may be stuck doing these conversions manually.
This is not so bad, as the task is simple and very redundant. Over the past four days, I have done 250 of the lead sheets, creating C, Bb, and Eb pdfs - about 1/4 of the entire job.
However, I would much prefer to continue using more automation - and I want to learn more about scripting in the process.
This is exactly what I am doing. I can use a script to create the additional layouts just as you suggest. The script even renames them to “Bb” and “Eb”. However, I don’t seem to be able to use a script to actually change the keys of each of these new layouts using the Clef and Transposition Override dialog. I have to do this step manually for each tune in the fakebook - at least until I figure something else out.
Yes. If I were starting over today I would do exactly that. However, I have already invested hundreds of hours in porting the ~950 individual lead sheets from Finale to Dorico and doing required editing on each. If I do this now, I will still have to read in each of the ~950 lead sheets individually and likely do a bit of editing on each before “printing” the results to pdfs.
It would likely be as much work as I am currently doing.
I have already noted this as the proper way to create a fakebook from scratch and will also use it as I add new lead sheets to my existing fakebook.