
Macではデフォルトでキーボードを無効にするといった機能はないため「Macを起動中にキーボードを掃除したい」といった場合におすすめの掃除方法やキーボードの無効化方法をまとめる。
INDEX
Macでキーボードを掃除する方法
画面をロックする

一番手っ取り早い方法はMacの画面をロックしてしまう方法だ。

特別なアプリケーションなども必要なく、僕がキーボードを掃除する上で日常的に使用している方法でもある。
MacBook Proの内蔵キーボードの場合はTouch Barなどに触れると音量や明るさが変更されてしまう可能性はあるものの、画面ロック中はショートカットキーなども機能しなくなるためサードパーティーアプリなどを利用したくない場合はこの方法がお手軽だ。

パスワード入力画面にはメチャクチャな文字が入力されてしまうが、掃除が終わったあとに画面下部のキャンセルをクリックすれば再び通常の入力画面に戻り、あとはパスワードを入力したりTouch IDでログインすれば完了となる。
KeyboardCleanToolを使う
Macでキーボードを掃除する上でポピュラーな方法として「KeyboardCleanTool」という無料アプリを使ってキーボード入力をTouch Barを含めて無効化して掃除するという手もある。

KeyboardCleanToolを起動したら「開く」をクリック。

KeyboardCleanToolが起動するので「Click to start cleaning mode」をクリック。

アクセシビリティの許可が必要というウィンドウが出るのでシステム環境設定から「セキュリティとプライバシー」を開く。

「セキュリティとプライバシー」の設定に移動したら左パネルから「アクセシビリティ」をクリックして右のリストの「KeyboardCleanTool」にチェックを付ける。
以上でKeyboardCleanToolが正常に起動するようになる。

あとは改めて「Click to start cleaning mode」ボタンをクリックすればTouch Barを含めてキーボードが無効化されるのでキーボードを掃除しよう。
掃除が終わったら再びボタンをクリックすれば通常の状態に戻る。
キーボードのkextをアンロード - macOS High Sierra以前のみ
macOS High Sierra以前のmacOSであれば下記コマンドでキーボードのkext(カーネル拡張)をアンロードすればキーボードが無効になる。
sudo kextunload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext

元に戻すコマンドは下記になるが当然キーボードは使用できないため、トラックパッドやマウスでシステム環境設定の「アクセシビリティ」を開き、「キーボード」の項目から「アクセシビリティキーボード」を有効にしてアクセシビリティキーボードのエンターキーでコマンドを実行しよう。
sudo kextload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext


kextが再度読み込まれればキーボードは再び使用可能になる。
なお、前述の通りこの方法はHigh Sierraまで有効であり、macOS Mojave以降では上記のコマンドは効果がない。
Appleは以前からkext(カーネル拡張)の廃止に向けて動いており、Mojave以降で上記のコマンドが無効なのもその影響かもしれない。
参考 Apple、将来のmacOSでカーネル拡張(kext)を廃止しDriverKitへ移行するのに伴い、macOS 10.15.4 Catalinaでは非推奨のKPIがアプリで使用されるとユーザーに通知すると発表。AAPL Ch.まとめ
起動中のMacのキーボードの掃除方法としてはKeyboardCleanToolが最も信頼できるのかもしれないが、僕はmacOSの機能で代替可能な場合は極力アプリを使用したくないため前述の通り画面をロックして掃除している。
ただ、どちらにおいても大きなデメリットはないため自分の好きな方法で構わないだろう。