Mac OSでも、Mac OS Xでも、AppleScriptはサポートされ、多くの部分は共通であるとしている。しかしながら、Mac OSではFinderがアプリケーションとして稼動していたのに対して、Mac OS XではDesktopというアプリケーションが動いているといった大きな違いがある。ざっと見たところでは、DesktopのAppleScriptコマンドの多くは、旧Finderと共通であるようだ。詳細については未調査であるが、いくつか試したところでは、Mac OSで作ったFinderの機能を使っているプログラムがMac OS Xでもそのまま動く。アプリケーションが変化したのだから、tell application "Finder"ではなく、tell application "Desktop"としなければならないはずなのだが…。実は、Mac OS Xの上でスクリプトアプリケーションを動かすと、自動的にFinderがDesktopに切り替わるのだ。コンパイル済みのスクリプトであれば、そうした変換が自動的になされる模様だ。単純な置き換え可能なテキストではあるものの、自動的に変更されるのであれば、それはそれで便利だと言えるだろう。 しかし、注意が必要なのは、そうして変換されてしまったスクリプトプログラムを、Mac OSで動かす場合だ。Mac OSで動かす場合にも、基本的にはDesktopとういう記述が残り、また、コンパイル結果も変更が加えられてしまう模様だ。つまり、Mac OSで起動した場合に動かなくなってしまうという弊害もあるから注意が必要だ。Mac OSとMac OS Xを併用する場合には、Mac OS Xでスクリプトを動かす場合にバックアップを取っておくのがよさそうである。 実は、筆者のシステムフォルダの「起動項目」フォルダには、再起動時にテンポラリフォルダにあるものを削除するためのスクリプトプログラムが入っている。Mac OS Xで起動したとにClassicをしたが、そのときにそのスクリプトが動いてしまった。動いたことは喜びだったが、Mac OSに戻した時にエラーが出るようになって気付いたという次第である。 |