Are you aware of Neovim ? it is a fork of vim aiming at decoupling the backend from the User Interface (UI) in order to allow IDEs to embed vim? There are already some examples such as nyaovim https://github.com/rhysd/NyaoVim
In the long term, it should prove a better choice then reimplementing vim keystrokes in each and every IDE.
It's cool!! but how to use it with Codeblocks?
I just add "J" function for cbvike. So far, it works as what I expected. But I would like to see more mature solution for that.
Actually, I have did an POC to use eclim as backend, and node.js as the server to build an web based IDE. It works, I can create project, coding with CodeComplete features and compile/run the project. but I need to rebuild the UI by myself. that's too many investment for me.