Why I Use Emacs
I don't like Emacs. Emacs key-bindings are neither ergonomic nor do they make any sense in any way. They are barely consitent across modes, only if you are lucky. They are the way they are because they are old. And old people don't like change. Emacs has also several other problems. It lacks multi threading, the cursor can not be moved off screen. Autocomplete for C-like languages is a mess and really inferior to everything else I used. Compared to all other Lisp dialects, Elisp is the worst. It is not only by far the slowest, it also lacks essential features like namespaces. And then there is complete clusterfuck of conflicting "modes" and the lack of disposition to cooperate and unify within the community.
The reason why I'm so upset is, if you are a newcomer and look at Emacs what you see at first glance on the outside is basically total crap. But then people tell you that the learning curve is high and everything is awesome if you just learn.
Well my experience was, the more I learned the more crap appeared. One layer of crap after the other. Luckily everything could somehow be fixed with a lot of configuration and scripts. But the points I mention above are the lowest layer which can not be fixed with just a bunch of lines of Lisp like in the previous layers. So even at the core Emacs is crap.
I've tried just about every editor under the sun. I keep coming back to emacs. It Just Works, it's flexible, it's configurable, it doesn't impose any particular workflow on you, and it's basically everywhere that I need it -- terminals, GUIs, unix, linux, OSX.
I most recently tried sublime text, and it was okay, but it fell over in some pretty serious ways with basic stuff. Like indenting -- I'd have to go back and find the problem again, but there was a ridiculous indentation problem that was a deal-breaker, and the response from the ST community was, essentially: "I don't know anyone who indents that way, so we're not going to support it."
OK then. Back to emacs. It Just Works.
"... its various Ctrl-Meta key-chords will seem not merely satisfyingly ergonomic for the typical arthropod, but also direct evidence for the universe’s Intelligent Design by some six-legged, multi-jointed God.”
It just feels good. Do it today!
Two links away that led me to http://mph.puddingbowl.org/2010/02/org-mode-in-your-pocket-i... which is hilarious and very true. Source committed emacs user, I've contributed to org-mode, and it is great. But still, true.
Hello. The keybindings file I use in OS X for simulating some Emacs behaviour, was too long to be saved as a comment. Below are references for how to make Emacs like shortcuts that works through the whole OS X, at least through all programs that uses the Cocoa Text System. Xcode got its own system. BBEdit uses its own, and at least the Omnifocus programs I use, also use their own.
* * References: * https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/EventOverview/TextDefaultsBindings/TextDefaultsBindings.html * Above is Apples Documentation on the subject which is Mandatory reading! * * Mandatory reading as well: http://www.hcs.harvard.edu/~jrus/Site/system-bindings.html * This page lists Apple's keybindings and standard keyboard functionaliaty to a further extent than Apple's documentation further above. * * A Must read concerning customizing the cocoa text system: http://www.hcs.harvard.edu/~jrus/site/cocoa-text.html * * *Very Useful Page* when you want to make your own bindings: http://www.hcs.harvard.edu/~jrus/site/KeyBindings/Windows%20Bindings.dict * * * * http://www.cocoawithlove.com/2009/12/multiple-copy-buffers-cursor-and-tab.html * Above mostly for how to utilize the kill-ring, which doesn't work well with the setup here, * and it is focused towards XCode, which has it separate keybindings file, but works after the * same principles. Beware: XCode uses a string list, instead of array. It is important to * keep the space after the comma! * "select:", "do someth:" * * http://wttools.sourceforge.net/emacs-stuff/emacs-keybindings.html * Above is a keybindings table, which is of use only to see the keyboard shortcuts. * The commands we use on OS X is not named equivalently to Emacs.
Java guy here. I've never understood how retro types can criticize IDE's, relative to the "clean, simple elegance" of a text editor... and then reveal that their text editor is Emacs. In terms of learning curve and simplicity, IntelliJ might as well be "ed" in comparison to Emacs... or even Vim to a lesser extent.
I spent years using Eclipse, and even though I now concede that IntelliJ is superior, it still took quite awhile to get up the learning curve and let go of my Eclipse bias. If you write a lot of code in any language, then you invest a significant amount of time and energy into learning how to maximize productivity in your tool of choice. That tool is then the best tool, because you are invested and most productive with it.
Fair warning: I'm a sysadmin.
My basic attitude has been unchanged for fifteen or twenty years now: programmers need programmable editors because they can be more productive when they are comfortable; sysadmins need an editor which is installed on every system and works the same way by default.
emacs is pretty good, and was what once heavyweight is rendered small and fast by the march of technological progress. But if you, as a programmer, want to devote yourself to becoming an expert in something else, go right ahead.
I've never tried Emacs, but tales of the unergonomic nature if its keybindings have steered me far far away. On a side note though the author wrote "I don’t think I could learn another set this side of river Styx." and I just find myself really liking this expression. Cheers!
I'm going to paint with a broad brush here, but usually it seems like emacs/vim (chosen here to represent broad categories of editors) evangalists haven't given a whole lot of time to try out the other side.
I'd say it took me only a few minutes to get the hang of vim, but several weeks of regular use to really appreciate it. I have never given emacs the same opportunity simply because I've never felt the need to leave vim. But I certainly would do so before I recommended vim over emacs to anyone else.
Why does stuff like this get so high on HN all the time? It isn't news, emacs has been around for approx forever and obviously is a good editor slash operating system for all the serious devotees. What do these pieces add? Literally never will the "vim vs. emacs" thing be resolved if it isn't now. Note to self, write a piece about how "I use <editor> because I know how to use <editor> well" if I ever want to be big on hn.
I like this post for many reasons. One of them is introducing me to the word retrogrouch
Apparently emacs is excellent in defend-mode.
tl;dr: Emacs is forever, because I got used to the key-bindings.
Seriously?
Emacs is good, man!.