Make Emoji Work in Linux

[ < Fun with Command Blocks | Install PAR::Packer on Windows > ]


kirsle
Posted by Noah Petherbridge on Thursday, April 04 2013 @ 04:31:49 PM
I've discovered how to get the full range of Emoji icons to render on Linux systems.

tl;dr. - Just install the Symbola font (the link on the right half of this page: Unicode Fonts for Ancient Scripts) into your /usr/share/fonts or ~/.fonts folders. Ubuntu users can sudo apt-get install ttf-ancient-fonts. For Fedora users, you can yum install gdouros-symbola-fonts (thanks James in the comments for correcting the spelling. I typed this command for the blog instead of copying/pasting from my terminal. ;)).


I ranted about the poor Emoji support in non-Apple systems before, then updated the post with screenshots showing exactly how various users will see (or not) your Emoji icons, but I got curious again to figure out what can be done to make Linux support them.

I heard (inaccurately) that Ubuntu should support them (in actuality, the person I heard this from had installed the Symbola font, so he could see Emojicons, but the default Ubuntu user can't). I also heard that it was up to the individual typefaces to include all the Emoji symbols, and if your chosen font doesn't include them, they don't render.

Testing the latter theory, I yanked the Segoe UI font from Windows 8, which is the default font, and I know that Windows 8 fully supports Emoji. This font in Linux though didn't render Emoji icons any better than all my other fonts did.

I heard about Symbola from a Google search, but the blog post I saw that mentioned it was talking specifically about how to use Emoji on your web pages... and it sounded like, "you embed Symbola.ttf using HTML5's new feature, and use that font family for each Emoji icon you want to include on your page... i.e. <span style="font-family: Symbola">emoji symbol here</span>.

Then a coworker mentioned that the typefaces don't need to include the Emoji icons, as long as font substitution is supported... so I was curious if Linux could do such a thing, so I simply dropped Symbola.ttf in my ~/.fonts folder, and within 2 seconds, all the unrenderable Emoji symbols I saw in my Pidgin chat logs suddenly transformed into the correct symbols like some kind of magic.

So, that's how you do it.

But now I'm curious about what kind of black magic Linux did to suddenly render these symbols. Maybe, when it finds an unrenderable symbol, it scans through the installed fonts until it finds one that provides that symbol...

Categories:

[ Blog ]

[ < Fun with Command Blocks | Install PAR::Packer on Windows > ]

Comments

There are 7 comments on this page.

guest
guest
Posted on Saturday, May 04 2013 @ 09:40 AM by James.

Just to correct you, the package name in Fedora is gdouros-symbola-fonts, not gdourus-symbola-fonts

Avatar
kirsle
Posted on Sunday, May 12 2013 @ 05:31 AM by Noah Petherbridge.

Corrected in the original post. Thanks! :)

guest
guest
Posted on Tuesday, July 02 2013 @ 04:55 AM by joshu.

Found this when searching for Emoji support for Linux – thanks for the tip!

But now I'm curious about what kind of black magic Linux did to suddenly render these symbols. Maybe, when it finds an unrenderable symbol, it scans through the installed fonts until it finds one that provides that symbol...

It does indeed – glyph substitution has been around in Linux for probably about 10 years if my memory serves me, and http://www.undermyhat.org/blog/2009/09/understanding-font-substitution-in-browsers/ indicates that it’s been present in Firefox for at least 4.

guest
guest
Posted on Saturday, November 16 2013 @ 07:22 PM by Niesjejjh.

Thank you, With your help, I solved it this way in Linux Mint:

Download http://users.teilar.gr/~g1951d/Symbola.ttf , open it (with the GNOME font viewer), and install it.

Regards

Avatar
guest
Posted on Thursday, December 26 2013 @ 09:52 AM by Liz Mills.

Thank you for this help. After a friend told me about emoji I was searching for a way to do it (ie: a way that I could understand) on my Linux Mint 16 system. Following your advice, I found the font on users.teilar.gr, copied it into my ~/.fonts folder and saw all the symbols as if by magic.

Thank you, thank you xx

guest
guest
Posted on Friday, February 28 2014 @ 11:10 PM by Ned.

For Ubuntu users:
sudo apt-get install ttf-ancient-fonts

Thank you Kirsle :)

guest
guest
Posted on Friday, March 21 2014 @ 03:26 PM by Beau.

thanks for the post... fixed firefox rendering issue of emoji in Ubuntu 12.04

Add a Comment

Your name:
Your Email: (optional)
Message:
Comments can be formatted with Markdown, and you can use
emoticons in your comment.

If you can see this, don't touch the following fields.


Kirsle
» Homepage (RSS)
» About Me
» Photo Albums
» Guestbook
» Contact Me
Channels
» Linux (49)
» General (48)
» Perl (34)
» Rant (22)
» Software (15)
» HowTo (11)
» RiveScript (9)
» Minecraft (9)
» Gnome 3 (8)
» Android (8)
» Windows (8)
» Curiosity (7)
» HTML (7)
» Siikir (7)
» Design (6)
» Tk (6)
» Gay (5)
» Java (4)
» Blackhat (4)
» Reviews (4)
» VirtualBox (4)
» Ideas (3)
» DOS (3)
» Python (3)
» Photos (3)
» KAGE (3)
» Xfce (3)
» ttf2eot (3)
» Licensing (3)
Creativity
» 3D Renderings
» Flash Animation
» JavaScript
» Fonts
» Metacity
» Tutorials
Software
» RiveScript
» Error Generator
» Tk Calculator
» Terminal Apps
» CyanChat Client
Web Tools
» TTF to EOT
» Text Fader
» Favicons
» Distance Calc
» Azulian Encoder
» XBM Masks
Subdomains
» Shell Scripts
» Linux RPMs
» Rophako CMS
» Kirsle::Nano
» Minecraft Server
Miscellany
¤ Pokemon Fuchsia City
¤ DOS and Windows
¤ Raspberry Pi
Links
¤ Google+
¤ Facebook
¤ Twitter
¤ MySpace
¤ Github
¤ CPAN
Fan Club
» Log In