利用者定義命令って何だ?
「ハンドラで受け止める」で紹介したように、AppleScriptではスクリプト中の命令がメッセージとなりハンドラへ送られます。
そしてメッセージを受け取ったハンドラが、アプリケーションの起動やファイルの開閉などの処理を行います。
前回はメッセージとなる命令に、Mac OSが用意しているrun
/open
/idle
——などを使いましたが、自分で作成した命令を使うこともできます。
これを利用者定義命令(user handler)と呼びます。
利用者定義命令の名前は、変数の場合と同じでアルファベットと数字を組み合わせて作ります。
定義方法は次のとおりです。
on 利用者定義命令の名前() 処理する内容 end 利用者定義命令の名前
run
ハンドラに似ていますが、on
の後の名前にカッコをつける点が違います(注1)。
利用者定義命令のハンドラはスクリプト中のどこに書いても構いません。
また、同じ名前でなければハンドラはいくつでも作成できます。
利用者定義命令を使う主なメリットには、次の4つがあります。
- 複数の命令を1つにまとめられるので、スクリプトが短く。
- 全体でなく、ハンドラ単位で把握すればいいので、スクリプトの理解が容易。
- ハンドラを変更すると、利用者定義命令を使っているすべての部分に反映されるので管理が簡単。
- ハンドラ単位でコピーすることで、ほかのスクリプトへの流用が簡単。