Live data from Hacker News

Toward a “modern” Emacs

lwn.net

371–380 of 539 posts

Re: Toward a “modern” Emacs

#371
post #64

Earlier quoted context omitted.

> It is widely used for a staggering array of tasks. Is it? What area are you in? In my hobbyist, college, and industry experience I've never seen anyone use emacs for anything. I have seen Vim (or at least vim bindings) a few times, but I only know of emacs from older unix discussions online. Edit: Looking through stack overflow developer surveys, emacs use is in 16th place for editor popularity at ~4.5% usage, but…

Is this a USA vs the rest thing? I've worked in many startups in the US and almost everyone uses emacs. Last few years, VSCode has been getting popular though. I had a similar experience when I was a student in UC Berkeley, although it seems like there were more vim users in school than in industry. Anyway, pretty much all my current coworkers use Emacs and I work in Boston, MA. Personally: I cannot imagine programmi…

This is a "your tiny bubble vs. everyone else" thing. I'm a professional programmer in the US, and, even when I was working in a Clojure shop, I was the only emacs user. Think about that for a second: even working at a company where every dev is paid to write Lisp, I was the only one who bothered to set up emacs. The other developers were using the Clojure plugin for IntelliJ or the Calva plugin for Visual Studio Code.

And, to be honest, I can't exactly blame them. I tried setting up Calva the other day, just to experiment, and its out-of-the-box experience was far better than emacs'. It was literally just a matter of installing the extension and loading a Clojure project (I was using Leiningen for my project definition, but Calva supports others as well). It brought up a REPL, it started doing autocomplete, and you could even hover over symbols to view their documentation. And none of this required any kind of manual configuration on the part of the user.

At this point, I honestly can't really recommend emacs to any developer who doesn't already know how to use emacs. If you want to start programming, just download VSCode and get the plugins for your favorite language.

Re: Toward a “modern” Emacs

#372
I'm sorry but I feel like it's a lost cause at this point. There are probably more than a dozen other editors that _are_ modern. So if someone wants a new alternative probably all that is really missing is some syntax highlighting definitions. And you can probably port them over from an existing system automatically.

OR, create an Emacs distribution that is preconfigured to be more modern.

I like TextAdept. It's fully programmable with Lua.

Re: Toward a “modern” Emacs

#373
post #28

I don’t know. I read the whole article and it seems the suggestions boil down to emacs needing to be more “modern” by defaulting to dark mode, making color theming easier, changing right click behavior, the menus, and changing the shortcuts. And the author of the article would like the development process to be more “modern.” Emacs is one of the most successful text editors of all time if not the most successful. It…

That's great and all, but people who are learning emacs for the first time don't know or care that it's one of the most successful text editors or that it's been around for 40 years. They care about being able to write code effectively. And emacs doesn't let users write code effectively by modern standards. Sure, after boatloads of configuration and tinkering it does, but it's unclear if it's worth it. Forking it is…

> That's great and all, but people who are learning emacs for the first time don't know or care that it's one of the most successful text editors or that it's been around for 40 years

I don't think this is true. In fact, I think most people that start in Emacs do so because they've heard that old experts use it, and know they will have to put some effort in to understand why.

Re: Toward a “modern” Emacs

#374
Emacs has been my editor of choice, but I've been changing my preferences.

Some pros:

You can be sure that this editor will still be available 30 years from now, and that by learning it today, that knowledge won't become irrelevant.

It's easily the most efficient editor at editing text, the things it does for editing text, it does to near perfection, starting from seemingly simple things, like an undo functionality that can always get you back to a previous state, or that can operate only on a region.

It's also programmable to an extent that more modern editors aren't. Its programmable environment is always there, you can always evaluate a function and have it available, you don't need to build an add-on with special packaging, like you must in other editors.

---

Cons:

It's a constant pain in the ass. Whenever something ain't working, you end up going into a rabbit hole, only to emerge hours, or days later with a broken solution and a bruised self-esteem. It's really that bad.

If you have a working configuration, it was probably tuned during the last decade at the very least. And the cycle of yak shaving and self loathing repeats itself whenever you add new packages. People treat their Emacs configuration file as a lifelong project, keeping it in a public version control, because it would be a disaster losing it.

By contrast, VS Code and its packages, even when less featureful, tend to work out of the box, and that's a very big deal. Most people don't save their configuration, because they really don't need to, starting again from scratch isn't that big of a deal.

Emacs might be super programmable, old extensions might be great, but, as a trend, new extensions developed are of worse quality than extensions developed for other editors, for the same functionality. For example LSP, and language packages that depend on LSP. The reason for why that happens is unclear to me, maybe it's an indication that the APIs are more fragile, or maybe it's a reflection of its fading popularity.

It's kind of like (GNU) Linux in a way, the same culture of not giving a shit about regular users, if you want to use this thing you have to earn it, by going through a decade of suffering.

Re: Toward a “modern” Emacs

#375
post #340

Earlier quoted context omitted.

In Emacs, you can configure literally anything, including the keybindings . Some people use Emacs with Vim keybindings (Evil, Spacemacs, Doom). Now, for me, typical Emacs keybindings, of which the majority is defined in 3rd party packages are very logical, while Vim's are not. But the users who prefer the Vim way did they work and configured Emacs however they liked. OTOH, of the million people who complain and ask f…

> I've never seen anyone who did the 2 minutes or two hours of work, went into a configuration, and changed these keys. I believe it's true: I don't think anybody could even dare trying to change the key combinations if all the help pages can help you only with the description "META v" means "scrolling down in x jumps" or whatever. In that case one spends time figuring out that these weird pages write each time "META…

