Skip to content
/ emo Public

emoโ€ขji for all (LaTeX engines) ๐ŸŽ‰

Notifications You must be signed in to change notification settings

apparebit/emo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

85 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

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, emo-support.sty, canary.tex, demo.tex, and README.md.

To run emo's tests and build its documentation, make build.sh executable by invoking chmodย +xย build.sh and then run ./build.sh, which:

  • Tests emo on pdfTeX, XeTeX, and LuaTeXโ€”see canary.pdf;
  • Tests emo with LaTeXML and TeX4htโ€”see demo.html;
  • Builds the documentation with indicesโ€”see 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 all of the emoji listed below. In order of Unicode's emoji groups, emo's pre-configured emoji include:

  • All emoji in Unicode's Smileys & Emotion group;
  • All emoji in the People & Body group that do not override gender, hair, or skin color;
  • All emoji in the Animals & Nature, Food & Drink, Travel & Places, Activities, Objects, and Symbols groups;
  • All emoji in the flag subgroup of the Flags group;
  • The EU flag.

In Unicode display order, that's the following 1,415 out of 3,655 possible emoji as of Unicode 15.0:

๐Ÿ˜€ ๐Ÿ˜ƒ ๐Ÿ˜„ ๐Ÿ˜ ๐Ÿ˜† ๐Ÿ˜… ๐Ÿคฃ ๐Ÿ˜‚ ๐Ÿ™‚ ๐Ÿ™ƒ ๐Ÿซ  ๐Ÿ˜‰ ๐Ÿ˜Š ๐Ÿ˜‡ ๐Ÿฅฐ ๐Ÿ˜ ๐Ÿคฉ ๐Ÿ˜˜ ๐Ÿ˜— โ˜บ๏ธ ๐Ÿ˜š ๐Ÿ˜™ ๐Ÿฅฒ ๐Ÿ˜‹ ๐Ÿ˜› ๐Ÿ˜œ ๐Ÿคช ๐Ÿ˜ ๐Ÿค‘ ๐Ÿค— ๐Ÿคญ ๐Ÿซข ๐Ÿซฃ ๐Ÿคซ ๐Ÿค” ๐Ÿซก ๐Ÿค ๐Ÿคจ ๐Ÿ˜ ๐Ÿ˜‘ ๐Ÿ˜ถ ๐Ÿซฅ ๐Ÿ˜ถโ€๐ŸŒซ๏ธ ๐Ÿ˜ ๐Ÿ˜’ ๐Ÿ™„ ๐Ÿ˜ฌ ๐Ÿ˜ฎโ€๐Ÿ’จ ๐Ÿคฅ ๐Ÿซจ ๐Ÿ˜Œ ๐Ÿ˜” ๐Ÿ˜ช ๐Ÿคค ๐Ÿ˜ด ๐Ÿ˜ท ๐Ÿค’ ๐Ÿค• ๐Ÿคข ๐Ÿคฎ ๐Ÿคง ๐Ÿฅต ๐Ÿฅถ ๐Ÿฅด ๐Ÿ˜ต ๐Ÿ˜ตโ€๐Ÿ’ซ ๐Ÿคฏ ๐Ÿค  ๐Ÿฅณ ๐Ÿฅธ ๐Ÿ˜Ž ๐Ÿค“ ๐Ÿง ๐Ÿ˜• ๐Ÿซค ๐Ÿ˜Ÿ ๐Ÿ™ โ˜น๏ธ ๐Ÿ˜ฎ ๐Ÿ˜ฏ ๐Ÿ˜ฒ ๐Ÿ˜ณ ๐Ÿฅบ ๐Ÿฅน ๐Ÿ˜ฆ ๐Ÿ˜ง ๐Ÿ˜จ ๐Ÿ˜ฐ ๐Ÿ˜ฅ ๐Ÿ˜ข ๐Ÿ˜ญ ๐Ÿ˜ฑ ๐Ÿ˜– ๐Ÿ˜ฃ ๐Ÿ˜ž ๐Ÿ˜“ ๐Ÿ˜ฉ ๐Ÿ˜ซ ๐Ÿฅฑ ๐Ÿ˜ค ๐Ÿ˜ก ๐Ÿ˜  ๐Ÿคฌ ๐Ÿ˜ˆ ๐Ÿ‘ฟ ๐Ÿ’€ โ˜ ๏ธ ๐Ÿ’ฉ ๐Ÿคก ๐Ÿ‘น ๐Ÿ‘บ ๐Ÿ‘ป ๐Ÿ‘ฝ ๐Ÿ‘พ ๐Ÿค– ๐Ÿ˜บ ๐Ÿ˜ธ ๐Ÿ˜น ๐Ÿ˜ป ๐Ÿ˜ผ ๐Ÿ˜ฝ ๐Ÿ™€ ๐Ÿ˜ฟ ๐Ÿ˜พ ๐Ÿ™ˆ ๐Ÿ™‰ ๐Ÿ™Š ๐Ÿ’Œ ๐Ÿ’˜ ๐Ÿ’ ๐Ÿ’– ๐Ÿ’— ๐Ÿ’“ ๐Ÿ’ž ๐Ÿ’• ๐Ÿ’Ÿ โฃ๏ธ ๐Ÿ’” โค๏ธโ€๐Ÿ”ฅ โค๏ธโ€๐Ÿฉน โค๏ธ ๐Ÿฉท ๐Ÿงก ๐Ÿ’› ๐Ÿ’š ๐Ÿ’™ ๐Ÿฉต ๐Ÿ’œ ๐ŸคŽ ๐Ÿ–ค ๐Ÿฉถ ๐Ÿค ๐Ÿ’‹ ๐Ÿ’ฏ ๐Ÿ’ข ๐Ÿ’ฅ ๐Ÿ’ซ ๐Ÿ’ฆ ๐Ÿ’จ ๐Ÿ•ณ๏ธ ๐Ÿ’ฌ ๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ ๐Ÿ—จ๏ธ ๐Ÿ—ฏ๏ธ ๐Ÿ’ญ ๐Ÿ’ค ๐Ÿ‘‹ ๐Ÿคš ๐Ÿ–๏ธ โœ‹ ๐Ÿ–– ๐Ÿซฑ ๐Ÿซฒ ๐Ÿซณ ๐Ÿซด ๐Ÿซท ๐Ÿซธ ๐Ÿ‘Œ ๐ŸคŒ ๐Ÿค โœŒ๏ธ ๐Ÿคž ๐Ÿซฐ ๐ŸคŸ ๐Ÿค˜ ๐Ÿค™ ๐Ÿ‘ˆ ๐Ÿ‘‰ ๐Ÿ‘† ๐Ÿ–• ๐Ÿ‘‡ โ˜๏ธ ๐Ÿซต ๐Ÿ‘ ๐Ÿ‘Ž โœŠ ๐Ÿ‘Š ๐Ÿค› ๐Ÿคœ ๐Ÿ‘ ๐Ÿ™Œ ๐Ÿซถ ๐Ÿ‘ ๐Ÿคฒ ๐Ÿค ๐Ÿ™ โœ๏ธ ๐Ÿ’… ๐Ÿคณ ๐Ÿ’ช ๐Ÿฆพ ๐Ÿฆฟ ๐Ÿฆต ๐Ÿฆถ ๐Ÿ‘‚ ๐Ÿฆป ๐Ÿ‘ƒ ๐Ÿง  ๐Ÿซ€ ๐Ÿซ ๐Ÿฆท ๐Ÿฆด ๐Ÿ‘€ ๐Ÿ‘๏ธ ๐Ÿ‘… ๐Ÿ‘„ ๐Ÿซฆ ๐Ÿ‘ถ ๐Ÿง’ ๐Ÿ‘ฆ ๐Ÿ‘ง ๐Ÿง‘ ๐Ÿ‘ฑ ๐Ÿง” ๐Ÿง“ ๐Ÿ™ ๐Ÿ™Ž ๐Ÿ™… ๐Ÿ™† ๐Ÿ’ ๐Ÿ™‹ ๐Ÿง ๐Ÿ™‡ ๐Ÿคฆ ๐Ÿคท ๐Ÿง‘โ€โš•๏ธ ๐Ÿง‘โ€๐ŸŽ“ ๐Ÿง‘โ€๐Ÿซ ๐Ÿง‘โ€โš–๏ธ ๐Ÿง‘โ€๐ŸŒพ ๐Ÿง‘โ€๐Ÿณ ๐Ÿง‘โ€๐Ÿ”ง ๐Ÿง‘โ€๐Ÿญ ๐Ÿง‘โ€๐Ÿ’ผ ๐Ÿง‘โ€๐Ÿ”ฌ ๐Ÿง‘โ€๐Ÿ’ป ๐Ÿง‘โ€๐ŸŽค ๐Ÿง‘โ€๐ŸŽจ ๐Ÿง‘โ€โœˆ๏ธ ๐Ÿง‘โ€๐Ÿš€ ๐Ÿง‘โ€๐Ÿš’ ๐Ÿ‘ฎ ๐Ÿ•ต๏ธ ๐Ÿ’‚ ๐Ÿฅท ๐Ÿ‘ท ๐Ÿซ… ๐Ÿคด ๐Ÿ‘ธ ๐Ÿ‘ณ ๐Ÿ‘ฒ ๐Ÿคต ๐Ÿ‘ฐ ๐Ÿซ„ ๐Ÿคฑ ๐Ÿง‘โ€๐Ÿผ ๐Ÿ‘ผ ๐ŸŽ… ๐Ÿคถ ๐Ÿง‘โ€๐ŸŽ„ ๐Ÿฆธ ๐Ÿฆน ๐Ÿง™ ๐Ÿงš ๐Ÿง› ๐Ÿงœ ๐Ÿงœโ€โ™‚๏ธ ๐Ÿงœโ€โ™€๏ธ ๐Ÿง ๐Ÿงž ๐ŸงŸ ๐ŸงŒ ๐Ÿ’† ๐Ÿ’‡ ๐Ÿšถ ๐Ÿง ๐ŸงŽ ๐Ÿง‘โ€๐Ÿฆฏ ๐Ÿง‘โ€๐Ÿฆผ ๐Ÿง‘โ€๐Ÿฆฝ ๐Ÿƒ ๐Ÿ•ด๏ธ ๐Ÿ‘ฏ ๐Ÿ‘ฏโ€โ™‚๏ธ ๐Ÿ‘ฏโ€โ™€๏ธ ๐Ÿง– ๐Ÿง— ๐Ÿคบ ๐Ÿ‡ โ›ท๏ธ ๐Ÿ‚ ๐ŸŒ๏ธ ๐Ÿ„ ๐Ÿšฃ ๐ŸŠ โ›น๏ธ ๐Ÿ‹๏ธ ๐Ÿšด ๐Ÿšต ๐Ÿคธ ๐Ÿคผ ๐Ÿคผโ€โ™‚๏ธ ๐Ÿคผโ€โ™€๏ธ ๐Ÿคฝ ๐Ÿคพ ๐Ÿคน ๐Ÿง˜ ๐Ÿ›€ ๐Ÿ›Œ ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ ๐Ÿ‘ญ ๐Ÿ‘ฌ ๐Ÿ’ ๐Ÿ’‘ ๐Ÿ‘ช ๐Ÿ—ฃ๏ธ ๐Ÿ‘ค ๐Ÿ‘ฅ ๐Ÿซ‚ ๐Ÿ‘ฃ ๐Ÿต ๐Ÿ’ ๐Ÿฆ ๐Ÿฆง ๐Ÿถ ๐Ÿ• ๐Ÿฆฎ ๐Ÿ•โ€๐Ÿฆบ ๐Ÿฉ ๐Ÿบ ๐ŸฆŠ ๐Ÿฆ ๐Ÿฑ ๐Ÿˆ ๐Ÿˆโ€โฌ› ๐Ÿฆ ๐Ÿฏ ๐Ÿ… ๐Ÿ† ๐Ÿด ๐ŸซŽ ๐Ÿซ ๐ŸŽ ๐Ÿฆ„ ๐Ÿฆ“ ๐ŸฆŒ ๐Ÿฆฌ ๐Ÿฎ ๐Ÿ‚ ๐Ÿƒ ๐Ÿ„ ๐Ÿท ๐Ÿ– ๐Ÿ— ๐Ÿฝ ๐Ÿ ๐Ÿ‘ ๐Ÿ ๐Ÿช ๐Ÿซ ๐Ÿฆ™ ๐Ÿฆ’ ๐Ÿ˜ ๐Ÿฆฃ ๐Ÿฆ ๐Ÿฆ› ๐Ÿญ ๐Ÿ ๐Ÿ€ ๐Ÿน ๐Ÿฐ ๐Ÿ‡ ๐Ÿฟ๏ธ ๐Ÿฆซ ๐Ÿฆ” ๐Ÿฆ‡ ๐Ÿป ๐Ÿปโ€โ„๏ธ ๐Ÿจ ๐Ÿผ ๐Ÿฆฅ ๐Ÿฆฆ ๐Ÿฆจ ๐Ÿฆ˜ ๐Ÿฆก ๐Ÿพ ๐Ÿฆƒ ๐Ÿ” ๐Ÿ“ ๐Ÿฃ ๐Ÿค ๐Ÿฅ ๐Ÿฆ ๐Ÿง ๐Ÿ•Š๏ธ ๐Ÿฆ… ๐Ÿฆ† ๐Ÿฆข ๐Ÿฆ‰ ๐Ÿฆค ๐Ÿชถ ๐Ÿฆฉ ๐Ÿฆš ๐Ÿฆœ ๐Ÿชฝ ๐Ÿฆโ€โฌ› ๐Ÿชฟ ๐Ÿธ ๐ŸŠ ๐Ÿข ๐ŸฆŽ ๐Ÿ ๐Ÿฒ ๐Ÿ‰ ๐Ÿฆ• ๐Ÿฆ– ๐Ÿณ ๐Ÿ‹ ๐Ÿฌ ๐Ÿฆญ ๐ŸŸ ๐Ÿ  ๐Ÿก ๐Ÿฆˆ ๐Ÿ™ ๐Ÿš ๐Ÿชธ ๐Ÿชผ ๐ŸŒ ๐Ÿฆ‹ ๐Ÿ› ๐Ÿœ ๐Ÿ ๐Ÿชฒ ๐Ÿž ๐Ÿฆ— ๐Ÿชณ ๐Ÿ•ท๏ธ ๐Ÿ•ธ๏ธ ๐Ÿฆ‚ ๐ŸฆŸ ๐Ÿชฐ ๐Ÿชฑ ๐Ÿฆ  ๐Ÿ’ ๐ŸŒธ ๐Ÿ’ฎ ๐Ÿชท ๐Ÿต๏ธ ๐ŸŒน ๐Ÿฅ€ ๐ŸŒบ ๐ŸŒป ๐ŸŒผ ๐ŸŒท ๐Ÿชป ๐ŸŒฑ ๐Ÿชด ๐ŸŒฒ ๐ŸŒณ ๐ŸŒด ๐ŸŒต ๐ŸŒพ ๐ŸŒฟ โ˜˜๏ธ ๐Ÿ€ ๐Ÿ ๐Ÿ‚ ๐Ÿƒ ๐Ÿชน ๐Ÿชบ ๐Ÿ„ ๐Ÿ‡ ๐Ÿˆ ๐Ÿ‰ ๐ŸŠ ๐Ÿ‹ ๐ŸŒ ๐Ÿ ๐Ÿฅญ ๐ŸŽ ๐Ÿ ๐Ÿ ๐Ÿ‘ ๐Ÿ’ ๐Ÿ“ ๐Ÿซ ๐Ÿฅ ๐Ÿ… ๐Ÿซ’ ๐Ÿฅฅ ๐Ÿฅ‘ ๐Ÿ† ๐Ÿฅ” ๐Ÿฅ• ๐ŸŒฝ ๐ŸŒถ๏ธ ๐Ÿซ‘ ๐Ÿฅ’ ๐Ÿฅฌ ๐Ÿฅฆ ๐Ÿง„ ๐Ÿง… ๐Ÿฅœ ๐Ÿซ˜ ๐ŸŒฐ ๐Ÿซš ๐Ÿซ› ๐Ÿž ๐Ÿฅ ๐Ÿฅ– ๐Ÿซ“ ๐Ÿฅจ ๐Ÿฅฏ ๐Ÿฅž ๐Ÿง‡ ๐Ÿง€ ๐Ÿ– ๐Ÿ— ๐Ÿฅฉ ๐Ÿฅ“ ๐Ÿ” ๐ŸŸ ๐Ÿ• ๐ŸŒญ ๐Ÿฅช ๐ŸŒฎ ๐ŸŒฏ ๐Ÿซ” ๐Ÿฅ™ ๐Ÿง† ๐Ÿฅš ๐Ÿณ ๐Ÿฅ˜ ๐Ÿฒ ๐Ÿซ• ๐Ÿฅฃ ๐Ÿฅ— ๐Ÿฟ ๐Ÿงˆ ๐Ÿง‚ ๐Ÿฅซ ๐Ÿฑ ๐Ÿ˜ ๐Ÿ™ ๐Ÿš ๐Ÿ› ๐Ÿœ ๐Ÿ ๐Ÿ  ๐Ÿข ๐Ÿฃ ๐Ÿค ๐Ÿฅ ๐Ÿฅฎ ๐Ÿก ๐ŸฅŸ ๐Ÿฅ  ๐Ÿฅก ๐Ÿฆ€ ๐Ÿฆž ๐Ÿฆ ๐Ÿฆ‘ ๐Ÿฆช ๐Ÿฆ ๐Ÿง ๐Ÿจ ๐Ÿฉ ๐Ÿช ๐ŸŽ‚ ๐Ÿฐ ๐Ÿง ๐Ÿฅง ๐Ÿซ ๐Ÿฌ ๐Ÿญ ๐Ÿฎ ๐Ÿฏ ๐Ÿผ ๐Ÿฅ› โ˜• ๐Ÿซ– ๐Ÿต ๐Ÿถ ๐Ÿพ ๐Ÿท ๐Ÿธ ๐Ÿน ๐Ÿบ ๐Ÿป ๐Ÿฅ‚ ๐Ÿฅƒ ๐Ÿซ— ๐Ÿฅค ๐Ÿง‹ ๐Ÿงƒ ๐Ÿง‰ ๐ŸงŠ ๐Ÿฅข ๐Ÿฝ๏ธ ๐Ÿด ๐Ÿฅ„ ๐Ÿ”ช ๐Ÿซ™ ๐Ÿบ ๐ŸŒ ๐ŸŒŽ ๐ŸŒ ๐ŸŒ ๐Ÿ—บ๏ธ ๐Ÿ—พ ๐Ÿงญ ๐Ÿ”๏ธ โ›ฐ๏ธ ๐ŸŒ‹ ๐Ÿ—ป ๐Ÿ•๏ธ ๐Ÿ–๏ธ ๐Ÿœ๏ธ ๐Ÿ๏ธ ๐Ÿž๏ธ ๐ŸŸ๏ธ ๐Ÿ›๏ธ ๐Ÿ—๏ธ ๐Ÿงฑ ๐Ÿชจ ๐Ÿชต ๐Ÿ›– ๐Ÿ˜๏ธ ๐Ÿš๏ธ ๐Ÿ  ๐Ÿก ๐Ÿข ๐Ÿฃ ๐Ÿค ๐Ÿฅ ๐Ÿฆ ๐Ÿจ ๐Ÿฉ ๐Ÿช ๐Ÿซ ๐Ÿฌ ๐Ÿญ ๐Ÿฏ ๐Ÿฐ ๐Ÿ’’ ๐Ÿ—ผ ๐Ÿ—ฝ โ›ช ๐Ÿ•Œ ๐Ÿ›• ๐Ÿ• โ›ฉ๏ธ ๐Ÿ•‹ โ›ฒ โ›บ ๐ŸŒ ๐ŸŒƒ ๐Ÿ™๏ธ ๐ŸŒ„ ๐ŸŒ… ๐ŸŒ† ๐ŸŒ‡ ๐ŸŒ‰ โ™จ๏ธ ๐ŸŽ  ๐Ÿ› ๐ŸŽก ๐ŸŽข ๐Ÿ’ˆ ๐ŸŽช ๐Ÿš‚ ๐Ÿšƒ ๐Ÿš„ ๐Ÿš… ๐Ÿš† ๐Ÿš‡ ๐Ÿšˆ ๐Ÿš‰ ๐ŸšŠ ๐Ÿš ๐Ÿšž ๐Ÿš‹ ๐ŸšŒ ๐Ÿš ๐ŸšŽ ๐Ÿš ๐Ÿš‘ ๐Ÿš’ ๐Ÿš“ ๐Ÿš” ๐Ÿš• ๐Ÿš– ๐Ÿš— ๐Ÿš˜ ๐Ÿš™ ๐Ÿ›ป ๐Ÿšš ๐Ÿš› ๐Ÿšœ ๐ŸŽ๏ธ ๐Ÿ๏ธ ๐Ÿ›ต ๐Ÿฆฝ ๐Ÿฆผ ๐Ÿ›บ ๐Ÿšฒ ๐Ÿ›ด ๐Ÿ›น ๐Ÿ›ผ ๐Ÿš ๐Ÿ›ฃ๏ธ ๐Ÿ›ค๏ธ ๐Ÿ›ข๏ธ โ›ฝ ๐Ÿ›ž ๐Ÿšจ ๐Ÿšฅ ๐Ÿšฆ ๐Ÿ›‘ ๐Ÿšง โš“ ๐Ÿ›Ÿ โ›ต ๐Ÿ›ถ ๐Ÿšค ๐Ÿ›ณ๏ธ โ›ด๏ธ ๐Ÿ›ฅ๏ธ ๐Ÿšข โœˆ๏ธ ๐Ÿ›ฉ๏ธ ๐Ÿ›ซ ๐Ÿ›ฌ ๐Ÿช‚ ๐Ÿ’บ ๐Ÿš ๐ŸšŸ ๐Ÿš  ๐Ÿšก ๐Ÿ›ฐ๏ธ ๐Ÿš€ ๐Ÿ›ธ ๐Ÿ›Ž๏ธ ๐Ÿงณ โŒ› โณ โŒš โฐ โฑ๏ธ โฒ๏ธ ๐Ÿ•ฐ๏ธ ๐Ÿ•› ๐Ÿ•ง ๐Ÿ• ๐Ÿ•œ ๐Ÿ•‘ ๐Ÿ• ๐Ÿ•’ ๐Ÿ•ž ๐Ÿ•“ ๐Ÿ•Ÿ ๐Ÿ•” ๐Ÿ•  ๐Ÿ•• ๐Ÿ•ก ๐Ÿ•– ๐Ÿ•ข ๐Ÿ•— ๐Ÿ•ฃ ๐Ÿ•˜ ๐Ÿ•ค ๐Ÿ•™ ๐Ÿ•ฅ ๐Ÿ•š ๐Ÿ•ฆ ๐ŸŒ‘ ๐ŸŒ’ ๐ŸŒ“ ๐ŸŒ” ๐ŸŒ• ๐ŸŒ– ๐ŸŒ— ๐ŸŒ˜ ๐ŸŒ™ ๐ŸŒš ๐ŸŒ› ๐ŸŒœ ๐ŸŒก๏ธ โ˜€๏ธ ๐ŸŒ ๐ŸŒž ๐Ÿช โญ ๐ŸŒŸ ๐ŸŒ  ๐ŸŒŒ โ˜๏ธ โ›… โ›ˆ๏ธ ๐ŸŒค๏ธ ๐ŸŒฅ๏ธ ๐ŸŒฆ๏ธ ๐ŸŒง๏ธ ๐ŸŒจ๏ธ ๐ŸŒฉ๏ธ ๐ŸŒช๏ธ ๐ŸŒซ๏ธ ๐ŸŒฌ๏ธ ๐ŸŒ€ ๐ŸŒˆ ๐ŸŒ‚ โ˜‚๏ธ โ˜” โ›ฑ๏ธ โšก โ„๏ธ โ˜ƒ๏ธ โ›„ โ˜„๏ธ ๐Ÿ”ฅ ๐Ÿ’ง ๐ŸŒŠ ๐ŸŽƒ ๐ŸŽ„ ๐ŸŽ† ๐ŸŽ‡ ๐Ÿงจ โœจ ๐ŸŽˆ ๐ŸŽ‰ ๐ŸŽŠ ๐ŸŽ‹ ๐ŸŽ ๐ŸŽŽ ๐ŸŽ ๐ŸŽ ๐ŸŽ‘ ๐Ÿงง ๐ŸŽ€ ๐ŸŽ ๐ŸŽ—๏ธ ๐ŸŽŸ๏ธ ๐ŸŽซ ๐ŸŽ–๏ธ ๐Ÿ† ๐Ÿ… ๐Ÿฅ‡ ๐Ÿฅˆ ๐Ÿฅ‰ โšฝ โšพ ๐ŸฅŽ ๐Ÿ€ ๐Ÿ ๐Ÿˆ ๐Ÿ‰ ๐ŸŽพ ๐Ÿฅ ๐ŸŽณ ๐Ÿ ๐Ÿ‘ ๐Ÿ’ ๐Ÿฅ ๐Ÿ“ ๐Ÿธ ๐ŸฅŠ ๐Ÿฅ‹ ๐Ÿฅ… โ›ณ โ›ธ๏ธ ๐ŸŽฃ ๐Ÿคฟ ๐ŸŽฝ ๐ŸŽฟ ๐Ÿ›ท ๐ŸฅŒ ๐ŸŽฏ ๐Ÿช€ ๐Ÿช ๐Ÿ”ซ ๐ŸŽฑ ๐Ÿ”ฎ ๐Ÿช„ ๐ŸŽฎ ๐Ÿ•น๏ธ ๐ŸŽฐ ๐ŸŽฒ ๐Ÿงฉ ๐Ÿงธ ๐Ÿช… ๐Ÿชฉ ๐Ÿช† โ™ ๏ธ โ™ฅ๏ธ โ™ฆ๏ธ โ™ฃ๏ธ โ™Ÿ๏ธ ๐Ÿƒ ๐Ÿ€„ ๐ŸŽด ๐ŸŽญ ๐Ÿ–ผ๏ธ ๐ŸŽจ ๐Ÿงต ๐Ÿชก ๐Ÿงถ ๐Ÿชข ๐Ÿ‘“ ๐Ÿ•ถ๏ธ ๐Ÿฅฝ ๐Ÿฅผ ๐Ÿฆบ ๐Ÿ‘” ๐Ÿ‘• ๐Ÿ‘– ๐Ÿงฃ ๐Ÿงค ๐Ÿงฅ ๐Ÿงฆ ๐Ÿ‘— ๐Ÿ‘˜ ๐Ÿฅป ๐Ÿฉฑ ๐Ÿฉฒ ๐Ÿฉณ ๐Ÿ‘™ ๐Ÿ‘š ๐Ÿชญ ๐Ÿ‘› ๐Ÿ‘œ ๐Ÿ‘ ๐Ÿ›๏ธ ๐ŸŽ’ ๐Ÿฉด ๐Ÿ‘ž ๐Ÿ‘Ÿ ๐Ÿฅพ ๐Ÿฅฟ ๐Ÿ‘  ๐Ÿ‘ก ๐Ÿฉฐ ๐Ÿ‘ข ๐Ÿชฎ ๐Ÿ‘‘ ๐Ÿ‘’ ๐ŸŽฉ ๐ŸŽ“ ๐Ÿงข ๐Ÿช– โ›‘๏ธ ๐Ÿ“ฟ ๐Ÿ’„ ๐Ÿ’ ๐Ÿ’Ž ๐Ÿ”‡ ๐Ÿ”ˆ ๐Ÿ”‰ ๐Ÿ”Š ๐Ÿ“ข ๐Ÿ“ฃ ๐Ÿ“ฏ ๐Ÿ”” ๐Ÿ”• ๐ŸŽผ ๐ŸŽต ๐ŸŽถ ๐ŸŽ™๏ธ ๐ŸŽš๏ธ ๐ŸŽ›๏ธ ๐ŸŽค ๐ŸŽง ๐Ÿ“ป ๐ŸŽท ๐Ÿช— ๐ŸŽธ ๐ŸŽน ๐ŸŽบ ๐ŸŽป ๐Ÿช• ๐Ÿฅ ๐Ÿช˜ ๐Ÿช‡ ๐Ÿชˆ ๐Ÿ“ฑ ๐Ÿ“ฒ โ˜Ž๏ธ ๐Ÿ“ž ๐Ÿ“Ÿ ๐Ÿ“  ๐Ÿ”‹ ๐Ÿชซ ๐Ÿ”Œ ๐Ÿ’ป ๐Ÿ–ฅ๏ธ ๐Ÿ–จ๏ธ โŒจ๏ธ ๐Ÿ–ฑ๏ธ ๐Ÿ–ฒ๏ธ ๐Ÿ’ฝ ๐Ÿ’พ ๐Ÿ’ฟ ๐Ÿ“€ ๐Ÿงฎ ๐ŸŽฅ ๐ŸŽž๏ธ ๐Ÿ“ฝ๏ธ ๐ŸŽฌ ๐Ÿ“บ ๐Ÿ“ท ๐Ÿ“ธ ๐Ÿ“น ๐Ÿ“ผ ๐Ÿ” ๐Ÿ”Ž ๐Ÿ•ฏ๏ธ ๐Ÿ’ก ๐Ÿ”ฆ ๐Ÿฎ ๐Ÿช” ๐Ÿ“” ๐Ÿ“• ๐Ÿ“– ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™ ๐Ÿ“š ๐Ÿ““ ๐Ÿ“’ ๐Ÿ“ƒ ๐Ÿ“œ ๐Ÿ“„ ๐Ÿ“ฐ ๐Ÿ—ž๏ธ ๐Ÿ“‘ ๐Ÿ”– ๐Ÿท๏ธ ๐Ÿ’ฐ ๐Ÿช™ ๐Ÿ’ด ๐Ÿ’ต ๐Ÿ’ถ ๐Ÿ’ท ๐Ÿ’ธ ๐Ÿ’ณ ๐Ÿงพ ๐Ÿ’น โœ‰๏ธ ๐Ÿ“ง ๐Ÿ“จ ๐Ÿ“ฉ ๐Ÿ“ค ๐Ÿ“ฅ ๐Ÿ“ฆ ๐Ÿ“ซ ๐Ÿ“ช ๐Ÿ“ฌ ๐Ÿ“ญ ๐Ÿ“ฎ ๐Ÿ—ณ๏ธ โœ๏ธ โœ’๏ธ ๐Ÿ–‹๏ธ ๐Ÿ–Š๏ธ ๐Ÿ–Œ๏ธ ๐Ÿ–๏ธ ๐Ÿ“ ๐Ÿ’ผ ๐Ÿ“ ๐Ÿ“‚ ๐Ÿ—‚๏ธ ๐Ÿ“… ๐Ÿ“† ๐Ÿ—’๏ธ ๐Ÿ—“๏ธ ๐Ÿ“‡ ๐Ÿ“ˆ ๐Ÿ“‰ ๐Ÿ“Š ๐Ÿ“‹ ๐Ÿ“Œ ๐Ÿ“ ๐Ÿ“Ž ๐Ÿ–‡๏ธ ๐Ÿ“ ๐Ÿ“ โœ‚๏ธ ๐Ÿ—ƒ๏ธ ๐Ÿ—„๏ธ ๐Ÿ—‘๏ธ ๐Ÿ”’ ๐Ÿ”“ ๐Ÿ” ๐Ÿ” ๐Ÿ”‘ ๐Ÿ—๏ธ ๐Ÿ”จ ๐Ÿช“ โ›๏ธ โš’๏ธ ๐Ÿ› ๏ธ ๐Ÿ—ก๏ธ โš”๏ธ ๐Ÿ’ฃ ๐Ÿชƒ ๐Ÿน ๐Ÿ›ก๏ธ ๐Ÿชš ๐Ÿ”ง ๐Ÿช› ๐Ÿ”ฉ โš™๏ธ ๐Ÿ—œ๏ธ โš–๏ธ ๐Ÿฆฏ ๐Ÿ”— โ›“๏ธ ๐Ÿช ๐Ÿงฐ ๐Ÿงฒ ๐Ÿชœ โš—๏ธ ๐Ÿงช ๐Ÿงซ ๐Ÿงฌ ๐Ÿ”ฌ ๐Ÿ”ญ ๐Ÿ“ก ๐Ÿ’‰ ๐Ÿฉธ ๐Ÿ’Š ๐Ÿฉน ๐Ÿฉผ ๐Ÿฉบ ๐Ÿฉป ๐Ÿšช ๐Ÿ›— ๐Ÿชž ๐ŸชŸ ๐Ÿ›๏ธ ๐Ÿ›‹๏ธ ๐Ÿช‘ ๐Ÿšฝ ๐Ÿช  ๐Ÿšฟ ๐Ÿ› ๐Ÿชค ๐Ÿช’ ๐Ÿงด ๐Ÿงท ๐Ÿงน ๐Ÿงบ ๐Ÿงป ๐Ÿชฃ ๐Ÿงผ ๐Ÿซง ๐Ÿชฅ ๐Ÿงฝ ๐Ÿงฏ ๐Ÿ›’ ๐Ÿšฌ โšฐ๏ธ ๐Ÿชฆ โšฑ๏ธ ๐Ÿงฟ ๐Ÿชฌ ๐Ÿ—ฟ ๐Ÿชง ๐Ÿชช ๐Ÿง ๐Ÿšฎ ๐Ÿšฐ โ™ฟ ๐Ÿšน ๐Ÿšบ ๐Ÿšป ๐Ÿšผ ๐Ÿšพ ๐Ÿ›‚ ๐Ÿ›ƒ ๐Ÿ›„ ๐Ÿ›… โš ๏ธ ๐Ÿšธ โ›” ๐Ÿšซ ๐Ÿšณ ๐Ÿšญ ๐Ÿšฏ ๐Ÿšฑ ๐Ÿšท ๐Ÿ“ต ๐Ÿ”ž โ˜ข๏ธ โ˜ฃ๏ธ โฌ†๏ธ โ†—๏ธ โžก๏ธ โ†˜๏ธ โฌ‡๏ธ โ†™๏ธ โฌ…๏ธ โ†–๏ธ โ†•๏ธ โ†”๏ธ โ†ฉ๏ธ โ†ช๏ธ โคด๏ธ โคต๏ธ ๐Ÿ”ƒ ๐Ÿ”„ ๐Ÿ”™ ๐Ÿ”š ๐Ÿ”› ๐Ÿ”œ ๐Ÿ” ๐Ÿ› โš›๏ธ ๐Ÿ•‰๏ธ โœก๏ธ โ˜ธ๏ธ โ˜ฏ๏ธ โœ๏ธ โ˜ฆ๏ธ โ˜ช๏ธ โ˜ฎ๏ธ ๐Ÿ•Ž ๐Ÿ”ฏ ๐Ÿชฏ โ™ˆ โ™‰ โ™Š โ™‹ โ™Œ โ™ โ™Ž โ™ โ™ โ™‘ โ™’ โ™“ โ›Ž ๐Ÿ”€ ๐Ÿ” ๐Ÿ”‚ โ–ถ๏ธ โฉ โญ๏ธ โฏ๏ธ โ—€๏ธ โช โฎ๏ธ ๐Ÿ”ผ โซ ๐Ÿ”ฝ โฌ โธ๏ธ โน๏ธ โบ๏ธ โ๏ธ ๐ŸŽฆ ๐Ÿ”… ๐Ÿ”† ๐Ÿ“ถ ๐Ÿ›œ ๐Ÿ“ณ ๐Ÿ“ด โ™€๏ธ โ™‚๏ธ โšง๏ธ โœ–๏ธ โž• โž– โž— ๐ŸŸฐ โ™พ๏ธ โ€ผ๏ธ โ‰๏ธ โ“ โ” โ• โ— ใ€ฐ๏ธ ๐Ÿ’ฑ ๐Ÿ’ฒ โš•๏ธ โ™ป๏ธ โšœ๏ธ ๐Ÿ”ฑ ๐Ÿ“› ๐Ÿ”ฐ โญ• โœ… โ˜‘๏ธ โœ”๏ธ โŒ โŽ โžฐ โžฟ ใ€ฝ๏ธ โœณ๏ธ โœด๏ธ โ‡๏ธ ยฉ๏ธ ยฎ๏ธ โ„ข๏ธ #๏ธโƒฃ *๏ธโƒฃ 0๏ธโƒฃ 1๏ธโƒฃ 2๏ธโƒฃ 3๏ธโƒฃ 4๏ธโƒฃ 5๏ธโƒฃ 6๏ธโƒฃ 7๏ธโƒฃ 8๏ธโƒฃ 9๏ธโƒฃ ๐Ÿ”Ÿ ๐Ÿ”  ๐Ÿ”ก ๐Ÿ”ข ๐Ÿ”ฃ ๐Ÿ”ค ๐Ÿ…ฐ๏ธ ๐Ÿ†Ž ๐Ÿ…ฑ๏ธ ๐Ÿ†‘ ๐Ÿ†’ ๐Ÿ†“ โ„น๏ธ ๐Ÿ†” โ“‚๏ธ ๐Ÿ†• ๐Ÿ†– ๐Ÿ…พ๏ธ ๐Ÿ†— ๐Ÿ…ฟ๏ธ ๐Ÿ†˜ ๐Ÿ†™ ๐Ÿ†š ๐Ÿˆ ๐Ÿˆ‚๏ธ ๐Ÿˆท๏ธ ๐Ÿˆถ ๐Ÿˆฏ ๐Ÿ‰ ๐Ÿˆน ๐Ÿˆš ๐Ÿˆฒ ๐Ÿ‰‘ ๐Ÿˆธ ๐Ÿˆด ๐Ÿˆณ ใŠ—๏ธ ใŠ™๏ธ ๐Ÿˆบ ๐Ÿˆต ๐Ÿ”ด ๐ŸŸ  ๐ŸŸก ๐ŸŸข ๐Ÿ”ต ๐ŸŸฃ ๐ŸŸค โšซ โšช ๐ŸŸฅ ๐ŸŸง ๐ŸŸจ ๐ŸŸฉ ๐ŸŸฆ ๐ŸŸช ๐ŸŸซ โฌ› โฌœ โ—ผ๏ธ โ—ป๏ธ โ—พ โ—ฝ โ–ช๏ธ โ–ซ๏ธ ๐Ÿ”ถ ๐Ÿ”ท ๐Ÿ”ธ ๐Ÿ”น ๐Ÿ”บ ๐Ÿ”ป ๐Ÿ’  ๐Ÿ”˜ ๐Ÿ”ณ ๐Ÿ”ฒ ๐Ÿ ๐Ÿšฉ ๐ŸŽŒ ๐Ÿด ๐Ÿณ๏ธ ๐Ÿณ๏ธโ€๐ŸŒˆ ๐Ÿณ๏ธโ€โšง๏ธ ๐Ÿดโ€โ˜ ๏ธ ๐Ÿ‡ช๐Ÿ‡บ

The package documentation explains the underlying naming scheme. It also explains how to update the configuration with the emo.py script, which takes care of most heavy lifting by downloading the sources for Noto color emoji, converting SVG into PDF graphics compatible with pdfTeX and XeTeX, and generating up-to-date emo.def files.

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: