2010-01-20 37 views
10

Tôi đang sử dụng Eclipse 3.5.1 (Galileo) và đang gặp sự cố với một trong các cài đặt định dạng tự động.Làm thế nào để cấu hình trình định dạng Eclipse để không chèn dòng trống giữa các khai báo trường?

Tại thời điểm khi tôi tự động định dạng một dòng trống được chèn vào giữa mỗi và mọi khai báo trường. Hành vi mà tôi đang tìm kiếm là tổ chức khai báo trường mà không có một dòng trống giữa. Ngoại trừ trong trường hợp đã có một hoặc nhiều dòng trống giữa các khai báo, trong trường hợp đó tôi muốn trình định dạng tôn trọng không gian và giảm> = 1 dòng thành 1 dòng.

Tôi biết điều này là có thể tại một số điểm với Eclipse (không thể nhớ phiên bản nhưng tôi đã sử dụng cài đặt cho điều này), nhưng tôi dường như không thể tìm thấy cài đặt chính xác trong Window->Preferences->Java->Code Style->Formatter.

Tôi phải định cấu hình cài đặt nào để bật hành vi này?


EDIT: Có vẻ như hành vi của tôi đang mô tả là mặc định, và đối với một số lý do tôi không thể tìm thấy một cách để quay trở lại mà không loại bỏ thư mục .settings. Nó cũng không thể được sao chép, cho thấy rằng nó là một cái gì đó kỳ lạ với các thiết lập dự án (nó được kiểm tra từ một dự án mã nguồn mở). Mặc dù tôi đã tìm thấy một cách hacky để sửa lỗi này, tôi vẫn đang tìm kiếm các đề xuất và sẽ có thể xác minh và chấp nhận câu trả lời.

Trả lời

1

Tôi đã tìm ra giải pháp kém cho vấn đề của mình.

Tôi đã đi đến dự án và xóa thư mục .settings và khởi động lại Eclipse. Trong quá trình tôi mất tất cả các quy tắc định dạng khác của tôi tất nhiên, đó là lý do tại sao nó hút.Nhưng các dòng trống không còn được thêm vào, và hành vi mà tôi mô tả là hành vi mặc định (có thể là lý do tại sao tôi đã quen với nó).

Tôi vẫn hy vọng chấp nhận giải pháp tốt hơn cho điều này, tôi đã giữ cài đặt cũ xung quanh để xác minh bất kỳ đề xuất nào.


EDIT: Tôi nghĩ rằng tôi đã tìm thấy sự cố.

Vì một số lý do, có thể liên quan đến cài đặt dự án đang được kiểm tra, bất kỳ cài đặt nào tôi đã chọn thông qua Tùy chọn đều không thực sự được vinh danh. Vì vậy, mặc dù các sở thích được đề xuất bởi Von C là đúng, việc thay đổi chúng không có hiệu lực. Tôi đã có cùng một vấn đề cố gắng để thay đổi các bình luận được tạo tự động, nhưng không đặt hai và hai với nhau (những gì thực sự cảnh báo tôi cho điều này cuối cùng đã nhìn thấy "ARGH" được tạo ra trong một bình luận tôi dường như không thể loại bỏ: p).

Vì vậy, trong trường hợp này, vấn đề không thực sự là cài đặt, nhưng một cái gì đó khác trong Eclipse tôi thậm chí không muốn điều tra.

+0

+1. Bạn có thể sao chép tệp cài đặt định dạng của bạn, từng phần (với một khởi động lại giữa mỗi bổ sung) để xem liệu một trong các phần định dạng đó có ảnh hưởng đến vấn đề "dòng trống" này không? – VonC

+0

Xem chỉnh sửa của tôi, tôi không nghĩ điều đó thực sự hữu ích với vấn đề cơ bản. Cảm ơn VonC. – Grundlefleck

+0

