Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming Businesses Apple IT Technology

Apple Previews New Script Editor 21

DrC writes "Apple has released a preview update to the venerable Script Editor, rewritten using Cocoa. It looks like an impressive upgrade." The preview release is included with the Dec 2002 Developer Tools as a separate install, too.
This discussion has been archived. No new comments can be posted.

Apple Previews New Script Editor

Comments Filter:
  • by rmlane ( 589573 ) on Sunday December 22, 2002 @07:19PM (#4942005)
    I'm a Unix -> OS X switcher, I can script in sh, awk, expect, etc. What advantages are there to learning AppleScript? Is the GUI integration anything like expectk?
    • by xmath ( 90486 ) on Sunday December 22, 2002 @07:49PM (#4942099)
      AppleScript is a scripting language layered on top of AppleEvents, which is basically an object-oriented IPC system. This means that if an application properly supports appleevents, then you can fully control an application via applescript, rather than programatically frob the UI.

      For example, it's valid to say:

      tell application "Finder" to duplicate the selection to folder "Foo" of home

      if you run this, it'll copy whatever you have selected in the Finder to ~/Foo

      The downside is that you have to rely on the developer of the application you want to control to have created the proper hooks.

    • by xmath ( 90486 ) on Sunday December 22, 2002 @08:01PM (#4942129)

      Oh, and another reason is that there are various applications with good AppleScript integration, notable the Finder. For example, you can create "Folder actions", which are scripts that are automatically executed when you open a folder, or drag something into it etc.

      One more thing I should note is that the underlying system (OSA) is quite flexible. In particular, an applications "dictionary" (which contains a description of all objects reachable via IPC and their properties etc) is fairly language-agnostic. It's for example probably possible to write a perl OSA-plugin, which would allow the user to use the Script Editor to write an run perl scripts to control applications via AppleEvents. In fact, if the plugin has handlers for converting AEs to script, the user can "record" scripts. (the system intercepts AEs caused by manual user actions, and translates them into script. pretty cool)

      So there's more to AppleScript than meets the eye. See also Inside Macintosh: InterApplication Communication [apple.com] and other AE/AS/OSA related docs [apple.com].

      • The author of MacPerl once wrote a Perl OSA component. It was an essentially failed experiment, though I couldn't tell you all the reasons why. What I can say is that I don't think it's necessary for most purposes. MacPerl can speak Apple events, and now perl under Mac OS X can too, with Mac::Carbon [cpan.org]. Soon Mac::Glue will also be ported to Mac OS X, allowing you to directly access "AppleScript" vocabulary from Perl, with stuff like:
        #!/usr/bin/perl -w
        use Mac::Glue;

        my $iTunes = new Mac::Glue 'iTunes';
        my $tracks = $iTunes->obj( tracks => playlist => 'Blues' );

        $iTunes->activate;
        $iTunes->play( $tracks );
        That's hopefully coming to Mac OS X in January or Frburary, but don't hold me to it.
  • AppleScript is very slow when it comes to processing massive amounts of data. But it's the only language for playing TradeWars [eisonline.com], a telnet game that was originally a dialup BBS door game, with a macintosh client, TWScripter 3 [rr.com]. I've written a 93 page (118,388 characters) AppleScript bot for playing TradeWars (not publically available yet-- the help documentation would probably be longer than the code itself). But I still think AppleScript is too slow.
  • by fordgj ( 522469 ) on Sunday December 22, 2002 @10:40PM (#4942565)
    This is one among some other applescript goodies that have been announced. Interestingly, thye are releasing GUI interaction [apple.com], something that was previously only available via third party tools like Prefab Player. Also, if you look in the new player, there is a setting for which language to use. Thus, there is the flexibility to use other languages (fronteir?).
  • by ubiquitin ( 28396 ) on Monday December 23, 2002 @12:42AM (#4942814) Homepage Journal
    Don't forget that you can put AppleScripts into shell scripts via the "open" command and vice versa you can call shell scripts from AppleScript by opening a terminal session for them, i.e., executing a .term file.

    There's no need to bicker about scripting languages when they can call each other.

    It's all good.

    What the world needs is fewer karma whores and more good friends.
    Go ahead, friend. :) Click that white button and turn it green.
  • GUI Scripting (Score:3, Interesting)

    by X_Caffeine ( 451624 ) on Monday December 23, 2002 @01:19PM (#4945197)
    There's a good bit on Daring Fireball [daringfireball.net] about GUI Scripting, a new feature of AppleScript that allows developers to control applications that do not have Applescript support. It's, um, weird.
  • About once a year I need to use a bit of Applescript for something, and once a year I again fall into a morass of tips-n-tricks articles, Web tutorials, popularized and out-of-date books, and a very complete Applescript manual from Apple whose existence is hard to discover and which is almost useless without good documentation on Finder scripting, which seemingly doesn't exist except for the Finder's Dictionary itself (which is about as complete as a typical .h file).

    When HyperCard was introduced, it included a very decent tutorial and reference manual in stack form, and a good print manual was available from Apple.

    AppleScript may not be the greatest thing since sliced bread but it is darned good.

    Peace, Perl users. Relax, TCL users. No argument, REALbasic or VB fans. I'm not criticizing your favorite languages. I'm just saying AppleScript is darn good--and is beautifully integrated into the Mac OS. Not everyone wants or needs a Mac-OS-oriented scripting language, but there IS one, and it's lovely.

    Why, oh why hasn't Apple produced a good set of AppleScript books--comparable to, say, those REALsoftware has for REALbasic? Why doesn't it try to SELL them as a checkoff option on their build-to-order menu?

    It's great that it wasn't lost (along with so much else good System 7.5 technology). It's great that they recoded it native. It's great that it's in OS X. But it is still a hidden treasure.

    Right now, about 0.001% of all Apple users know and use AppleScript. It should be more like 1%.

Friction is a drag.

Working...