Tắt định dạng tự động trong Visual Studio


134

Tôi là một người theo chủ nghĩa thuần túy mã, thích phong cách định dạng mã của riêng tôi thay vì cài đặt mặc định của Visual Studio. Tôi đã tắt các tùy chọn định dạng tự động trong Công cụ / tùy chọn. Trong hầu hết các trường hợp nó hoạt động.

Sau khi sử dụng bất kỳ phép tái cấu trúc tích hợp nào, Visual Studio sẽ chặn các cài đặt của tôi bằng các cài đặt mặc định. Làm thế nào để tôi giữ VS làm điều đó?


9
@ user1142958 cứ sau vài tháng trong một dự án nguồn mở và cứ sau vài năm kinh doanh, tôi lại bắt gặp một số ảnh nóng khẳng định phong cách của anh ấy / cô ấy tốt hơn tiêu chuẩn. Qua nhiều năm nghiên cứu, người ta đã xác định rằng các tiêu chuẩn kiểu dáng cải thiện khả năng đọc và bảo trì mã. Khi các nhà phát triển đưa ra cách tiếp cận "tốt hơn" của riêng họ, nó thường có xu hướng loại bỏ các nhà phát triển khác trong nhóm. Đọc điều này như một ví dụ - woldlab.caltech.edu/~king/swc/www/readstyle.html
senfo

29
@senfo Đó là tất cả thông tin tuyệt vời, nhưng bộ định dạng tích hợp của Visual Studio bị phá vỡ không thể chối cãi trong một số trường hợp nhất định (ví dụ stackoverflow.com/questions/6459861/ Lỗi ). Trong những trường hợp đó, tôi thà sử dụng trí thông minh của con người để tuân thủ các tiêu chuẩn mà tôi cho là phù hợp hơn là dựa vào nỗ lực đáng buồn của VS về "phong cách".
Dan Bechard

5
@senfo - VS .cshtml tự động định dạng, đặc biệt là về mặt Dao cạo bị hỏng. Đồng ý với bạn trong các phần khác, nhưng đây không phải là một tính năng - đó là một lỗi
Ross

5
Khi "tiêu chuẩn" trông giống như hai con mèo chiến đấu trên bàn phím thì tính nhất quán là không có đạo đức. Gọi cho tôi một ảnh nóng nhưng thời gian thêm để làm cho mã dễ đọc là xứng đáng. Kinh nghiệm của tôi là hoàn toàn phù hợp: những người đam mê nhất quán (sic) đã quảng bá mã không thể đọc được nhất mà họ có thể đưa ra.
Chris Fox

5
Một người thuần túy mã là một người nhập văn bản theo định dạng chính xác để không cần định dạng tự động (có thể bị hỏng).
Anders Lindén

Câu trả lời:


106

Tôi đã có vấn đề này trong khi viết VB trong một aspx trang.

Giải pháp là vào 'Công cụ> Tùy chọn> Trình soạn thảo văn bản> Cơ bản> VB cụ thể' và tắt 'Danh sách đẹp' TẮT.


Lưu ý - trong Visual Studio 2015, bạn có thể tìm thấy tại:

Công cụ> Tùy chọn> Trình soạn thảo văn bản> Cơ bản> Nâng cao


Tôi ước tôi có thể liên kết các hộp kiểm này một cách dễ dàng với bất kỳ khóa ngắn nào.
Mike de Klerk

1
Cảm ơn, điều này đã làm việc cho tôi. "Đẹp" là cực kỳ xấu, với các tham số chức năng "giấu bên dưới" tên hàm, một lựa chọn không thể giải thích khi căn chỉnh dọc bảng là điều mà bất cứ ai làm việc trong giao tiếp đều có thể nói với bạn là dễ hiểu nhất.
Chris Fox

54
Tôi sẽ tạm dừng để chiêm ngưỡng vẻ đẹp của việc có một hệ thống phân cấp cây tùy chọn đi text editor -> basic -> advanced.. 'oh yeah bạn muốn phần nâng cao'? Đó là cơ bản
fostandy

12
@fostandy, tôi nhận ra bạn có thể biết điều này, nhưng basiclà tên của ngôn ngữ, không phải là phần tùy chọn, vì C # cũng được liệt kê ở đó.
Lightfire228

32

Vô hiệu hóa danh sách đẹp. Đây là tùy chọn định dạng lại những gì bạn đang làm. Tôi đã có cùng một sự khó chịu với nó và sau khi thực hiện nó, mã của tôi vẫn giữ nguyên như tôi muốn và nó không quay trở lại các cài đặt trước đó.

nhập mô tả hình ảnh ở đây


Không có tùy chọn này trong VS2010 Premium của tôi
Maciej

2
Sửa lỗi trong VS2017
Doug Null

Không khắc phục sự cố C ++ của tôi trong VS 2013. Và tôi chắc chắn rằng nó không bị hỏng trước khi tôi đổi máy
CashCow

6

Trong trường hợp của tôi, đó là ReSharper.

Kiểm tra nếu ReSharper

StackOverflow: Làm cách nào tôi có thể tắt ReSharper trong Visual Studio và kích hoạt lại?

Ngăn ReSharper định dạng lại mã

StackOverflow: Có cách nào để đánh dấu mã để nói với ReSharper không định dạng nó không?

