Live data from Hacker News

Making Emacs Popular Again (2020)

lwn.net

41–50 of 420 posts

Re: Making Emacs Popular Again (2020)

#41
post #13

To be more popular Emacs needs to be easier to get started with and easier to extend. If I have to read a whole book or learn an entire new programming language, I'm not going to put the time in. If any time I search for "how to do x", I get a disjointed mess of "but spacemacs...", "in prelude...", "this custom elisp snippet..." where every piece of advice can be potentially incompatible with any past or future modif…

Emacs would benefit from being easier to get started with? Yes. Emacs is held back by not being easy enough to extend, because it uses Emacs Lisp? I don't see how. I'd expect learning to write plugins for some application to be harder than figuring out enough syntax/semantics of a language to call library functions.

The fact extensions in other editors are written in Java or TypeScript do not make it any easier to write them.

In any case, learning Lisp is useful, even if you never write an Emacs plugin.

Re: Making Emacs Popular Again (2020)

#42
post #23

Earlier quoted context omitted.

If you need a dedicated tutorial for a text editor it's a great sign that something is very wrong with its design, particularly concerning discoverability. Emacs has no user-friendly command names (you need to memorize function names which are often meaningless abbreviations), no autocomplete, and doesn't show available functions.

> Emacs has [...] no autocomplete, and doesn't show available functions My impression is that you are not familiar with Emacs.

I have been using emacs for 7 years prior to switching to VS Code. Never looked back. It's better in all regards.

Re: Making Emacs Popular Again (2020)

#43
post #23
post #15

Earlier quoted context omitted.

When I set out to learn Emacs in the year ~2001 or so, I just did C-h t in order to launch the builtin tutorial. IMHO that can still be a viable way to get started. Spacemacs might be nice but it’s in no way required in order to be productive with Emacs. My personal .emacs file is only 32 lines long (28 lines of comments are not counted).

If you need a dedicated tutorial for a text editor it's a great sign that something is very wrong with its design, particularly concerning discoverability. Emacs has no user-friendly command names (you need to memorize function names which are often meaningless abbreviations), no autocomplete, and doesn't show available functions.

Emacs was founded in the 1970s. There is a lot of legacy in there, but IMHO it still holds up as a very powerful and nice text editor.

“If you need a dedicated tutorial for a text editor it's a great sign that something is very wrong with its design, particularly concerning discoverability.”

I don’t agree. If it was a mass-market product for users who just wants something convenient, then I would agree. Those users are probably better served by other applications. (Word, Evernote, OneNote, Notepad++ etc etc) But Emacs is a power tool for power user. Therefore I think it’s okay that it needs a tutorial to get started. You need to invest some time to learn in. That will, in my experience, pay off greatly in the long run.

Let’s take an example from another domain:

Suppose someone wants to get started with 3D Graphics. I’m pretty sure software like Blender and Maya also needs some kind of tutorial in order to be useful.

Re: Making Emacs Popular Again (2020)

#44
post #33

Earlier quoted context omitted.

The problem with VS Code is there is *not enough* UI. I desperately would like to have some toolbars and menu options, because the kotkeys and key-chords VS Code uses, where they aren't following conventions, are not easily discoverable. They're in a bind because they are trying to straddle a market where you've got emacs an vim users to one side and Visual Studio users to the other. Some ability to customize the UI,…

Are they not discoverable via the command palette? I find Emacs very helpful here, commands are always prefixed sensibly and you can do fuzzy search on them anyway. You can run 'apropos' if you're really stuck and help is built in to every function. It'll show you bindings if you don't know them and invoke a command directly etc etc. I feel like VSCode has most of this. Besides, they're your key bindings anyway, I th…

It's difficult to discover a command with the command palette if you don't already know what they've called it.

I dunno, I'm old. I use directories and folders and hierarchical organization instead of searching when I'm allowed to.

VS Code is offputting enough and different enough in conventions from everything else I use that I don't have a great deal of interest in learning it's idiosyncrasies where they depart from standard UX.

Re: Making Emacs Popular Again (2020)

#45
post #23
post #15

Earlier quoted context omitted.

When I set out to learn Emacs in the year ~2001 or so, I just did C-h t in order to launch the builtin tutorial. IMHO that can still be a viable way to get started. Spacemacs might be nice but it’s in no way required in order to be productive with Emacs. My personal .emacs file is only 32 lines long (28 lines of comments are not counted).

If you need a dedicated tutorial for a text editor it's a great sign that something is very wrong with its design, particularly concerning discoverability. Emacs has no user-friendly command names (you need to memorize function names which are often meaningless abbreviations), no autocomplete, and doesn't show available functions.

