Finderでファイルを扱う場合は、「ファイルの種類」と「ファイルの場所」の2つについて知っておかないといけません。
ファイルの種類というのは、テキストファイルとかPICTファイルとかいうものではなくて、ディスク、フォルダ、ファイルといった種類のことです。AppleScriptでは、これらはちゃんと区別するようになっています。サポートされている主な種類としては、こんなものがあります。
「file」−−アプリケーション、書類、デスクアクセサリなど一般的ファイル全般。
「folder」−−フォルダのこと。
「disk」−−各種のディスクのこと。ハードディスク、フロッピーディスクなど種類は問わない。
「alias」−−エイリアスファイルのこと。
「control panel」−−コントロールパネル書類のこと。
他にもいろいろとありますが、とりあえずこれぐらい知っておけば十分でしょう。これらは「種類 "名前"」って具合に使います。例えば、「file "名称未設定"」とか「control panel "モニタ"」なんて具合ですね。
もう一つの「場所」ってのは、そのファイルがディスク内のどこに置かれているか、ということです。普通、HyperTalkなんかでは、ファイルの場所というのは「パス名」という形で示すようになっています。例えば、「HD-300」というハードディスク内の「書類入れ」というフォルダ内にある「新規ファイル」というファイルは、
HD-300:書類入れ:新規ファイル
こんなふうに示すのが普通ですね。AppleScriptでも、このようなパス名による記述もできるんですが、もうちょっとスマートな書き方もできるようになっています。例えば、上の例なら、
file "新規ファイル" of folder "書類入れ" of disk "HD-300"
こんなふうに書くことができます。つまり、ファイルのある場所を、先ほどの「file "〜"」っていうやり方で細かく指定するわけですね。
tell application "Finder" open file "HyperCard 2.2.1" of folder "HyperCard" of startup disk end tellこれを実行すると、ちゃんとHyperCardが起動します。
AppleScriptのスクリプトは、直接AppleScript自身が処理するものばかりではありません。どちらかというと、特定のアプリケーションに向けて命令を送り、そのアプリケーションが処理する、というものが多いのです。こういう場合、AppleScriptでは、
tell application 《アプリケーション名》 ……実行する命令…… end tellこのような形で書きます。こうすると、間に記述された命令は、指定のアプリケーションに向けて全て送られます。ここではFinderに向けて命令を送っていたわけです。
ちょっと注目して欲しいのは、「startup disk」というもの。これは、起動システムが入っているディスクのことです。いちいちハードディスクの名前を書かなくていいので、重宝するから覚えておきましょう。
さて、肝心の「open」命令です。これは、こんな具合に、
では、もっと他のものも開いてみましょう。コントロールパネルはどうでしょうか。
tell application "Finder" open control panel "モニタ" end tellこれを実行してみよう。きっと、エラーが出てしまったはずです。そう、これは動作に失敗する例なのです。どうして失敗したのかわかりますか。それは、control panel "モニタ" のある場所がわからなかったためなのです。さっきもいったように、Finderでは、そのファイルのある場所(パス名)をきちんと指定しないとダメなのです。ということは−−
tell application "Finder" open control panel "モニタ" of control panels folder end tellはい、これでOK。ちゃんと動くから、試してみてください。
system folder――システムフォルダ apple menu items folder――「アップルメニュー」フォルダ control panels folder――「コントロールパネル」フォルダ extentions folder――「機能拡張」フォルダ fonts folder――「フォント」フォルダ preferences folder――「初期設定」フォルダ shutdown items folder――「終了項目」フォルダ startup items folder――「起動項目」フォルダこんな感じになります。システムフォルダの中にある、Systemが自動的に作成するフォルダは、全てこのようにして直接指定できるのです。
また、デスクトップも直接指定できます。例えば、デスクトップにある「書類」というフォルダなら、
folder "書類" of desktop
このようになるわけです。とりあえず、ここで説明したことをマスターして、ディスク内のどこにあるフォルダやファイル、アプリケーションも確実に開けるようにしておきましょう。