Làm cách nào để tắt định dạng mã cho một số phần của mã bằng cách sử dụng nhận xét?


299

Tôi muốn vô hiệu hóa một cách chọn lọc bộ định dạng mã IntelliJ IDEA cho một phần mã giống như tôi có thể trong Eclipse . IntelliJ có hỗ trợ tính năng này không, và nếu vậy, làm cách nào để sử dụng nó?


1
Tài liệu chính thức để bỏ qua một phần mã bằng cách sử dụng nhận xét: jetbrains.com/help/idea/iêu
Mayank Patel

Câu trả lời:


542

Kể từ phiên bản 13, có thể bọc mã bằng

// @formatter:off
...
// @formatter:on 

IntelliJ IDEA v.14 +:

Tùy chọn> Trình chỉnh sửa> Kiểu mã> Điều khiển trình định dạng

IntelliJ IDEA v.2016 +:

Tùy chọn> Trình chỉnh sửa> Kiểu mã

IntelliJ IDEA v.2018 +:

Tệp> Cài đặt> Trình chỉnh sửa> Kiểu mã

Bạn có thể thay đổi các dấu kiểm soát định dạng, miễn là chúng ở trong các bình luận.


1
Hiện tại, @formatter:on(hoặc bất cứ điều gì bạn xác định) không làm gì trừ khi @formatter:offđã có mặt. Có nhiều cách khác để tắt định dạng lại - hoặc khiến trình soạn thảo không tự động định dạng lại mã của bạn. Tìm kiếm sở thích của bạn. Cài đặt này là để kiểm soát các phần không được định dạng lại khi thực hiện thủ công "Định dạng lại".
Louis St-Amour

85
Bạn phải đi đến Preferences-> Code Style-> General-> Formatter Controlvà kiểm tra xem Enable formatter markers in commentsnó có hoạt động không.
Heath

13
Trong 14, đây là trong Tùy chọn> Trình chỉnh sửa> Kiểu mã> Điều khiển định dạng
Emerson Farrugia

3
Trong phiên bản 2016.x, nó được tìm thấy trong Cài đặt> Trình chỉnh sửa> Kiểu mã.
Philippe

9
Tại sao tùy chọn này bị tắt theo mặc định? Có vẻ rất hữu ích để đặt các điểm đánh dấu trong mã và hạn chế định dạng cho toàn đội.
Timur Yarosh

173

Lưu ý cho câu trả lời @formatter:off@formatter:onđể làm việc của Carlos , trước tiên bạn có thể cần bật tùy chọn:

Trong Tùy chọn IntelliJ, bên dưới Kiểu mã, Chung, Điều khiển Trình định dạng có một hộp kiểm "Bật đánh dấu định dạng trong nhận xét"

Được phát hiện thông qua Làm thế nào để cấu hình intellij-idea không định dạng một phần của mã?

IDEA-56995 Định dạng mã bị vô hiệu hóa cho mỗi vùng bằng cách sử dụng nhận xét


7
Tôi muốn vô hiệu hóa điều này trên toàn bộ dự án
mmm

4
Tùy chọn tìm kiếm cho "Định dạng lại" để xem các hộp kiểm cho khá nhiều cách tự động định dạng lại mã IntelliJ: khi dán, gõ một dấu ngoặc đóng, từ các mẫu ... Bạn thực sự có thể khai thác nếu muốn thay đổi chức năng. Không phải là nó luôn có ý nghĩa. Sử dụng hỗ trợ của IntelliJ nếu đặt câu hỏi hoặc trình theo dõi lỗi của họ nếu đưa ra đề xuất.
Louis St-Amour

1
Cũng có thể là việc kích hoạt các biểu thức chính quy, sau đó sử dụng .làm hướng dẫn tắt định dạng của bạn có thể hoạt động. Miễn là dòng đầu tiên trong tệp của bạn có thể được định dạng lại. Không có đảm bảo mặc dù. :)
Louis St-Amour

26

Trong tệp xml sử dụng:

<!-- @formatter:off -->
<!-- @formatter:on -->

2
Không hoạt động trong các tệp xml. Android Studio 3.4.1 dựa trên Intelli-J.
Vito Valov

Nó không hoạt động trong IntelliJ IntelliJ IDEA 2020.1.2 trừ khi bạn kích hoạt sau đó, trong Tệp File / Cài đặt / Trình chỉnh sửa / Kiểu mã, trong phần Điều khiển định dạng dữ liệu.
Tony Falabella

9

Câu trả lời lỗi thời từ năm 2010:

Không, không thể ngay bây giờ, tôi đã gửi một vấn đề mới mà bạn có thể theo dõi.

Là một giải pháp tạm thời, bạn có thể sử dụng trình cắm thêm định dạng bên ngoài cho IDEA, có thể sử dụng trình định dạng mã Eclipse (Tôi không kiểm tra xem tùy chọn cụ thể này có được hỗ trợ hay không).


2
ty để gửi vấn đề của bạn, ngay cả khi 5 năm trước - hôm nay nó đã giúp tôi :-)
Gizzmo


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.