Hacker News new | ask | show | jobs
by mhax 4028 days ago
So true - I'm not sure what I expected. It always comes down to the fact that:

a) There is no intelligent auto-complete (not compared to an real IDE)

b) Background tasks of compiling/testing will block the UI. With scala especially, this is an issue.

c) No comparable refactoring capability.

I once had high hopes that eclim would be the answer, but I think it's just the wrong tool for the job. Let's not pretend vim can be something it was never designed for.

Neovim however might help to solve this problems, but when that will see the light of day, it seems to be hard to find out.

3 comments

Feels like I'm spamming every comment within this article, but this is exactly what Ensime is for. I hope that Vimside (http://www.vim.org/scripts/script.php?script_id=4298) up to date which addresses most of the above.

I don't think it would be too hard - mainly the server startup has been tweaked so you dont embed Ensime.

Neovim is also interesting, I understand they have a much nicer plugin architecture as well.

> Neovim however might help to solve this problems, but when that will see the light of day, it seems to be hard to find out.

Neovim is working quite well already. I fully switched from vim to nvim months ago without any issues. Plugins are still written for vim though, so I don't think many take advantage of neovim-specific features yet. It does have a full terminal already though, which is pretty awesome.

edit: Oh, I'm guessing you're referring to the promises of embedding neovim inside IDEs. I'm looking forward to that too!

YouCompleteMe (https://valloric.github.io/YouCompleteMe/) is a code completion engine built on libclang and works quite well. If you happen to use cmake for your projects and tell it to emit the build database file (CMAKE_EXPORT_COMPILE_COMMANDS), YCM can use it. As with anything in vim, you don't get this for free - the setup is non-trivial.