Illustrator Extenion IllustratorEventManager
Illustrator用Extension作ってみました。
Photoshopにはスクリプトイベントマネージャーというスクリプトがデフォルトで入っています。Photoshopのイベント機能を使ってユーザーがイベントに応じてアクション、スクリプトの発火をUI上で操作できるものです。詳しくはこちら
それでこの機能をIllustratorにあったらと思ってまんまそのままIllustratorのExtensionで作りました。
** 2022年 3月15日追記 **
イベントのバグを修正したバージョン0.9.1を公開。
インストールのやり方
今回のExtensionはAdobeのプラグインAIHostAdapterを使っています。AdobeCEPのGitHubから手に入ります。ダウンロードをしたらaipファイルをAdobe Illustratorのアプリケーションフォルダのプラグインフォルダーに入れてください。Macの場合はアプリケーション->Illustrator->プラグインフォルダー、WindowsのPC->ProgramFiles->Adobe->Illustrator->プラグインフォルダーです。その後はいつもの通りzxpファイルをインストールしてください。
使い方
使い方はPhotoshopのスクリプトイベントマネージャーとほとんど一緒です。イベントと発火時に実行するアクション、もしくはスクリプトを選んで登録します。dispatchチェックボタンを押すとイベントの監視が始まリます。
その他本家イベントマネージャーと違うところ。
まずプリセットの保存ができます。saveボタンを押すとプリセットの保存ができます。保存したプリセットは再度Extensionを立ち上げた時にloadボタンを押して読み込みができます。またdispatchチェックボタンを押すまでイベントの発火は起きませんが押した後はExtensionを閉じても監視が続きます。パネルの表示が邪魔な時はdispatchチェックボタンを押した後にパネルを閉じてください。逆にこのボタンをオフにしないとパネルを閉じても監視は続きます。イベントの種類に関してはcs_host_adapter-2.0.jsのコードから確認できます。英語及びコード内のコメントを読むのが苦手な方向けに記事の最後に主要な一部のイベントのみ説明します。
ダウンロード
AIHostAdapterプラグインが手に入ったら下のリンクからダウンロードしてください。もしくはGitHubでソースコードも公開しています。
** バージョン0.9.0 **
旧バージョンは以下。イベントのバグがあったので使用は勧めませんが。
IllustratorEventManager 0.9.0
** バージョン0.9.1 **
イベント発火後のscript,action動作中にイベントを感知するバグがあったので直しました。0.9.1バージョンです.
その他イベントを検索するテキストボックスを追加しました。
IllustratorEventManager 0.9.1
注意事項
またこのExtensionはプラグインAIHostAdapterの上で動いています。つまりこのプラグインがIllustratorのバージョンアップなどで動かなくなるとこのExtensionも動かなくなる可能性があります。ただこのプラグインが動かなくなっても同じようなプラグインがten-A氏によって開発、ソースコードが公開されているのでその時はこちらのコードからプラグインを作るか、対応するかその時に検討します。
またイベントの種類がかなりの数になるので全てのイベントの動作を調べていません。なのでイベントの種類によっては動作が安定しない可能性があります。不安が残っているのでバージョンは0.9としています。
主要なイベントリスト
-
AI Art Selection Changed Notifier
ドキュメント上で選択しているアイテムの対象が変わったり修正されたりすると発火します。
-
AI Current Font Size Changed Notifier
フォントサイズが変わった時に発火します。
-
AI Document Opened Notifier
ドキュメントが開かれる時に発火。
-
AI Document About To Close Notifier
ドキュメントが閉じられる時に発火します。(AI Document Closed Notifierは何故かドキュメントが開かれた時にも発火した。)
-
AI Document Saved Notifier
ドキュメントを保存する時に発火します。
-
AI Layer Set Notifier
レイヤーが削除されたり新しいレイヤーが追加されたり階層が入れ替えられたりすると発火します。
-
AI Command Notifier: Before Paste , AI Command Notifier: After Paste
ドキュメント上にアイテムがペーストされた時に発火。
-
AI Command Notifier: Before Undo , AI Command Notifier: After Undo
アンドゥ(取り消し)作業が行われる時に発火。