見出し画像

Keyboard Maestroでマクロのオン/オフをショートカットキーで切り替える

前回、Illustratorの「プレビュー」チェックを自動で入れるマクロを作成したのですが、このマクロは完全に自動的に発火するマクロです。
完全自動発火のマクロの良いところは「ショートカットキーを覚えなくていい」という所だと思っているので、僕はある程度条件が揃っている事に関しては完全に自動化するべきだと考えています。

しかしそれでもIllustratorは結構重いアプリケーションですし、重い時に自動で「プレビュー」をチェックしてしまい固まってしまった。なんて事が起きると困ります。
かと言って、Illustratorが重い時にわざわざKeyboard Maestroを起動して、該当のマクロを探して無効化するというのは面倒です。
そこで今回はショートカットキーでマクロのオン/オフを切り替えるマクロを作ってみましょう。

今回作成するマクロ

作成するマクロは、Keyboard Maestroのマクロをショートカットキーでオン/オフ切り替えを行ってくれるというものです。
今回は、前回作成した「Illustratorの「プレビュー」チェックを自動で入れるマクロ」を対象に考えます。

ショートカットキーは何でもいいのですが、今回はOption + Aに設定しようと思います。
そして、マクロの状態を切り替えた後には、切り替えたことが分かるようにmacの右上に通知を流すようにしましょう。そうしなければ意図せずショートカットキーを押した際に、設定が切り替わった事に気が付かない可能性があります。

そして、この通知は今がオンの状態なにかオフの状態なのかも知らせるようにしましょう。
そうしなければ「あれ?いまオンになったっけ?オフになったけ?」と迷いが発生してしまい、実際にそのマクロを試すかKeyboard Maestroを起ち上げる必要が出てきてしまうからです。

今回のマクロをまとめてみると以下のようになります。

どんな状況で→Illustratorがアクティブな時
何をしたら→Option + Aをクリックしたら
どうなる→該当マクロがオンの場合はオフに、オフの場合はオンに切り替えて、通知も送る

それでは作ってみましょう。

1.グループの作成

まずはマクロを保存するグループの作成から。
マクロにもよりますが、今回はIllustratorのマクロなので、Illustrator起動時のみ発火するようにしましょう。

グループの新規作成後「Available in all applications(全てのアプリケーションで実行)」をクリックして「Available in these applications(特定のアプリケーションで実行)」に変更します。
変更すると緑色のプラスボタンが表示されるので、それをクリックし、Adobe Illustratorを選択します。

これで『どんな状況で→Illustratorがアクティブな時』はクリアですね。

2.マクロのトリガー設定

次にグループ内にマクロを作成して、トリガーの設定をします。

マクロの名前の下にある「New Trigger」と書かれた緑のプラスボタンをクリックして「Hot Key Trigger」を選択。
Option + Aをショートカットキーに設定しましょう。

これで『何をしたら→Option + Aをクリックしたら』の部分もクリアです。

3-1.マクロのアクション設定(条件分岐の設定)

今回も条件分岐を使用します。
単純にマクロをオンにするだけ、オフにするだけなら必要無いですが、今回はオン/オフを切り替える必要があります。
該当マクロがオンの時はオフにして、オフの時にオンにしたいので、マクロの状態を条件に設定し、true(オンの時)にオフにするアクション、false(オフの時)にオンにするアクションを設定するという流れです。

まずは「If Then Else」アクションをマクロに登録しましょう。
「New Condition」と書かれている緑のプラスボタンをクリックして「Macro/Macro Group Condition」を選択します。

これでマクロの現在の状態を条件にする事が出来ます。
「Macro/Macro Group Condition」で必要となる設定項目は「どのマクロが」「どんな状態」の2つです。

まずはどのマクロかの設定をしましょう。If Then Elseアクションの「The macro:」の下をクリックすると、Keyboard Maestro内に登録されているマクロが表示されるので、その中から「Illustratorのプレビューチェックを自動で入れるマクロ」を選択します。
これでマクロの選択はできました。

次にその下にある「is enabled」は今回はデフォルトの設定のままでOKです。ちなみに、ここでマクロの状態を設定するのですが設定項目は下記の4つです。
・is enabled → 有効
・is disabled → 無効
・is active → 実行中
・is inactive → 実行されていない
「enabled」と「disabled」、「active」と「inactive」は単純にtrueとfalseが入れ替わるだけですね。

これで条件分岐の設定は出来ました。

3-2.マクロのアクション設定(マクロの状態変更)

マクロの状態変更には「Set Macro or Group Enable」を使用します。
まずは「true」の方にマクロをセットしましょう。

trueは「オンの時」なのでマクロはオフにしたいですよね。
ですから、「Enable(有効)」ではなく「Disable(無効)」を選択して該当のマクロを選択します。

次に「false」方にも同様にマクロをセットして、
falseは「オフの時」なのでマクロはオンにしたいから「Enable」と該当のマクロを選択します。

これで、マクロの状態変更は完了しました。
ちなみに、「Enable」と「Disable」以外に「Toggle」という項目がありますが、これを使えば今回実現しようとしている「オンの時はオフ、オフの時はオン」がアクション1つで実現できるのですが、その代りにマクロの状態に応じて通知を変えるという事が出来ません。

通知は必要ない場合はこちらのToggleを使用すればIf Then Elseも必要ありませんし、1つのアクションで済むので、それでも良い方はそちらを使用してみてください。

3-3.マクロのアクション設定(通知設定)

最後に通知設定です。
Keyboard Maestroでは通知の設定まで出来てしまうのです。
「Notification」というアクションを、「Set Macro or Group Enable」アクションの下にセットしましょう。

Titleに「%ExecutingMacro%」と既に設定されていますが、これがそのままマクロの名前に変換されます。
マクロの名前を「マクロのオンオフ切り替え」とした場合、通知のタイトルも「マクロのオンオフ切り替え」となりますし、「%ExecutingMacro%が実行されました」としておくと「マクロのオンオフ切り替えが実行されました」となります。
今回はそのままにしておきます。

Subtitleにはオンにしたのかオフにしたのかを設定しておきましょう。僕の場合は下記のように設定しています。
trueの場合:【OFF】自動チェックをオフにしました
falseの場合:【ON】自動チェックをオンにしました

最後にMessageですが、僕の場合は特に何も設定していません。何かメッセージを入れたい方は設定してみてください。

これでマクロは完成です。
Illustratorで実行して試してみて下さい。きちんと通知が出てきて、マクロのオンオフが切り替わっているはずです。

まとめ

今回はマクロをより使いやすくするためにif文を使って最後に通知を呼び出したりしましたが、これはマクロを作る上で結構大切な事です。
ただ簡略化するだけでなく、使いやすくする。後で自分が混乱しないように予め何かしらの設定をしておく。こうした事を意識するだけでアタフタする時間は減っていきます。

通知はその1つの方法です。勿論頻繁に使うマクロに通知を入れていては、通知の数が増えてただ鬱陶しいだけになってしまいますが、今回のようにたまに使うかもしれないマクロに対しては、誤って発火した時のために通知を入れておく事をオススメします。
また、Messageに注意事項を書いておくのも良いかもしれません。

是非お試し下さい。

兵庫のWeb制作会社で働くWebデザイナーです。noteでは作業効率化をメインに取り扱っていきます。