勇み足でmacOSをHigh SierraからMojaveへアップデートすると、Command クリックが効かなくなってしまいました。何かしらのアプリで複数選択する時とか、ブラウザでリンクを新規タブで開こうとする時に不便。
色々調べてみたところ、Karabinerが原因のようでした。USキーボード使いならほぼほぼ入れてると思うんですけど、入力切替をControl Spaceにするか、Command クリックを封じるかの2択になるのはつらい。
設定ファイルを眺めてみるとそれっぽい項目があり、項目を削除するとCommand クリックが復活しました。
設定ファイルは~/.config/karabiner/karabiner.json
にあります。
vim ~/.config/karabiner/karabiner.json
もしくはopen ~/.config/karabiner/karabiner.json
で直接ファイルを編集できます。できない時は、open ~/.config/karabiner
でフォルダを表示してから、karabiner.json
を適当なアプリで開いてあげれば良い。
編集する項目は"lazy": true
で、"lazy": false
に変更します。デフォルト値はfalseなので行ごと削除しても良いです。
lazyは2つしか存在せず、どちらもfalseにする必要があるので、検索をかけて出てきたのをfalseにするくらいでいいでしょう。
以下蛇足。
調べてみた感じ、lazyがtrueのときは以下のような挙動をしているみたいです。
- commandキーをto_if_alone_timeout_millisecondsで設定した値(karabinerのparamertorで設定できる)より素早く離すと英数 / かな キーを送信
- commandキーと何かのキーが同時に押された場合はそのキーコンビネーションを送信する
- commandキーを遅く離すと何も送信しない
lazyをfalseにすると、commandキーを押した瞬間からとりあえずcommandキーを送信して、素早く離されたら英数 / かなキーを送信、という感じっぽいです。
High Sierraまではlazyがtrueで問題なかったということは、mojaveにするとクリックイベントを取得できなくなったのかな〜と思います。開発者じゃないからわからんけど。