Keyboard Maestroのアクション タイムアウト設定方法で、マクロの継続・停止をコントロールする

Keyboard Maestroでマクロを作っていく中で、条件分岐や複雑なことをしようとすると、マクロが途中で動かなることがあります。
原因としては、途中のアクションがうまく発火せずにその場で止まったままマクロが停止してしまっていることが挙げられます。
ちゃんとタイムアウトを設定していると、途中でアクションが停止してしまっても、継続してとりあえず最後までマクロを実行するようにしたり、逆に問題がある場合は途中でマクロを停止するようにコントロールできます。
アクションのタイムアウト設定
Keyboard Maestroのアクション右上にある歯車アイコンをクリックすると、コンテクストメニュー内に[Set Action Timeout…]項目があります(アクションによってはない場合もあります)。
これをクリックするとタイムアウトの設定ができます。

| 設定項目 | 内容 |
|---|---|
| These actions will timeout after | アクション開始からタイムアウトまでの時間 |
| Abort macro after timeout | タイムアウト後にマクロを中止するかどうか |
| Notify after timeout | タイムアウト後に通知を出すかどうか |
ちなみに、「Abort macro after timeout」の設定は、歯車アイコンをクリックしたあとの[Timeout Aborts Macro]をクリックするだけで切り替えられますし、「Notify after timeout」は[Notify on Timeout]をクリックで切り替えられます。
時間の単位
タイムアウトの時間設定に使える単位は下記の通りです。
| 単位 | 説明 |
|---|---|
| Hundredths | 100分の1秒 0.5秒を設定したい場合は50 Hundredthsと設定する |
| Seconds | 秒指定 |
| Minutes | 分指定 |
| Hours | 時間指定 |
コードに慣れている人だとms(1000分の1秒)の方が馴染みがありますが、Keyboard Maestroの最小単位はHundredthsです。
具体的な利用シーン
具体的な利用シーンとして最近あったのは、「Cut to Named Clipboard」や「Copy to Named Clipboard」を使うときです。
アプリによってはテキストを選択していない状態だと「Cut」や「Copy」ができなくて、マクロが止まってしまいます。
下の画像は、「テキストを選択していない場合はカギ括弧を入力して左矢印を入力、テキストを選択している場合はテキストをカギ括弧で挟んでペーストするマクロ」です。

「テキストを選択しているかどうか」をテキストのカットで判定していますが、途中で止まってしまっては意味がないので、「Cut to Named Clipboard」のタイムアウト設定で、0.5秒経っても実行されない場合は「テキストを選択していない」と判断して、次の処理へ進むようにしています。

Google関連サービスをすばやく確実に変換するための単語登録サンプル
macOSのシステム環境設定「通知」の設定見直し
Alfredと1Password 8を連携するWorkflowの設定方法
ATOKで簡単に今日の日付を入力する方法
Macログイン時に自動起動するアプリの管理方法
単語登録はルールをキッチリ決めるよりも、とにかく登録・改善を繰り返した方が良さそう
1Passwordでパスワード以外に管理しておくと便利な情報
Drive File Streamの中にあるフォルダを登録して、Alfredから検索結果に表示する方法
BetterTouchToolのウインドウスナップ機能とBetterSnapToolの細かい違い
テキストエディタのAtomをインストールしたら最低限設定しておきたいアレコレ
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Macで複数ディスプレイを使っている場合に便利な設定集
AppCleanerでMacアプリを関連ファイルごと完全に削除する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理
GitHubの通知を見逃さない!通知に特化したアプリ「Gitify」
Keyboard Maestroの変数基礎
Neovimを使い始める最初の一歩として便利な「LazyVim」
ウェブサイトをmacOSアプリとしてラッピングする「Unite Pro」
Keyboard Maestroの「Macro Debugger」で複雑なマクロのデバッグを行う方法
無料版でも高機能なランチャーアプリ「Raycast」の基本機能と環境設定