2009-11-29 12 views
20

Có điều gì đó thực sự gây phiền nhiễu trong Visual Studio: khi tôi mở rộng hoặc thu gọn một phương thức hoặc vùng mã, hành động này được đẩy vào ngăn xếp hoàn tác. Vì vậy, nếu tôi chỉnh sửa một số mã trong một phương thức, sau đó thu gọn phương thức đó và sau đó muốn hoàn tác thay đổi của tôi, tôi phải hoàn tác hai lần: một lần cho hành động thu gọn và một lần cho thay đổi mã. Điều này có thể VERY khó hiểu nếu bạn mở rộng hoặc thu gọn một số điều sau khi chỉnh sửa mã, trình chỉnh sửa tiếp tục nhảy đến những nơi khác nhau và bạn không biết liệu các thay đổi của bạn đã được hoàn tác hay chưa ...Visual Studio: loại trừ phác thảo từ hoàn tác/làm lại ngăn xếp

Vì vậy, câu hỏi của tôi là: có thể vô hiệu hóa hành vi đó không? tức là, chỉ thay đổi mã được tính đến trong ngăn xếp hoàn tác?

PS: Tôi đang sử dụng Visual Studio 2008


EDIT: nếu hành vi này làm phiền bạn quá, xin vui lòng vote to fix it on UserVoice!

Trả lời

1

Giải pháp tốt nhất tôi có thể đề xuất là vô hiệu hóa phác thảo bằng CTRL + M, sau đó nhấn CTRL + P.

+4

Không, đây không phải là một tùy chọn ... Tôi thực sự thích tính năng phác thảo mã, tôi chỉ không muốn nó là một phần của ngăn xếp hoàn tác –

2

Tôi không tin rằng có một cách để vô hiệu hóa hành vi này.

Tùy chọn thay thế, biểu tượng thanh công cụ hoàn tác và làm lại có menu thả xuống lịch sử cho phép bạn xem trực quan tóm tắt về những thay đổi gần đây mà bạn sẽ hoàn tác hoặc làm lại. Điều đó đôi khi có thể giúp đảm bảo bạn đang hoàn tác (hoặc làm lại) những gì bạn đang mong đợi.

Vì không phải lúc nào cũng đủ để biết chính xác những thay đổi là gì (lịch sử hoàn tác chỉ hiển thị tóm tắt), giải pháp tôi thỉnh thoảng sử dụng để giải quyết vấn đề này là kết hợp hoàn tác (ctrl-z), làm lại (ctrl- y) và hoàn tác lại. Lần hoàn tác đầu tiên di chuyển đến nơi thay đổi đã xảy ra (và hoàn tác thay đổi đó). Việc làm lại sẽ hoàn tác việc hoàn tác (về cơ bản lặp lại thay đổi cuối cùng được thực hiện). Và lần hoàn tác cuối cùng sẽ thực hiện lại thao tác hoàn tác với cửa sổ được cuộn đến vị trí mà tôi thực sự có thể thấy hoàn tác đang diễn ra và có thể xác nhận xem đó có phải là thay đổi mà tôi mong muốn hoàn tác hay không. Nó không phải là rất hiệu quả, nhưng nó có thể rất hiệu quả để đảm bảo mã trong trạng thái thực sự mong đợi.

+0

Thực vậy tôi có thể sử dụng lịch sử thả xuống ... Tôi không vì vậy chắc chắn về giải pháp của bạn với các phím tắt tuy nhiên, nó không phải là rất thuận tiện;) –

2

Đầu tiên, có vẻ như không phải tất cả các hoạt động phác thảo được ghi lại trong ngăn xếp hoàn tác/làm lại.

  • Bật tắt đề cương Expansion (CTRL + M/CTRL + M) được ghi lại trong ngăn xếp
  • Chuyển đổi Tất cả các đề cương (CTRL + M/CTRL + L) được ghi lại trong ngăn xếp
  • Collapse để định nghĩa (CTRL + M/CTRL + O) KHÔNG được ghi trong ngăn xếp

Vì vậy, theo như tôi biết, không thể tránh việc ghi lại các hoạt động Chuyển đổi trong ngăn xếp hoàn tác/làm lại trong Visual Studio 2008.

Tùy chọn duy nhất bạn có nó để kích hoạt/vô hiệu hóa phác thảo cho từng loại nguồn. Đối với C#, phác thảo có thể được bật/tắt trong Tools > Options > Text Editor > C# > Advanced với hộp kiểm "Enter outlining mode when files open".

+0

Giống như tôi đã nói với Cedrik, tôi không muốn vô hiệu hóa phác thảo ...Tôi thích nó và muốn giữ nó –

+1

Sau đó, bạn sẽ phải đối phó với hoàn tác/làm lại. –

3

Bạn có thể bỏ phiếu để sửa lỗi trong số Visual Studio UserVoice.

+5

Cảm ơn, nhưng tôi biết điều đó ... Tôi là người đã tạo mục UserVoice này;) –