Emoji and Discourse

Originally published at: Emoji and Discourse

We’ve always had a strong relationship with Emoji. From the earliest days of Discourse, you could add Emoji to your posts by by typing : and using our handy Emoji autocompleter: Of course : just so happens to be the first character of the most common ASCII smiley, our old pal :slight_smile: – so hopefully…

9 Likes

Emoji support is great!

Since I’m using the Android ones, I can’t wait for the Android 6.0.1 new ones to be avaliable :smiley:

2 Likes

Yay! @eviltrout just updated us so we officially support Unicode 7.0 emoji, released June 2014, and Unicode 8.0 emoji, released June 2015.

He confirmed all four emoji sets have 144 standard emoji additions and this enhancement will of course be an official Discourse 1.5 feature.

Let the :taco: countdown begin. You get a :taco: and you get a :taco: and you get a :taco:

12 Likes

Wow! Very nice!

I’m upgrading my instance now because of this :vulcan:.

Ps.: I guess the skin tone interface will be kinda tricky…

3 Likes

That’s great!

@eviltrout Are you going to update the existing emojis as well?
For example lots of the emojis in Twemoji 2.0 changed and I’m not sure if the EmojiOne set is up to date. :wink:

1 Like

This time around I was focused on adding all the missing emoji we had. Just doing that for all 4 sets was quite a bit of work. And @codinghorror I actually added 196 emoji, including all new ones for Unicode 8. The one thing we’re missing is skin tones because we’d need to change our interface around for that.

6 Likes

OK, I edited my post to clarify.

That means you added +52 other emoji to make the total 196?

Yes, basically I extracted the current versions of all 4 sets we use. I then wrote a script to get the intersection of emoji that are present in each set that weren’t previously in discourse and there were 196.

I’m not sure if we were missing some from Unicode 6 or if all sets happened to include more emoji that is later than unicode 8. Each set had quite different numbers of emoji that weren’t in Discourse, so I’m not sure if they speculatively try out new emoji or what, but the good news is we have many more to use!

5 Likes

Well, there are still some Emojis missing. Some of them are even part of Unicode 6.
For example, :flag_at: should exist and according to Emojipedia it’s available in all the Emoji sets we use.

1 Like

It wasn’t in the Android set I have access to:

find . | grep "flag_at"
./apple/output/flag_at.png
./eone/output/flag_at.png
./twitter/output/flag_at.png

According to Emojipedia the codepoint should be 1f1e6-1f1f9 which is not in the repository of android icons we use.

1 Like

What about this:

https://github.com/iamcal/emoji-data/blob/master/img-google-136/1f1e6-1f1f9.png

This repo looks quite nice for what you guys do with Emoji. If you would like help adjusting the import I can try and help!

3 Likes

Oh neat! That repo wasn’t on my radar. If you want to see the tools we used to extract the emojis they’re all in this repo:

https://github.com/discourse/discourse-emoji-extractor

In order to merge them into discourse we need the emojis

  1. Present in all 4 sets.
  2. Renamed to the emoji.json name
  3. Minified using zopflipng

Then they can be put into a PR after they are:

  1. copied into the discourse repo
  2. updated emoji.json in our repo with what is present
  3. Increment emoji version

(It’s a lot of work but all the tools are there)

4 Likes

And now there’s a whole documentary about the world’s ongoing love story with Emoji:

3 Likes