Visual Studio 2019を美しくしよう。

Zennに移植しました。内容もこちらが最新です。
https://zenn.dev/s3pt3mb3r/articles/5959f9622a8b6c

# 前提
Visual Studio 2019をインストールしているものとします。
Visual Studioを入れてC++を書こうとしたのですが、デフォルトの見た目があまりにも汚かったのでカスタマイズしました。これはあくまでメモの役割がほとんどであり、時間をかけたくないため乱雑に、かつ僕の独断と偏見で無責任に書いていきます。よろしくお願いします。

完成した僕のVisual Studioはこんな感じです。
![完成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/5f37b542-4fee-7336-aa8c-a83c85bfe801.png)


# まず設定をいじろう

### テキストがダサいのを直そう。

まず、デフォルトのVSはテキストのレンダリングがクソです。どのフォントを入れてもガリガリになってしまいます。これを直しましょう。
**Tools->Options->Text Editor->Advanced**の中の、**Text formatting method**と**Text rendering method**をそれぞれIdealとClearTypeに設定しましょう。
![無題.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/c538589f-9134-0d9b-85af-31ec0cba522c.png)
これだけで、フォントが劇的にいい感じになります。マジで大事ですこれ。
あと、オプションの**Environment->Fonts and Colors**から自分が好きなフォントに変えましょう。僕は今Hackというフォントを使用しています。また一番上の**Show settings for**というドロップダウンメニューから`Output Window`を選択し、フォントを指定することで、ビルドメッセージやエラーメッセージが表示される画面のフォントを変更することができるのでこれも忘れずにやっておきましょう。

### インテリセンスが先走って誤変換するのを防ごう。

デフォルトのVSだと、高速でタイピングした時に補完が間違ったものに変換されることがよくあります。
例えば僕が実際に経験した例だと、`std::cout`と高速で打った場合に、`std`のあと`:`を入力した瞬間に、`std`が`safe_cast`に補完されます。これを直します。
オプションの、**Text Editor->C++->Advanced**の真ん中より少ししたくらいにある、**Member List Commit Aggressive**をFalseにし、続いて**Use Tab to commit in Aggressive Member List**もFalseにしましょう。これで誤変換はなくなります。
![fsdafgrgr.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/7924a288-09ef-8c13-9606-615ed4bee526.png)


# テーマや拡張機能を入れよう。

### One Dark Proテーマ

**Extensions->Manage Extensions** を押して、検索欄に `One Dark Pro`と打ち込みダウンロードしましょう。 無難で最強のダークテーマです。
![fds.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/3d051be0-64ee-36eb-c356-4644d3facd97.png)
拡張機能を有効にするには一度VSを再起動させる必要があるので注意です。
再起動したら、オプションから**Environment->General**に行き、Color ThemeをOne Dark Proにしましょう。
One Dark Proそのままでもいいのですが、僕はなんとなくOne Dark Proのカラースキームがしっくりこなかったので、一部の色を変更しました。オプションの**Environment->Fonts and Colors**のDisplay itemsから特定の色だけ指定して変えることができます。

### 背景に画像を透過表示できるようにしよう。

`ClaudiaIDE`と呼ばれる拡張機能を入れることで、背景画像を設定できるようになります。
![claudia.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/da16e913-22ed-8c7a-758f-98b75c8edf6c.png)
上述した方法で拡張機能をインストールしてください。その後、オプションから**ClaudiaIDE->General**へ行き、以下の画像のように設定してください。
Opacity(透明度)とFile Pathは各自設定してください。
![fdsaf.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/262c6440-ca8f-8996-d818-26a52fa4e0a0.png)

### 括弧の色をペアごとに色付けしよう

`Viasfora`と呼ばれる、いわゆるBracket Pair Colorizer みたいな拡張機能があるので入れてください。
![viasfosa.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/78a61f4c-7927-3b97-6a80-77898a263a8c.png)
デフォルトだと括弧の色が下品になるので、オプションの**Viasfora->Rainbow Braces**のlevel1~9の色を好みに設定してください。
ちなみに僕のはこんな感じです
![rb.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/35014bf3-2a7d-62f7-a6b8-dbec111ba293.png)

### ファイル保存時に自動フォーマットしてもらおう

`Format document on Save`という拡張機能を入れると、編集中のファイルを保存したタイミングで自動でコードを整形してくれます。マストで入れましょう。
![fdos.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/cb582890-6173-d237-dd84-8b46fbee3eff.png)


### Vimの拡張機能を入れよう

`VsVim`という拡張機能を入れることで、Vimをエミュレートできます。これは完全にオプショナルですが、僕はVimが好きなので入れてます。
Windowsの%userprofile%ディレクトリに`.vsvimrc`というファイルを作ればVsVim用のvimrcとして動作してくれます。
![vsvim.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/a17fa8d6-11d8-e446-dac7-04ba13b81951.png)
また、そのままではノーマルモードのカーソルが真っ黒で違和感があるので、**VsVim->Defaults**のBlock Caret BackgroundをWhiteSmokeとかに変えてください。
加えて、デフォルトだとインテリセンス候補を<Ctrl-p> <Ctrl-n>で移動できません。 **Environment->Keyboard** から、Edit.LineUpにCtrl-pを、Edit.LineDownにCtrl-nを割り振りましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/143170/25a2858c-c2df-9a9e-41c6-7a37f253eb8b.png)


# 完成
おめでとうございます！これであなたのVisual Studioも素敵なIDEに大変身を遂げましたね！
Visual Studioは本当にデフォルトの見た目があり得ないですが、とても使い勝手が良いIDEです。僕もしばらく見た目が理由でCLionやVScodeなどを使っていました。なので見た目を理由に嫌煙してる人たちがこれを見て少しでも使用を検討してくれることを願っています。