views:

259

answers:

4

I've started to use emacs, and I've found out that while the editor-specific features of emacs are better than those of vi, the text-manipulation methods of vi are better than those of emacs (and easier on your control-pinky!).

It seems that viper-mode, a marriage of the two best parts of each editor, is the ideal solution for someone that wants a complete editor.

But before I start investing my time learning the vi commands in the emacs environment, I'd like to know why it doesn't seem like many people use viper-mode. Is there something I'll find out after using it a while that will cause me to switch to plain emacs or vi?

+5  A: 

Because you are either a vi person or an emacs person. The same way you're either a dog person or a cat person.

On a more serious note, why would I change? vi offers me all the power I need and I'm pretty certain the emacs people would feel the same way about their editor of choice.

I've used vi for over twenty years and some of its features still surprise me (admittedly, it's usually vim rather than vi nowadays). I don't want to dedicate the next twenty years of my life at becoming adept with emacs. There's no benefit and plenty of cost, and pretty much all of my non-minor decisions are subject to cost/benefit analyses.

Mostly, it comes down to what you're comfortable with. It took years for me to stop trying to use the WordStar 3.3 CTRL-K CTRL-X key sequence to exit from most editors. It had burnt itself into my spinal cord so that all the brain had to do was issue an exit command and the lowest levels of the nervous system would take over.

And, anyway, emacs with its strange command sequence like

CTRL META LEFTSHIFT RIGHTSHIFT WINDOWS OPENAPPLE ALT K

is better suited to aliens with 87 fingers, or elite pianists :-)

paxdiablo
its funny, people who aren't into vim look at me like I am mad when I say I can never remember emacs style chords after watching hack away in vim for awhile. dw}}}ci"foobar<esc>:%s/foo/bar/g is totally not a problem. <m-x><c-w>k totally defeats me.
Matt Briggs
Interesting. I'd not heard them called chords before but you're dead right.
paxdiablo
And now we all know what's common between emacs users and pianists.
casablanca
@casablanca They're gifted!
Trey Jackson
+3  A: 

People who want vi-like usage use vi, people who want Emacs-like usage use Emacs.

I think you get some vi people moving to Emacs to get functionality like org-mode (or some other "killer" functionality that doesn't exist in vi). And those people probably use viper-mode to ease the transition.

Regarding the actual question of "is there something I'll find out..." - everybody is different. Maybe viper's lack of C-o command (do one command and go back to insert mode (or something like that)) is just too painful to not have. Or, maybe you'll find that the allure of not having to switch between command and insert modes is attractive and go for straight Emacs.

I think the benefit of viper-mode or vimpulse is that it makes the learning curve for vi-users is negligible for 95% of what you'll do. But you have the possibility of using the other parts of Emacs that you can't get in vim (whatever those things are that you find attractive).

Trey Jackson
@Trey, do you know that `C-o` is missing for sure? I've been trying to figure out if I could do something to enable it...
Stephen
@Stephen I've just seen two questions asking for it. That seems to indicate it's missing. And, I just scanned `viper-keym.el`, and it's only bound to either `viper-nil` or `self-insert`.
Trey Jackson
@Trey ...I think one of those questions was mine. Yeah, that's a bummer. Thanks for checking though. I have to start a habit of reading source code.
Stephen
+1  A: 

I "get" vim, that is a massive investment. I get vimscript, that is another massive investment. I have no desire to learn the wildly complex internals of another editor and the intricacies of emacs-lisp, especially since the only thing I would really want there that I can't have here is better repl support.

Also, viper is nowhere near enough. vimperator comes close, but nothing beats vim.

Matt Briggs
@MattBriggs Did you mean "I have *no* desire to learn ..."?
Trey Jackson
@Trey Jackson:wow... I wrote that right before bed, guess it shows.
Matt Briggs
@MattBriggs You mean you "rote that write before bed"? :P
Trey Jackson
A: 

Because I don't want vi, I want vim with syntax highlighting.

Joshua