Advance Dev Alert – 0.3.1 Codepoint Package Changes

Hey, this is a little thing to give anyone doing development work with Mutant Standard emoji an advance warning for 0.3.1, which is currently expected to be released late October.


This alert only applies to codepoint packages.

0.3.1 codepoint filenames are changing to include Unicode control characters that were originally omitted – ZWJ (U+200d) and VS16 (U+fe0f).

This is partly to make the manifest files that form Orxporter’s exporting routines a much more authoritative source of Mutant Standard’s encoding for internal use, and it was also originally meant to also be so that Mutant Standard codepoint filenames would be more consistent with that of the image packages of other emoji vendors (more on that in a sec).


So here’s an example:


Thumbs up hand, claw, light orange colour (O3)

Thumbs up hand, claw, light orange colour (O3)

shortcode in 0.3.0 and 0.3.1: thumbs_up_clw_o3

0.3.0 codepoint name:1f44d-101651-101608

0.3.1 codepoint name: 1f44d-fe0f-101651-101608



I didn’t quite realise this until after I did all this work, but other emoji vendors inconsistently use fe0f and 200d throughout their filenames, plus many emoji parsers just outright ignore these characters because of it’s patchy and inconsistent usage (Unicode’s reference on using fe0fdoesn’t match the codepoints that Emojipedia’s database displays, for example).

So this situation with these control characters is kind of a mess, but I’ve done it anyway and tried to be consistent about it according to Unicode’s documentation, even down to all the specific cases where VS16 is supposed to exist.

Other positives of doing this is that going over the codepoints has let me detect and fix a bunch of critical mistakes in the filenames (and there were some really bad ones >.>), and this will hopefully make a future where we can compile fonts much more smoothly because we’ve accounted for every Unicode character beforehand.