Hacker News new | ask | show | jobs
by nextos 3134 days ago
The first time I got introduced to Emacs, I hated it. Who would like to read email inside a text editor with non-standard keybindings?

I got it all wrong. It's not an editor, it's a text-mode virtual Lisp machine.

The Emacs ecosystem has matured a lot lately. It has two applications I adore. Org, something impossible to describe in a few words, and Magit, the perfect Git porcelain.

Plus it has 3 pretty darn good email clients (Notmuch, Gnus and Mu4e). And some great extras: Dired, Calc, Eshell, Erc, PDF Tools...

Everything is really well integrated. And if something doesn't suit your needs, changing it is a few ELisp lines away.

My computer setup has become very simple: a tiling WM (XMonad), Emacs, Firefox, and a terminal (Urxvt).

4 comments

I also hated emacs when I first tried it, but once I started moving past my first programming language, I found myself sifting 30 IDEs and decided to give it an honest shot.

I don't use it for much else than programming, so my must-haves are for that purpose. Just the various built-in interpreters make it worth the price of learning.

Unlike both of you, I rapidly loved emacs. The only thing I disliked was the confusion around gnu and xemacs.

The reason I loved it was the indentation logic underneath, it was solid and meaningful. Other IDEs would only do very local logic while in emacs, if something doesn't indent where it should, you know you grammared wrong. It was deeply magical and reassuring to me.

However nowadays IDE like Intellij Ultimate give good to best in class support for basically all mainstream languages.

I'm an emacs user (in case it matters).

Some IDEs may offer better language-specific features than the community-supported emacs modes, however I haven't found an IDE that actually does the editing (and displaying) of text as well as emacs.

In particular all the little modes that try to emulate emacs functionality (simple things like rainbow-delimiters or slightly more complex things like undo-tree-mode) are always broken in subtle ways in the "modern" applications. Not to mention all the text navigation features: ace-jump & friends, helm-swoop, etc...!

I guess a large part of this is that emacs has had 40 years to mature and that it was originally written at a time where software was judged on different criteria than it is today.

I find that on balance, most of those language-specific features are the ones that matter most to me, and provide the best value wrt. my time (and finished product).

Comparatively, the text editing power of vim/emacs, while nice, just doesn't provide that much value to me anymore, *most of the time.

That being said, it varies by language. If I were working in C, I'd probably use emacs. Working in Go, I still do use emacs (the side effect of the language's simplicity is that solid tooling is a snap to integrate in both vim and emacs). Java or scala? Not a chance in hell I'm going to do anything serious with those two in vim/emacs.

> It has two applications I adore. Org, something impossible to describe in a few words, and Magit, the perfect Git porcelain.

I would like to add helm.

Helm is one of those apps that just fades into the background, so you soon forget that you are using it - everything just works smooth.
I also hated emacs because I hated the keybindings, but then I found spacemacs.
text-mode?