2009-05-08 44 views
127

Có rất nhiều công cụ định dạng mã nguồn ngoài đó. Mà những người làm việc tốt nhất cho C + +?Trình định dạng mã C++ tốt nhất/Làm đẹp

Tôi quan tâm đến các công cụ dòng lệnh hoặc những thứ khác có thể tự động chạy khi kiểm tra mã vào/ra, tốt nhất là không cần khởi chạy trình soạn thảo hoặc IDE.

(Nếu bạn thấy một trong những bạn thích đã được liệt kê như là một câu trả lời, bầu nó lên. Nếu nó không có ở đó, thêm nó.)

Trả lời

120

AStyle thể được tùy chỉnh rất chi tiết cho C++ và Java (và những người khác quá)

Đây là công cụ định dạng mã nguồn.


clang-format là một mạnh mẽ dòng lệnh công cụ đi kèm với trình biên dịch kêu vang mà xử lý ngay cả những cấu trúc ngôn ngữ tối nghĩa nhất một cách chặt chẽ.

Nó có thể được tích hợp với Visual Studio, Emacs, Vim (và những người khác) và có thể định dạng chỉ các dòng được chọn (hoặc với git/svn để định dạng một số khác biệt).

Nó có thể được định cấu hình với nhiều tùy chọn khác nhau được liệt kê here.

Khi sử dụng tệp cấu hình (tên .clang-format) kiểu có thể cho mỗi thư mục - tệp gần nhất trong thư mục mẹ sẽ được sử dụng cho một tệp cụ thể.

Styles có thể được thừa hưởng từ một cài đặt trước (nói LLVM hoặc Google) và sau đó có thể ghi đè tùy chọn khác nhau

Nó được sử dụng bởi Google và những người khác và là sản xuất sẵn sàng.


Đồng thời xem dự án UniversalIndentGUI. Bạn có thể thử nghiệm với một số indenters bằng cách sử dụng nó: AStyle, Uncrustify, GreatCode, ... và chọn tốt nhất cho bạn. Bất kỳ người trong số họ có thể được chạy sau đó từ một dòng lệnh.


Uncrustifynhiều các tùy chọn cấu hình. Có thể bạn sẽ cần Universal Indent GUI (trong trả lời của Konstantin) cũng như cấu hình nó.

+1

Chúng tôi có một số tệp nguồn lộn xộn đầy các macro phức tạp, khiến bạn khó hiểu cách sửa đổi mã hoặc đặt điểm ngắt. Chúng tôi đã loại bỏ nó bằng gcc -E, dẫn đến các dòng rất dài được lồng vào nhau cho các vòng lặp, nếu các câu lệnh ... Astyle cố định để có thể đọc được, tiết kiệm cho chúng ta rất nhiều rắc rối. Astyle có một vị trí cố định trên phần mềm công cụ của tôi! – DarenW

+8

Mẹo Vim: nếu bạn muốn làm đẹp mã trong tệp bạn đang chỉnh sửa hiện tại, hãy sử dụng:%! Astyle – tonylo

+0

Đây là một công cụ tuyệt vời. Tôi chạy astyle mỗi khi tôi phải làm việc trên cùng một dự án với cả MSVStudio trên windows (tại nơi làm việc) và emacs trên linux (ở nhà). Tôi sử dụng phong cách BSD với các emacs và astyle (gần giống với phong cách tôi sử dụng với trình soạn thảo MSVC), và tôi luôn có mã nguồn thụt lề đúng cách. Nó thậm chí trông đẹp độc lập với kích thước tab! –

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