以前 VS2017 で使っている拡張機能について書きました。
VS2019 もRCとなり、いよいよリリースが近づいてきたにつれ、各種拡張機能もサポート対応が進んでいます。
一部はまだ対応されていないものの、今のところいい感じで使えつつあるので一度まとめてみます。
余談ですが、VS2019 では初期読み込みに時間がかかり、VS起動時間に影響のある拡張機能は拡張機能側の実装にバックグラウンドで読み込むことを推奨しています。もし新規に拡張機能を作る場合は検討されるといいでしょう。
左上にSolution名でないのが慣れないのですが、右上のQuick Search横にSolution名出ているので慣れましょう。
右下にはgit リポジトリが出てますが、Slnとずれていることもあります。
目次
Extensions一覧
Recommend | Name | Purpose | Desc |
---|---|---|---|
5 | Git Diff Margin - Visual Studio Marketplace | git status をエディタ画面に表示 | 差分のハイライト表示をしてくれます |
5 | SwitchStartupProject for VS 2019 - Visual Studio Marketplace | Startup Project の変更と定義 | Webなどで複数プロジェクトを同時に起動するのが楽になります |
5 | VSColorOutput - Visual Studio Marketplace | Output Window の色付け | 出力された文字に状態に応じて色が付きます。 |
5 | Open on GitHub - Visual Studio Marketplace | VSからGitHub へのジャンプ | VS2019対応のPRが作者にマージされました。また、VS2019対応だけではパフォーマンス警告がでるので、非同期読み込み対応もマージされています。 |
5 | BuildVision - Visual Studio Marketplace | ビルド結果表示の高機能化 | [2020/6時点でリリースは確認済み。 |
3 | Swap Selection - Visual Studio Marketplace | 選択箇所の入れ替え | テストとかで値を入れ替える時に便利 |
3 | Fix Mixed Tabs - Visual Studio Marketplace | ソフトタブ、ハードタブの混在ファイルを開いた時に統一できます。 | 2020/6 不具合はなくなっています。 |
2 | Open UserSecrets - Visual Studio Marketplace | .NET Core Console で UserSecrets | ASP.NET Core MVC の Manage UserSecrets と同様の機能を .NET Core Console でも提供します。.NET Core Console でも標準で出てる気がするのでいらないかな? |
修正されるまで入れない方がいいもの
すべて解消されました。
リリースを待っているもの
VS2019向けのリリースを待っている状態です。
すべてリリースされました。
それぞれの拡張
Git Diff Margin
git status の状態がVS上に表示されます。未保存が黄色、追加行が緑、変更が青、削除が赤で表示されています。削除内容も赤い三角から見えます。
SwitchStartupProject for VS 2019
この拡張を使うとツールバーから Start up Project を確認、設定できます。他にも multi-project startup として、複数プロジェクトの同時起動もjsonで設定できるので、チームでプロジェクト設定をgit共有も簡単です。
便利じゃないですか?
VSColorOutput
Visual Studio なぜかデフォルトでは Output (出力) Window に表示された文字が単色ですが、この拡張をいれるエラーは赤字になったり色付けしてくれます。
例えば正常ビルド
例えばエラー
Open On GitHub
VS2019 から GitHub に飛ぶ。シンプルで最高によい。
BuildVision
これがないビルド辛すぎるのでリリースされてよかった。
Open UserSecrets
ASP.NET Core では、プロジェクト名を右クリックすると Mange User Secrets (ユーザーシークレットの管理) メニューが出て、ローカル開発用 secrets.json をVSで編集しやすくします。
しかし、.NET Core Console ではこの機能がなく、せっかくMicrosoft.Extensions.Configuration.UserSecrets
nuget をいれて User Secrets を取り扱えるようにしても、VSであつかうのに困ります。
この拡張を使うとそんな苦しみがなくなります。
VS2019 (16.9.4) でConsoelApp でも Manage User Secrets が出ているので、そろそろいらない気がします。
VS2019で使わなくなった拡張
- Visual Studio IntelliCode: Preview おわって VS2019 に同梱されました。インテリセンス、コード補完と呼ばれるコード支援機能をさらに支援します。手癖を含めて、普段使っているものが優先して表示されるので地味にめちゃめちゃ便利です
- BlackSpace: eidtorconfig でお任せになったので不要になりました
- LetMeEdit : 旧csprojでは必要ですが、新csprojではVS標準で提供されるようになりました。特にVS2019ではプロジェクト名ダブルクリックでcsprojの内容を表示するようになり便利です
- CustomDocumentWell:title: VS2017 までは縦タブがなかったの必須でしたが、VS2019 で標準サポートされたので不要です。色付けなど少し劣りますが、今後の改善待ちで
- GoToDnSpy: 2021年、dnspy オワコンしたのでおわり。ILSpy でもどうぞ
まとめ
様々な拡張があります。VS2017からVS2019 に対応してみて感じたのですが、VS2019 の対応自体はたいしたことないのですが、バックグラウンドでの非同期読み込み実装はだるい部分があるのでVS2019対応が遅れているやつはそういうのありそうです。