Become a fan of Slashdot on Facebook


Forgot your password?
GNU is Not Unix Software

Evil, Almost Full Vim Implementation In Emacs, Reaches 1.0 252

New submitter karijes writes "Evil is a new Emacs major mode intended to implement full Vim emulation for Emacs editor, and it's reached its first stable release. Evil implements many Vim features and has support for plugins, so there is port for rails.vim, NERDCommenter and mapleader among others. You can find details about this release on the mailing list."
This discussion has been archived. No new comments can be posted.

Evil, Almost Full Vim Implementation In Emacs, Reaches 1.0

Comments Filter:
  • Re:Um, why? (Score:5, Informative)

    by MoonFog ( 586818 ) on Saturday February 16, 2013 @02:40AM (#42920051)
    This is the world of open source software, "because we can" is ALWAYS a perfectly acceptable reason :)
  • Re:Um, why? (Score:4, Informative)

    by retchdog ( 1319261 ) on Saturday February 16, 2013 @02:46AM (#42920079) Journal

    someone who always has at least one emacs window open wanted to drop into vim for quick edits without having to save and reopen the file. a throng of under-employed people thought it was cool for various reasons and joined in. same as every other open source project. it is its weakness and strength.

  • Re:Um, why? (Score:4, Informative)

    by suy ( 1908306 ) on Saturday February 16, 2013 @05:49AM (#42920623) Homepage

    If you want to use vim, why wouldn't you just use vim?

    There could be many reasons to that. One might be becase Vim has a limited interface to writing plugins. There are plugins that use the Python interface to create different processes [], or one that uses Vim's libcall() to run a task asynchronously [], but are just nice hacks that work acceptably, but not great.

    I've been quite impressed by Shougo's plugins, becase, for example, Unite.vim, loads files from the disk in a background task that doesn't make Vim unresponsive, but is still limited in that it seems Vim can not have some kind of timer that polls the background job to update the UI (even less a fully asynchronous interface). The solution is probably resort to using Vim with the client-server interface, but I don't think is the common case of most Vim users.

    On the other hand, lately I've been suffering frequent blocks and even full crashes of Vim when using the clang_complete plugin, because uses Python in some unsafe way.

    In short, a new Vim implementation that doesn't suffer from such limitations would be welcome. I doubt that making that implementation on top of Emacs is the right way, but who knows. Ideally it should be native, but Vim's development is a bit slow. I can't find the relevant links now, but I remember a conversation on IRC that pointed out to a patch that a YankAdded (or something like that) autocommand. The patch was simple, and it would make plugins like yankring and yankstack almost trivial, since instead of doing map tricks, they could plug into such autocommand and work comfortably. But the patch is about 18 months old, and still has not been applied. Bram Molenaar's response is that bug fixes have priority over features (which makes all the sense of the world), but gives a bad impression over the scalability of Vim's development. Last time I checked the version control, Bram was the only one committing.

  • Re:Finally (Score:4, Informative)

    by TheRaven64 ( 641858 ) on Saturday February 16, 2013 @07:44AM (#42920957) Journal
    I think you're confusing vim with nvi. Vim is the one that has a load of features not present in the original vi (e.g. syntax highlighting and persistent undo).

Help! I'm trapped in a PDP 11/70!