←back to thread

Bare Metal (The Emacs Essay)

(waxbanks.wordpress.com)
197 points hpaone | 7 comments | | HN request time: 0s | source | bottom
Show context
billfruit ◴[] No.45653702[source]
While I still use emacs, I find that that despite the "batteries included" narrative about emacs, the things which are not included are causes of major frustration.

Such essential functionality like grep-find and LSP servers which is required for out of the box auto complete are not bundled with emacs. Most modern IDEs/editors have these functionality baked in.

If you install emacs for windows you find that grep-find doesn't work, because it depends on support from environment. A full text search should be built into the editor.

replies(13): >>45653816 #>>45653935 #>>45654013 #>>45654310 #>>45654657 #>>45654749 #>>45654984 #>>45655041 #>>45655085 #>>45655291 #>>45655623 #>>45656821 #>>45682752 #
ubermonkey ◴[] No.45655085[source]
>If you install emacs for windows...

...you are a second class citizen in the emacs republic.

I mean, I don't endorse this position, but it's the way things are.

replies(1): >>45655228 #
DonHopkins ◴[] No.45655228[source]
>If you install emacs for mac...

...you are a third class citizen in the emacs republic.

In spite of the fact that you can't spell emacs without mac.

Also:

>If you install emacs for linux...

...you get flamed for not calling it gnu/linux.

replies(2): >>45656184 #>>45658821 #
slowmovintarget ◴[] No.45656184[source]
Emacs for Mac is fine though?: https://github.com/jimeh/emacs-builds

That build has native compilation, and if you go for a Doom install you may need to build ripgrep yourself, but... that's also not difficult.

replies(2): >>45656246 #>>45660174 #
DonHopkins ◴[] No.45660174[source]
Oh sweet summer child.

http://xahlee.info/emacs/misc/emacs_macos_emoji.html

Color emoji was deliberately disabled on macOS (2016): policy first, parity later. Emacs 25 turned off multicolor fonts on the Cocoa port even though they worked, with a NEWS note saying they’d be re-enabled "once it is also implemented in Emacs on free operating systems." This was widely read as a political parity requirement that penalized macOS users for years.

https://www.gnu.org/prep/standards/standards.html

"Prefer GNU/GNU-Linux" development time: an explicit guideline. GNU’s own standards advise spending time on features "useful on GNU and GNU/Linux, rather than on supporting other incompatible systems." That guideline has often been cited in Emacs discussions to argue against platform-specific work that would land only on macOS.

https://irreal.org/blog/?p=13137

https://xenodium.com/emacs-send-to-aka-macos-sharing-merged-...

macOS-only features face extra process friction, or must be generalized. The "send-to" (macOS Sharing) patch was finally merged in 2025 -- but only after a lengthy debate and a rework into a cross-platform framework to satisfy GNU policy concerns about adding features that target a non-free OS first. (The end result is good! -- but the path illustrates the extra hurdles for macOS-first work.)

https://bitbucket.org/mituharu/emacs-mac

Long-running reliance on mac-specific forks to get a polished UX. For years, many mac users have depended on Mitsuharu Yamamoto's Emacs Mac port (emacs-mac) or distributions like Aquamacs to get native scrolling, gestures, font/rendering tweaks, and other integrations that either lagged upstream or weren’t accepted. The continued popularity and active maintenance of these forks reflects a gap in first-party mac attention.

https://xlii.space/eng/emacs-the-macos-bug/

https://news.ycombinator.com/item?id=44737676

Recent high-profile macOS performance pathology highlighted as "non-primary platform" pain. In 2025, a widely-read analysis ("Emacs: The macOS Bug") traced severe jank/memory growth to how Emacs drives Cocoa’s runloop (e.g., NSApp run usage inside the select/IO path), arguing that historical architecture -- plus macOS not being a primary target -- left deep issues unaddressed for years. Follow-on bug threads on emacs-devel discuss memory fragmentation and event handling. This is more engineering history than politics, but it shows practical consequences of platform de-prioritization.

https://www.gnu.org/philosophy/applying-free-sw-criteria

FSF position on non-free systems frames the culture. FSF materials repeatedly emphasize using and prioritizing free systems. Even where they explicitly say they didn’t drop support for non-free OSes, the values signal still affects triage, reviews, and what maintainers feel comfortable merging first. This shapes outcomes like color emoji support and the review friction in the "send-to" patch.

https://lists.gnu.org/r/emacs-devel/2012-07/msg00287.html

https://www.gnu.org/software/emacs/manual///html_node/efaq/N...

https://aquamacs.org/features/

https://lists.nongnu.org/archive/html/emacs-devel/2008-03/ms...

