2011-06-08 30 views

Trả lời

5

Window-> Preferences-> Java-> Mã còn phong cách> Formater-> Edit-> Dòng wrapping-> Không bao giờ tham gia vào đường dây đã quấn

+1

Điều đó không hiệu quả. – Johann

+1

Tôi xin lỗi tôi đã không giải thích: Nó sẽ không định dạng nó. Nó sẽ chỉ đơn giản là không mess nó lên, nếu bạn làm điều đó bằng tay. –

+0

Bây giờ tôi đã hiểu. Eclipse thực sự không thể định dạng các phương thức chuỗi nhưng nó sẽ giữ nguyên định dạng như tôi đã gõ. Cảm ơn. – Johann

6

Window> Preferences> Java> Code Style> Formater> Edit> Dòng wrapping> Function Calls, thiết lập 'Line wrapping policy' là 'Wrap tất cả các phần tử, mọi phần tử trên một dòng mới'.

+0

Điều này sẽ đặt trên dòng mới mọi cuộc gọi hàm, ngay cả khi chúng không bị xâu chuỗi và nếu bạn định dạng tệp của mình bằng Ctrl + Shift + f, nó sẽ làm hỏng mọi thứ \ –

+1

Các chính sách khác cũng có sẵn, ví dụ: "Bọc tất cả các phần tử, trừ phần tử đầu tiên nếu không cần thiết". Một trong số họ nên làm việc cho bạn :) –

2

Nếu bạn sẵn sàng làm việc định dạng các phân đoạn đó cho mình, bạn có thể ngăn nhật thực từ dạng những phân đoạn bằng cách sử dụng:

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

Bạn có thể cần phải kích hoạt này trong tùy chọn của bạn: http://archive.eclipse.org/eclipse/downloads/drops/R-3.6-201006080911/eclipse-news-part2.html#JavaFormatter

Xem thêm: How to turn off the Eclipse code formatter for certain sections of Java code?

137

Bổ sung câu trả lời của Deepak Azad, những gì bạn cần chính xác như sau:

của Windows: Window → Preferences → Java → Mã Phong cách
→ Formatter → Edit → Dòng gói (tab)

Mac OS: ADT → Preferences → Java → Mã Phong cách
→ Trình định dạng → Chỉnh sửa → Gói hàng (tab)

Sau đó, trong danh sách ở bên trái, hãy chọn:

Chức năng cuộc gọi → Qualified invocations

Bây giờ bên dưới danh sách này, thiết lập Dòng gói chính sách tới:

Quấn tất cả các yếu tố, ngoại trừ yếu tố đầu tiên nếu không cần thiết

Kiểm tra:

Force tách, ngay cả khi dòng ngắn hơn so với dòng tối đa chiều rộng

Cuối cùng, thiết lập chính sách Indentation đến (nhờ @Turbo):

Indent trên cột

Nó nên cung cấp cho bạn hành vi chính xác mà bạn yêu cầu.


BONUS: Android Studio/IntelliJ Idea:

Mac OS: Android Studio → Preferences (Cmd +,) → Biên tập → Mã Phong cách → Java → Wrapping Và niềng răng tab → Các cuộc gọi phương thức được gọi là

chọn

Bọc luôn

và kiểm tra

Align khi multiline

+4

Điều này thật tuyệt vời! Cảm ơn bạn. Tôi cũng muốn thêm nếu bạn muốn các cuộc gọi bị xích theo dõi trực tiếp bên dưới những người khác (thay vì thụt lề tiêu chuẩn của bạn), sau đó cũng thay đổi chính sách _indentation_ (trình đơn thả xuống) thành _indent trên cột_. –

+0

Đóng góp tuyệt vời @Turbo! Thêm những gì bạn nhận xét, nó bao gồm 100% các yêu cầu câu hỏi;) Tôi sẽ chỉnh sửa câu trả lời của tôi để nó bao gồm mọi thứ. Cảm ơn! –

+0

Tôi không thể tìm thấy 'lời gọi đủ điều kiện' như một mục ở bên trái, chỉ đối số và đối số phân bổ đối tượng. Có một plugin đặc biệt cần thiết để có mặt hàng đó không? – scravy

-1

Tùy chỉnh định dạng eclipse của bạn trong cả java và javascript. tăng dòng tối đa phù hợp với màn hình của bạn. Windows>preferences

Edit

0

Đối với những người có mã nhật cài đặt định dạng kiểm tra vào kiểm soát nguồn (mã phù hợp định dạng trên toàn bộ đội), thư mục .settings được kiểm tra trong.

Thuộc tính rằng sẽ cung cấp cho bạn hành vi định dạng này nằm trong tệp .settings/org.eclipse.jdt.core.prefs.

tài sản là:

org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80 
0

trong: Window-> Preferences-> Java-> Mã còn phong cách> Formater-> Edit-> Dòng wrapping-> Chức năng call-> Qualified gọi

chọn Chính sách thụt lề như thụt lề trên cột

Các vấn đề liên quan