Hacker News new | past | comments | ask | show | jobs | submit login

I spent a couple of years using vim before switching to emacs around 3 years ago. I'll write about my own experience with both editors.

Learning emacs won't automatically give you a huge productivity boost the way learning vim does. Vim is this blazing fast editor; it's been designed from the ground up to be good at editing text. If your goal is to increase your productivity, I'd say invest time learning vim advanced features, like jumps, macros, registers, and the plethora of other things I don't know about.

Emacs is not about speed. It's about control. It's a fully customizable environment to manipulate text. You can use it to edit prose, code, scientific formulas, but also emails, IRC/Jabber clients, clients for virtually anything with a REST API. Here are some of the use cases that make my work easier using emacs:

+ Evaluating pieces of code at once. I write a lot of Python. Most REPLs out there allow editing of one line at a time. emacs allows me to fire a python interpreter and evaluate regions (multiline function definition, or data structure) at once. Similar features exist for other "dynamic" languages.

+ Better code review workflow. I receive code review requests via email immediately inside emacs. I can play with the diff files, the source files. I can make modifs or run the code without leaving my editor. And since the code review system has an HTTP API, I can even post my comments and votes back.

+ Org-mode (http://orgmode.org/). I would use emacs for this module alone. It's a note taking system that can easily transform into an agenda, todo lists, memo, document markup, tables (oh, the org-mode tables!), ...

Basically, to answer your question: I think you'll get a lot of benefits from emacs if you enjoy customizing it and integrating it to your workflow. If you don't like spending time customizing and prefer something that will just make you write text (well, code and configuration files) faster, stick to vim and spend this time learning advanced commands.




Did you go through the Emacs tutorial?

Emacs allows you to use basic commands like any other editor, but to be blazingly fast you need to use the controls explained in the tutorial (plus some extra stuff that you can pick up later). The tutorial is not optional if you want to be blazingly fast.

It's probably true that if you come from vim to Emacs that you won't get a huge editing boost as such, but I think the reverse is probably also true.


What do you use to evaluate python? Does it work with ipython under some sort of inferior mode?

And what do you use for code review workflows?


M-x apropos python send




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: