Karabiner に登録されているカスタマイズを一時的に停止したい
Karabiner の設定を一時的に停止するための Keyboard Maestro マクロを準備してはかどるようにしました。
Karabiner の設定をスルーしたい時がある
Mac にはKarabiner-Elementsという、全てのキーボードユーザが利用すべきソフトウェアがあります。キーボードの配置やショートカットを自由自在に設定ができます。特に分離キーボード利用には必須です。なければ分離キーボードができません。
Keyboard Maestro のお陰でどんな状況にあっても Emacsキーバインドで日々過ごす事ができます。
どんな時も Karabiner が生きてしまう
とはいえ、アプリによってはショートカットの設定・定義をする場合に Karabiner-Elementsがジャマをする時があります。例えば 「⌃ + P」にカーソルの「↑」を設定しているとします。特定のアプリケーションにおいて、ショートカットを設定する時に「⌃ + P」を押下すると「↑」で登録されてしまいます。
常に Karabiner-Elements の設定が生きている状態であれば問題ないのですが、わたしの環境ではIME の状態によって「↑」が発行されない場合もありますし、Karabiner-Elementsの影響を受けないアプリでは「⌃ + P」を定義しなければならない場合もあります。
Karabiner-Elements を停止する
こんなときは大概Karabinerを停止して、キーの設定を行ってからまた起動させます。もちろんこの方法で対応はできますが、 Karabiner-Elementsを停止すると HHKB の分離キーボードがうまくいかなくなります。分離キーボードの状態で両手使いするには、Karabiner-Elementsが動いている必要があるんですよね。
ハイ、そうです。要するに、停止&起動は面倒くさい。
そこで最近気がついた別の方法があります。もう1つ Profile を作成しておいて、そちらには何も設定しておかずに切り替えれば良いのです。ハイ、お陰様でうまくいきました。
でも、なんかスマートじゃないです。メニューバーまでマウスを持っていってからのクリックして選択です。スマートじゃない。
なんと Karabiner-Elements には CLI が備わっている
そうです。CLI のコマンドをうまく使えばいいじゃないか。いつのバージョンからか分かりませんが、CLIも同時にインストールされるようになりました。その中で、次のコマンドを実行すると Profile を切り替えられるようになります。
例えば 'Emacs profile' へ切り替えるのであれば、次のコマンドになります。
/Library/Application\ Support/org.pqrs/Karabiner-Elements/bin/karabiner_cli --select-profile 'Emacs profile'
素晴らしい。そう、これを Keyboard Maestro に登録すればいいんです。そしてショートカットをつくるでも、Stream Deck に割り当てるでもすればいい。
すんなり、セット完了です
この Keyboard Maestro を実行すれば、無言ですっと Profile が切り替わりやがります。最高です。素敵です。
これでいざという時に、スマートにショートカットキー登録ができるようになります。ああ、なんて嬉しい悲鳴だろう。