reminds me of a funny anecdote from my first job in the tech industry. all of the team's VM's had VIM installed, but no emacs. when I asked a teammate if we could add emacs to the bsse image, he responded "It already has an OS, we don't need another one."
I still use the ancient bash on macOS. And the jq that happens to be there, which I think was new in macOS 26? (WWDC hinted it would be in macOS 15, but IIRC it wasn't)
I honestly had no idea that emacs ever shipped with it.
This is probably as good a place as any to ask: why does the macOS vi return a nonzero exit code when I make any error at all? Like if I search for text that doesn't exist in the file, or mistype at the : prompt, and then (successfully) save and quit, it returns 1. This is bad when I'm using it as the editor for something like git commit, which will fail if $EDITOR returns nonzero. No other vi/vim seems to behave this way.
`EDITOR=mg` is a great find. I never knew of it before! One caveat I found is that it doesn’t support unicode (at least not in the default mac installation).
The situation has gotten more complex since that discussion, too. Modern versions of macOS use an immutable root partition [1]; shipping GPLv3 code in that partition could arguably be a violation of the license.
I honestly had no idea that emacs ever shipped with it.
This is probably as good a place as any to ask: why does the macOS vi return a nonzero exit code when I make any error at all? Like if I search for text that doesn't exist in the file, or mistype at the : prompt, and then (successfully) save and quit, it returns 1. This is bad when I'm using it as the editor for something like git commit, which will fail if $EDITOR returns nonzero. No other vi/vim seems to behave this way.
I got hit by this so often and never knew the reason. At least I know who's to blame now.
https://github.com/ibara/mg#commonly-asked-questions
edit: found this previous HN discussion: https://news.ycombinator.com/item?id=20102640
[1]: https://support.apple.com/guide/security/signed-system-volum...