Is there a build of GUI Emacs for Mac that can display emoji? I tried this and AquaEmacs but neither of them could display it.


The Emacs Mac Port is said to support emoji display out of the box:

  • Can display color bitmap fonts such as Apple Color Emoji, if compiled and executed on Mac OS X 10.7 or later. Also supports display of some combinations of regional indicator symbols, such as U+1F1EF followed by U+1F1F5, as national flags. Variation Selectors 15 (text-style) and 16 (emoji-style) are also supported. On OS X 10.10.3 and later, emoji modifiers for skin tones (U+1F3FB - U+1F3FF) are supported as well.

It's available in a Homebrew Tap. To enable the tap and install the port, type:

$ brew tap railwaycat/emacsmacport
$ brew install emacs-mac

Alternatively you can manually configure the Emacs' font choice to use Apple's Emoji font:

(set-fontset-font t 'symbol (font-spec :family "Apple Color Emoji")
                  frame 'prepend)

Note that you'll need to apply this to every new frame, and thus call it in a function for after-make-frame-functions.

This should work on a normal Cocoa build of standard Emacs, e.g. from brew install emacs or Emacs for Mac OS X.

  • The Emacs Mac port by YAMAMOTO Mitsuharu is available in MacPorts too (run port install emacs-mac-app). – Constantine Feb 10 '16 at 16:15
  • I use the railwaycat port, and can confirm firsthand that it does display emoji in the Apple Color Emoji font. – Aaron Miller Feb 11 '16 at 19:57
  • Also, for the benefit of people who stumble on this question and are trying to make emoji work on something other than a Mac: emacs-emojify is a cross-platform emoji library that includes a broad collection of (I presume) free emoji in .png format, and I find it works very nicely on Windows and Linux. – Aaron Miller Feb 11 '16 at 19:59
  • I tried Homebrew Tap but how can I run the installed railwaycat emacs? It's not supposed to run on Terminal, is it? If so, I wouldn't be able to click to navigate. I also tried the alternative method, adding a new function including the snippet you wrote and then hooking it to after-make-frame-functions in my init.el file, but didn't work? It just gives me an error saying "wrong number of arguments." – stacko Feb 12 '16 at 16:59
  • @stacko Like any other OS X application: Start the app bundle. Run brew linkapps to have it appear in Launchpad, etc. As for the alternative method, the error message doesn't help without seeing what you've done. Take a look at the docstring of after-make-frame-functions to figure out how it's supposed to be used. – user227 Feb 12 '16 at 17:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.