From: Philip A. <ph...@vc...> - 2005-04-14 14:26:49
|
On Wednesday, Apr 13, 2005, at 10:23 America/Vancouver, G=FCnther =20 Enthaler wrote: > It seems to me that if you really want to leverage the AppleScript =20 > Studio work, the better way to go would be to implement Tcl.component; = =20 > then you could use Tcl via AppleScript Studio, and for system =20 > scripting via the Script Editor. > I notice, Philip, that you've done this already! Hi G=FCnther, Yes, TclOSA works in an AppleScript Studio Cocoa application and all =20 the other OSABridge components work in Script Editor just fine. The =20 Carbon UI features work in scripts run in Script Editor as well, =20 although Cocoa apps will grab keyboard commands with the same bindings =20= away from the text pane. TclOSA can work directly with any items in =20 Carbon nibs that are supported in compositing windows and you can also =20= script those items plus the custom HIViews directly in Tcl. A few changes would be needed for it to be more like a regular Tcl =20 implementation. Currently it is idiosyncratic to the Carbon AppleScript =20= applet scenario. I have been working towards a standard implementation =20= where Tcl_Main is used instead of a customized main interp and =20 environment and the specialized commands are added directly instead of =20= being in packages. It links to /usr/lib/libtcl.dylib (=3Dlibtcl8.3.dylib) = =20 on OS 10.2 and Tcl.framework in /System/Frameworks on 10.3. It is =20 getting to be too much to maintain separate Project Builder and XCode =20= builds for the different environments. Just last weekend I compiled the =20= 8.4.9 sources to work with. After I get that working in the component, =20= I'd probably have to get some advice from this list as to how deal with =20= a "keep alive" event handler and maybe how to warp stdout to a =20 specified text pane. If anyone wants to check it out as it stands right now, I can fix up a =20= package and make it available for download. It's a simple example with =20= a split view where a script is typed into the top pane, Command-R (from =20= a "Run Script" menu item) is pressed, and the result appears in the =20 bottom pane. There is a button with a script built into it which also =20= pumps into the lower text pane: implying that it's possible to use Tcl =20= in conjunction with anything in Interface Builder that AppleScript =20 Studio supports. I have not tried it with the Cocoa-Document style of =20= application yet. > It's curious that your post is written in a speculative fashion, when =20= > it seems that you've done it already; any particular reason for that? Well, I was talking about getting Tcl to be directly connected to the =20= widgets instead of going though AppleScript Studio NSAppleScript =20 scripting. Cheers, Philip > The following info I compiled before finding your page at > http://homepage.mac.com/philip_aker/osa/osa.html > > > > There were a number of Tcl scripting components on classic once upon a = =20 > time; > a guy called Tim Endres wrote one (at > http://www.gjt.org/download/time/mac/Tickle5.0v1.sea.hqx, along with a = =20 > J OSA > component). He even (I believe) distributed the source for it. There =20= > are > others by John Louch at http://www.louch.com/ and by Vince Darley at > http://www.santafe.edu/~vince/Downloads.html > > > More recently, there's a JavaScript OSA component at > http://www.latenightsw.com/freeware/JavaScriptOSA/index.html, an > experimental Python.component written by Bill Fancher at > http://home.pacbell.net/fancher/OSA_Python/=20 > OSA_Python_Notes_1_0a5.html, and > there's even a bare bones open source Unix Shell component at > http://ranchero.com/software/osashell/. > > http://www.applescriptsourcebook.com/links/languages.html has more on =20= > this, > too. > > Regards, > G=FCnther Enthaler |