最終更新日:2012/08/26
ToolbarAppleScript - アプリケーションのウインドウのツールバーにAppleScriptを実行できるボタンを追加するSIMBLプラグイン
ToolbarAppleScriptとは
ウインドウのツールバーにAppleScriptを実行できるボタンを追加するSIMBLプラグインです。AppleScriptは通常スクリプトメニュー等のメニューバーやホットキーで実行すると思いますが、ウインドウのツールバーに置けたらアプリケーションにもともとその機能があるようになってより手軽に実行できるようになるのではないか、ということで作ってみました。
サンドボック対応のアプリケーションでは動かないと思います。
スクリーンショット
動作確認アプリケーションリスト
- Safari @ 10.6.8
- Safari @ 10.8
- AppleScript エディタ @ 10.6.8
- AppleScript エディタ @ 10.8
- Evernote @ 10.6.8
- Evernote @ 10.8 (AppStoreで配布されているサンドボックス対応版では動きません。∞labs · Afloat同梱のSIMBLで動作確認。EasySIMBL1.2ではプラグインが読み込まれずに動きませんでした。)
- 辞書 @ 10.6.8
- 辞書 @ 10.8
開発環境
Mac OS X 10.6.8
動作環境
10.6以降が必要です。
10.6.8で主に使用しています。10.8はちょっと確認だけです。
10.7以降でも動く物は動くと思いますが、サンドボックス対応のアプリケーションでは任意のファイルが読めないと思うのでスクリプトを読み込めなくて、たぶん動きません。
使い方
- ToolbarAppleScript.bundleをSIMBLの指定フォルダに入れます
- ツールバーに置きたいAppleScriptは.scptファイルで保存してスクリプトフォルダに置きます。スクリプトメニューで表示するAppleScriptを保存するフォルダと同じで
~/Library/Scripts/Applications/AppName/
になります。サブフォルダは調べないので注意して下さい。
- ツールバーに置きたいAppleScriptのファイルのスポットライトコメントにボタンの名前等を指定することによりツールバーに登録できるようになります。追加したいファイルのスポットライトコメントに追加して下さい。追加する文字列の書式はツールバーボタンの属性を設定するを見て下さい
- スクリプトファイル以外のアプリケーションやフォルダ等もスポットライトコメントを付けて登録できます。それらのファイルが登録された場合はボタンクリック時に実行したり開いたりします。
- 上記の設定が終わってからアプリケーションを起動します。ツールバーに登録できるスクリプトはアプリケーションの起動時にのみ調べますので、起動後にスポットライトコメントを付けても認識されません。
- アプリケーション起動直後はSIMBLプラグインが読み込まれないので、ツールバーに追加されません。ウインドウを開き直して下さい。また、この作業を自動的に行う為の仕組みもあります。ToolbarAppleScriptがアプリケーションにロードされて、ツールバーに登録するスクリプトがある場合にRunAfterLoadToolbarAppleScript.scptが実行されます。このスクリプトでウインドウを閉じて開き直すことにより、ToolbarAppleScriptが適用されたウインドウを起動直後に自動的に表示できるようになります。
- スクリプトのボタンをツールバーに登録するにはツールバーのカスタマイズから行います。ここまでの作業がうまくいっていると、ツールバーのボタン一覧の中にスクリプトのボタンがあるはずです。これを通常のボタンと同じようにツールバーにドラッグして追加して完了です。
- ツールバーにスクリプトのボタンを追加した後に、アプリケーションを終了して、再度起動した場合も起動直後はToolbarAppleScriptが読み込まれてないのでボタンは表示されません。ウインドウを閉じて開き直すか、RunAfterLoadToolbarAppleScript.scptを使って自動化して下さい。
未対応アプリケーション
- ToolbarAppleScript読み込み後にツールバーがあるウインドウを作り直せないアプリケーションでは動きません。ウインドウ閉じて、開き直した時に、ウインドウを隠して、再度表示しているアプリケーションも該当します。シングルウインドウのアプリケーションに多いと思います。例:夜フクロウ
使用上の注意
- ファイル名がツールバーのIDになるので、ファイル名を変更するとツールバーから消えて、再度ツールバーに登録する必要があります。
- ファイル名を変更してツールバーからボタンが無くなった場合、あるはずのボタンが無いので、ツールバーの動作が変になる場合があります(ドラッグして登録時に)。変になった場合はデフォルトツールバーを登録して、ツールバーを初期化して再度カスタマイズして下さい。
- 標準ではツールバーをカスタマイズできないアプリケーションもボタンを追加できるようにカスタマイズできるようにしますが、標準ではカスタマイズできないので変にカスタマイズすると不具合が出るかもしれません。
- 対応しているツールバーはシステム標準のものだけです。
- このプラグインはすべてのアプリケーションの起動時にツールバーに登録するスクリプトが無いか調べて、ある場合のみメソッドを書き換えてツールバーに登録できるようにします。
- Safariのコンパクトなツールバーにアイコンにしたボタンを追加するとツールバーの高さが高くなります。
ファイルのスポットライトコメントにボタンの情報を書くことにより、ツールバーに登録できるようになります。
基本的な書式は次の通りになります。
<TAS|ボタンの下に表示されるボタンの説明のテキスト|ボタンの中に表示されるテキスト>
<TAS|ボタンの下に表示されるボタンの説明のテキスト|ボタンの中に表示されるテキスト|ボタンの横幅(ピクセル)>
基本的な例:<TAS|Block JavaScript|✘>
ボタンの幅有りの例:<TAS|Block JavaScript|Block|40>
アイコンの例:<TAS|Block JavaScript|icon>
書き方のルール
- <>で囲みます
- 複数の値は|で区切ります
- TASはToobarAppleScriptで使用するという意味のマークで固定です。TASの代わりに長いToolbarAppleScriptを使用することもできます。
- 「ボタンの中に表示されるテキスト」をiconにするとボタンがファイルのアイコンになります
- ボタンの横幅はオプションで省略できます。テキストがはみ出る場合に値を指定して調整して下さい。
スクリーンショット
- 基本

- アイコンを設定するもの(左)と、ボタンの幅を指定するもの(右)

~/Library/Scripts/Applications/ToolbarAppleScript/RunAfterLoadToolbarAppleScript.scpt
があると、ToobarAppleScriptに登録するスクリプトがある場合、実行されます。
ToolbarAppleScriptがロードされたアプリケーションの情報が渡されますので、それを参考にしてウインドウを開き直す等して下さい。
同梱の物は10.7以降のアプリケーションの状態を復元する機能に付いては考慮していないので、不具合があったら直して下さい。
Tips
- ユニコードには記号がいろいろあるので、それをボタンの中の文字に使うと便利です。
コメント
1.0.0
RunAfterLoadToolbarAppleScriptなどちょっとめんどくさい部分もありますが、ツールバーに登録できたらAppleScriptが手軽に実行できるようになって、これはいいんじゃなかと思ってます。
サンドボックスがあると動かない感じだったので最新OSでは出番が少なそうですけど…。
ダウンロード
- ToolbarAppleScript1.0.0.zip
- ・できたて