2008–2010, the long, bumpy road to a native Mac port: During Emacs 23’s cycle the old Carbon port was "completely broken ... for almost a year," and was ultimately removed when the new Cocoa/Nextstep port was merged. For years many Mac users relied on forks (Aquamacs, Mitsuharu's "Emacs Mac Port") for a smoother experience, reinforcing the "not a first-class target" vibe.

https://www.reddit.com/r/emacs/comments/bek5b2/til_emacs_was...

https://www.tuhs.org/pipermail/tuhs/2025-April/031758.html

https://github.com/SimHacker/NeMACS/blob/main/src/config.h#L...

RMS isn't only against Emacs on Macs and Windows. He also has some strong opinions about UniPress Software, who sold a version of Gosling's Emacs for Gosling's own NeWS window system, Apple Lisa, Mac, MS-DOS, Amiga, Xenix, SGI IRIX, Intergraph, xePIX, Northern Telecom, Cadmus, DEC Rainbow, VMS, VAX BSD, DECWRL Titan, TI Professional, Masscomp, Apollo, HP, Stride, AT&T 3B, System V, Gould, NBI U! ("Nifty Box"), Pyramid, Perkin-Elmer, Cray UniCos, and many other proprietary Unix systems.

https://news.ycombinator.com/item?id=28419139

>I worked at UniPress on the Emacs display driver for the NeWS window system (the PostScript based window system that James Gosling also wrote), with Mike "Emacs Hacker Boss" Gallaher, who was charge of Emacs development at UniPress. One day during the 80's Mike and I were wandering around an East coast science fiction convention, and ran into RMS, who's a regular fixture at such events.

>Mike said: "Hello, Richard. I heard a rumor that your house burned down. That's terrible! Is it true?"

>RMS replied right back: "Yes, it did. But where you work, you probably heard about it in advance."

>Everybody laughed. It was a joke! Nobody's feelings were hurt. He's a funny guy, quick on his feet!

replies(2): >>45660945 #>>45662070 #
1. ubermonkey ◴[] No.45660945[source]
Wow that's a wall of text proving pretty much nothing, other than that RMS is an out of touch goofball.

As I and others have noted, actually using emacs on a Macintosh is dead easy. MacOS ships with an older terminal version, so you don't even have to download anything if you're fine with that distro. OTOH, multiple native build distributions exist and are a click away.

I spend a good chunk of my day in a native build between text, scripting, and Orgmode, and, again, it's just not a problem. It's far easier, in fact, to use emacs on a Mac than on Windows precisely because MacOS is a unixy environment.

replies(1): >>45660995 #
2. DonHopkins ◴[] No.45660995[source]
It only proves nothing if you didn't bother reading it (which you words "wall of text" imply) and didn't check any of the links proving what I said. Instead of dismissing everything by handwaving, please tell me which specific points I made that you disagree with, and what is your evidence?

How long have you been using Emacs, yourself? If you just got started a few years ago, then that excuses your ignorance of history (but not your unwillingness to learn), but there is a LOT of well documented history about Emacs on the Mac, and all those links you didn't bother following prove it.

You can't win an argument by being ignorant of history, claiming tl;dr, and refusing to look at the evidence. That's just conceding my points by default. Can you do any better than that?

replies(2): >>45661345 #>>45662207 #
3. slowmovintarget ◴[] No.45661345[source]
It feels like this changed roughly in the last five years. That's about how long I've been using Emacs on Mac.

I'd mostly been using Sublime / Atom / Eclipse / Vim before that (and a long list of other IDEs and editors going back to Turbo Pascal 3.0 on IBM XTs). So perhaps I've not felt the same pain.

I'm glad I can use Emacs at work (on Macs) and at home (on Linux). The funny thing is it's been easier to get Emacs up and running on Mac than on Linux. To get the latest stable Emacs I had to pull the source and build it myself (Ubuntu repos had old versions). On Mac it was just finding the right cask in Homebrew.

replies(1): >>45661623 #
4. DonHopkins ◴[] No.45661623{3}[source]
>It feels like this changed roughly in the last five years.

Hmm, that's about how long ago RMS got "canceled" and resigned from the FSF board (September 2019). Go figure!

5. ubermonkey ◴[] No.45662207[source]
The point is that you came in here with a pasted wall of text with a whole bunch of urls claiming emacs users on MacOS are somehow 3rd class citizens because ... of things from long ago, I guess.

My point, Don, is that these long-ago issues are now irrelevant. Your position here runs utterly counter to the lived experience of Mac emacs users.

I don't care what RMS did in 2005. It's not relevant to using emacs on a Mac in 2025.

I don't even need to care about the history of emacs on the Mac, or whatever other ill-advised chicanery the FSF has committed on this or any other point (and, not to put too fine a point on it, but at 55 I've seen plenty of goofy own-goals from that crowd).

What matters now is "gee, how easy is it for a Mac user to access and use emacs productively?" That answer, for at least the last 8 to 10 years (which is also the answer to your gatekeepy question), has been "very!" You open terminal and type "emacs," or you download a build that runs as a gui from any of several maintainers. You're done.

It's about as simple as it is to run it on a Linux box (which I also do), and far simpler than getting it to behave under Windows (and I have those scars, too).

So what was your point again?

replies(2): >>45662522 #>>45684074 #
6. tom_ ◴[] No.45662522{3}[source]
My thoughts too. I've never had any real problems running it on Windows myself, but it doesn't feel like Mac users are any worse off.

I've been using Mac Emacs since about 2010, so perhaps I dodged some of the worst stuff, and it's always felt - for good or for ill - very much the same as using it on Windows or Linux/X-Windows, both of which I've been using since 2005 or so.

I've always used the standard GNU version rather than any specific Mac port. Over the years I'll have done some mix of downloading prebuilt binaries, building it from source, or getting the MacPorts version.

Perhaps I have missed out on some Fancy Extra Mac Stuff, the sort of thing that would come as standard with any project that took the platform seriously, but it's never really felt like a problem. And indeed, I figure if I'm happy enough with it running on X-Windows and on Windows, why wouldn't I be just as happy with exactly the same thing on macOS too? A consistent (or near enough) cross-platform experience is part of why I use Emacs anyway.

7. DonHopkins ◴[] No.45684074{3}[source]
My sweet summer child.