Apa perbedaan antara mode pelengkapan otomatis dan mode perusahaan?

52

Tampaknya ada dua ekstensi pelengkapan otomatis utama untuk emacs: mode pelengkapan otomatis dan perusahaan. Apa perbedaan praktis antara keduanya dan kapan saya ingin menggunakan yang satu? Juga, apakah mereka kompatibel satu sama lain?

Connor
sumber
1
Apa yang Anda maksud dengan “Juga, apakah mereka kompatibel satu sama lain?” ? Apakah Anda bertanya apakah mereka dapat digunakan pada saat yang sama? Atau jika sumber yang satu dapat digunakan oleh yang lain?
Malabarba
Jika mereka dapat menggunakan sumber yang sama
Connor
3
github.com/company-mode/company-mode/issues/68 (tidak banyak lagi untuk ditambahkan).
shosti

Jawaban:

34

Saya telah menggunakan mode autocomplete selama beberapa tahun dan beralih ke mode perusahaan beberapa bulan yang lalu.

Dalam penggunaan dasar tidak ada banyak perbedaan. Seperti orang lain yang memposting tautan ini memiliki ringkasan perbedaan yang bagus.

Saya menemukan mode perusahaan menjadi lebih mudah untuk dikonfigurasi dan membiarkannya melakukan apa yang saya inginkan. Dengan autocomplete-mode saya mengalami masalah sekarang dan kemudian dari sesuatu yang tidak berfungsi seperti yang saya inginkan dan kemudian sesuatu yang lain jatuh ketika men-tweak. Dalam penggunaannya, saya jarang merasa mode-perusahaan menghalangi ketika menggunakan Emacs sementara mode-autocomplete memang menghalangi sekarang dan kemudian.

Juga, untuk pengembang mudah untuk menambahkan dukungan untuk paket-paket mereka ke mode perusahaan, lihat: EmacsWiki: CompanyMode: Backends .

Mereka tidak kompatibel satu sama lain. Untuk saat ini, ada lebih banyak paket yang mendukung mode autocomplete tetapi itu berubah dengan cepat.

tl; dr. Mereka cukup banyak melakukan hal yang sama. Mulailah dengan mode perusahaan dan coba mode autocomplete jika Anda melewatkan sesuatu dari yang sebelumnya.

aerique
sumber
39

Mereka cukup setara, tetapi company-modememiliki API pemikiran yang lebih baik untuk pengembang plugin. Itu juga jauh lebih aktif dipertahankan. Tetapi ada dua perbedaan utama yang mungkin atau mungkin tidak penting bagi Anda:

Pertama, company-modesekarang targetkan Emacs 24, jadi jika Anda terjebak dengan Emacs 23 maka Anda kurang beruntung. auto-completemasih bekerja dengan Emacs 23.

Kedua, auto-completememiliki mekanisme "popup docs" yang menampilkan overlay kuning tool-tip-like di buffer saat ini yang menampilkan info tentang simbol pada titik. IIRC, company-modedapat menarik info yang sama, tetapi melakukannya di jendela terpisah sekarang.

Ada masalah yang diajukan untuk itu, dan sepertinya company-modeakan mendapatkan dukungan popup doc, mungkin melalui paket tambahan. Secara historis, jendela sembulan seperti itu agak buggy, jadi mungkin ada baiknya membiasakan diri dengan companypendekatan jendela terpisah.

Jika Anda memulai dari awal sekarang, dan Anda memiliki Emacs 24, company-modeadalah cara untuk melakukannya.

sanityinc
sumber
11
Selain itu, saya pikir nama itu disayangkan. Saya berasumsi bahwa mode-perusahaan ada hubungannya dengan mengelola proyek multi-pengguna (seperti dalam proyek yang dijalankan oleh perusahaan). Saya akan menemukannya lebih awal jika memiliki nama yang jelas seperti autocomplete!
Tyler
12
Ya, comp-anyakan lebih jelas daripada company.
sanityinc