Maybe try Spacemacs? They have perfected marrying vi to emacs.

//