Visual Studio 2010 C#コードウィンドウでタブとスペースが混在し続けるのはなぜですか?


87

私はこの1時間ほどWebアプリケーションでC#ファイル(Global.asax.cs)に取り組んでおり、 "tabify"などのプロンプトを4回ほど表示されています。ファイルをタブ化して保存することを選択するたびに、後でランダムに見える時点で、もう一度プロンプトが表示されます。

私はReSharperを使用していますが、これは自宅でコーディングしたときにも発生せず、ReSharperも使用しています。仕事だけで。


3
スペースを実際に完全にタブに変換できるように、タブのインデント設定が設定されていますか?
ユーザーの

私はまた、これを私のファイルの1つで取得しています。今日は1時間に1〜2回持っています。ファイルがソース管理に追加される前でも。
sindre j

12
@LostHobbit迷惑なダイアログがポップアップし続け、フローを中断するため、問題になります。
ProfK 2012年

回答:


146

Productivity Power Tools VS 2010拡張機能を使用していますか?その場合は、Tools-> Options->に移動してを選択しますProductivity Power Tools。ここで、オプションをオフにすることができますFix Mixed Tabs。これにより、この警告がオフになります。

Visual Studio 2010のパワーツール

Visual Studio 2012のパワーツール

Visual Studio 2013のパワーツール

Visual Studio 2015のパワーツール


20
警告を保持し、代わりに混合タブとスペースを削除することをお勧めします。
ProfK 2011年

2
@ProfKもう一度プロンプトが表示されるランダムなポイントは、誰かがこのファイルへの変更をチェックインした後にも発生しますか(ソース管理を使用している場合)?たぶんあなたと他の誰かがVSで異なって定義されたタブスペースを持っています。
Justin Saraceno、2011年

7
これがどのように生産的であるかを確認することは困難です。ツール+オプション、テキストエディターでタブをオフにします。それらは、前世紀にバイトを節約するために使用されました。
ハンス

6
@ハンス、タブを使用する生産性はここではまったく関係ありません。
ProfK 2011年

35
タブの生産性については十分に議論されており、単なるデータサイズよりもタブには多くのメリットがあります。タブは、同じプロジェクトで作業するインデント設定が異なる人々のために構成可能な幅を持っています。全員がタブではなく異なる数のスペースを使用するようにVSを構成した場合、コードはごちゃごちゃになりますが、全員がタブを使用し、タブの幅を視覚的な好みに合わせて構成した場合、コードはきれいになり、全員がケーキを手に入れて食べます。ここでも、スペースを使用する利点は何ですか?
TheXenocide 2013年

60

タブとスペースが混在しているのは、Visual Studioのテキストエディター設定に由来する場合があります。ここでVisual Studioにスペースまたはタブを挿入するかどうかを決定できます。

ツール/オプション/->テキストエディター/すべての言語/タブで、[タブを保持]オプションを選択します。


6
これは、質問に対する正しい答えであり、@ ProfKが達成したかった結果です。
Reality Extractor 2013

11

VSのデフォルトはタブではなくスペースであるため、「Untabify」オプションを選択します。次に行を追加するときに[Tabify]を選択すると、VSはスペースを使用し、プロンプトが繰り返し表示されます。


9

ResharperVisual Studioに別のタブ/スペース設定を使用します。ではResharperオプション、「 - >タブがインデントのために使用されたときに整列するためにどのように一般的なフォーマッタスタイル」をご確認ください。この設定は、resharperがフォーマットコード(リファクタリングなど)の場合に使用され、デフォルトは「ユーザースペース」です。

また、[編集]-> [詳細 ]メニューには、[空白を表示]オプション(Ctrl + E、S)があり、便利な場合があります。


良いオプション(View Whitespace one)!+1
イグナシオソレルガルシア
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.