Directory macros/latex/contrib/emo
emoβ’ji for all (LaTeX engines)
This package defines the \emo{<emoji-name>}
macro for including color emoji in a document no matter the LaTeX 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 LaTeXML or TeX4ht. 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.
Installation
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 LaTeX 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 LaTeX, 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:
- This package's LaTeX code is Β© Copyright 2023 by Robert Grimm and has been released under the LPPL v1.3c or later.
- The emo.py configuration script also is Β© Copyright 2023 by Robert Grimm but has been released under the Apache 2.0 license.
- The emoji-test.txt configuration file is a data file from Unicode TR-51 and hence subject to the Unicode License.
- The
emo-lingchi.ttf
font is a two-glyph subset of the serif traditional Chinese version of Google's Noto fonts and hence subject to the SIL Open Font License v1.1. - The PDF graphics in the
emo-graphics
directory are derived from the sources for Noto's color emoji and hence subject to the Apache 2.0 license.
Download the contents of this package in one zip archive (460.9k).
emo – Emoji for all (LaTeX 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 LaTeX 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.
Package | emo |
Repository | https://github.com/apparebit/emo |
Version | 0.4 2023-04-26 |
Licenses | Free license not otherwise listed The LaTeX Project Public License 1.3c The SIL Open Font License Apache License, version 2.0 |
Copyright | 2023 Robert Grimm |
Maintainer | Robert Grimm |
Contained in | TeX Live as emo MiKTeX as emo |
Topics | Graphics use Graphics |