見出し画像

前面にあるAdobeアプリを自動で動かす Keyboard Maestro 用追加アクション

Keyboard MaestroでIllustratorなどAdobeアプリをカスタマイズする方が増えてきました。ただ現状ではうまく動かすためにシェルスクリプトやJavaScriptの知識を使ったり,Keyboard Maestroの仕様を探ったりする必要があります。

例えばIllustratorのアクションを実行するには,次のようなスクリプトを書き,それを実行します。

app.doScript('アクション名', 'セット名') ;
tell application "Adobe Illustrator" to do script "アクション名" from "セット名"

ここまでは簡単です。しかしこれは,Illustratorが複数バージョン起動していると意図しない方に処理が飛んでしまう問題が出てきます。似たような状況での解決策は,三階ラボ みやざわさん が公開してくれました。最前面の Illustrator でスクリプトを実行する Keyboard Maestro マクロ|Seiji Miyazawa|note

読んだ方はわかると思いますが,これは結構難しいですよね。説明するのもかなり大変だったと思います。上記問題を解決すると,今度は「整列をアクションで実行すると選択が外れてしまい,連続で実行できない」などといったトラブルに見舞われます。もう心が折れてしまいますね。

こんな状況なので,事前の知識や難しい環境構築があまりないものがほしくなりました。今回紹介するのは,スクリプトやアクション・整列の実行など定番の動作を,事前の知識少なめでもうまいこと実行してくれるKeyboard Maestro用追加アクション(プラグイン)MaestroPackです。


Illustratorでスクリプトファイルを実行するアクションを無料で公開します

サンプルアクションを使ってご自身の環境で動くかどうかお試しできます(このアクションはmacOS 10.14 Mojave,10.15 Catalina,11.2 Big Surで動作することを確認済みです)。問題なければぜひ別のものもご購入ください。
Ai Execute Script File をダウンロード
サンプルマクロ・動作確認用スクリプトをダウンロード

動作環境

