zlacker

[return to "Screenshots from developers: 2002 vs. 2015"]
1. henghe+D3[view] [source] 2015-12-12 14:04:39
>>quanti+(OP)
I don't do a whole lot of software (got caught up on the hardware side of things), but one thing I'm noticing is that nobody makes extensive use of "advanced" IDE features as in eclipse or visual Studio.

Is this personal taste, or has it to do with the scope of the projects these guys are working on?

◧◩
2. Brando+i4[view] [source] 2015-12-12 14:16:35
>>henghe+D3
I wouldn't jump to that conclusion unless I observed how people use it in real-time.

For verbose languages, you can't beat auto-completion and auto-import.

◧◩◪
3. cresha+v4[view] [source] 2015-12-12 14:19:17
>>Brando+i4
> For verbose languages, you can't beat auto-completion and auto-import.

And you can get both in vim, emacs, etc. The lines between those and full IDEs are blurry with the right (or wrong) amount of plugins.

◧◩◪◨
4. izacus+O5[view] [source] 2015-12-12 14:47:58
>>cresha+v4
The autocompletion in both vim and emacs was always significantly worse than any IDE-based ones, no matter the plugin I tried (for C, C++, Python or Go). Most of them are pretty much limited to ctags with no context matching, others simply died on projects beyond trivial.
◧◩◪◨⬒
5. to3m+b6[view] [source] 2015-12-12 14:55:49
>>izacus+O5
For C/C++ and emacs, try rtags: https://github.com/Andersbakken/rtags

It's clang-based, so suffers from none of the tags-type issues: it's context-sensitive, and can see straight through gnarly stuff such as identifiers generated by token pasting.

Good points:

- Only mildly fiddly to set up

- Code browsing works well

- Code completion works well when it works

- Cute gcc/g++/etc. wrapper trick means you don't have to change any build settings

Bad points:

- Making it work with code you haven't built yourself on your local system (e.g., 3rd party stuff that's not complete, code for another platform) is less straightforward

- Code completion sometimes doesn't work with certain files (and for no reason that I've ever been able to figure out)

- It's probably my own limitations but I found it extremely inconvenient to debug (internally it's surprisingly complicated: separate client and server, lots of lengthy command lines, client code writes elisp code to stdout and elisp in emacs eats it up, the actual completion popup is a separate package, etc.)

[go to top]