About a month ago I heard about evil-mode in emacs and gave it a shot. It will allow you to by-pass much of the 'boilerplate' learning curve (how to move around inside and between buffers and edit, etc) so you can just focus on the cool aspects of emacs that vi doesn't do as well. Spent the first week or so setting emacs up more or less with the same features and shortcuts I got used to in my customized vim environment and haven't looked back. Have your cake and eat it too. :)
I think evil mode in emacs is probably the best bet. However I've messed around with elisp a bit in the past though and I can't say I am thrilled enough with it to make the jump. I wish one of the projects to get Emacs going with a scheme would get off the ground...
If mzscheme/racket scripting support for Vim were given the love that python support is getting instead, that would please me immensely. It seems nobody is using that though.
One can use Python, Lua, Ruby, and a bunch of other programming languages to write VIM scripts. At least on ArchLinux, the vim binary comes with support enabled for these scripting languages.
This sort of setup is exactly what makes me, a Vim user, think I may have made a mistake by not picking up Emacs instead.