私はコード純粋主義者であり、Visual Studioのデフォルト設定ではなく、独自のスタイルのコードフォーマットを好みます。ツール/オプションで自動フォーマットオプションをオフにしました。ほとんどの場合、機能します。
組み込みのリファクタリングのいずれかを使用した後、Visual Studioは既定の設定で設定を上書きします。 VSがそれをしないようにするにはどうすればよいですか?
aspx
ページでVB)を書いているときにこの問題が発生しました。
解決策は、[ツール]> [オプション]> [テキストエディター]> [基本]> VB Specific ')に移動し、[プリティリスト]をオフにすることでした。
注-Visual Studio 2015では、これは次の場所にあります。
ツール>オプション>テキストエディター>基本>詳細
VS2017では、設定メニューでコーディング言語を選択した後に変更できます。 [書式設定]サブメニューには[新しい行]というオプションがあります。
私の場合、それはReSharperでした。
StackOverflow: Visual StudioでReSharperを無効にして再度有効にするにはどうすればよいですか?
StackOverflow: ReSharperにフォーマットしないように指示するコードをマークアップする方法はありますか?
最終的にはReSharperでした:
セミコロンまたは右中括弧の再フォーマットはオフにできません。マイクロソフトがコードをフォーマットする方法をだれかに伝えることを恐れるのは腹立たしいと思います。私が今まで見た中で最も読みにくいコードは、そこで働いていたときでした。
隣接する割り当てを垂直方向に揃えたい。 VSは、左側の変数の長さに関係なく、等号の両側で1つのスペースに再フォーマットします。これは耐えられません。また、エディターオプションでオフにすることは無視されます。上記の開幕戦のようなコメントを与えられた私はこれが意図的であることを確信しています。
一貫性は、望ましい結果につながる場合にのみ美徳です。これは1つではありません。
リファクタリング後に再フォーマットを無効にできるとは思わない。リファクタリングはコードを変更しますが、それはテキストのみであるため、書式設定されていないテキストをソースにダンプするだけでいいとは思いません。 VSがあなたが好きで従うスタイルに準拠するコードスタイルを設定するのは少し簡単ではありませんか?
TOOLS-> OPTIONS-> Text Editor-> CSS-> Formattingに従ってください。「Compact Rules」を選択し、「Hiearerchical indentation」のチェックを外します。
拡張機能Bundler&Minifierを無効にしてみてください
コードの書式設定を微調整できます。私は常に余分な改行をすべてオフにしてから、コードをどのようにフォーマットするかについては正常に機能します。
設定をできるだけ好みに合わせて微調整すると、リファクタリングを使用するときは常に最小限の作業で済みます。
実際のソリューションに対するTangoの答えに加えて、自動フォーマットを常に最新に保ちたいが、関連する変更を台無しにしたくない人がいるかもしれません。自動フォーマットをアクティブにするためにファイルを変更し、それらの変更をチェックインしてから、実際の変更を続行することをお勧めします。
これにより、コードを最新の状態に保つことができますが、チェックインが重要になります。