I have noticed that the Dorico documentation mentions Lua as the recommended language for scripting. It has been a few years since anyone has requested information on using Lua for scripting in Dorico. From what I have seen of the Lua documentation, it appears to be a straightforward language. I wonder if there are any resources available now for using Lua with Dorico, such as a quick start guide. Can anyone provide guidance on this or suggest where I might find more information?
I may be wrong but my understanding is the Dorico currently does not yet support scripting. Although there is a ‘Script’ menu I thought it’s only for recorded macros. There are no entry results for a search for scripting in the manual, and various posts here have alluded to what I have said.
I would be delighted to be wrong! I can think of so many uses for scriptability.
Yes, I saw that. Not exactly a recommendation. I am fairly sure @dspreadbury has mentioned scripting is not yet available. And I also thought Dorico does not have a ‘plug-in’ architecture, as some other programs do. There’s discussion in this forum as to why that is technically undesirable.
It might be worth your while to look into the ConsoleTools Lua Framework that I have recently published. One of its goals is to make development of Lua scripts for Dorico more straightforward, and the documentation’s appendix C provides a walkthrough of two example Dorico Lua scripts that are included with the framework.
Caveat: the current main restriction of Dorico’s scripting capabilities – the inability to retrieve useful contextual information from the Dorico application – is something that ConsoleTools cannot compensate.
Dorico does support scripting, but it is limited in scope. Your best way to discover the world of Dorico scripting is to record some actions as scripts.
At the moment, there’s no way of ‘querying’ Dorico for information about the status of an object, but every action in Dorico has a command, which you can discover by recording a script, or looking in the application.log file.
You can do things like use Lua for loops to loop actions through Flows, for example. Alexander of course is the expert.