Keyboard Maestroでメニューコマンドが実行可能か、チェック済みかを判定する
この記事内の目次
たとえば、Illustratorの[表示]メニューの[オーバープリントプレビュー]は、クリックするごとにオンオフが切り替わる“トグル”になっています。
一方、[書式]メニューの[エリア内文字オプション…]は、エリア内文字を選択していなければ、ディム表示(薄いカラーでクリックできない状態)になっています。
Keyboard Maestroで、「Menu Condition」を使って上記を判定する方法が見つかりました。
メニューコマンドとの一致
ポップアップメニューから次の項目を選択できます。
項目 | 意味 |
---|---|
with this name | 名前が同一のとき |
with name containing | 名前を含むとき |
with name matching | 名前が一致するとき(正規表現) |
with path | メニュー |
with shortcut | キーボードショートカット |
「with path」
「with path」の場合には、次のように指定します。
Edit ➤ Speech ➤ Start Speaking
「➤」のほか、次の記号を使うことができますが、前後にスペースが必要です。
- >
- →
- ⇒
ヘルプでは次のページで記載されています。
メニューコマンドの状態
ポップアップメニューから次の項目を選択できます。
項目 | 意味 |
---|---|
exists | 存在するとき |
does not exist | 存在しないとき |
is enabled | 実行可能なとき |
is not enabled | 実行できないとき(ディム表示のとき) |
exists but is not enabled | 存在するけれど、実行不可能なとき |
is marked | チェック済みのとき |
is not marked | チェックされていない |
exists but is not marked | 存在するけれど、チェックされていないとき |
判定
「Menu Condition」の判定は、「If Then Else」アクションのほか、次のアクションでも利用できます。
- Pause Until
- Until
- While
例
[表示]メニューの[CPUで表示]/[GPUで表示]は、⌘ + Eキーでトグルします。
このような場合、Keyboard Maestroではコンフリクトしてしまうため、メニュー判定が有効です。
正規表現で判定する
「^(CPU|GPU) で表示」のように正規表現で記述することで、[CPU で表示]/[GPU で表示]のどちらでも対応できます。