Tôi đã cố gắng hơn một năm nay để sử dụng Emacs làm IDE C / C ++. Tôi chỉ thành công ngoài lề cho đến nay, nhưng đã chạy vào một vài bức tường gạch trên đường đi. Hiện tại tôi đang cố gắng sử dụng CEDET, nhưng tôi đang có một thời gian khó hiểu làm thế nào để sử dụng nó một cách hiệu quả.
Các tính năng mà tôi đang tìm kiếm trong một IDE như sau:
- Quản lý "dự án" phần mềm. Tôi muốn IDE của tôi có ý thức về tất cả các tệp tạo nên dự án hiện tại của tôi để tôi có thể thực hiện các chức năng như tìm kiếm và thay thế trong dự án của mình. (Sẽ thật tuyệt nếu tôi cũng có thể đạt được điều này mà không cần xả rác cây nguồn của mình với nhiều tệp hỗ trợ. Tại sao tôi cần nhiều hơn một tệp dự án tập trung cho mỗi dự án?)
- Khả năng xây dựng dự án hiện tại từ bên trong IDE, bất kể tôi đang truy cập bộ đệm nào. Tôi cần có khả năng ràng buộc một khóa sẽ xây dựng dự án hiện tại.
- Báo cáo lỗi. Tôi không muốn phải đọc hơn 500 dòng đầu ra để tìm các lỗi được báo cáo bởi các công cụ xây dựng. Tốt hơn là, các lỗi hiển thị trong bộ đệm rất riêng của họ với một dòng trên mỗi lỗi.
- Nhận thức về các biểu tượng trong dự án và nơi chúng được xác định. Tôi muốn chuyển đến một định nghĩa biểu tượng cho dù nó sống trong các tệp dự án của tôi hoặc trong hệ thống bao gồm các tệp.
- Gỡ lỗi trực quan. Tôi muốn có một danh sách theo dõi các biến cục bộ tự động cập nhật khi tôi bước qua mã. Tôi muốn có thể đặt các điểm dừng trong mã để xem dòng mã nào sẽ được thực thi tiếp theo.
Tôi biết rằng mỗi tính năng này tồn tại bởi vì tôi đã có từng tính năng này hoạt động lúc này hay lúc khác bằng EDE, Semantic, GDB, v.v. Vấn đề là tôi chưa bao giờ có thể có tất cả các tính năng này hoạt động cùng một lúc , bởi vì mỗi phần thường phải được cấu hình bởi chính nó và thường là quá nhiều công việc để tìm ra cách cấu hình tất cả chúng cùng một lúc và làm cho chúng hoạt động cùng nhau.
Những giải pháp nào tồn tại để biến Emacs thành IDE C / C ++ đầy đủ tính năng? Bạn luôn phải định cấu hình mọi thứ từng phần, hoặc có cách nào để thiết lập tất cả các tính năng tại một thời điểm không?
EDIT: Một câu trả lời tốt cho câu hỏi này không nhất thiết phải đáp ứng chính xác cả năm tiêu chí đã cho. Tôi chỉ đơn giản cung cấp danh sách để đưa ra ý tưởng cụ thể hơn về loại tính năng tôi muốn xem trước khi tôi coi IDE là "đầy đủ tính năng". Hoàn toàn có khả năng CEDET có thể phù hợp với dự luật, nhưng tôi vẫn chưa tìm thấy hướng dẫn từng bước làm việc về cách thiết lập nó từ đầu.