iamcal / emoji-data

Easy to parse data and spritesheets for emoji
MIT License
2.57k stars 304 forks source link

Support for Emoji 12.1 #165

Closed iamcal closed 4 years ago

iamcal commented 4 years ago

This is the PR where I'm working on support for the latest Emoji version.

Currently the source data is up to date, but the build_map.php step is showing some errors.

After the data processing is complete, I can start working on updating the image sets,

iamcal commented 4 years ago

Only a couple of overlapping sequences/names to fix in the basic data now

iamcal commented 4 years ago

Just apple image remain to be extracted, then I'll need to build sheets and optimize all the images.

Facebook messenger images have been removed - Facebook have unified into a single image set (EMOJI_3) and this is now used.

jwheare commented 4 years ago

Just looking through the output of unknowns.php in img-apple-160 it contains the gender neutral supervillain/heros and multi skin tone couples.

Not sure what to do about the couples, but I got the heros/villains to be picked up by adding these ungendered lines to data_emoji_names_v11.txt (they were in 11.0 according to https://emojipedia.org/emoji-11.0/)

1F9B8{SKIN};superhero 1F9B9{SKIN};supervillain

jwheare commented 4 years ago

I also noticed a small issue in build_table.php where strtolower was choking on country flags with accents. Switching to mb_strtolower fixes that.

line 128: echo "\t\t<td>".HtmlSpecialChars(mb_strtolower($row['name']))."</td>\n";

iamcal commented 4 years ago

Thanks James - this branch now fixes both of those issues. The mixed-skin-tone couples were added in 12.1, so i'm going to work on those next. After they are complete i'll need to rebuild all the sheets too.

jwheare commented 4 years ago

We can also get the non-mixed skin tone variations on gender-neutral people_holding_hands by changing in data_emoji_names_v12.txt:

1F9D1-200D-1F91D-200D-1F9D1;people_holding_hands to: 1F9D1{SKIN}-200D-1F91D-200D-1F9D1{SKIN};people_holding_hands

jwheare commented 4 years ago

I've been poking around with the mixed skin tone stuff. It's tricky because of the :skin-1 suffix style shortnames. I was toying with using something like :skin-1-skin-2 but didn't get very far.

jwheare commented 4 years ago

Something like this might work: https://github.com/iamcal/emoji-data/compare/v12...jwheare:v12-mixed-skin?expand=1

iamcal commented 4 years ago

i have a similar patch locally - not sure i'll have time to iterate on it today, but maybe!

iamcal commented 4 years ago

i think it's close to complete. i'm rebuilding the sheets now, which takes a few hours, and then it should be good to release

i'm bumping the major version number (to 5.0.0) since the multiple-skin-tones-per-emoji changes makes the skin variation keys non-backward-compatible