@des99, I've been using Murgaa to automate plugin preset saving (UAD H910 for example), but I'd be interested to know how your KM macro works. with Murgaa, you record a sequence, then start playback and walk away. Does your macro repeat the process until complete or do you have to manually keep triggering it for each preset?
It's much more advanced than that, and has evolved to use a few different methods as you need to use different methods for different plugins. I think I've documented this before but in short I have a main script than handles initialising, and the main loop, then I have sub-macro scripts for getting patch/bank names from the plugin, saving as a Logic patch etc. I can essentially do whatever I need to, and like I say it various between plugins.
So I can work through the entire plugin's presets automatically, picking up bank names and creating the necessary bank names in Logic's presets directories and saving the named patches there.
If there is no way to get bank names from the plugin, then I can flip some different variables and it will ask me to input a bank name manually, then work through that bank, move on to the next bank and prompt for that name etc. I have versions where if you can't pull out the patch names from the plugin directly, i can pull them out from a finder window displaying the patch files and sync preset changes from that. Sometimes you have to get creative with this stuff!
And of course different plugins have different methods required for extracting names, so I tend to copy this macro set uniquely for each plugin type, and modify what I need to modify for that plugin/range of plugins(click in different places, use a different method to pick up the patch name etc). And I keep all those versions as I often need to go back to redo the plugin, or modify them for a new version (eg Arturia V4 to V5 etc).
I even have code in it to send me text updates of progress, so if I'm eg leaving it going all night, I can check my phone and see how many banks it's done, whether it's stopped and so on - this was invaluable for converting the Dexed stuff as there was well over 100,000 patches to do...
So it's basically evolved to do what I need to, and when I hit a new plugin and it requires something different, that method then gets added in...