How many typical Notepad users use ANY shortcuts as the basic keyboard operations? I'd say a tiny minority. A typical Notepad user that I've seen uses the mouse exclusively, and clicks around menu. Yes, that includes copy, paste, and save, the three operations that you'd think everyone would perform on keyboard. But, say, 50% of the users don't even do that. For 40% these three shortcuts are pretty much everything they do on the keyboard. The rest is the mouse. Perhaps, 10% are the users who only ever open Notepad, and try to use muscle memory from a more powerful editor.

Is that bad? No! From the perspective of unlearning, it's ideal! The problem that Emacs has is not so much that tyical Notepad users have to unlearn a ton of stuff, it's that they are not so eager to learn anything keyboard-oriented.

No amount of crippling Emacs would help there. It can only spoil it for existing happy users. As people mentioned in this thread, there are things that are aging (large files, freezes, whatnot) but the keybindings is something Emacsers actually like.

Re: Toward a “modern” Emacs

#376
post #28

I don’t know. I read the whole article and it seems the suggestions boil down to emacs needing to be more “modern” by defaulting to dark mode, making color theming easier, changing right click behavior, the menus, and changing the shortcuts. And the author of the article would like the development process to be more “modern.” Emacs is one of the most successful text editors of all time if not the most successful. It…

The main problem with emacs is that while it's praised for being a programmable lisp environment, it's not a really good one. It doesn't have widgets, decent rendering engine with scene graph and hardware accel, it's single threaded, the language is clunky. You really can't make decent applications in emacs, only text with embedded images and primitive buttons, that blocks and stalls all the time. It really needs som…

I don't think Emacs needs to be GTK

Re: Toward a “modern” Emacs

#377
post #132

Earlier quoted context omitted.

That is what I never understood -- I've implemented exactly this "which editor emulation do you want to use" and "edit your own bindings" for one Windows product containing editor in early nineties. It wasn't hard. The default was, of course, the "least surprising" for the platform, but it also allowed other popular editors then. If there's anything that can reduce friction to the new user, it's that: a beginner can…

In Emacs, you can configure literally anything, including the keybindings . Some people use Emacs with Vim keybindings (Evil, Spacemacs, Doom). Now, for me, typical Emacs keybindings, of which the majority is defined in 3rd party packages are very logical, while Vim's are not. But the users who prefer the Vim way did they work and configured Emacs however they liked. OTOH, of the million people who complain and ask f…

If you open VS Code for the first time, it asks you immidiately what keyboard shortcuts you want to use. When you open Emacs, you see a tutorial that tries to teach other keyboard shortcuts, and not a hint that you can change them, let alone how.

Re: Toward a “modern” Emacs

#378
post #28

I don’t know. I read the whole article and it seems the suggestions boil down to emacs needing to be more “modern” by defaulting to dark mode, making color theming easier, changing right click behavior, the menus, and changing the shortcuts. And the author of the article would like the development process to be more “modern.” Emacs is one of the most successful text editors of all time if not the most successful. It…

I don't think emacs needs to change but I also feel like there are some concerns that need to be addressed for a new and rapidly growing generation of programmers who aren't learning to use emacs and vim. While it might be thriving now, we're probably 10 or 20 years away from emacs being extremely niche (more than it is today).

Re: Toward a “modern” Emacs

#379

Earlier quoted context omitted.

Meanwhile, I’m always amazed how, on HN threads about Emacs, people talk about preferring the Vi family of editors. When I installed Linux on my computer two decades ago and had to learn *nix, my own (totally subjective) impression was that the Vi family was regarded as clunky and half-obsolete, about as much of a pain as editing in ed. As I began to contribute to the Free Software community, most of the other people…

I came to vim (years ago now) because I was experiencing RSI from all of the chorded keyboard shortcuts I was using in Coda. Emacs doesn't help with that, but vim does (if you `map ; :`). Any editor feels clunky for the first week of using it, Vim and Emacs most of all. Nobody wastes the headspace in staying current on multiple editors. So I don't know that you'll ever see an objective comparison of the two. But they…

I switched from emacs to vim for the same reason. I was doing a lot of typing, and my left hand started aching when I was stretching my fingers and eventually it just started aching all the time. So I thought, why not try vim, which I had used many decades before.

Things were very slow for a few days, and there was a lot of swearing, as I got weird results from hitting a wrong key. But after about a week I was able to get along adequately, and after another one, I was at the point where I was making choices for optimal methods without really thinking about whether typing 2w would be better than holding j for a while.

I think the key was that I made the switch during a vacation, when my workload was lower and I would not be so frustrated by learning enough that I could select between methods.

Learning either vim or emacs in a rush is not good because you are likely to become habitualized on a small subset of methods, and will be blocked from learning other methods that will increase your productivity some day.

Re: Toward a “modern” Emacs

#380
post #98
post #64

Earlier quoted context omitted.

> It is widely used for a staggering array of tasks. Is it? What area are you in? In my hobbyist, college, and industry experience I've never seen anyone use emacs for anything. I have seen Vim (or at least vim bindings) a few times, but I only know of emacs from older unix discussions online. Edit: Looking through stack overflow developer surveys, emacs use is in 16th place for editor popularity at ~4.5% usage, but…

I've personally known 2 Emacs users in my ~15 years in the industry. I've worked in Europe for various startups and a bunch of corporations. Both of them used it as a sort of hobby/side editor, their main money maker was an IDE (VS, IntelliJ). I've probably worked with 500 developers, if not more. My personal impression is that Emacs is like the Yeti of programming editors. Everybody has heard about it, few claim to…

I use Emacs for writing plain text because of Alt-q, and for tiny snippets. For coding I use real IDEs (JetBrains / Visual Studio) and can't be arsed to use a dumb editor, plus trying to configure to do "the right thing" w.r.t. to code style and indentation across a couple language is very annoying.
Post reply on HN