右側の修飾キーをフル活用!Karabiner-ElementsでKeyboard Maestroのマクロを発火させる方法

Keyboard Maestroでショートカットキーを設定すると、修飾キーは左右どちらも反応してしまいます。
しかしKarabiner-Elementsだと、left_commandかright_commandどちらか一方でしか反応しないショートカットキーを作れます。
この特徴を利用して、今回はKarabiner-ElementsからKeyboard Maestroのマクロを発火させる方法をまとめておきます。
うまく利用すれば、あまり使わない右側の修飾キーをフル活用できます。
Keyboard Maestroの設定
まずはKeyboard Maestroで、発火させる用のマクロを作ります。
トリガー設定の「New Trigger」の下にある「Or by script」をクリックして「Or by Shell script」に変更します。

するとShellScriptのコードが表示されます。
このShellScriptを実行すれば、マクロが発火されるので、あとはKarabiner-ElementsでShellScriptが実行されるように設定しましょう。
Karabiner-Elementsの設定
Karabiner-Elementsを自分で設定する場合はJSONを書く必要がありますが、ほとんどコピペで問題ありません。
下記パスに新規JSONファイルkm.jsonを作成します。
~/.config/karabiner/assets/complex_modifications/作成したJSONファイルの内容は下記の通りです。
{
"title": "Run Keyboard Maestro Macro",
"rules": [
{
"description": "Run Keyboard Maestro Macro",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "N",
"modifiers": {
"mandatory": [
"right_command"
],
"optional": [
"any"
]
}
},
"to": [
{
"shell_command": osascript -e 'tell application "Keyboard Maestro Engine" to do script "23F62CCB-AB7E-4378-BB3A-66972D3ECC67"'
}
]
}
]
}
]
}そして、ショートカットキーとAppleScriptの設定を書きかえます。
| 項目 | 内容 |
|---|---|
| key_code | 入力するキーの種類 |
| mandatory | 一緒に入力する修飾キーの種類 |
| shell_command | AppleScriptのコマンド |
key_codeとmandatoryの入力
key_codeとmandatoryに関してはKarabiner-EventViewerを使って調べます。

Karabiner-EventViewerを起動してキーボードを押すと、押したキーと離れたキーの情報が表示されます。あとは該当のキーの「Name」の列をコピーしてJSONに書きかえます。
shell_command
shell_commandに関してはKeyboard MaestroのShellScriptコードをペーストします。
ちなみに、#のあとはコメントなので、最初の行だけペーストすればOKです。

そして少しややこしいのですが、下記の調整をします。
- もともとあったダブルクオーテーション(
")の前にバックスラッシュ(\)を入力します - 入力したら、コマンド全体をダブルクオーテーションで囲みます
osascript -e 'tell application "Keyboard Maestro Engine" to do script "23F62CCB-AB7E-4378-BB3A-66972D3ECC67\"'上記のコードの場合は下記のようになります。
"osascript -e 'tell application \"Keyboard Maestro Engine\" to do script \"23F62CCB-AB7E-4378-BB3A-66972D3ECC67\"'"これでshell_commandの設定は完了です。
設定の反映
これでKarabiner-Elementsの設定ファイルの作成は完了したので、最後に設定を反映させます。
Karabiner-Elementsの[Complex modifications]にある「Add rule」から「Run Keyboard Maestro Macro」を「Enable」すれば設定完了です。

もし「Run Keyboard Maestro Macro」が見当たらなければ、Karabiner-Elementsを再起動するか、設定ファイルに問題があるので見直してみてください。
実際の利用シーン
このように、気軽にショートカットキーを変更できないので、全てのアプリケーションで使うようなグローバルなマクロをright_commandやright_shiftに設定しておくと良さそうです。
何より、left_commandやleft_shiftを押せば普通のショートカットキーが発火するので、ショートカットキーのバッティングが起こらないのが魅力的です。

テキストエディタのAtomをインストールしたら最低限設定しておきたいアレコレ
Karabiner-Elementsを使って、Finder上でReturnを押すとファイルを開くようにする
macOS Catalinaになってから追加されたシステム環境設定の「Apple ID」にある項目
1Passwordを便利に使うための小技や整理術!
ターミナルの$記号前の表示を自由にカスタマイズする
Keyboard Maestroを使ってDropboxの「同期の無視」を簡単にできるようにする
BetterTouchToolでウインドウをアクティブにしないで移動する方法
1Passwordでパスワード以外に管理しておくと便利な情報
Karabiner-Elementsでデザインツール(Photoshop・Sketch・Figma)のショートカットキーを設定する
anyenvを使ってプログラミング言語のバージョンをラクに管理する
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Bartender 6で追加されたWidgets機能で自作メニューバーアイテムを簡単に作成する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)
Obsidianを使った「自己流PKM」で行う知識トレーニング
テキストエディタ・ノートアプリ関連のショートカットキーをKeyboard Maestroで統一する
Path Finderを使ってキーボードだけでファイル操作する方法(応用編)
macOSのコマンドパレット比較!SpotlightとAlfred、Raycastどれを使えばいい?
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」