logoalt Hacker News

karthinklast Wednesday at 8:42 PM1 replyview on HN

> It needs a far better UX out of the box and by "better" I mean "more aligned with what literally every other program you are likely to use does for UX". (Just enabling cua-mode by default, and making the user toggle on "vanilla Emacs", would go far.)

> ...

> One of the truths preached in the Gospel of Mac is that ALL programs need to be consistent with one another, and use the same visual look, menu hierarchy, and keybindings for corresponding commands.

I started using Emacs on a Mac recently and was pleased to discover that it is, in fact, consistent with other programs.

- Cmd-C/X/V work as expected (copy/cut/paste from system clipboard)

- Cmd-Z undoes,

- Cmd-O brings up the open-file dialog, Cmd-T opens a new tab,

- Cmd-F invokes search and Cmd-L goes to line, and so on.

It uses the same global menu bar as other programs, and setting the font from the menu works. The only thing that didn't work is using Cmd-Shift-? to search through menu bar options. This is GNU's official MacOS build, not the custom-built emacs-mac or emacs-plus packages.

Last year I helped a non-programmer get started with Emacs (for the first time) on a Mac. After a couple of weeks their only remarks were that the customize interface looks a little dated and the config/custom file has a weird format. They never brought up the keybindings or other UI as an issue. Now I understand why -- Emacs is a reasonably good citizen on MacOS.


Replies

setoptyesterday at 11:27 AM

Just to add to your testimony, Karthik:

On macOS some of the Emacs keybindings also work system-wide. You can e.g. use C-a/e, C-k, and C-n/p/f/b in every macOS text field, like e.g. in browser text fields. This is one of the main macOS features I miss on GNU/Linux. (Actually, that subset of Emacs keybindings even works on iPad with an external keyboard.)

Aside from keybindings, there are also some packages that provide deeper integration with macOS. For example, org-mac-link can save Org-mode links to currently open emails in Mail.app. And the built-in `C-x m` can author emails that are then sent to Mail.app for further processing, if you’re not able to use mu4e and similar (e.g. strict Exchange email servers).