If it is ScriptingBridge that is slowing things down, then this sounds like perfect fodder for a bug report to Apple.- JoshOn Thursday, December 22, 2011 at 12:15 PM, Alan Skipp wrote:
_______________________________________________
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-develI can confirm the same problem with setting up a scripting bridge link to InDesign. In my experience rb-appscript is far superior to scripting bridge, it's a shame it can no longer be developed. Explained here:I've never attempted to use macruby-appscript, but it might be worth trying?AlI'm new to all this, so apologies if I'm doing something daft.
I'm trying to create a MacRuby GUI application to parse a load of information from InDesign documents.
I've previously made this application using applescriptObjC, but I was constantly bouncing off the walls of applescript and getting seemingly random bad_exec errors if I ran it too many times without a reboot, so I've decided to try with MacRuby.
I'm only at the stage of probing MacRuby to see how to do it, and I've immediately hit a problem; it seems to take a very long time to set up the link to InDesign.
I found some code in correspondence between Matt Aimonetti and Spencer Rose that I am using to test:
#!/usr/local/bin/macruby
framework 'Foundation'
framework 'ScriptingBridge'
# I followed Matt's instructions for making the bridge support file, but I wasn't sure where it needs to go, so I did this for a quick fix.
load_bridge_support_file '/Users/fatboy/inDesign.bridgesupport'
appurl = NSURL.fileURLWithPath("/Applications/Adobe Indesign CS5/Adobe InDesign CS5.app")
@id = SBApplication.applicationWithURL(appurl)
doc = @id.activeDocument
puts doc.name
pgph = doc.allParagraphStyles
pgph.each do|style|
puts "#{style.name}"
puts style.properties["appliedFont"].name
end
This code works, but it takes 15+ seconds to set up the link to InDesign (similar stuff with safari takes about 1 second, and in applescript or rb-appscript it takes about a tenth of a second for either InDesign or safari).
I also tried SBApplication.applicationWithBundleIdentifier("com.adobe.indesign"), and this was just the same.
Is there something I am missing here?
Thanks in advance for any help you can offer.
Fb