Visual Studio、switch文でのcaseのインデント整形の設定方法

Visual Studioでswitch文を書いたら、こんなふうに自動整形された。

caseがインデントされずに、switchと頭が揃えられてしまう。まぁ、そういう流儀もあるんだろうけど、switch文の範囲が分かりづらい。caseは下げたほうが見やすいと思う。慣れの問題だろうけど。

面倒だけど手動でインデントすればいいやと思ったものの、Visual Studioはそれを許してくれず、caseを書き加えたりすると強制的に全体を整形し直して最初の例のようにしてしまう。

こういうのはきっとどこかに設定があるのだろうと思って探しけれどみつけられなかった。そこでググったらこんな記事が。

うーん、caseはインデントしないのが当たり前なのかなぁ?Visual Studioの自動整形もそういう挙動だし。でも、やっぱり、switch文の範囲がわかりづらくで嫌だなぁ。

ちょっと不安になったので、Twitterアンケートしてみた。

結果は、回答数は多くないものの、「する」が圧倒的多数。ご協力くださった方々、ありがとうございました。

余談ながら、インデントが深く見えるのが気持ち悪いっていう向きにはブロック化するという解決法もある。

と、ここまでは前置きで、Visual Studioでのcaseのインデント設定はここにあった。

ツール → オプション → テキストエディター → C/C++ → コードスタイル → 書式設定 → インデント → caseラベルをインデントする

これにチェックを入れるとcaseがインデントされる。