Dường như có hai phần mở rộng tự động hoàn thành chính cho emacs: chế độ tự động hoàn thành và chế độ công ty. Một số khác biệt thực tế giữa hai và khi nào tôi muốn sử dụng cái này hơn cái kia? Ngoài ra, chúng có tương thích với nhau không?
Dường như có hai phần mở rộng tự động hoàn thành chính cho emacs: chế độ tự động hoàn thành và chế độ công ty. Một số khác biệt thực tế giữa hai và khi nào tôi muốn sử dụng cái này hơn cái kia? Ngoài ra, chúng có tương thích với nhau không?
Câu trả lời:
Tôi đã sử dụng chế độ tự động hoàn thành trong một vài năm và đã chuyển sang chế độ công ty một vài tháng trước.
Trong sử dụng cơ bản không có nhiều sự khác biệt. Giống như một người khác đăng liên kết này có một bản tóm tắt tốt về sự khác biệt.
Tôi thấy chế độ công ty dễ cấu hình hơn và để nó làm những gì tôi muốn. Với chế độ tự động hoàn thành, tôi gặp vấn đề ngay bây giờ và sau đó là một cái gì đó không hoạt động theo cách tôi muốn và sau đó một cái gì đó khác rơi xuống khi điều chỉnh nó. Trong quá trình sử dụng, tôi hiếm khi cảm thấy chế độ công ty cản trở khi sử dụng Emacs trong khi chế độ tự động hoàn thành đã gây cản trở ngay bây giờ.
Ngoài ra, đối với các nhà phát triển, thật dễ dàng để thêm hỗ trợ cho các gói của họ vào chế độ công ty, xem: EmacsWiki: CompanyMode: Backends .
Chúng không tương thích với nhau. Hiện tại, có nhiều gói hỗ trợ chế độ tự động hoàn thành nhưng điều đó đang thay đổi nhanh chóng.
tl; dr. Họ làm khá nhiều điều tương tự. Bắt đầu với chế độ công ty và thử chế độ tự động hoàn thành nếu bạn bỏ lỡ bất cứ điều gì từ trước đây.
Chúng tương đối giống nhau, nhưng company-mode
có API chu đáo hơn cho các nhà phát triển plugin. Nó cũng được duy trì tích cực hơn nhiều. Nhưng có hai điểm khác biệt chính có thể có hoặc không quan trọng với bạn:
Đầu tiên, company-mode
bây giờ nhắm mục tiêu Emacs 24, vì vậy nếu bạn bị mắc kẹt với Emacs 23 thì bạn đã hết may mắn. auto-complete
vẫn hoạt động với Emacs 23.
Thứ hai, auto-complete
có cơ chế "tài liệu bật lên" hiển thị lớp phủ màu vàng giống như đầu công cụ trong bộ đệm hiện tại hiển thị thông tin về biểu tượng tại điểm. IIRC, company-mode
có thể lấy cùng một thông tin, nhưng nó hiện ở một cửa sổ riêng biệt ngay bây giờ.
Có một vấn đề được đưa ra cho vấn đề đó và dường như có thể company-mode
sẽ nhận được hỗ trợ tài liệu bật lên, có lẽ thông qua gói bổ trợ. Trong lịch sử, các cửa sổ bật lên như vậy có phần lỗi, vì vậy có thể đáng để làm quen với company
cách tiếp cận cửa sổ riêng biệt.
Nếu bạn bắt đầu từ bây giờ và bạn có Emacs 24, thì đó company-mode
là cách để đi.
comp-any
sẽ rõ ràng hơn company
.