Hacker News new | ask | show | jobs
by philsnow 3355 days ago
How do you think an IDE "does all the work" for you? Somebody working on the editor wrote some code in C++ or Java or whatever that makes it do that, and that code is baked into the IDE.

In emacs, the only missing part is that perhaps nobody has already written the elisp that makes it do whatever task you are asking for.

emacs is a smallish program written mostly in C that defers to a scripting language for nearly everything, and it ships a bunch of code in that scripting language that does all the work of being an editor. You can look at that code using the editor itself, and you can change that code using the editor itself. It's insanely flexible and extensible; see e.g. advice [0], and most modules provide meaningful hooks for you to add your own code.

All the IDE/editor behavior is just code. If it's compiled and baked into your IDE, fixed, unchanging, then if there is any behavior you don't like, you better hope the dev included a knob that lets you tweak it, or you have a lot higher barrier to making your editor work the way you want it to.

[0] https://www.gnu.org/software/emacs/manual/html_node/elisp/Ad...

1 comments

Thats exactly my point, theyve written all the various features you might have to write yourself, and theyve integrated them for you.
guess it's a tradeoff. if what you want is common enough, it's quite possible it'll already have been written. if not, you may have to write elisp yourself.

but, if what you're working on is not common, maybe there isn't a (good) IDE either.