Tôi vừa thêm vào câu trả lời của tôi tập tin cài đặt chính xác với các tùy chọn định dạng. Đó là nhiều hơn cho tôi để nhớ, bởi vì bạn nói trong chỉnh sửa của bạn, bạn không thể dễ dàng tái tạo vấn đề, nhưng nó vẫn còn giá trị một cố gắng để trống/điền lại rằng tập tin thiết lập chỉ trong trường hợp. – VonC

4

Lạ, tôi không thể sao chép hành vi đó bằng hồ sơ trình định dạng của riêng mình (eclipse3.5.1).

Đã có cài đặt trở lại vào năm 2003 (bug 38523) thành "Chèn dòng mới sau mỗi tham số nếu dòng quá dài", nhưng điều này đã được tích hợp vào bảng "Gói hàng" từ lâu.

Bạn có chắc chắn các dòng mới không được thêm vì vấn đề gói (do độ dài dòng tối đa quá ngắn) không?

Tab "Dòng trống" có phần "Dòng trống hiện tại", với trường "Số dòng trống để bảo toàn" có thể được đặt thành 1 và phải giải quyết phần sau của yêu cầu của bạn.
Trong cùng một tab "Dòng trống", hãy kiểm tra giá trị của "Khai báo trước trường": "1" có thể giải thích các dòng trống mà bạn thấy.

alt text http://www.comscigate.com/environ/Eclipse/Conventions/BlankLines.gif


Các định dạng tùy chọn là trong file org.eclipse.jdt.ui.prefs, đó là:

  • hoặc trong không gian làm việc của bạn (.metadata.plugins \ org.eclipse.core.runtime. cài đặt)
  • hoặc trong .settings của dự án của bạn.

Bạn có thể thử và xóa tệp đó để kiểm tra xem sự cố vẫn còn. Nó làm rõ vấn đề, hãy thử thêm một số dòng vào tập tin đó, đến mức mà vấn đề trở lại.

+0

Cảm ơn câu trả lời của bạn. Tôi khá chắc chắn nó không phải là dòng gói - tôi đã có thể phải nhầm lẫn thay đổi đó để một cái gì đó thực sự nhỏ, như 'int a; int b; 'nhận được một dòng mới giữa chúng. Điều kỳ lạ là, trong phiên bản tab trống của tôi, ví dụ thực sự là tôi muốn nó, không có thêm dòng nào, nhưng định dạng vẫn chèn thêm một dòng. Tôi có không gian làm việc khác với cùng một Eclipse, vì vậy tôi sẽ kiểm tra cài đặt của họ để xem những gì khác nhau. Chúc mừng. – Grundlefleck

+0

Để làm rõ, khi tôi nói "' int a; int b; 'nhận được một dòng mới giữa chúng", tôi có nghĩa là a và b đã có trên các dòng riêng biệt và một dòng trống thừa được chèn vào. – Grundlefleck

+0

@Grundlefeck: đã hiểu. Điều này là khá bí ẩn, sau đó. Có thể là tương tác với plugin được cài đặt không? Bạn có quan sát điều tương tự về cài đặt Eclipse mới (với các cài đặt của bạn được xuất/nhập lại) không? Dù sao, nếu bạn tìm thấy câu trả lời, tôi quan tâm;) – VonC

6

Format-Config

Eclipse tôi đang sử dụng là:

Eclipse Java EE IDE for Web Developers. 
Version: Indigo Service Release 2 
Build id: 20120216-1857 

Như hình trên cho thấy, có một 'giữa các nhóm nhập khẩu' dưới tab dòng trống và nó làm việc cho tôi. Bạn có thể kiểm tra xem nó ra.

+0

hãy chỉ định đường dẫn để thiết lập hộp thoại ở trên –

+1

Để thiết lập hộp thoại ở trên, bạn vào Window-> Preferences-> Java-> Code Style-> Formatter-> Edit ...-> Blank Lines – wassup

+0

Đó là một phép lạ mà bất cứ ai cũng có thể tìm thấy mọi thứ trong cửa sổ tùy chọn –

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