You need dedicated tutorials, or equivalents, for all complicated tools and machinery. The power of Emacs (with respect to text editing capabilities) comes from mastering, by committing to muscle memory, a large number of key sequences. There's no easy way to do this- it takes time and effort (100% worth the payoff imo).

Re: Making Emacs Popular Again (2020)

#46
What I like about Emacs is the things you learn from it. The “config file” is a program, not a JSON or INI file. This allows the user to add functions to the editor very easily.

For instance, one of the first tricks I taught Emacs to do was to find the right font size so I could have at least 80 columns on a window. It was a bit of work, and needs to contemplate some corner cases, but it’s really cool to be able to do that in your config file.

This is a pattern other programs and frameworks use. It’s relatively normal in Python to import configuration from a settings.py file that’ll do whatever is appropriate to get the information (a bucket with an INI file, constants declared in code, a local settings_devel.py file…)

Re: Making Emacs Popular Again (2020)

#47
post #45
post #23

Earlier quoted context omitted.

If you need a dedicated tutorial for a text editor it's a great sign that something is very wrong with its design, particularly concerning discoverability. Emacs has no user-friendly command names (you need to memorize function names which are often meaningless abbreviations), no autocomplete, and doesn't show available functions.

You need dedicated tutorials, or equivalents, for all complicated tools and machinery. The power of Emacs (with respect to text editing capabilities) comes from mastering, by committing to muscle memory, a large number of key sequences. There's no easy way to do this- it takes time and effort (100% worth the payoff imo).

That's some kind of protestant work ethic. It doesn't need to require days of busywork to be powerful. VS Code is more powerful, easier to configure, and more productive out of the box. The default feature VS Code offers make hundreds of lines of Emacs configs with dozens of custom plugins look laughable. Tramp mode is pure trash compared to remote editing in vs code. Stuff like syntax highlighting, intellisense, git integration, and other useful features are years ahead of Emacs too. Every language, including C, is supported better.

Re: Making Emacs Popular Again (2020)

#48
post #34

If you need to install a dozen plugins (helm, projectile, company/autocomplete, flycheck, whatever else) to match something that's installed by default in any modern text editor, Emacs will never be remotely popular. Even something as simple as theming doesn't work by default; each theme needs to be implemented separately for every mode. 99% of people will see how fruitless it is to try to configure it and move on. W…

Emacs' user base is probably larger than any time before.

Granted, market share dropped because many people are never exposed to Emacs (or vim), directly start with PyCharm, VSCode, etc.

The question is: Can emacs increase its market share by becoming more approachable? Probably yes, on the other hand since Emacs is so different to the User Interface expectations of 2021, it will always have a hard time.

I myself have been a hardcore vim user for now 20 years, in the last 2 years I have made an effort to learn Emacs and like it quite a bit. I am also a VS Code user at work.

> Why waste time on fiddling with configs?

Config fiddling is not specific to emacs. The time I spent fiddling with VSCode configs and plugins, or IntelliJ config. The difference is that with emacs I see the result of my fiddling in the form of emacs lisp code that I can store and easily transfer from computer to computer and for the IntelliJ stuff I had to take notes on what I changed where so I could reproduce it.

Re: Making Emacs Popular Again (2020)

#49
post #20

I've been using emacs for approximately 30 years. Every once in a while, someone ask me what editor or IDE I suggest they learn, and I never suggest emacs. It's incredibly powerful, but it's a fossil. I keep using emacs mostly because of muscle memory.

That's it. That's the reason. You can usually get Emacs key bindings (or a shallow approximation thereof) in most editors. But yeah, we're stuck, so I guess we just gotta double down.

It is fun when the young 'uns do a double take after you execute a particularly fancy macro. I do love that.

Re: Making Emacs Popular Again (2020)

#50
post #47
post #45

Earlier quoted context omitted.

You need dedicated tutorials, or equivalents, for all complicated tools and machinery. The power of Emacs (with respect to text editing capabilities) comes from mastering, by committing to muscle memory, a large number of key sequences. There's no easy way to do this- it takes time and effort (100% worth the payoff imo).

That's some kind of protestant work ethic. It doesn't need to require days of busywork to be powerful. VS Code is more powerful, easier to configure, and more productive out of the box. The default feature VS Code offers make hundreds of lines of Emacs configs with dozens of custom plugins look laughable. Tramp mode is pure trash compared to remote editing in vs code. Stuff like syntax highlighting, intellisense, git…

Yes, it takes work, it's like learning how to dance, draw, or paint. My emacs config is literally 64183 lines of elisp + 2356 snippets (just checked), so I'm not really considering a major editor switch at this point.

I've used VS code as well, it's fine for what it does and certainly much more beginner friendly.

Post reply on HN