VSCodeのデフォルト設定だと、開いているアクティブなファイルが左フレームのエクスプローラー上でフォーカスされる。
この時、ファイルの保存されているフォルダが展開されるので、気づくとあちこちのフォルダが開かれていたりする。また、開いているファイルを切り替えるたび、エクスプローラーが動くので気になることも多い。
普段はこのフォーカスをOFFにしつつ、必要な時にはキーボードショートカットで実行する方法を調べたのでメモ。
環境
Visual Studio Code v1.74.3
開いているファイルへのフォーカスを抑制
Stack overflowに同様の質問あり。
VSCodeの設定から、 explorer.autoReveal
を false
にすると、開いているファイルのフォーカスおよびフォルダの展開を抑制できる。
特定のフォルダのみフォルダを展開する
Visual Studio Code v1.74より、 explorer.autoReveal
が true
の場合、フォルダごとに展開の有無を指定できるようになった。
VSCodeの設定から、 explorer.autoRevealExclude
に、Globでパスを指定できる。
デフォルトでは以下のように、 node_modules
などが除外されている。
{ "explorer.autoRevealExclude": { "**/node_modules": true, "**/bower_components": true } }
キーボードショートカットで開いているファイルをエクスプローラー上でフォーカスする
これで自動的なフォーカスは抑制できたので、今度は任意でフォーカスできるよう設定する。
これまたStack overflowに同様の質問あり。
キーボードショートカットの「File: Reveal Active File in Explorer View」が対象。
ファイル > ユーザー設定 > キーボード ショートカットにて、 Reveal Active
で検索すると出てくる。
デフォルトでは、キーバインド未設定のため、 Ctrl + Alt + o
をバインディングした。
振り返り
2年前くらいからこの設定を行っていたが、職場でどうやっているのか聞かれたのと、v1.74でディレクトリ単位で展開の制御ができるようになったので、合わせて書いてみた。
こちらのissueで記載の通り、昔は node_modules
もフォルダ展開されていたが、今は explorer.autoRevealExclude
で抑制されるので、デフォルトでも不便はないかも。
ただ、キーボードショートカットでのフォーカスがすっかり手になじんでしまったので、もう戻すのは無理だなぁ。