-
-
Notifications
You must be signed in to change notification settings - Fork 228
More info about how this compares to auto-complete #68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I'm very interested about more details from @dgutov too, but speaking for me (I switched to company-mode 3 days ago), I can say that it is MUCH simpler to get it working and to configure it. Also it always seem to work, whereas with auto-complete I often went into "it should work but doesn't" mode. I forgot where it is but there are examples of auto-complete source vs company source and company source takes half the lines and is easy to understand. |
Roughly. Here's a quick difference list: Company doesn't have:
Auto-Complete doesn't have:
It uses Company doesn't have a correspondence to A "graphical" documentation popup might look neat (aside from eating all syntax highlighting), but it also requires a certain amount of horizontal space in the current window to the right of the completion popup menu. What if your windows are 80-100 columns wide and you're typing something at the end of a line? The popup rectangle is squished against the window border. Things should be better when AC is using pos-tip to render the documentation popup, but I haven't tried it for quite a while, and judging by the MELPA stats it's a lot less popular than Auto-Complete itself. Writing a Company frontend that would show the doc-buffer contents using
In short, less than readable code and non-responsive maintainer. There's an annoying, still-present issue with AC that if you initiate completion in the middle of a symbol, it will insert the candidate, and also keep the part of the symbol that was already present after point. I tried to fix it a while ago, got essentially no response, and in the process concluded I didn't really want to touch AC source code ever again. The way they've been discussing the vaporware full-rewrite a year ago gives an impression that the author doesn't like the code either (at least not anymore). Company just has a convention whereby
Here's a typical example: https://github.com/company-mode/company-inf-ruby/blob/master/company-inf-ruby.el (The functionality is pretty much the same). |
Your involvement in company-mode was actually the number one reason I wanted to take a closer look. Your name has been popping up all over Github with quality pull requests and comments. Robe is also brilliant. Your response above is just another case in point 😄 Regarding the difference in features I never could get You might consider making a version of your post above available somewhere, where potential users can be made aware of the differences. When I have some free time I'll do |
Thanks!
I've recently added
I'll just link to this issue, for now. :) |
It seems that company-mode doesn't have similar functionalities as Update: I later saw there is |
I think
This should be easy to fix. Can you describe what other substitutions should we make? Link to the official documentation, if you can.
It isn't, but you can, if you really want to. Or write your own backend which will return a pre-saved list of words, that's really easy. And if we're missing any (actual) keywords for any of the languages you're interested in, please report that, they will be added. |
Thanks for your reply! As for |
I can help to fix the cmake issue this weekend, if you wish. create a independent issue and add steps to reproduce then assign it to me. |
@hongxuchen @redguardtoo #197 created. |
@dgutov Has any progress been made/are there plans to implement the |
@IvanMalison None so far/there still are. |
Unless I'm missing it, another huge advantage of auto-complete over company is the documentation. |
I guess so. I don't know how huge it is, though. For most usage, the homepage and user option descriptions should be sufficient. |
Where are the user option descriptions documented? I am trying to switch from auto-complete to company, but I am having a hard time configuring company the way I like, and the lack of docs is not helpful. I was able to find some stuff by searching So I'm not even talking about docs for developers of extensions, it's purely docs for users. The website says almost nothing and README is literally empty. |
The website says:
By writing some Lisp. There no built-in option, but search the issues for instructions. |
Try this.
and if you want cycle the other way too, all you must do is copy and paste the function
and replace the
Short, copy and paste this snippet into your dot emacs file or any other config file.
|
Thanks @luxchris. Would make sense for a negative prefix argument to cycle |
@luxchris Why don't you create a new wiki page with instructions? |
@luxchris Yes please! |
@dgutov I just tested your latest 5e107fd commit. Works like a charm! Unfortunately moving forward with TAB does not work anymore. Instead it seams like the mini-buffer documentation of the current completion candidate gets updated, however, the key C-i works. But I prefer C-n and C-p for next and previous candidate, anyway. My previous comment #68 is now more or less superfluous. To cycle forward or backward someone can now achieve this by defining the following key bindings.
PS.: Should I still write a wiki, at least I/we could create a page with some useful key bindings, like that ones. Chears, Christian |
Works for me. Please file an issue with step-by-step repro, and include the beginning of
If you like. Probably not for this snippet, but anytime you want to post a bunch of code, a wiki page (or a pull request, actually) would likely be better. |
Note: there's now a third-party package to add doc string popups to company: company-quickhelp. Better yet: it uses pos-tip instead of popup.el, meaning it actually works well. |
Thanks for the reminder, updated. |
The configuration's a bit simpler and it seems much more extensible. See more reasons for switching here: company-mode/company-mode#68
Might not be the best place for this question but I thought it was relevant. Is there a way in company to replicate how auto-complete initiates completions? Maybe a video would be better to describe this, but that's another thing I noticed between the two. (I believe company does something similar to the above but only when there's one completion candidate available). |
@jojojames You're right, it's another difference. See #123. |
@dgutov Thanks for the |
There's one more thing to add now: since 2017, the auto-complete development has officially stopped, and the repository has been archived. Which is kind of sad, of course. |
It is 2020 now, it's been six years since this topic first talk about, any update on this? i get this link from official home page, maybe expect to see some news compare results, thank you! |
In that time, we got child frame based frontends such as https://github.com/tumashu/company-posframe/ and https://github.com/sebastiencs/company-box. And some new backends, all third-party ones. Could be forgetting something important as well. Also see NEWS.md. Not such there's much point in refreshing this comparison, though: the auto-complete package is not developed anymore. |
This isn’t quite true anymore. In recent years there was development again and new maintainers are coming in: auto-complete/auto-complete#509 |
Yes, well. It doesn't seem like there's much "forward" development. But it's being kept from bitrotting, I guess, which is good for existing users. |
Hi,
it would be nice if if you provided a bit more information about why one might switch from AC to Company, or even pick Company in the first place.
Are they at feature parity? E.g. in the screenshots company is only shown listing completion candidates, but AC can also show documentation for the currently active candidate. What happens when you press
F1
in company mode and how is this preferable to displaying it in a popup next to the completion candidates like AC does?I frequently use this functionality for API discovery, I will search for whatever I'm interested in say
string-
and thenM-n
through the candidates while reviewing the documentation in the popup.I assume you yourself used auto-complete-mode at some point. What prompted you to assume stewardship of company-mode instead of patching up any annoyances with AC?
The text was updated successfully, but these errors were encountered: