AppleScript用エディタ

AppleScriptの開発ソフトは?

 AppleScriptを書くためのエディタは、様々なものがあります。
「mi」などのテキストエディタにAppleScript開発機能を付加したものや、「Xcode」などの開発環境、さらには「ターミナル(Terminal)」を利用したUNIX環境での開発も可能です。

 このようにAppleScriptの製作用には様々なエディタが存在しますが、一番基本的なものは「スクリプトエディタ」です(注1)。

スクリプトエディタ

 他の開発環境をメインに使う場合でも、ちょっとした事はこのエディタですませてしまった方が便利だったりしますし、とにかくシステム標準のものですから、しっかり使い方をマスターしておいた方がいいでしょう。

 本書では、OS X10.10付属の「スクリプトエディタ」について解説します(注2)。

スクリプト編集ウインドウ

 ツールバーなどの項目はカスタマイズできるので、設定によっては次の画像とは異なることがあります。

スクリプト編集ウインドウ

 上部に並んでいる[記録][ 中止][実行]のボタンを使ってアプリケーション操作の記録と実行ができます。これらのボタンだけでもAppleScriptを活用することができます。
 スクリプトを書いたら、[コンパイル]をクリックしてスクリプトが正しく記述されているか検証します。[実行]ボタンと違い、準備だけで実行まではしません。
 一番右にある[バンドルの内容]をクリックすると、スクリプトを[スクリプトバンドル]や[アプリケーション]として保存した際のバンドル(注1)の内容が表示されます。

 AppleScriptは、OSA(Open Scripting Architecture)という汎用スクリプト実行環境を利用しています。
 ですから、OSAを利用した他のプログラム言語に切り替えて使うこともできます。
 切り替えはウィンドウ左上の[AppleScript]と書かれたポップアップで行います。
 標準の状態でもAppleScriptの他にJavaScriptが利用可能(注2)ですが、本書はAppleScriptの入門書なので詳しい説明はしません。

 その下にあるのが実際にスクリプトを書く場所です。
 エディタは、文の意味で単語を色分けするだけでなくフォントやスタイルも指定できます。

 左下にある[説明(ℹ)︎]ボタンをクリックして切り替わるところに、スクリプトの作者の名前や制作時期などの著作権情報や、簡単なスクリプトの機能説明などを書きます(注3)。

 記述した文は、アプレットを実行する時にダイアログとして表示されます(注4)。
 フォントのスタイルや色もダイアログにそのまま表示されます。
 ただし、スクリプトを保存する時に[初期画面を表示](注5)のチェックを外すと、このダイアログは表示されません。

 [イベントログ]ボタンを押すと表示される領域には、スクリプト実行時の動作記録が出力されます。

メニュー

 バージョンによって、メニューの内容は多少異なります。また一般的なメニューは解説していません。

  • [スクリプトエディタ]
    • [スクリプトエディタについて]スクリプトエディタとAppleScriptのバージョンが確認できます。
    • [環境設定...]エディタの設定だけでなく、AppleScript全体の設定がで来ます。
  • [ファイル]
    • [新規 Cmd + N]新しくスクリプト編集ウインドウを作ります。
    • [テンプレートから新規作成]テンプレートファイルから新規スクリプトを作成します。
    • [開く... Cmd + O]スクリプトファイル(スクリプトテキスト、コンパイル済みスクリプト、アプレット)を開きます。
    • [用語説明を開く...Sft + Cmd + 0]アプリケーションやOSAXが持っている用語説明を開きます(注1)。
  • [編集](注2)
    • [ペーストしてスタイルを合わせる Opt + Sft + Cmd + V]文字のスタイルを合わせてペーストします。
    • [参照をペースト]Finderでコピーを実行した後に実行すると、Finderのファイルへの参照がペーストされます(注3)。
  • [表示]
    • [バンドルの内容を表示 Cmd + 0]バンドル内のファイルなどを表示します(注4)。
    • [説明を表示 Cmd + 1]説明を表示します。
    • [結果を表示 Cmd + 2]結果を表示します。
    • [ログを表示 Cmd + 3]イベントログを表示します(注5)。
    • [アクセサリ表示を表示 Cmd + 4]ウインドウ下の領域を表示します。
  • [スクリプト]
    • [記録 Cmd + Sft + R]スクリプトの記録を開始します(注6)。
    • [中止 Cmd + .]スクリプトの記録を中止します。
    • [実行 Cmd + R]スクリプトを実行します。
    • [アプリケーションを実行 Opt + Cmd + .]スクリプトのパスなどの条件を、アプリケーションとして実行します(注7)。
    • [コンパイル Cmd + K]スクリプトをコンパイル(構文確認)します。
  • [フォント]「このスクリプトについて(説明)」などの文章のフォントを指定します。
  • [フォーマット]「このスクリプトについて」などの文章のフォーマットを指定します。
  • [ウインドウ]現在開かれているウィンドウの管理をします。
  • [ヘルプ]「スクリプトエディタ」のヘルプ文書を開きます。

バンドルの編集

 バンドルとは以前説明したように、フォルダのように中身にファイルを内包していてかつ、通常はひとつのファイルに見える形式です。
 バンドルは、コンテクストメニューから[パッケージの内容を表示]でフォルダと同様に開いて編集ができます。
 AppleScriptでは、スクリプトバンドル(.scptd)とアプリケーション(.app)の二つのバンドル形式による保存が可能です。

バンドルペイン

 エディタはこのバンドルの内容の編集機能も備えています(注1)。
 スクリプトを既にバンドル形式で保存している場合、右上のボタンか[表示]-[バンドルの内容を表示]メニューで、バンドルの内容をが開けます。
 開いた部分の上にはバンドル情報を入力する場所があり、スクリプトの名前、識別子、バージョン、コピーライト(著作権情報)、スクリプティング定義(用語説明)の情報の入力ができます。
 これらの情報はバンドル内のInfo.plistファイルに記録されているので、この XMLファイルを直接編集することもできます。

 下の方にはリソースの情報が表示されます。最初のdescription.rtdは「説明」 の内容を保存したファイルです。
 Scriptsは、スクリプトライブラリ機能(注2)を使う場合にスクリプトファイルを置いておくフォルダです。
 その他、必要に応じてシェルスクリプト(rubyやperlなども含む)のファイルを置いたりして、複雑な機能を持ったスクリプトを作る際に便利に使えます。

コンテクストメニュー

 エディタの編集ウインドウでコンテクストメニューを開くと、一般的なメニューの下にずらっと項目が並んでいます。
 それらはスクリプトで構成されていて、ユーザーが自由に追加可能です。
 詳細はそのメニューの最初にある[これらのスクリプトについて]をご覧ください。
 このメニューを活用すると、スクリプトがより簡単に楽しく書けるようになると思います。

コード補完

 スクリプトを書いていると末尾に...など出てきますが(注1)、その際に[F5]キーを押すとAppleScriptで使われる単語が候補に表示されるので、カーソルキーで選択してreturnキーで確定して入力できます。
 [F5]に続けて文字の入力を続けると、候補が絞り込まれていきます。