For about 3+ years, all I thought I needed (and technically that was the case) was nano. I did not understand all the hoopla about vim until I tried it. Although the learning curve is ever-so-slightly higher, it has greatly simplified coding for me and I would not dream of going back to nano.

I have, however, heard many times over that emacs is the most difficult to learn, yet most useful editor for a programmer. Can anyone who has taken a similar path of evolution through text editors (and find themselves currently choosing emacs) tell me what the advantage is?

Right now my view on vim is the same as my previous view on nano, which is: Will the marginal utility be great enough to justify putting in the time to learn? With switching from nano to vim, the answer is an obvious yes (for me anyway). Will I look back and say the same thing about vim if I learn emacs?

4

There are 4 best solutions below

2
On BEST ANSWER

I have only started to use EMACS, but my succession was like that - our local editor (home-MSU-made), then i have used vi/vim for several years or sometimes far editor, and finally 3 years ago I've switched to EMACS. The basic commands are learned quite fast, and then the rest of your life you just master it, every day discovering the faster way to do something. There's quite useful tutorial for the first steps in EMACS. Obtaining basic knowledge of LISP is quite fast too, just to customize. But there's also a user interface in EMACS to change preferences and automatically write it to the options file.

I must admit that i have not tried the modern capabilities of vim, I've heard that in functionality employed by a programmer vim and emacs are very close. So finally it shall be a matter of taste - which of the two to use. Personally i more like LISP than VIMscript:)

Probably there will be someone who has changed from vim to EMACS or vice versa - their opinion about pros and contras will be more mature than mine.

1
On

No you wont get the same power up. You'll get a better power up! :) There are a lot of emacs vs vim debates. AFAIAC there is no debate - emacs wins hands down.

0
On

I'll add a short anecdote here. I transitioned from vim to Emacs a few years ago, starting with Viper and vimpulse and now using mostly standard Emacs bindings. My motivation was in learning Lisp, and Emacs is a great environment for that. If you do want to play with Emacs, I'd recommend the emacs starter kit. It contains a useful setup for coding work.

One major turning point for me was arriving at a workable physical keyboard mapping for the modifier keys. I ended up mapping my Alt keys to Ctrl, and the keys right next to Alt to Alt (Meta modifier for Emacs). I did this for everything, not just Emacs. This allows me to press the modifiers with opposing thumbs, and, now that I'm used to it, I'm able to type Emacs key chords with the same dexterity that I once typed vim keys in command mode. When I first started with Emacs, I didn't think this would be possible.

There is a lot of depth to the Emacs ecosystem, and it is truly an environment that invites customization and even personalization. I find it to be user-friendly software in the sense that it is actually fun to use, though at times frustrating, it has always seemed rewarding. Of course, this is a personal story, and I doubt what works for me is for everyone. As others have said, you'll have to learn by trial and error.

0
On

I would suggest just trying Emacs out, and perhaps using viper mode and vimpulse to lessen the learning curve while you are figuring out the basics.

http://www.emacswiki.org/emacs/ViperMode

There are plenty of other resources for vi users on the Emacs Wiki. Have a look around.