Emojis
If we've determined that a character is [emoji-default](https://unicode.org/reports/tr51/#Presentation_Style), also known as “emoji in emoji” representation, we treat the character a bit differently. The goal is to not only find a font that supports emojis, but also to prioritize color emoji fonts over traditional monochrome fonts that happen to have the glyph.
On Android/Skia, Linux, and Windows, Blink will pass the special locale und-Zsye to the operating system when looking for an emoji font. The [Zsye](https://unicode.org/reports/tr51/#Emoji_Script) script tag is defined by UTS #51 as “prefer emoji style for characters that have both text and emoji styles available”, which is precisely what we need.
On Linux, Blink will additionally always use U+1F46A FAMILY (👪) when matching potential candidates to increase the odds of finding the right emoji font, in case the installed emoji font doesn't support the actual emoji in question.
More details could be found on the link bellow:
https://chromium.googlesource.com/chromium/src/+/main/third_party/blink/renderer/platform/fonts/LocaleInFonts.md
https://unicode.org/reports/tr51/
File with emoji Unicode sequences can be generated from:
https://www.unicode.org/Public/16.0.0/ucd/emoji/emoji-data.txt