外付けキーボードを接続したときだけ MacBook の内蔵キーボードを無効化する


最近 HHKB Professional 2 を買いました。音が何とも言えずいいですね。

最初は MacBook の前やトラックパッドの上に置いて使っていましたが、トラックパッドが使えなくなるためマウスも必要になり、何かと不便です。

そこで、外付けキーボードを内蔵キーボードの上に置けないかと考えました。しかし、ただ置くだけだと外付けキーボードが下のキーを押してしまって問題です。

この記事では Karabiner というソフトを使って、外付けキーボードを接続したときだけ内蔵キーボードを無効化します。以前は ControlPlanekextunload/kextloadを使って行う方法を紹介していましたが、新しい Macbook では動かないことと Karabiner を使った方法の方が圧倒的に簡単なため改めました。

Karabiner の設定

Karabiner は、Macbook のキーマッピングを自由自在にカスタマイズできるソフトです。例えば日本語配列のキーボードを US 配列に置き換えたりとか、Vim で ESC を押した時に IME をオフにしたりとか。入れて損はない優れ物です。

その Karabiner に、まさにやりたいことそのままの設定がありました。Karabiner の設定画面で「internal keyboard」と検索して出てくる「Disable an internal keyboard while external keyboards are connected.」という項目です。このチェックボックスをチェックするだけ。

簡単ですね!

おわり

以上の設定で、外付けキーボードをつなぐと内蔵キーボードが無効化され、外すと有効化されるようになったはずです。これで、外出先でキーボードが使えずログインできない!ということもなくなりますね。

MacBook の前にキーボードを置いていた時に比べて、省スペースでだいぶ快適になりました。

おまけ

L 型の mini USB アダプタがあると、写真のようにケーブルを綺麗におさめられておすすめです。