Live data from Hacker News

YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

val.markovic.io

11–20 of 119 posts

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#11
I want to see developers who are experts in IDea, emacs, vim, etc. face off to code a variety of projects in several languages/frameworks side by side in each editor/IDE so we talk about the empirical differences. vim is a lot faster for many things, but I wonder how well it compares when you need to debug Java remotely (in a container on another server), for example.

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#12
post #5

Very cool, for me the simple fact that this is searching for a subsequence rather than a prefix makes this awesome. I am too used to IDEs only using prefix, which is often useless to me (I remember the 2nd word but that is it, time to google). EDIT: I find the idea of a helper window really neat (display documentation, argument names and types, etc.), too bad the vim API isn't there yet.

You can still get such a helper window, just not in a convenient place. Vim's 'preview' window is there to show such information (docs, arg names and types), but it pops up at the top of the screen instead of right next to the completion window.

YCM will feed information to the 'preview' window by default (you just need to have 'preview' in Vim's 'completeopt' option). See the docs.

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#13
post #3

hmm... so tab cycles only one way, or is there a shift tab to move the other way in selections?

Shift-tab cycles the other way. Both the tab and the shift-tab mappings are configurable. Note that shift-tab won't work in the console because the console won't pass that key combo to vim. Again, this can be remapped.

Is there a way to dismiss it without using the autocomplete?

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#14

Earlier quoted context omitted.

Shift-tab cycles the other way. Both the tab and the shift-tab mappings are configurable. Note that shift-tab won't work in the console because the console won't pass that key combo to vim. Again, this can be remapped.

Is there a way to dismiss it without using the autocomplete?

ESC will do it. But you shouldn't really need to. You just continue typing and the menu goes away and pops back as needed. It does its best to be unobtrusive.

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#15
aside: What about context sensitive/markov completion, backed by say github/google code? And if the prediction was certain enough, offer multi-line completions. This would be helpful in languages/situations that need boilerplate for common tasks, that you'd usually google-paste.

Or maybe howdoi-based completion http://news.ycombinator.com/item?id=5027021

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#16
I like it quite a bit, and I think it's a bit better than the other options (a few of which I've tried). My only question remaining is why can't the others be updated and improved? Maybe someone with a bit more knowledge of the "culture and history" can explain. Great piece of software, though!

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#17
post #3

hmm... so tab cycles only one way, or is there a shift tab to move the other way in selections?

Shift-tab cycles the other way. Both the tab and the shift-tab mappings are configurable. Note that shift-tab won't work in the console because the console won't pass that key combo to vim. Again, this can be remapped.

Shift-tab works with SuperTab in the console.

Re: YouCompleteMe, a Fast, As-You-Type, Fuzzy-Search Code Completion Engine for Vim

#19

I like it quite a bit, and I think it's a bit better than the other options (a few of which I've tried). My only question remaining is why can't the others be updated and improved? Maybe someone with a bit more knowledge of the "culture and history" can explain. Great piece of software, though!

vim plugins are really easy to dash off and can emerge naturally from scratching one's own itches. So they tend to be developed by individuals more often than teams and there is unfortunately some tendency to make a new project rather than co-opting existing ones, particularly when it is performance sensitive as in this case - it may be simpler to just write one designed for performance than to try to retrofit better performance onto a design which isn't well cut out for it.
Post reply on HN