📂

VSCodeでGithub Copilotを最大限活かすための拡張機能「Open All」を作ってみた

2023/08/19に公開

はじめに: Open Allとは?

「Open All」は、特定のフォルダやプロジェクト内のすべてのファイルを素早く開くことができるVSCodeの拡張機能です。

自分で使うために作りましたが、公開してみました。使い方はREADMEの GIF画像を見てください。

https://marketplace.visualstudio.com/items?itemName=kikuta.open-all-vsc-ext

Githubでソースも公開しています。

https://github.com/kikutadev/open-all-vsc-ext

なぜ作ったか(使用する理由)

公式サイト(?)でも述べられている通り、GitHub Copilotは開いているファイルをベースに提案をしてくれます。
以下のブログ記事でも検証されており、自分の経験としてもファイルを開いていればいるほどそれを元に提案してくれてDX(Developer eXperience, 開発者体験)の高まりを感じました。

なので、型定義ファイルなどが入ったフォルダはとりあえず開いておく、みたいなことをしたいんですが、手作業で開くのも面倒なので、まとめて開けるようにしたという感じです。

こだわった点

①再帰処理もできる

フォルダ内全て開きたいときに便利です。

②別グループで開ける

今開いているエディタグループとは別のグループで開けるので、エディタグループがごちゃつくのを防ぎます。
なお、既に開いているファイルは再度開かないようにしています

実際は以下の4つのコマンドがあります。
"commands": [
      {
        "command": "extension.openFilesInFolder",
        "title": "フォルダ内のファイルを開く"
      },
      {
        "command": "extension.openFilesInFolderRecursively",
        "title": "フォルダ内のファイルを再帰的に開く"
      },
      {
        "command": "extension.openFilesInNewGroup",
        "title": "フォルダ内のファイルを別グループで開く"
      },
      {
        "command": "extension.openFilesInNewGroupRecursively",
        "title": "フォルダ内のファイルを再帰的に別グループで開く"
      }
    ],

③10個以上のファイルを開くときはアラートする

大量に開きすぎると、VSCodeとはいえ重たくなってしまったりします。それをアラートして防ぎます。

おわりに

ぜひ使ってみてください!

https://marketplace.visualstudio.com/items?itemName=kikuta.open-all-vsc-ext

https://github.com/kikutadev/open-all-vsc-ext

Discussion