Skip to content

Comment on Ask HN: Why would you prefer Emacs over IntelliJ IDEA?parent

Comments

It seems that you've aren't aware of many useful IntelliJ features.

extensibility, if I don't like something in emacs I can always change it, less so in IDEA.

IntelliJ has extensive plugin API.

IDEA has problems with key shortcuts on the dvorak (and other non-querty) keyboard layout, and the devs have no intention of fixing them.

You can tune keymap for you. For example, I don't use default shortcuts.

plugins. In my experience, language-specific plugins in IDEA tend to either suck or not work so well. Emacs, by comparison has support for damn-near any language, and many of those packages include tasty features which make working in each language a joy. (see the various lisp modes, ensime, and so forth)

In my experience, emacs works well only with basic language support. If you want something more advanced, for example, completion, error checking, you have much worse experience. In case of rarely used languages, for example, Idris, Agda, etc, they often just don't work.

speed, IDEA is slow, too slow.

If you don't need smart features, you can turn them off, and IntelliJ will be at least as fast as emacs (google power save mode).

IDEA is too "mouse driven" for my liking. In emacs, absolutely everything can be controlled via keyboard shortcuts, less so with IDEA.

It's definitely not mouse driven. AFAIK, everything can be done via keyboard.

ultimately, I don't think an IDE actually brings much to the table. I don't get any value from having the project build tied to a green triangle graphic, and I generally find the usual IDE workflow to be slow and clumsy. Emacs works perfectly, it does exactly what I ask of it and then gets out of the way.

I look at IntelliJ not as IDE but as a code navigation/refactoring tool. I can work in emacs if I have about 10s of KLOC, but after this, I need an effective tool to navigate code.

Does company-mode completion not work for you?

In case of rarely used languages, for example, Idris, Agda, etc, they often just don't work.

Really? My experience is that emacs had the only support for rarely used languages.

It's definitely not mouse driven. AFAIK, everything can be done via keyboard.

What about selecting the android device to run an application on when you have multiple devices connected?

Does company-mode completion not work for you?

What do you mean by this?

Really? My experience is that emacs had the only support for rarely used languages.

In my experience, everything except syntax highlighting often doesn't work. But, anyway these are esoteric languages.

What about selecting the android device to run an application on when you have multiple devices connected?

I don't use android, but you can create several run configurations, one for each device, and run them via shortcut. My configuration works like this: I set Ctrl+R to show popup menu with available options, then I type the name of the configuration and press enter.

Another action you probably aren't aware of is Navigate to action. It works in a way similar to M-x in emacs. See more here: https://www.jetbrains.com/idea/help/navigating-to-action.htm...

Side note: Esoteric languages aren't usually languages that follow the dictionary definition of esoteric. That is to say, being uncommonly used doesn't make something an "esoteric language". The term is usually reserved for intentionally strange languages like Brainfuck, Whitespace, Shakespeare, etc.

Idris and Agda are serious languages built to do really amazing things. They're both still pretty young, but have incredible potential.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.