Visual Studio Codeで開いているファイルをエクスプローラー上でフォーカスしないようにする

VSCodeのデフォルト設定だと、開いているアクティブなファイルが左フレームのエクスプローラー上でフォーカスされる。

この時、ファイルの保存されているフォルダが展開されるので、気づくとあちこちのフォルダが開かれていたりする。また、開いているファイルを切り替えるたび、エクスプローラーが動くので気になることも多い。

普段はこのフォーカスをOFFにしつつ、必要な時にはキーボードショートカットで実行する方法を調べたのでメモ。

環境

Visual Studio Code v1.74.3

開いているファイルへのフォーカスを抑制

Stack overflowに同様の質問あり。

stackoverflow.com

VSCodeの設定から、 explorer.autoRevealfalse にすると、開いているファイルのフォーカスおよびフォルダの展開を抑制できる。

特定のフォルダのみフォルダを展開する

Visual Studio Code v1.74より、 explorer.autoRevealtrue の場合、フォルダごとに展開の有無を指定できるようになった。

code.visualstudio.com

VSCodeの設定から、 explorer.autoRevealExclude に、Globでパスを指定できる。

デフォルトでは以下のように、 node_modules などが除外されている。

{
  "explorer.autoRevealExclude": {
    "**/node_modules": true,
    "**/bower_components": true
  }
}

キーボードショートカットで開いているファイルをエクスプローラー上でフォーカスする

これで自動的なフォーカスは抑制できたので、今度は任意でフォーカスできるよう設定する。

これまたStack overflowに同様の質問あり。

stackoverflow.com

キーボードショートカットの「File: Reveal Active File in Explorer View」が対象。

ファイル > ユーザー設定 > キーボード ショートカットにて、 Reveal Active で検索すると出てくる。

デフォルトでは、キーバインド未設定のため、 Ctrl + Alt + oバインディングした。

キーバインド設定後

振り返り

2年前くらいからこの設定を行っていたが、職場でどうやっているのか聞かれたのと、v1.74でディレクトリ単位で展開の制御ができるようになったので、合わせて書いてみた。

こちらのissueで記載の通り、昔は node_modules もフォルダ展開されていたが、今は explorer.autoRevealExclude で抑制されるので、デフォルトでも不便はないかも。

ただ、キーボードショートカットでのフォーカスがすっかり手になじんでしまったので、もう戻すのは無理だなぁ。