Quali sono le differenze tra il completamento automatico e la modalità azienda?


52

Sembrano esserci due principali estensioni di completamento automatico per emacs: completamento automatico e modalità aziendale. Quali sono alcune delle differenze pratiche tra i due e quando vorrei usarne uno rispetto all'altro? Inoltre, sono compatibili tra loro?


1
Cosa intendi con "Inoltre, sono compatibili tra loro?" ? Stai chiedendo se possono essere utilizzati contemporaneamente? O se le fonti di uno possono essere utilizzate dall'altro?
Malabarba,

Se possono usare le stesse fonti
Connor

3
github.com/company-mode/company-mode/issues/68 (non c'è molto altro da aggiungere).
shosti,

Risposte:


34

Ho usato la modalità di completamento automatico per alcuni anni e sono passato alla modalità azienda un paio di mesi fa.

Nell'uso di base non c'è molta differenza. Come qualcun altro ha pubblicato questo link ha un buon riassunto delle differenze.

Ho trovato la modalità azienda più facile da configurare e lasciare che facesse quello che volevo. Con la modalità di completamento automatico mi sono imbattuto in problemi di tanto in tanto di qualcosa che non funzionava come volevo e poi qualcos'altro che cade quando lo modifico. Nell'uso, raramente sento che la modalità azienda è in mezzo quando si utilizza Emacs mentre la modalità di completamento automatico si è messa in mezzo di tanto in tanto.

Inoltre, per gli sviluppatori è facile aggiungere il supporto per i loro pacchetti in modalità aziendale, vedere: EmacsWiki: CompanyMode: Backends .

Non sono compatibili tra loro. Per ora, ci sono più pacchetti che supportano la modalità di completamento automatico ma che sta cambiando rapidamente.

tl; dr. Praticamente fanno la stessa cosa. Inizia con la modalità azienda e prova la modalità di completamento automatico se manchi qualcosa del primo.


39

Sono praticamente equivalenti, ma company-modeha un'API pensata meglio per gli sviluppatori di plug-in. È anche molto più attivamente mantenuto. Ma ci sono due differenze chiave che potrebbero interessarti o meno:

Innanzitutto, company-modeora prende di mira Emacs 24, quindi se sei bloccato con Emacs 23, sei sfortunato. auto-completefunziona ancora con Emacs 23.

In secondo luogo, auto-completeha un meccanismo "popup docs" che mostra un overlay giallo simile a un tool-tip nel buffer corrente che mostra informazioni sul simbolo nel punto. IIRC, company-modepuò inserire le stesse informazioni, ma lo fa in una finestra separata in questo momento.

C'è un problema presentato per questo, e sembra probabile che company-modeotterrà il supporto dei documenti popup, forse tramite un pacchetto aggiuntivo. Storicamente, tali finestre popup sono state in qualche modo buggy, quindi potrebbe valere la pena abituarsi companyall'approccio a finestre separate.

Se stai ricominciando da capo ora e hai Emacs 24, company-modeè la strada da percorrere.


11
A parte questo, penso che il nome sia sfortunato. Avevo supposto che la modalità azienda avesse a che fare con la gestione di progetti multiutente (come in un progetto gestito da un'azienda). Lo avrei trovato prima se avesse un nome ovvio come fa il completamento automatico!
Tyler,

12
Sì, comp-anysarebbe stato più chiaro di company.
sanityinc
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.