2009-11-29 11 views
20

Visual Studioでは、メソッドやコード領域を展開または折りたたむときに、このアクションがアンドゥスタックにプッシュされます。メソッドのコードを編集してそのメソッドを折りたたんで変更を取り消したい場合は、折りたたみアクションのために1回、コードの変更のために1回、2回取り消す必要があります。コードを編集した後にいくつかの項目を展開したり折りたたんだりすると、エディタは別の場所にジャンプし続け、変更が元に戻ったかどうか分かりません。Visual Studio:元に戻す/やり直しスタックからアウトラインを除外します

私の質問は次のとおりです。その動作を無効にすることは可能ですか?つまり、コードの変更のみがアンドゥスタックで考慮されることになりますか?

PS:私は、Visual Studio 2008の


EDITを使用しています:この動作は、あまりにもあなたをvote to fix it on UserVoiceをしてください悩ませている場合!

答えて

1

私が提案できる最適な解決策は、CTRL + M、CTRL + Pを使用してアウトラインを無効にすることです。

+4

いいえ、これはオプションではありません...私はコードのアウトライン機能が本当に好きです。私はそれをアンドゥスタックの一部にしたくありません。 –

2

この動作を無効にする方法はないと思います。

ツールバーのアンドゥとやり直しのアイコンには履歴のドロップダウンがあり、元に戻したりやり直していた変更の概要を視覚的に見ることができます。それは、あなたが期待していることを元に戻す(またはやり直す)ことを確実にするのに役立ちます。

変更が何であるかを正確に知るには必ずしも十分ではないため(元に戻す履歴には要約のみが表示されます)、これを解決するために私が時折使用する解決策は、undo(ctrl-z)、redo y)し、元に戻す。最初の取り消しは、変更が発生した場所に移動します(変更が取り消されます)。やり直しはアンドゥを元に戻します(元の変更を本質的に繰り返す)。そして、最後のアンドゥはアンドゥを再び実行し、ウインドウがスクロールして実際にアンドゥが起こっていることを確認し、アンドゥを期待していたかどうかを確認することができます。これはあまり効率的ではありませんが、コードが本当に期待される状態にあることを確認することは非常に効果的です。

+0

確かに、履歴のドロップダウンを使うことができます...私はできませんしかし、ショートカットキーであなたのソリューションについて確かに、それは非常に便利ではない;) –

2

最初に、すべてのアウトライン操作がアンドゥ/リドゥスタックに記録されているとは限りません。

  • トグルアウトライン拡張(CTRL + M/CTRL + M)がスタックに記録され
  • トグル全てアウトライン(CTRL + M/CTRL + L)の定義にスタック内
  • 折りたたみを記録します( CTRL + M/CTRL + O)がスタックに記録されていない

私が知る限り、Visual Studio 2008のアンドゥ/リドゥスタックにトグル操作の記録を避けることはできません。

各ソースタイプのアウトラインを有効/無効にする必要があります。 C#の場合、"Enter outlining mode when files open"チェックボックスを使用してTools > Options > Text Editor > C# > Advancedにアウトラインを有効/無効にすることができます。

+0

私はセドリックに言ったように、私はアウトラインを無効にしたくない...私はそれが好きで、それを保ちたい –

+1

その後、取り消し/やり直しに対処する必要があります。 –

3

Visual Studio UserVoiceで修正することができます。

+5

ありがとう、しかし、私はそれを認識しています...私はこのUserVoiceエントリーを作成しました;) –

関連する問題