macOSに対応(macOS 10.14/10.15(Intel),11.7(Apple Silicon)で動作を確認)
Keyboard Maestro 9以上に対応(Keyboard Maestro 9で動作を確認

Illustrator:CS6,2015.3〜2023(ただし2021(25.1)を除く)に対応(CS6,2015.3〜2023で動作確認)
InDesign:2018〜2023に対応(2018〜2023で動作確認。それ以前は未確認ですが動く可能性はあります)
Photoshop:2018〜2023に対応(2018〜2023で動作確認。それ以前は未確認ですが動く可能性はあります)

使いかた

Ai Execute Script File.zipなど個々のアクションのzipファイルを,展開せずにKeyboard Maestroにドロップすると自動的にインストールされます。ポン! とエラーが起こったときのような音が出ますが,それが成功の合図です。

もしくは「Third Party Plug Insを管理する Keyboard Maestro 用マクロ」をご利用ください。無料です。

インストールしたアクションはThird Party Plug Insカテゴリに入るので,通常のアクションと同じように使いたいものをそこから引き出してください。

画像23

アクションは,それぞれ起動中の対象アプリケーションの中で一番最近使ったバージョンをターゲットに実行します。履歴を10件分遡るので,必ずしも最前面でなくて構いません。



Keyboard Maestro用追加アクション(Third Party Plug Ins)の作成やアンインストールについてはKeyboard MaestroのThird Party Plug Insの作り方 | Webrandum が参考になります。

Ai Activate Layer(特定の名前のレイヤーをアクティブにする|Illustrator)

指定したレイヤーをレイヤーパネルで選択した状態(アクティブ)にします。

Ai Adjacent Move or Duplicate(選択アイテムを隣接移動・複製する|Illustrator)

Illustratorで選択しているアイテムを,隣に移動または複製します。移動方向や,グループとして扱うか個別に動かすかなどの設定を変更できます。

Ai Align or Distribute(整列・分布を実行する|Illustrator)

指定した種類の整列または分布を実行します。

Ai Appearance Free Distort(パスの自由変形アピアランスを数値で操る |Illustrator)

選択しているアイテムに指定した数値でパスの自由変形効果をかけます。

Ai Appearance Panel Action(アピアランスパネルのメニューを実行する|Illustrator)

[アピアランスを消去]など,アピアランスパネルのメニューを実行します。

Ai Apply Appearance Text(アピアランスをXMLコードで適用する|Illustrator)

特定の形式のXMLコードを渡すと,XMLで指定した通りにアピアランスを適用します。

Ai Apply Style by Grep(正規表現にマッチした部分にスタイルを適用する|Illustrator)

正規表現にマッチしたテキストすべてに,指定した名前のスタイルを適用します。段落スタイル・文字スタイルのどちらかを選べます。

Ai Are Links Active(画像のリンク切れを確認する|Illustrator)

Ai Blend Add Steps(ブレンドのステップ数を増やす・減らす|Illustrator)

Illustratorで選択したブレンドのステップ数を,あらかじめ指定した整数分だけ増減します。

Ai Blend Make(ステップ数を指定してブレンドを作る|Illustrator)

Illustratorで選択しているアイテムをもとに,ブレンドを生成します。ステップ数と方向を指定可能です。

Ai Compound Shape(複合シェイプの項目・メニューを実行する|Illustrator)

[前面オブジェクトで型抜き][複合シェイプを解除]など,指定した複合シェイプの項目・パネルメニューを実行します。

Ai Do Action(指定した名前のアクションを実行する|Illustrator)

セット名とアクション名を指定し,Illustratorアクションを実行します。

Ai Do Action Text(アクションのソースコードを実行する|Illustrator)

アクションファイル(aia)のテキストをIllustratorアクションとして実行します。

Ai Execute Jsx Text(ExtendScriptのソースコードを実行する|Illustrator)

IllustratorでExtendScript(JavaScript)のソースコードのテキストを実行します。

Ai Load Action Files(aiaアクションファイルを一気に読み込む|Illustrator)

改行区切りのテキストで対象のアクションファイルを指定し,それをIllustratorで一括で読み込みます。同名アクションセットがあるとき,置換するか置換せず追加で読むかを指定できます。

Ai Lock or Unlock Layer(レイヤーのロック状態を変更する|Illustrator)

Illustratorでレイヤーのロック状態を切り替えます。交互に切り替え・常にロック・常にロック解除の3つから動作を指定できます。

Ai Execute Script File(スクリプトファイルを実行する|Illustrator)

スクリプトファイルのパスを渡すと,拡張子js/jsx/jsxbinのExtendScript,scpt/scptd/app/applescriptのAppleScript・JXAファイルを実行します。

Ai Move Active Layer(選択しているレイヤーをパネル上で移動する |Illustrator)

選択している(アクティブな)レイヤーの重なり順,または階層を変更します。

Ai Pathfinder(パスファインダーを実行する|Illustrator)

[分割]などパスファインダーの項目を実行します。設定により,実行後できたグループを自動で解除することもできます。

Ai Replace or Duplicate Items(選択アイテムをキーオブジェクトで置換する |Illustrator)

選択したアイテムを整列のキーオブジェクトで一気に差し替えます。選択アイテムを削除しない設定にすると,アイテムの位置にキーオブジェクトを複製する機能になります。位置合わせ基準点の指定により,センター基準で置換する,あるいは左上基準にする,さらにそこから一定距離ずらすなど細かい制御が可能です。

Ai Select Text Frames by Grep(正規表現にマッチしたテキストフレームを選択する|Illustrator)

正規表現にマッチしたテキストフレームをすべて選択します。正規表現が使えると,特定の記号から始まるテキストフレーム・奇数の数字で終わるテキストフレームといったあいまいなパターンを検索できて便利です。

Ai Select Text Range by Grep(正規表現にマッチした文字部分を選択する|Illustrator)

正規表現にマッチした文字部分(Text Range)をすべて選択します。選択するのはテキストフレーム自体でなく中身の文字です。実行後はその部分のフォントを手動で変えたり,水平・垂直比率を指定するといった操作を続けられます。

Ai Set Area Type Auto Size(エリア内文字の自動サイズ調整をON/OFFする |Illustrator)

Illustratorで選択しているエリア内文字の自動サイズ調整をONまたはOFFにします。


Ai Set Area Type Frame Alignment(エリア内文字の「配置」を変更する |Illustrator)

Illustratorで選択しているエリア内文字の「テキストの配置」を変更します。先頭揃え・中央揃え・末尾揃え・均等配置の4つから選択可能です。

Ai Set Area Type Frame Size(エリア内文字の幅・高さをセットする |Illustrator)

Illustratorで選択しているエリア内文字の幅・高さを,指定した値に変更します。変形は,変形パネルやプロパティパネルなどの基準点をもとに行います。

Ai Set Area Type Inset Spacing(エリア内文字の外枠からの間隔をセットする |Illustrator)

Illustratorで選択しているエリア内文字の外枠からの間隔をセットします。

Ai Set Model of Color Panel(カラーパネルのモデルを切り替える |Illustrator)

Illustratorで,カラーパネルの色モデルを指定した項目に変更します。グレースケール・RGB・HSB・CMYKの4つから選択可能です。

Ai Set Preview Bounds(プレビュー境界を使用をON/OFFする|Illustrator)

プレビュー境界を使用をONまたはOFFにします。チェックを入れて実行するとON,外して実行するとOFFです。

Ai Set Reference Point(変形基準点を変更する|Illustrator)

変形パネルなどにある基準点を変更します。「Top Left」のような形式で結果を返し,それをKeyboard Maestroで通知したり変数にセットしたりできます。実行しただけだと変更が目立たないので,Display results brieflyにして通知するとわかりやすいです。

Ai Set Scale Corners(角を拡大・縮小をON/OFF|Illustrator)

角を拡大・縮小をONまたはOFFにします。チェックを入れて実行するとON,外して実行するとOFFです。パスを拡大・縮小するときライブコーナーの角を連動して変形するかしないかを制御します。

Ai Set Scale Strokes and Effects(線幅と効果を拡大・縮小をON/OFF|Illustrator)

線幅と効果を拡大・縮小をONまたはOFFにします。チェックを入れて実行するとON,外して実行するとOFFです。オブジェクトを拡大・縮小するとき線幅と効果を連動して変形するかしないかを制御します。

Ai Set Stroke Cap(パスの線端の形状を変更する|Illustrator)

選択したパスの線端を,指定した種類に変更します。OnegaiSDK がインストールしてある場合,アピアランスで追加した複数の線にも変更を適用できます。

Ai Set Units(単位の環境設定をセットする|Illustrator)

一般・線・文字・行送りの単位と,矢印キー入力の移動量・角丸の半径・サイズ/行送り増減量・ベースラインシフト増減量を指定して環境設定を変更します。

Ai Show or Hide Center Point(中心点の表示状態を変更する|Illustrator)

Illustratorで選択したアイテムの中心点の表示状態を切り替えます。表示する・隠すの2つから動作を指定できます。

Ai Show or Hide Layer(レイヤーの表示状態を変更する|Illustrator)

Illustratorでレイヤーの表示状態を切り替えます。交互に切り替え・常に表示する・常に隠すの3つから動作を指定できます。

Ai Transform Each(個別に変形を実行する|Illustrator)

Illustratorで選択しているアイテムに個別に変形を適用します。Illustratorの同機能で設定できる項目を,すべて指定可能です。

Id Execute Jsx Text(ExtendScriptのソースコードを実行する |InDesign)

InDesignでExtendScript(JavaScript)のソースコードのテキストを実行します。

Id Execute Script File(スクリプトファイルを実行する|InDesign)

スクリプトファイルのパスを渡すと,拡張子js/jsx/jsxbinのExtendScript,scpt/scptd/app/applescriptのAppleScript・JXAファイルをInDesignで実行します。

Ps Execute JSON Text(アクションコマンドのJSONを実行する|Photoshop)

Photoshopにて,プラグイン > 開発 > アクションコマンドを記録… で記録したJSONをテキストとして指定し,実行します。かつてScriptingListenerプラグインでしていたような自動化をより簡潔に実現できます。

Ps Do Action(指定した名前のアクションを実行する|Photoshop)

セット名とアクション名を指定し,Photoshopアクションを実行します。通常はアクションを実行するのにJavaScriptかAppleScriptを書く必要がありますが,こちらは単に名前を2つ入力するだけです。実行後はUndo 1回でアクション全体を元に戻せます。

Ps Execute Jsx Text(ExtendScriptのソースコードを実行する|Photoshop)

PhotoshopでExtendScript(JavaScript)のソースコードのテキストを実行します。通常はAppleScript経由でJavaScriptを実行するなどの遠回りが必要でした。こちらは入力欄にJavaScriptを書き込むだけです。引数を指定でき,スクリプト側ではargumentsでそれを受け取れます。Argumentsに用がないときは,空白でも何か文字を入れておいても問題ありません。

Ps Execute Script File(スクリプトファイルを実行する|Photoshop)

スクリプトファイルのパスを渡すと,拡張子js/jsx/jsxbinのExtendScript,scpt/scptd/app/applescriptのAppleScript・JXAファイルをPhotoshopで実行します。渡す引数を指定でき,スクリプト側でそれを受け取れます。Argumentsに用がないときは,空白でも何か文字を入れておいても問題ありません。

Ps Load Action Files(atnアクションファイルを一気に読み込む|Photoshop)

改行区切りのテキストで対象のアクションファイルを指定し,それをPhotoshopで一括で読み込みます。同名アクションセットがあるとき,置換するか置換せず追加で読むかを指定できます。

謝辞

DTP Transit 鷹野さん に追加アクションのテストやアドバイスをしていただきました。ありがとうございます。Keyboard Maestroの知識をしっかり身につけたい方は,鷹野さんの『Extreme Illustrator』 世界一速いIllustrator、そのカスタマイズ方法 がおすすめです。

買う

アクション1つだけを単品で買いたい場合は,各単品記事をご購入ください。

すべてのアクションをまとめてほしい場合は,マガジン[MaestroPack]またはこの記事をご購入ください。下のリンクからすべてダウンロードできます。

ここから先は

14字
この記事のみ ¥ 1,380

この記事が気に入ったらサポートをしてみませんか?