かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

Mac M2 VSCode アウトデント (⌘ + [) が効かない問題

VSCode で開発を子なっている際にアウトデント⌘ + [ が効かない・キーボードショートカット設定で ⌘ + [ を押しても [ が無視されて だけ入力されて設定できない現象に長らく悩んでいました。今回この現象が解決したので忘れないようにメモ

環境
  • Mac M2 2022 OS Monterey USキーボード

Mac が日本語キーボードと誤認することで OS のシステムショートカットにコマンドが吸収されてしまっているのが原因

どうやら Mac が US キーボードを日本語キーボードと誤認してシステムで設定されているショートカットがコマンドを吸収してしまっているのが原因のようです

解決方法: 次のウィンドウを操作対象にする のチェックを外して再起動する

下記の手順で解決することができました

  1. システム環境設定 -> キーボード -> ショートカット
    「次のウィンドウを操作対象にする」のチェックを外す
    次のウィンドウを操作対象にする のチェックを外して再起動する
  2. OS を再起動する

ざっくり言えば 次のウィンドウを操作対象にする ⌘ + @@ が US キーボードだと [ の位置にあるので OS が VSCode 使用時にキーボードを JISキー 配列だと誤認していると ⌘ + @ が実行されたと判断して ⌘ + [ にならないという事だったようです

私は再起動後に「次のウィンドウを操作対象にする」のチェックを戻しても大丈夫でしたが念のため別のショートカットを設定しました。
この機能を使わないのであればチェックを外したままで良いのではないかと思います

 

別のアプリだと ⌘ + shift + [ は効くのに VSCode⌘+ [ だけが効かない。設定もできないのでどうやら ⌘ + [ だけ無効化される。Mac M2 と相性が悪いのか?と思い別のショートカットを設定して使いにくいな〜と感じながら悩んでいました。VS Code の Issue にも OS が原因じゃね?で issue が閉じられていたので まさかの OS がキーボードを誤認して別のショートカットがコマンドを横取りして止めてたとは思ってもなかったです…
解決してよかった。
Mac くんしっかりしておくれ〜

おわり


[参考]