CTAN Comprehensive TeX Archive Network

Directory macros/latex/contrib/emo


emoβ€’ji for all ( engines)

This package defines the \emo{<emoji-name>} macro for including color emoji in a document no matter the engine. It uses the Noto color emoji font if the engine supports doing so and falls back onto PDF graphics otherwise. In either case, \emo{desert-island} results in 🏝 and \emo{parrot} results in 🦜. Emo may come in particularly handy when dealing with academic publishers that provide only minimal support for non-Latin scripts (cough, ACM, cough).

Emo's source repository is https://github.com/apparebit/emo. It also is available through CTAN. Emo supports conversion to HTML with ML or 4ht. When using the latter tool, please be sure to use |make4ht -l| as invocation.

Package Options

When emo is used with the extra option, this package also defines the \lingchi and \YHWH macros for ε‡Œι² and Χ™Χ”Χ•Χ”, respectively. Both macros preserve a subsequent space as space, no backslash needed.

When used with the index option, this package also emits a raw index entry for each use of an emoji into an emo index or .edx file.


To extract files embedded in emo.dtx, run pdftex emo.dtx. Note that plain old tex won't do, since it mangles this README. pdflatex works, but also generates the package documentation. The embedded files are build.sh, emo.ins, emo.sty, emo.sty.ltxml, canary.tex, and README.md.

To build the documentation embedded in emo.dtx, run source build.sh. The shell script invokes pdflatex emo.dtx thrice and makeindex once each for the change and the symbol indices, resulting in emo.pdf.

To configure the emoji, run python3 config/emo.py with appropriate arguments. The package documentation explains the configuration tool in detail, but you may find the -h for help option sufficient to get started.

To install this package, place emo.def, emo.sty, emo.sty.ltxml, emo-lingchi.ttf, and the emo-graphics directory with the fallback PDF files somewhere where can find them. In a pinch, your project directory will do.

Supported Emoji

By default, emo supports only a few emoji, ordered by Unicode codepoints:

1️⃣ ☣️ βš–οΈ βœ… βœ”οΈ ❌ βž• πŸ‡ͺπŸ‡Ί πŸ‰ 🌁 🌍 πŸŽ‰ πŸ›οΈ 🏝️ 🏟️ πŸ³οΈβ€πŸŒˆ 🏷️ 🐀 πŸ‘οΈ πŸ‘₯ πŸ’₯ πŸ’± πŸ’Ύ πŸ“ˆ πŸ“ πŸ“Ÿ πŸ” πŸ•΅οΈ πŸ—‘οΈ 😑 πŸ›‘ πŸ€– 🀝 🀦 πŸ€ͺ 🀯 πŸ₯Ί 🦜 πŸ§‘β€βš–οΈ 🧻 🧾

Their names are keycap-one, biohazard, balance-scale, check-mark-button, check-mark, cross-mark, plus, eu, japanese-bargain-button, foggy, globe-africa-europe, party-popper, classical-building, desert-island, stadium, rainbow-flag, label, baby-chick, eye, busts, collision, currency-exchange, floppy-disk, chart-increasing, triangular-ruler, pager, loupe-left, detective, wastebasket, enraged-face, stop-sign, robot, handshake, person-facepalming, zany-face, exploding-head, pleading-face, parrot, judge, roll-of-paper, and receipt.

The package's documentation explains the underlying naming scheme and also how to reconfigure which emoji are supported. The emo.py script takes care of the heavy lifting during reconfiguration, converting SVG into PDF files and generating an updated emo.def file.

Copyright and Licensing

This package combines code written in , Python, and Perl with Unicode data about emoji as well as graphics and fonts derived from Google's Noto fonts. As a result, a number of different licenses apply, all of which are OSI approved and non-copyleft:

Download the contents of this package in one zip archive (460.9k).

emo – Emoji for all ( engines)

Emo implements the \emo{'emoji-name'} command for including color emoji such as 🏝 (\emo{desert-island}) or 🦜 (\emo{parrot}) in your documents independent of input encoding or engine. The implementation uses the Noto color emoji font if the engine supports it and includes PDF graphics otherwise. The latter are automatically derived from Noto’s SVG sources, so the visual appearance is very similar.

Emo may come in particularly handy when dealing with academic publishers that provide only minimal support for non-Latin scripts.

Version0.4 2023-04-26
LicensesFree license not otherwise listed
The Project Public License 1.3c
The SIL Open Font License
Apache License, version 2.0
Copyright2023 Robert Grimm
MaintainerRobert Grimm
Contained inTeX Live as emo
MiKTeX as emo
Graphics use
Guest Book Sitemap Contact Contact Author