Cập nhật

Đó là ReSharper cuối cùng:

nhập mô tả hình ảnh ở đây


2
Cảm ơn, điều này đã khiến tôi phát điên.
Simon Arnold

1
Đồng ý, các dấu ngoặc luôn ở sai vị trí, và nó thực sự giẫm lên mã với một khởi động shod nặng mỗi khi bạn nhấn một dấu chấm phẩy. Không mát mẻ.
Contango

5

Bạn có thể đã cài đặt Power Tool .

Trong trường hợp này, bạn có thể tắt nó từ 'Công cụ> Tùy chọn> Công cụ năng suất năng suất> PowerCommands> Chung'

nhập mô tả hình ảnh ở đây


4

Theo đề xuất của @TheMatrixRecoder đã mất một chút tìm kiếm cho tôi vì vậy có lẽ điều này sẽ giúp người khác. Tùy chọn VS 2017 có thể được tìm thấy ở đây

Chọn các tùy chọn này để ngăn định dạng tự động gây phiền nhiễu khi bạn đặt dấu chấm phẩy hoặc nhấn return ở cuối dòng.


3

Trong VS2017, bạn có thể thay đổi nó sau khi chọn ngôn ngữ mã hóa trong menu cài đặt. Có một tùy chọn gọi là "Dòng mới" trong "Định dạng" -submenu.


2

Tôi nghi ngờ rằng bạn có thể vô hiệu hóa định dạng lại sau khi tái cấu trúc. Tái cấu trúc thay đổi mã và vì nó chỉ là văn bản Tôi nghi ngờ điều bạn muốn là nó chỉ đưa văn bản chưa được định dạng vào nguồn của bạn. Sẽ không dễ dàng hơn một chút nếu chỉ đặt kiểu mã VS tuân thủ theo kiểu bạn thích và làm theo?


1
Đôi khi phong cách mã hóa không thể thuật toán hóa. Đôi khi nó cố tình không nhất quán vì một người đóng góp cho một dự án với phong cách mã hóa không nhất quán và muốn tuân thủ phong cách mã hóa của đoạn mã cụ thể đang được chỉnh sửa.
Palec

2

Không thể tắt định dạng lại dấu chấm phẩy hoặc dấu ngoặc đóng. Tôi thấy điều đó làm Microsoft bực mình sẽ nói với bất kỳ ai về cách định dạng mã; mã bất hợp pháp nhất tôi từng thấy là khi làm việc ở đó.

Tôi muốn các bài tập liền kề được sắp xếp theo chiều dọc; VS định dạng lại chúng thành một khoảng trắng ở hai bên của dấu bằng không phân biệt độ dài của biến ở bên trái. Điều này là không thể chịu đựng được. Và tắt nó đi trên các tùy chọn biên tập được bỏ qua; đưa ra ý kiến ​​như người mở ở trên tôi chắc chắn đây là cố ý.

Kiên định chỉ là một đức tính khi nó dẫn đến kết quả mong muốn. Đây không phải là một.


2

Cài đặt VS2015 giúp tôi ngăn định dạng tự động:

(và Công cụ> Tùy chọn> Trình chỉnh sửa văn bản> Cơ bản> Nâng cao, giống như Tango91 được đề xuất)

nhập mô tả hình ảnh ở đây


1

Thực hiện theo CÔNG CỤ-> TÙY CHỌN-> Trình soạn thảo văn bản-> CSS-> Định dạng Chọn "Quy tắc nhỏ gọn" và bỏ chọn "thụt lề Hiearerchical"


Trình chỉnh sửa văn bản -> CSS hoặc HTML -> Tab -> thụt lề -> (o) Không có
Bob Stein

1

Nó có thể là trường hợp của Clang Format. Trước đây, toàn bộ tệp được định dạng tự động khi lưu tệp và nó khiến tôi thất vọng (đối với các kho lưu trữ mà Định dạng Clang không được bật).

Hành vi như vậy sẽ biến mất sau khi chuyển "Công cụ -> Tùy chọn -> LLVM / Clang -> ClangFormat -> Định dạng khi lưu -> Bật" thành Sai.

Định dạng ClangFormat khi lưu


0

Bạn có thể điều chỉnh các cài đặt của định dạng mã. Tôi luôn tắt tất cả các ngắt dòng bổ sung, và sau đó nó hoạt động tốt với cách tôi định dạng mã.

Nếu bạn điều chỉnh các cài đặt gần nhất có thể theo sở thích của bạn, điều đó sẽ khiến bạn làm việc tối thiểu bất cứ khi nào bạn sử dụng tái cấu trúc.


0

Ngoài câu trả lời của Tango cho giải pháp thực tế, có thể có người thực sự muốn duy trì hiện tại với các định dạng tự động nhưng không làm cho nó thay đổi các thay đổi có liên quan của bạn. Tôi sẽ đề nghị bạn sửa đổi tệp để kích hoạt định dạng tự động, kiểm tra các thay đổi đó, sau đó tiến hành các thay đổi thực tế bạn muốn thực hiện.

Bằng cách đó, mã của bạn có thể được cập nhật, nhưng đăng ký của bạn sẽ có liên quan.


0

Hãy thử tắt Bundler & Minifier mở rộng

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.