diff --git a/.codespellignore b/.codespellignore index 77acea2691..638e0a91ce 100644 --- a/.codespellignore +++ b/.codespellignore @@ -16,3 +16,5 @@ fpr alls nd ot +womens +vise diff --git a/tools/setup/emoji/custom_emoji_names.py b/tools/setup/emoji/custom_emoji_names.py new file mode 100644 index 0000000000..e06c59e299 --- /dev/null +++ b/tools/setup/emoji/custom_emoji_names.py @@ -0,0 +1,1580 @@ +from typing import Any, Dict + +CUSTOM_EMOJI_NAME_MAPS: Dict[str, Dict[str, Any]] = { + # seems like best emoji for happy + "1f600": {"canonical_name": "grinning", "aliases": ["happy"]}, + "1f603": {"canonical_name": "smiley", "aliases": []}, + # the Google emoji for this is not great, so made People/9 'smile' and + # renamed this one + "1f604": {"canonical_name": "big_smile", "aliases": []}, + # from gemoji/Unicode + "1f601": {"canonical_name": "grinning_face_with_smiling_eyes", "aliases": []}, + # satisfied doesn't seem like a good description of these images + "1f606": {"canonical_name": "laughing", "aliases": ["lol"]}, + "1f605": {"canonical_name": "sweat_smile", "aliases": []}, + # laughter_tears from https://beebom.com/emoji-meanings/ + "1f602": {"canonical_name": "joy", "aliases": ["tears", "laughter_tears"]}, + "1f923": {"canonical_name": "rolling_on_the_floor_laughing", "aliases": ["rofl"]}, + # not sure how the glyphs match relaxed, but both iamcal and gemoji have it + "263a": {"canonical_name": "smiling_face", "aliases": ["relaxed"]}, + "1f60a": {"canonical_name": "blush", "aliases": []}, + # halo comes from gemoji/Unicode + "1f607": {"canonical_name": "innocent", "aliases": ["halo"]}, + "1f642": {"canonical_name": "smile", "aliases": []}, + "1f643": {"canonical_name": "upside_down", "aliases": ["oops"]}, + "1f609": {"canonical_name": "wink", "aliases": []}, + "1f60c": {"canonical_name": "relieved", "aliases": []}, + # in_love from https://beebom.com/emoji-meanings/ + "1f60d": {"canonical_name": "heart_eyes", "aliases": ["in_love"]}, + # blow_a_kiss from https://beebom.com/emoji-meanings/ + "1f618": {"canonical_name": "heart_kiss", "aliases": ["blow_a_kiss"]}, + "1f617": {"canonical_name": "kiss", "aliases": []}, + "1f619": {"canonical_name": "kiss_smiling_eyes", "aliases": []}, + "1f61a": {"canonical_name": "kiss_with_blush", "aliases": []}, + "1f60b": {"canonical_name": "yum", "aliases": []}, + # crazy from https://beebom.com/emoji-meanings/, seems like best emoji for + # joking + "1f61b": {"canonical_name": "stuck_out_tongue", "aliases": ["mischievous"]}, + "1f61c": {"canonical_name": "stuck_out_tongue_wink", "aliases": ["joking", "crazy"]}, + "1f61d": {"canonical_name": "stuck_out_tongue_closed_eyes", "aliases": []}, + # kaching suggested by user + "1f911": {"canonical_name": "money_face", "aliases": ["kaching"]}, + # arms_open seems like a natural addition + "1f917": {"canonical_name": "hug", "aliases": ["arms_open"]}, + "1f913": {"canonical_name": "nerd", "aliases": ["geek"]}, + # several sites suggested this was used for "cool", but cool is taken by + # Symbols/137 + "1f60e": {"canonical_name": "sunglasses", "aliases": []}, + "1f921": {"canonical_name": "clown", "aliases": []}, + "1f920": {"canonical_name": "cowboy", "aliases": []}, + # https://emojipedia.org/smirking-face/ + "1f60f": {"canonical_name": "smirk", "aliases": ["smug"]}, + "1f612": {"canonical_name": "unamused", "aliases": []}, + "1f61e": {"canonical_name": "disappointed", "aliases": []}, + # see People/41 + "1f614": {"canonical_name": "pensive", "aliases": ["tired"]}, + "1f61f": {"canonical_name": "worried", "aliases": []}, + # these seem to better capture the glyphs. This is also what :/ turns into + # in Google Hangouts + "1f615": {"canonical_name": "oh_no", "aliases": ["half_frown", "concerned", "confused"]}, + "1f641": {"canonical_name": "frown", "aliases": ["slight_frown"]}, + # sad seemed better than putting another frown as the primary name (see + # People/37) + "2639": {"canonical_name": "sad", "aliases": ["big_frown"]}, + # helpless from https://emojipedia.org/persevering-face/ + "1f623": {"canonical_name": "persevere", "aliases": ["helpless"]}, + # agony seemed like a good addition + "1f616": {"canonical_name": "confounded", "aliases": ["agony"]}, + # tired doesn't really match any of the 4 images, put it on People/34 + "1f62b": {"canonical_name": "anguish", "aliases": []}, + # distraught from https://beebom.com/emoji-meanings/ + "1f629": {"canonical_name": "weary", "aliases": ["distraught"]}, + "1f624": {"canonical_name": "triumph", "aliases": []}, + "1f620": {"canonical_name": "angry", "aliases": []}, + # mad and grumpy from https://beebom.com/emoji-meanings/, very_angry to + # parallel People/44 and show up in typeahead for "ang.." + "1f621": {"canonical_name": "rage", "aliases": ["mad", "grumpy", "very_angry"]}, + # blank from https://beebom.com/emoji-meanings/, speechless and poker_face + # seemed like good ideas for this + "1f636": {"canonical_name": "speechless", "aliases": ["no_mouth", "blank", "poker_face"]}, + "1f610": {"canonical_name": "neutral", "aliases": []}, + "1f611": {"canonical_name": "expressionless", "aliases": []}, + "1f62f": {"canonical_name": "hushed", "aliases": []}, + "1f626": {"canonical_name": "frowning", "aliases": []}, + # pained from https://beebom.com/emoji-meanings/ + "1f627": {"canonical_name": "anguished", "aliases": ["pained"]}, + # surprise from https://emojipedia.org/face-with-open-mouth/ + "1f62e": {"canonical_name": "open_mouth", "aliases": ["surprise"]}, + "1f632": {"canonical_name": "astonished", "aliases": []}, + "1f635": {"canonical_name": "dizzy", "aliases": []}, + # the alternates are from https://emojipedia.org/flushed-face/. shame + # doesn't work with the Google emoji + "1f633": {"canonical_name": "flushed", "aliases": ["embarrassed", "blushing"]}, + "1f631": {"canonical_name": "scream", "aliases": []}, + # scared from https://emojipedia.org/fearful-face/, shock seemed like a + # nice addition + "1f628": {"canonical_name": "fear", "aliases": ["scared", "shock"]}, + "1f630": {"canonical_name": "cold_sweat", "aliases": []}, + "1f622": {"canonical_name": "cry", "aliases": []}, + # stressed from https://beebom.com/emoji-meanings/. The internet generally + # didn't seem to know what to make of the disappointed_relieved name, and I + # got the sense it wasn't an emotion that was often used. Hence replaced it + # with exhausted. + "1f625": {"canonical_name": "exhausted", "aliases": ["disappointed_relieved", "stressed"]}, + "1f924": {"canonical_name": "drooling", "aliases": []}, + "1f62d": {"canonical_name": "sob", "aliases": []}, + "1f613": {"canonical_name": "sweat", "aliases": []}, + "1f62a": {"canonical_name": "sleepy", "aliases": []}, + "1f634": {"canonical_name": "sleeping", "aliases": []}, + "1f644": {"canonical_name": "rolling_eyes", "aliases": []}, + "1f914": {"canonical_name": "thinking", "aliases": []}, + "1f925": {"canonical_name": "lying", "aliases": []}, + # seems like best emoji for nervous/anxious + "1f62c": {"canonical_name": "grimacing", "aliases": ["nervous", "anxious"]}, + # zip_it from https://mashable.com/2015/10/23/ios-9-1-emoji-guide/, + # lips_sealed from https://emojipedia.org/zipper-mouth-face/, rest seemed + # like reasonable additions + "1f910": { + "canonical_name": "silence", + "aliases": ["quiet", "hush", "zip_it", "lips_are_sealed"], + }, + # queasy seemed like a natural addition + "1f922": {"canonical_name": "nauseated", "aliases": ["queasy"]}, + "1f927": {"canonical_name": "sneezing", "aliases": []}, + "1f637": {"canonical_name": "mask", "aliases": []}, + # flu from https://mashable.com/2015/10/23/ios-9-1-emoji-guide/, sick from + # https://emojipedia.org/face-with-thermometer/, face_with_thermometer so + # it shows up in typeahead (thermometer taken by Objects/82) + "1f912": { + "canonical_name": "sick", + "aliases": ["flu", "face_with_thermometer", "ill", "fever"], + }, + # hurt and injured from https://beebom.com/emoji-meanings/. Chose hurt as + # primary since I think it can cover a wider set of things (e.g. emotional + # hurt) + "1f915": {"canonical_name": "hurt", "aliases": ["head_bandage", "injured"]}, + # devil from https://emojipedia.org/smiling-face-with-horns/, + # smiling_face_with_horns from gemoji/Unicode + "1f608": { + "canonical_name": "smiling_devil", + "aliases": ["smiling_imp", "smiling_face_with_horns"], + }, + # angry_devil from https://beebom.com/emoji-meanings/ + "1f47f": {"canonical_name": "devil", "aliases": ["imp", "angry_devil"]}, + "1f479": {"canonical_name": "ogre", "aliases": []}, + "1f47a": {"canonical_name": "goblin", "aliases": []}, + # pile_of_poo from gemoji/Unicode + "1f4a9": {"canonical_name": "poop", "aliases": ["pile_of_poo"]}, + # alternates seemed like reasonable additions + "1f47b": {"canonical_name": "ghost", "aliases": ["boo", "spooky", "haunted"]}, + "1f480": {"canonical_name": "skull", "aliases": []}, + # alternates seemed like reasonable additions + "2620": { + "canonical_name": "skull_and_crossbones", + "aliases": ["pirate", "death", "hazard", "toxic", "poison"], + }, + # ufo seemed like a natural addition + "1f47d": {"canonical_name": "alien", "aliases": ["ufo"]}, + "1f47e": {"canonical_name": "space_invader", "aliases": []}, + "1f916": {"canonical_name": "robot", "aliases": []}, + # pumpkin seemed like a natural addition + "1f383": {"canonical_name": "jack-o-lantern", "aliases": ["pumpkin"]}, + "1f63a": {"canonical_name": "smiley_cat", "aliases": []}, + "1f638": {"canonical_name": "smile_cat", "aliases": []}, + "1f639": {"canonical_name": "joy_cat", "aliases": []}, + "1f63b": {"canonical_name": "heart_eyes_cat", "aliases": []}, + # smug_cat to parallel People/31 + "1f63c": {"canonical_name": "smirk_cat", "aliases": ["smug_cat"]}, + "1f63d": {"canonical_name": "kissing_cat", "aliases": []}, + # weary_cat from Unicode/gemoji + "1f640": {"canonical_name": "scream_cat", "aliases": ["weary_cat"]}, + "1f63f": {"canonical_name": "crying_cat", "aliases": []}, + # angry_cat to better parallel People/45 + "1f63e": {"canonical_name": "angry_cat", "aliases": ["pouting_cat"]}, + "1f450": {"canonical_name": "open_hands", "aliases": []}, + # praise from + # https://emojipedia.org/person-raising-both-hands-in-celebration/ + "1f64c": {"canonical_name": "raised_hands", "aliases": ["praise"]}, + # applause from https://emojipedia.org/clapping-hands-sign/ + "1f44f": {"canonical_name": "clap", "aliases": ["applause"]}, + # welcome and thank_you from + # https://emojipedia.org/person-with-folded-hands/, namaste from Indian + # culture + "1f64f": {"canonical_name": "pray", "aliases": ["welcome", "thank_you", "namaste"]}, + # done_deal seems like a natural addition + "1f91d": {"canonical_name": "handshake", "aliases": ["done_deal"]}, + "1f44d": {"canonical_name": "+1", "aliases": ["thumbs_up", "like"]}, + "1f44e": {"canonical_name": "-1", "aliases": ["thumbs_down"]}, + # fist_bump from https://beebom.com/emoji-meanings/ + "1f44a": {"canonical_name": "fist_bump", "aliases": ["punch"]}, + # used as power in social justice movements + "270a": {"canonical_name": "fist", "aliases": ["power"]}, + "1f91b": {"canonical_name": "left_fist", "aliases": []}, + "1f91c": {"canonical_name": "right_fist", "aliases": []}, + "1f91e": {"canonical_name": "fingers_crossed", "aliases": []}, + # seems to be mostly used as peace on twitter + "270c": {"canonical_name": "peace_sign", "aliases": ["victory"]}, + # https://emojipedia.org/sign-of-the-horns/ + "1f918": {"canonical_name": "rock_on", "aliases": ["sign_of_the_horns"]}, + # got_it seems like a natural addition + "1f44c": {"canonical_name": "ok", "aliases": ["got_it"]}, + "1f448": {"canonical_name": "point_left", "aliases": []}, + "1f449": {"canonical_name": "point_right", "aliases": []}, + # :this: is a way of emphasizing the previous message. point_up instead of + # point_up_2 so that point_up better matches the other point_*s + "1f446": {"canonical_name": "point_up", "aliases": ["this"]}, + "1f447": {"canonical_name": "point_down", "aliases": []}, + # People/114 is point_up. These seemed better than naming it point_up_2, + # and point_of_information means it will come up in typeahead for 'point' + "261d": { + "canonical_name": "wait_one_second", + "aliases": ["point_of_information", "asking_a_question"], + }, + "270b": {"canonical_name": "hand", "aliases": ["raised_hand"]}, + # seems like best emoji for stop, raised_back_of_hand doesn't seem that + # useful + "1f91a": {"canonical_name": "stop", "aliases": []}, + # seems like best emoji for high_five, raised_hand_with_fingers_splayed + # doesn't seem that useful + "1f590": {"canonical_name": "high_five", "aliases": ["palm"]}, + # https://mashable.com/2015/10/23/ios-9-1-emoji-guide/ + "1f596": {"canonical_name": "spock", "aliases": ["live_long_and_prosper"]}, + # People/119 is a better 'hi', but 'hi' will never show up in the typeahead + # due to 'high_five' + "1f44b": {"canonical_name": "wave", "aliases": ["hello", "hi"]}, + "1f919": {"canonical_name": "call_me", "aliases": []}, + # flexed_biceps from gemoji/Unicode, strong seemed like a good addition + "1f4aa": {"canonical_name": "muscle", "aliases": []}, + "1f595": {"canonical_name": "middle_finger", "aliases": []}, + "270d": {"canonical_name": "writing", "aliases": []}, + "1f933": {"canonical_name": "selfie", "aliases": []}, + # Couldn't figure out why iamcal chose nail_care. Unicode uses nail_polish, + # gemoji uses both + "1f485": {"canonical_name": "nail_polish", "aliases": ["nail_care"]}, + "1f48d": {"canonical_name": "ring", "aliases": []}, + "1f484": {"canonical_name": "lipstick", "aliases": []}, + # People/18 seems like a better kiss for most circumstances + "1f48b": {"canonical_name": "lipstick_kiss", "aliases": []}, + # mouth from gemoji/Unicode + "1f444": {"canonical_name": "lips", "aliases": ["mouth"]}, + "1f445": {"canonical_name": "tongue", "aliases": []}, + "1f442": {"canonical_name": "ear", "aliases": []}, + "1f443": {"canonical_name": "nose", "aliases": []}, + # seems a better feet than Nature/86 (paw_prints) + "1f463": {"canonical_name": "footprints", "aliases": ["feet"]}, + "1f441": {"canonical_name": "eye", "aliases": []}, + # seemed the best emoji for looking + "1f440": {"canonical_name": "eyes", "aliases": ["looking"]}, + "1f5e3": {"canonical_name": "speaking_head", "aliases": []}, + # shadow seems like a good addition + "1f464": {"canonical_name": "silhouette", "aliases": ["shadow"]}, + # to parallel People/139 + "1f465": {"canonical_name": "silhouettes", "aliases": ["shadows"]}, + "1f476": {"canonical_name": "baby", "aliases": []}, + "1f466": {"canonical_name": "boy", "aliases": []}, + "1f467": {"canonical_name": "girl", "aliases": []}, + "1f468": {"canonical_name": "man", "aliases": []}, + "1f469": {"canonical_name": "woman", "aliases": []}, + # It's used on twitter a bunch, either when showing off hair, or in a way + # where People/144 would substitute. It'd be nice if there were another + # emoji one could use for "good hair", but I think not a big loss to not + # have one for Zulip, and not worth the eurocentrism. + # '1f471': {'canonical_name': 'X', 'aliases': ['person_with_blond_hair']}, + # Added elderly since I think some people prefer that term + "1f474": {"canonical_name": "older_man", "aliases": ["elderly_man"]}, + # Added elderly since I think some people prefer that term + "1f475": {"canonical_name": "older_woman", "aliases": ["elderly_woman"]}, + "1f472": {"canonical_name": "gua_pi_mao", "aliases": []}, + "1f473": {"canonical_name": "turban", "aliases": []}, + # police seems like a more polite term, and matches the Unicode + "1f46e": {"canonical_name": "police", "aliases": ["cop"]}, + "1f477": {"canonical_name": "construction_worker", "aliases": []}, + "1f482": {"canonical_name": "guard", "aliases": []}, + # detective from gemoji, sneaky from + # https://mashable.com/2015/10/23/ios-9-1-emoji-guide/, agent seems a + # reasonable addition + "1f575": {"canonical_name": "detective", "aliases": ["spy", "sleuth", "agent", "sneaky"]}, + # mrs_claus from https://emojipedia.org/mother-christmas/ + "1f936": {"canonical_name": "mother_christmas", "aliases": ["mrs_claus"]}, + "1f385": {"canonical_name": "santa", "aliases": []}, + "1f478": {"canonical_name": "princess", "aliases": []}, + "1f934": {"canonical_name": "prince", "aliases": []}, + "1f470": {"canonical_name": "bride", "aliases": []}, + "1f935": {"canonical_name": "tuxedo", "aliases": []}, + "1f47c": {"canonical_name": "angel", "aliases": []}, + # expecting seems like a good addition + "1f930": {"canonical_name": "pregnant", "aliases": ["expecting"]}, + "1f647": {"canonical_name": "bow", "aliases": []}, + # mostly used sassily. person_tipping_hand from + # https://emojipedia.org/information-desk-person/ + "1f481": {"canonical_name": "information_desk_person", "aliases": ["person_tipping_hand"]}, + # no_signal to parallel People/207. Nope seems like a reasonable addition + "1f645": {"canonical_name": "no_signal", "aliases": ["nope"]}, + "1f646": {"canonical_name": "ok_signal", "aliases": []}, + # pick_me seems like a good addition + "1f64b": {"canonical_name": "raising_hand", "aliases": ["pick_me"]}, + "1f926": {"canonical_name": "face_palm", "aliases": []}, + "1f937": {"canonical_name": "shrug", "aliases": []}, + "1f64e": {"canonical_name": "person_pouting", "aliases": []}, + "1f64d": {"canonical_name": "person_frowning", "aliases": []}, + "1f487": {"canonical_name": "haircut", "aliases": []}, + "1f486": {"canonical_name": "massage", "aliases": []}, + # hover seems like a reasonable addition + "1f574": {"canonical_name": "levitating", "aliases": ["hover"]}, + "1f483": {"canonical_name": "dancer", "aliases": []}, + "1f57a": {"canonical_name": "dancing", "aliases": ["disco"]}, + "1f46f": {"canonical_name": "dancers", "aliases": []}, + # pedestrian seems like reasonable addition + "1f6b6": {"canonical_name": "walking", "aliases": ["pedestrian"]}, + "1f3c3": {"canonical_name": "running", "aliases": ["runner"]}, + "1f46b": {"canonical_name": "man_and_woman_holding_hands", "aliases": ["man_and_woman_couple"]}, + # to parallel People/234 + "1f46d": {"canonical_name": "two_women_holding_hands", "aliases": ["women_couple"]}, + # to parallel People/234 + "1f46c": {"canonical_name": "two_men_holding_hands", "aliases": ["men_couple"]}, + # no need for man-woman-boy, since we aren't including the other family + # combos + "1f46a": {"canonical_name": "family", "aliases": []}, + "1f45a": {"canonical_name": "clothing", "aliases": []}, + "1f455": {"canonical_name": "shirt", "aliases": ["tshirt"]}, + # denim seems like a good addition + "1f456": {"canonical_name": "jeans", "aliases": ["denim"]}, + # tie is shorter, and a bit more general + "1f454": {"canonical_name": "tie", "aliases": []}, + "1f457": {"canonical_name": "dress", "aliases": []}, + "1f459": {"canonical_name": "bikini", "aliases": []}, + "1f458": {"canonical_name": "kimono", "aliases": []}, + # I feel like this is always used in the plural + "1f460": {"canonical_name": "high_heels", "aliases": []}, + # flip_flops seems like a reasonable addition + "1f461": {"canonical_name": "sandal", "aliases": ["flip_flops"]}, + "1f462": {"canonical_name": "boot", "aliases": []}, + "1f45e": {"canonical_name": "shoe", "aliases": []}, + # running_shoe is from gemoji, sneaker seems like a reasonable addition + "1f45f": {"canonical_name": "athletic_shoe", "aliases": ["sneaker", "running_shoe"]}, + "1f452": {"canonical_name": "hat", "aliases": []}, + "1f3a9": {"canonical_name": "top_hat", "aliases": []}, + # graduate seems like a better word for this + "1f393": {"canonical_name": "graduate", "aliases": ["mortar_board"]}, + # king and queen seem like good additions + "1f451": {"canonical_name": "crown", "aliases": ["queen", "king"]}, + # safety and invincibility inspired by + # https://mashable.com/2015/10/23/ios-9-1-emoji-guide/. hard_hat and + # rescue_worker seem like good additions + "26d1": { + "canonical_name": "helmet", + "aliases": ["hard_hat", "rescue_worker", "safety_first", "invincible"], + }, + # backpack from gemoji, dominates satchel on Google Trends + "1f392": {"canonical_name": "backpack", "aliases": ["satchel"]}, + "1f45d": {"canonical_name": "pouch", "aliases": []}, + "1f45b": {"canonical_name": "purse", "aliases": []}, + "1f45c": {"canonical_name": "handbag", "aliases": []}, + "1f4bc": {"canonical_name": "briefcase", "aliases": []}, + # glasses seems a more common term than eyeglasses, spectacles seems like a + # reasonable synonym to add + "1f453": {"canonical_name": "glasses", "aliases": ["spectacles"]}, + "1f576": {"canonical_name": "dark_sunglasses", "aliases": []}, + "1f302": {"canonical_name": "closed_umbrella", "aliases": []}, + "2602": {"canonical_name": "umbrella", "aliases": []}, + # Some animals have a Unicode codepoint "", some have a codepoint + # " face", and some have both. If an animal has just a single + # codepoint, we call it , regardless of what the codepoint is. If + # an animal has both, we call the "" codepoint , and come + # up with something else useful-seeming for the " face" codepoint. + # The reason we chose " face" for the non-standard name (instead of + # giving "" the non-standard name, as iamcal does) is because the + # apple emoji for the ""s are too realistic. E.g. Apple's Nature/76 + # is less plausibly a puppy than this one. + "1f436": {"canonical_name": "puppy", "aliases": []}, + "1f431": {"canonical_name": "kitten", "aliases": []}, + "1f42d": {"canonical_name": "dormouse", "aliases": []}, + "1f439": {"canonical_name": "hamster", "aliases": []}, + "1f430": {"canonical_name": "bunny", "aliases": []}, + "1f98a": {"canonical_name": "fox", "aliases": []}, + "1f43b": {"canonical_name": "bear", "aliases": []}, + "1f43c": {"canonical_name": "panda", "aliases": []}, + "1f428": {"canonical_name": "koala", "aliases": []}, + "1f42f": {"canonical_name": "tiger_cub", "aliases": []}, + "1f981": {"canonical_name": "lion", "aliases": []}, + "1f42e": {"canonical_name": "calf", "aliases": []}, + "1f437": {"canonical_name": "piglet", "aliases": []}, + "1f43d": {"canonical_name": "pig_nose", "aliases": []}, + "1f438": {"canonical_name": "frog", "aliases": []}, + "1f435": {"canonical_name": "monkey_face", "aliases": []}, + "1f648": {"canonical_name": "see_no_evil", "aliases": []}, + "1f649": {"canonical_name": "hear_no_evil", "aliases": []}, + "1f64a": {"canonical_name": "speak_no_evil", "aliases": []}, + "1f412": {"canonical_name": "monkey", "aliases": []}, + # cluck seemed like a good addition + "1f414": {"canonical_name": "chicken", "aliases": ["cluck"]}, + "1f427": {"canonical_name": "penguin", "aliases": []}, + "1f426": {"canonical_name": "bird", "aliases": []}, + "1f424": {"canonical_name": "chick", "aliases": ["baby_chick"]}, + "1f423": {"canonical_name": "hatching", "aliases": ["hatching_chick"]}, + # https://www.iemoji.com/view/emoji/668/animals-nature/front-facing-baby-chick + "1f425": {"canonical_name": "new_baby", "aliases": []}, + "1f986": {"canonical_name": "duck", "aliases": []}, + "1f985": {"canonical_name": "eagle", "aliases": []}, + "1f989": {"canonical_name": "owl", "aliases": []}, + "1f987": {"canonical_name": "bat", "aliases": []}, + "1f43a": {"canonical_name": "wolf", "aliases": []}, + "1f417": {"canonical_name": "boar", "aliases": []}, + "1f434": {"canonical_name": "pony", "aliases": []}, + "1f984": {"canonical_name": "unicorn", "aliases": []}, + # buzz seemed like a reasonable addition + "1f41d": {"canonical_name": "bee", "aliases": ["buzz", "honeybee"]}, + # caterpillar seemed like a reasonable addition + "1f41b": {"canonical_name": "bug", "aliases": ["caterpillar"]}, + "1f98b": {"canonical_name": "butterfly", "aliases": []}, + "1f40c": {"canonical_name": "snail", "aliases": []}, + # spiral_shell from Unicode/gemoji, the others seemed like reasonable + # additions + "1f41a": {"canonical_name": "shell", "aliases": ["seashell", "conch", "spiral_shell"]}, + # Unicode/gemoji have lady_beetle; hopefully with ladybug we get both the + # people that prefer lady_beetle (with beetle) and ladybug. There is also + # ladybird, but seems a bit much for this to complete for bird. + "1f41e": {"canonical_name": "beetle", "aliases": ["ladybug"]}, + "1f41c": {"canonical_name": "ant", "aliases": []}, + "1f577": {"canonical_name": "spider", "aliases": []}, + "1f578": {"canonical_name": "web", "aliases": ["spider_web"]}, + # tortoise seemed like a reasonable addition + "1f422": {"canonical_name": "turtle", "aliases": ["tortoise"]}, + # put in a few animal sounds, including this one + "1f40d": {"canonical_name": "snake", "aliases": ["hiss"]}, + "1f98e": {"canonical_name": "lizard", "aliases": ["gecko"]}, + "1f982": {"canonical_name": "scorpion", "aliases": []}, + "1f980": {"canonical_name": "crab", "aliases": []}, + "1f991": {"canonical_name": "squid", "aliases": []}, + "1f419": {"canonical_name": "octopus", "aliases": []}, + "1f990": {"canonical_name": "shrimp", "aliases": []}, + "1f420": {"canonical_name": "tropical_fish", "aliases": []}, + "1f41f": {"canonical_name": "fish", "aliases": []}, + "1f421": {"canonical_name": "blowfish", "aliases": []}, + "1f42c": {"canonical_name": "dolphin", "aliases": ["flipper"]}, + "1f988": {"canonical_name": "shark", "aliases": []}, + "1f433": {"canonical_name": "whale", "aliases": []}, + # https://emojipedia.org/whale/ + "1f40b": {"canonical_name": "humpback_whale", "aliases": []}, + "1f40a": {"canonical_name": "crocodile", "aliases": []}, + "1f406": {"canonical_name": "leopard", "aliases": []}, + "1f405": {"canonical_name": "tiger", "aliases": []}, + "1f403": {"canonical_name": "water_buffalo", "aliases": []}, + "1f402": {"canonical_name": "ox", "aliases": ["bull"]}, + "1f404": {"canonical_name": "cow", "aliases": []}, + "1f98c": {"canonical_name": "deer", "aliases": []}, + # https://emojipedia.org/dromedary-camel/ + "1f42a": {"canonical_name": "arabian_camel", "aliases": []}, + "1f42b": {"canonical_name": "camel", "aliases": []}, + "1f418": {"canonical_name": "elephant", "aliases": []}, + "1f98f": {"canonical_name": "rhinoceros", "aliases": []}, + "1f98d": {"canonical_name": "gorilla", "aliases": []}, + "1f40e": {"canonical_name": "horse", "aliases": []}, + "1f416": {"canonical_name": "pig", "aliases": ["oink"]}, + "1f410": {"canonical_name": "goat", "aliases": []}, + "1f40f": {"canonical_name": "ram", "aliases": []}, + "1f411": {"canonical_name": "sheep", "aliases": ["baa"]}, + "1f415": {"canonical_name": "dog", "aliases": ["woof"]}, + "1f429": {"canonical_name": "poodle", "aliases": []}, + "1f408": {"canonical_name": "cat", "aliases": ["meow"]}, + # alarm seemed like a fun addition + "1f413": {"canonical_name": "rooster", "aliases": ["alarm", "cock-a-doodle-doo"]}, + "1f983": {"canonical_name": "turkey", "aliases": []}, + "1f54a": {"canonical_name": "dove", "aliases": ["dove_of_peace"]}, + "1f407": {"canonical_name": "rabbit", "aliases": []}, + "1f401": {"canonical_name": "mouse", "aliases": []}, + "1f400": {"canonical_name": "rat", "aliases": []}, + "1f43f": {"canonical_name": "chipmunk", "aliases": []}, + # paws seemed like reasonable addition. Put feet at People/135 + "1f43e": {"canonical_name": "paw_prints", "aliases": ["paws"]}, + "1f409": {"canonical_name": "dragon", "aliases": []}, + "1f432": {"canonical_name": "dragon_face", "aliases": []}, + "1f335": {"canonical_name": "cactus", "aliases": []}, + "1f384": {"canonical_name": "holiday_tree", "aliases": []}, + "1f332": {"canonical_name": "evergreen_tree", "aliases": []}, + "1f333": {"canonical_name": "tree", "aliases": ["deciduous_tree"]}, + "1f334": {"canonical_name": "palm_tree", "aliases": []}, + # sprout seemed like a reasonable addition + "1f331": {"canonical_name": "seedling", "aliases": ["sprout"]}, + # seemed like the best emoji for plant + "1f33f": {"canonical_name": "herb", "aliases": ["plant"]}, + # clover seemed like a reasonable addition + "2618": {"canonical_name": "shamrock", "aliases": ["clover"]}, + # lucky seems more useful + "1f340": {"canonical_name": "lucky", "aliases": ["four_leaf_clover"]}, + "1f38d": {"canonical_name": "bamboo", "aliases": []}, + # https://emojipedia.org/tanabata-tree/ + "1f38b": {"canonical_name": "wish_tree", "aliases": ["tanabata_tree"]}, + # seemed like good additions. Used fall instead of autumn, since don't have + # the rest of the seasons, and could imagine someone using both meanings of + # fall. + "1f343": {"canonical_name": "leaves", "aliases": ["wind", "fall"]}, + "1f342": {"canonical_name": "fallen_leaf", "aliases": []}, + "1f341": {"canonical_name": "maple_leaf", "aliases": []}, + "1f344": {"canonical_name": "mushroom", "aliases": []}, + # harvest seems more useful + "1f33e": {"canonical_name": "harvest", "aliases": ["ear_of_rice"]}, + "1f490": {"canonical_name": "bouquet", "aliases": []}, + # seems like the best emoji for flower + "1f337": {"canonical_name": "tulip", "aliases": ["flower"]}, + "1f339": {"canonical_name": "rose", "aliases": []}, + # crushed suggest by a user + "1f940": {"canonical_name": "wilted_flower", "aliases": ["crushed"]}, + "1f33b": {"canonical_name": "sunflower", "aliases": []}, + "1f33c": {"canonical_name": "blossom", "aliases": []}, + "1f338": {"canonical_name": "cherry_blossom", "aliases": []}, + "1f33a": {"canonical_name": "hibiscus", "aliases": []}, + "1f30e": {"canonical_name": "earth_americas", "aliases": []}, + "1f30d": {"canonical_name": "earth_africa", "aliases": []}, + "1f30f": {"canonical_name": "earth_asia", "aliases": []}, + "1f315": {"canonical_name": "full_moon", "aliases": []}, + # too many useless moons. Don't seem to get much use on twitter, and clog + # up typeahead for moon. + # '1f316': {'canonical_name': 'X', 'aliases': ['waning_crescent_moon']}, + # '1f317': {'canonical_name': 'X', 'aliases': ['last_quarter_moon']}, + # '1f318': {'canonical_name': 'X', 'aliases': ['waning_crescent_moon']}, + "1f311": {"canonical_name": "new_moon", "aliases": []}, + # '1f312': {'canonical_name': 'X', 'aliases': ['waxing_crescent_moon']}, + # '1f313': {'canonical_name': 'X', 'aliases': ['first_quarter_moon']}, + "1f314": {"canonical_name": "waxing_moon", "aliases": []}, + "1f31a": {"canonical_name": "new_moon_face", "aliases": []}, + "1f31d": {"canonical_name": "moon_face", "aliases": []}, + "1f31e": {"canonical_name": "sun_face", "aliases": []}, + # goodnight seems way more useful + "1f31b": {"canonical_name": "goodnight", "aliases": []}, + # '1f31c': {'canonical_name': 'X', 'aliases': ['last_quarter_moon_with_face']}, + # seems like the best emoji for moon + "1f319": {"canonical_name": "moon", "aliases": []}, + # dizzy taken by People/54, had to come up with something else + "1f4ab": {"canonical_name": "seeing_stars", "aliases": []}, + "2b50": {"canonical_name": "star", "aliases": []}, + # glowing_star from gemoji/Unicode + "1f31f": {"canonical_name": "glowing_star", "aliases": []}, + # glamour seems like a reasonable addition + "2728": {"canonical_name": "sparkles", "aliases": ["glamour"]}, + # high_voltage from gemoji/Unicode + "26a1": {"canonical_name": "high_voltage", "aliases": ["zap"]}, + # https://emojipedia.org/fire/ + "1f525": {"canonical_name": "fire", "aliases": ["lit", "hot", "flame"]}, + # explosion and crash seem like reasonable additions + "1f4a5": {"canonical_name": "boom", "aliases": ["explosion", "crash", "collision"]}, + # meteor seems like a reasonable addition + "2604": {"canonical_name": "comet", "aliases": ["meteor"]}, + "2600": {"canonical_name": "sunny", "aliases": []}, + "1f324": {"canonical_name": "mostly_sunny", "aliases": []}, + # partly_cloudy for the glass half empty people + "26c5": {"canonical_name": "partly_sunny", "aliases": ["partly_cloudy"]}, + "1f325": {"canonical_name": "cloudy", "aliases": []}, + # sunshowers seems like a more fun term + "1f326": { + "canonical_name": "sunshowers", + "aliases": ["sun_and_rain", "partly_sunny_with_rain"], + }, + # pride and lgbtq seem like reasonable additions + "1f308": {"canonical_name": "rainbow", "aliases": ["pride", "lgbtq"]}, + # overcast seems like a good addition + "2601": {"canonical_name": "cloud", "aliases": ["overcast"]}, + # suggested by user typing these into their typeahead. + "1f327": {"canonical_name": "rainy", "aliases": ["soaked", "drenched"]}, + # thunderstorm seems better for this emoji, and thunder_and_rain more + # evocative than thunder_cloud_and_rain + "26c8": {"canonical_name": "thunderstorm", "aliases": ["thunder_and_rain"]}, + # lightning_storm seemed better than lightning_cloud + "1f329": {"canonical_name": "lightning", "aliases": ["lightning_storm"]}, + # snowy to parallel sunny, cloudy, etc; snowstorm seems like a good + # addition + "1f328": {"canonical_name": "snowy", "aliases": ["snowstorm"]}, + "2603": {"canonical_name": "snowman", "aliases": []}, + # don't need two snowmen. frosty is nice because it's a weather (primary + # benefit) and also a snowman (one that suffered from not having snow, in + # fact) + "26c4": {"canonical_name": "frosty", "aliases": []}, + "2744": {"canonical_name": "snowflake", "aliases": []}, + # the internet didn't seem to have a good use for this emoji. windy is a + # good weather that is otherwise not represented. mother_nature from + # https://emojipedia.org/wind-blowing-face/ + "1f32c": {"canonical_name": "windy", "aliases": ["mother_nature"]}, + "1f4a8": {"canonical_name": "dash", "aliases": []}, + # tornado_cloud comes from the Unicode, but e.g. gemoji drops the cloud + "1f32a": {"canonical_name": "tornado", "aliases": []}, + # hazy seemed like a good addition + "1f32b": {"canonical_name": "fog", "aliases": ["hazy"]}, + "1f30a": {"canonical_name": "ocean", "aliases": []}, + # drop seems better than droplet, since could be used for its other + # meanings. water drop partly so that it shows up in typeahead for water + "1f4a7": {"canonical_name": "drop", "aliases": ["water_drop"]}, + "1f4a6": {"canonical_name": "sweat_drops", "aliases": []}, + "2614": {"canonical_name": "umbrella_with_rain", "aliases": []}, + "1f34f": {"canonical_name": "green_apple", "aliases": []}, + "1f34e": {"canonical_name": "apple", "aliases": []}, + "1f350": {"canonical_name": "pear", "aliases": []}, + # An argument for not calling this orange is to save the color for a color + # swatch, but we can deal with that when it happens. Mandarin is from + # https://emojipedia.org/tangerine/, also like that it has a second meaning + "1f34a": {"canonical_name": "orange", "aliases": ["tangerine", "mandarin"]}, + "1f34b": {"canonical_name": "lemon", "aliases": []}, + "1f34c": {"canonical_name": "banana", "aliases": []}, + "1f349": {"canonical_name": "watermelon", "aliases": []}, + "1f347": {"canonical_name": "grapes", "aliases": []}, + "1f353": {"canonical_name": "strawberry", "aliases": []}, + "1f348": {"canonical_name": "melon", "aliases": []}, + "1f352": {"canonical_name": "cherries", "aliases": []}, + "1f351": {"canonical_name": "peach", "aliases": []}, + "1f34d": {"canonical_name": "pineapple", "aliases": []}, + "1f95d": {"canonical_name": "kiwi", "aliases": []}, + "1f951": {"canonical_name": "avocado", "aliases": []}, + "1f345": {"canonical_name": "tomato", "aliases": []}, + "1f346": {"canonical_name": "eggplant", "aliases": []}, + "1f952": {"canonical_name": "cucumber", "aliases": []}, + "1f955": {"canonical_name": "carrot", "aliases": []}, + # maize is from Unicode + "1f33d": {"canonical_name": "corn", "aliases": ["maize"]}, + # chili_pepper seems like a reasonable addition + "1f336": {"canonical_name": "hot_pepper", "aliases": ["chili_pepper"]}, + "1f954": {"canonical_name": "potato", "aliases": []}, + # yam seems better than sweet_potato, since we already have a potato (not a + # strong argument, but is better on the typeahead not to have emoji that + # share long prefixes) + "1f360": {"canonical_name": "yam", "aliases": ["sweet_potato"]}, + "1f330": {"canonical_name": "chestnut", "aliases": []}, + "1f95c": {"canonical_name": "peanuts", "aliases": []}, + "1f36f": {"canonical_name": "honey", "aliases": []}, + "1f950": {"canonical_name": "croissant", "aliases": []}, + "1f35e": {"canonical_name": "bread", "aliases": []}, + "1f956": {"canonical_name": "baguette", "aliases": []}, + "1f9c0": {"canonical_name": "cheese", "aliases": []}, + "1f95a": {"canonical_name": "egg", "aliases": []}, + # already have an egg in Foods/31, though I guess wouldn't be a big deal to + # add it here. + "1f373": {"canonical_name": "cooking", "aliases": []}, + "1f953": {"canonical_name": "bacon", "aliases": []}, + # there's no lunch and dinner, which is a small negative against adding + # breakfast + "1f95e": {"canonical_name": "pancakes", "aliases": ["breakfast"]}, + # There is already shrimp in Nature/51, and tempura seems like a better + # description + "1f364": {"canonical_name": "tempura", "aliases": []}, + # drumstick seems like a better description + "1f357": {"canonical_name": "drumstick", "aliases": ["poultry"]}, + "1f356": {"canonical_name": "meat", "aliases": []}, + "1f355": {"canonical_name": "pizza", "aliases": []}, + "1f32d": {"canonical_name": "hotdog", "aliases": []}, + "1f354": {"canonical_name": "hamburger", "aliases": []}, + "1f35f": {"canonical_name": "fries", "aliases": []}, + # https://emojipedia.org/stuffed-flatbread/ + "1f959": { + "canonical_name": "doner_kebab", + "aliases": ["shawarma", "souvlaki", "stuffed_flatbread"], + }, + "1f32e": {"canonical_name": "taco", "aliases": []}, + "1f32f": {"canonical_name": "burrito", "aliases": []}, + "1f957": {"canonical_name": "salad", "aliases": []}, + # I think Foods/49 is a better :food: + "1f958": {"canonical_name": "paella", "aliases": []}, + "1f35d": {"canonical_name": "spaghetti", "aliases": []}, + # seems like the best noodles? maybe this should be Foods/47? Noodles seem + # like a bigger thing in east asia than in europe, so going with that. + "1f35c": {"canonical_name": "ramen", "aliases": ["noodles"]}, + # seems like the best :food:. Also a reasonable :soup:, though the Google + # one is indeed more a pot of food (the Unicode) than a soup + "1f372": {"canonical_name": "food", "aliases": ["soup", "stew"]}, + # naruto is actual name, and I think don't need this to autocomplete for + # "fish" + "1f365": {"canonical_name": "naruto", "aliases": []}, + "1f363": {"canonical_name": "sushi", "aliases": []}, + "1f371": {"canonical_name": "bento", "aliases": []}, + "1f35b": {"canonical_name": "curry", "aliases": []}, + "1f35a": {"canonical_name": "rice", "aliases": []}, + # onigiri is actual name, and I think don't need this to typeahead complete + # for "rice" + "1f359": {"canonical_name": "onigiri", "aliases": []}, + # leaving rice_cracker in, so that we have something for cracker + "1f358": {"canonical_name": "senbei", "aliases": ["rice_cracker"]}, + "1f362": {"canonical_name": "oden", "aliases": []}, + "1f361": {"canonical_name": "dango", "aliases": []}, + "1f367": {"canonical_name": "shaved_ice", "aliases": []}, + # seemed like the best emoji for gelato + "1f368": {"canonical_name": "ice_cream", "aliases": ["gelato"]}, + # already have ice_cream in Foods/60, and soft_serve seems like a + # potentially fun emoji to have in conjunction with ice_cream. Put in + # soft_ice_cream so it typeahead completes on ice_cream as well. + "1f366": {"canonical_name": "soft_serve", "aliases": ["soft_ice_cream"]}, + "1f370": {"canonical_name": "cake", "aliases": []}, + "1f382": {"canonical_name": "birthday", "aliases": []}, + # flan seems like a reasonable addition + "1f36e": {"canonical_name": "custard", "aliases": ["flan"]}, + "1f36d": {"canonical_name": "lollipop", "aliases": []}, + "1f36c": {"canonical_name": "candy", "aliases": []}, + "1f36b": {"canonical_name": "chocolate", "aliases": []}, + "1f37f": {"canonical_name": "popcorn", "aliases": []}, + # donut dominates doughnut on + # https://trends.google.com/trends/explore?q=doughnut,donut + "1f369": {"canonical_name": "donut", "aliases": ["doughnut"]}, + "1f36a": {"canonical_name": "cookie", "aliases": []}, + "1f95b": {"canonical_name": "milk", "aliases": ["glass_of_milk"]}, + "1f37c": {"canonical_name": "baby_bottle", "aliases": []}, + "2615": {"canonical_name": "coffee", "aliases": []}, + "1f375": {"canonical_name": "tea", "aliases": []}, + "1f376": {"canonical_name": "sake", "aliases": []}, + "1f37a": {"canonical_name": "beer", "aliases": []}, + "1f37b": {"canonical_name": "beers", "aliases": []}, + "1f942": {"canonical_name": "clink", "aliases": ["toast"]}, + "1f377": {"canonical_name": "wine", "aliases": []}, + # tumbler means something different in india, and don't want to use + # shot_glass given our policy of using school-age-appropriate terms + "1f943": {"canonical_name": "small_glass", "aliases": []}, + "1f378": {"canonical_name": "cocktail", "aliases": []}, + "1f379": {"canonical_name": "tropical_drink", "aliases": []}, + "1f37e": {"canonical_name": "champagne", "aliases": []}, + "1f944": {"canonical_name": "spoon", "aliases": []}, + # Added eating_utensils so this would show up in typeahead for eat. + "1f374": {"canonical_name": "fork_and_knife", "aliases": ["eating_utensils"]}, + # Seems like the best emoji for hungry and meal. fork_and_knife_and_plate + # is from gemoji/Unicode, and I think is better than the shorter iamcal + # version in this case. The rest just seemed like good additions. + "1f37d": { + "canonical_name": "hungry", + "aliases": ["meal", "table_setting", "fork_and_knife_with_plate", "lets_eat"], + }, + # most people interested in this sport call it football + "26bd": {"canonical_name": "football", "aliases": ["soccer"]}, + "1f3c0": {"canonical_name": "basketball", "aliases": []}, + # to distinguish from Activity/1, but is also the Unicode name + "1f3c8": {"canonical_name": "american_football", "aliases": []}, + "26be": {"canonical_name": "baseball", "aliases": []}, + "1f3be": {"canonical_name": "tennis", "aliases": []}, + "1f3d0": {"canonical_name": "volleyball", "aliases": []}, + "1f3c9": {"canonical_name": "rugby", "aliases": []}, + # https://emojipedia.org/billiards/ suggests this is actually used for + # billiards, not for "unlucky" or "losing" or some other connotation of + # 8ball. The Unicode name is billiards. + "1f3b1": {"canonical_name": "billiards", "aliases": ["pool", "8_ball"]}, + # ping pong is the Unicode name, and seems slightly more popular on + # https://trends.google.com/trends/explore?q=table%20tennis,ping%20pong + "1f3d3": {"canonical_name": "ping_pong", "aliases": ["table_tennis"]}, + "1f3f8": {"canonical_name": "badminton", "aliases": []}, + # gooooooooal seems more useful of a name, though arguably this isn't the + # best emoji for it + "1f945": {"canonical_name": "gooooooooal", "aliases": ["goal"]}, + "1f3d2": {"canonical_name": "ice_hockey", "aliases": []}, + "1f3d1": {"canonical_name": "field_hockey", "aliases": []}, + # would say bat, but taken by Nature/30 + "1f3cf": {"canonical_name": "cricket", "aliases": ["cricket_bat"]}, + # hole_in_one seems like a more useful name to have. Sent golf to + # Activity/39 + "26f3": {"canonical_name": "hole_in_one", "aliases": []}, + # archery seems like a reasonable addition + "1f3f9": {"canonical_name": "bow_and_arrow", "aliases": ["archery"]}, + "1f3a3": {"canonical_name": "fishing", "aliases": []}, + "1f94a": {"canonical_name": "boxing_glove", "aliases": []}, + # keikogi and dogi are the actual names for this, I believe. black_belt is + # I think a more useful name here + "1f94b": {"canonical_name": "black_belt", "aliases": ["keikogi", "dogi", "martial_arts"]}, + "26f8": {"canonical_name": "ice_skate", "aliases": []}, + "1f3bf": {"canonical_name": "ski", "aliases": []}, + "26f7": {"canonical_name": "skier", "aliases": []}, + "1f3c2": {"canonical_name": "snowboarder", "aliases": []}, + # lift is both what lifters call it, and potentially can be used more + # generally than weight_lift. The others seemed like good additions. + "1f3cb": {"canonical_name": "lift", "aliases": ["work_out", "weight_lift", "gym"]}, + # The decisions on tenses here and in the rest of the sports section are + # mostly from gut feel. The Unicode itself is all over the place. + "1f93a": {"canonical_name": "fencing", "aliases": []}, + "1f93c": {"canonical_name": "wrestling", "aliases": []}, + # seemed like reasonable additions + "1f938": {"canonical_name": "cartwheel", "aliases": ["acrobatics", "gymnastics", "tumbling"]}, + # seemed the best emoji for sports + "26f9": {"canonical_name": "ball", "aliases": ["sports"]}, + "1f93e": {"canonical_name": "handball", "aliases": []}, + "1f3cc": {"canonical_name": "golf", "aliases": []}, + "1f3c4": {"canonical_name": "surf", "aliases": []}, + "1f3ca": {"canonical_name": "swim", "aliases": []}, + "1f93d": {"canonical_name": "water_polo", "aliases": []}, + # rest seem like reasonable additions + "1f6a3": {"canonical_name": "rowboat", "aliases": ["crew", "sculling", "rowing"]}, + # horse_riding seems like a reasonable addition + "1f3c7": {"canonical_name": "horse_racing", "aliases": ["horse_riding"]}, + # at least in the US: this = cyclist, Activity/53 = mountain biker, and + # motorcyclist = biker. Mainly from googling around and personal + # experience. E.g. https://grammarist.com/usage/cyclist-biker/ for cyclist + # and biker, + # https://www.theguardian.com/lifeandstyle/2010/oct/24/bike-snobs-guide-cycling-tribes + # for mountain biker (I've never heard the term "mountain cyclist", and + # they are the only group on that page that gets "biker" instead of + # "cyclist") + "1f6b4": {"canonical_name": "cyclist", "aliases": []}, + # see Activity/51 + "1f6b5": {"canonical_name": "mountain_biker", "aliases": []}, + "1f3bd": {"canonical_name": "running_shirt", "aliases": []}, + # I feel like people call sports medals "medals", and military medals + # "military medals". Also see Activity/56 + "1f3c5": {"canonical_name": "medal", "aliases": []}, + # See Activity/55. military_medal is the gemoji/Unicode + "1f396": {"canonical_name": "military_medal", "aliases": []}, + # gold and number_one seem like good additions + "1f947": {"canonical_name": "first_place", "aliases": ["gold", "number_one"]}, + # to parallel Activity/57 + "1f948": {"canonical_name": "second_place", "aliases": ["silver"]}, + # to parallel Activity/57 + "1f949": {"canonical_name": "third_place", "aliases": ["bronze"]}, + # seemed the best emoji for winner + "1f3c6": {"canonical_name": "trophy", "aliases": ["winner"]}, + "1f3f5": {"canonical_name": "rosette", "aliases": []}, + "1f397": {"canonical_name": "reminder_ribbon", "aliases": []}, + # don't need ticket and admission_ticket (see Activity/64), so made one of + # them :pass:. + "1f3ab": {"canonical_name": "pass", "aliases": []}, + # see Activity/63 + "1f39f": {"canonical_name": "ticket", "aliases": []}, + "1f3aa": {"canonical_name": "circus", "aliases": []}, + "1f939": {"canonical_name": "juggling", "aliases": []}, + # rest seem like good additions + "1f3ad": {"canonical_name": "performing_arts", "aliases": ["drama", "theater"]}, + # rest seem like good additions + "1f3a8": {"canonical_name": "art", "aliases": ["palette", "painting"]}, + # action seems more useful than clapper, and clapper doesn't seem like that + # common of a term + "1f3ac": {"canonical_name": "action", "aliases": []}, + # seem like good additions + "1f3a4": {"canonical_name": "microphone", "aliases": ["mike", "mic"]}, + "1f3a7": {"canonical_name": "headphones", "aliases": []}, + "1f3bc": {"canonical_name": "musical_score", "aliases": []}, + # piano seems more useful than musical_keyboard + "1f3b9": {"canonical_name": "piano", "aliases": ["musical_keyboard"]}, + "1f941": {"canonical_name": "drum", "aliases": []}, + "1f3b7": {"canonical_name": "saxophone", "aliases": []}, + "1f3ba": {"canonical_name": "trumpet", "aliases": []}, + "1f3b8": {"canonical_name": "guitar", "aliases": []}, + "1f3bb": {"canonical_name": "violin", "aliases": []}, + # dice seems more useful + "1f3b2": {"canonical_name": "dice", "aliases": ["die"]}, + # direct_hit from gemoji/Unicode, and seems more useful. bulls_eye seemed + # like a reasonable addition + "1f3af": {"canonical_name": "direct_hit", "aliases": ["darts", "bulls_eye"]}, + # strike seemed more useful than bowling + "1f3b3": {"canonical_name": "strike", "aliases": ["bowling"]}, + "1f3ae": {"canonical_name": "video_game", "aliases": []}, + # gambling seemed more useful than slot_machine + "1f3b0": {"canonical_name": "slot_machine", "aliases": []}, + # the Google emoji for this is not red + "1f697": {"canonical_name": "car", "aliases": []}, + # rideshare seems like a reasonable addition + "1f695": {"canonical_name": "taxi", "aliases": ["rideshare"]}, + # the Google emoji for this is not blue. recreational_vehicle is from + # gemoji/Unicode, jeep seemed like a good addition + "1f699": {"canonical_name": "recreational_vehicle", "aliases": ["jeep"]}, + # school_bus seemed like a reasonable addition, even though the twitter + # glyph for this doesn't really look like a school bus + "1f68c": {"canonical_name": "bus", "aliases": ["school_bus"]}, + "1f68e": {"canonical_name": "trolley", "aliases": []}, + "1f3ce": {"canonical_name": "racecar", "aliases": []}, + "1f693": {"canonical_name": "police_car", "aliases": []}, + "1f691": {"canonical_name": "ambulance", "aliases": []}, + # https://trends.google.com/trends/explore?q=fire%20truck,fire%20engine + "1f692": {"canonical_name": "fire_truck", "aliases": ["fire_engine"]}, + "1f690": {"canonical_name": "minibus", "aliases": []}, + # moving_truck and truck for Places/11 and Places/12 seem much better than + # the iamcal names + "1f69a": {"canonical_name": "moving_truck", "aliases": []}, + # see Places/11 for truck. Rest seem reasonable additions. + "1f69b": { + "canonical_name": "truck", + "aliases": ["tractor-trailer", "big_rig", "semi_truck", "transport_truck"], + }, + "1f69c": {"canonical_name": "tractor", "aliases": []}, + # kick_scooter and scooter seem better for Places/14 and Places /16 than + # scooter and motor_scooter. + "1f6f4": {"canonical_name": "kick_scooter", "aliases": []}, + "1f6b2": {"canonical_name": "bike", "aliases": ["bicycle"]}, + # see Places/14. Called motor_bike (or bike) in India + "1f6f5": {"canonical_name": "scooter", "aliases": ["motor_bike"]}, + "1f3cd": {"canonical_name": "motorcycle", "aliases": []}, + # siren seems more useful. alert seems like a reasonable addition + "1f6a8": {"canonical_name": "siren", "aliases": ["rotating_light", "alert"]}, + "1f694": {"canonical_name": "oncoming_police_car", "aliases": []}, + "1f68d": {"canonical_name": "oncoming_bus", "aliases": []}, + # car to parallel e.g. Places/1 + "1f698": {"canonical_name": "oncoming_car", "aliases": ["oncoming_automobile"]}, + "1f696": {"canonical_name": "oncoming_taxi", "aliases": []}, + # ski_lift seems like a good addition + "1f6a1": {"canonical_name": "aerial_tramway", "aliases": ["ski_lift"]}, + # gondola seems more useful + "1f6a0": {"canonical_name": "gondola", "aliases": ["mountain_cableway"]}, + "1f69f": {"canonical_name": "suspension_railway", "aliases": []}, + # train_car seems like a reasonable addition + "1f683": {"canonical_name": "railway_car", "aliases": ["train_car"]}, + # this does not seem like a good emoji for train, especially compared to + # Places/33. streetcar seems like a good addition. + "1f68b": {"canonical_name": "tram", "aliases": ["streetcar"]}, + "1f69e": {"canonical_name": "mountain_railway", "aliases": []}, + # elevated_train seems like a reasonable addition + "1f69d": {"canonical_name": "monorail", "aliases": ["elevated_train"]}, + # from gemoji/Unicode. Also, don't think we need two bullettrain's + "1f684": {"canonical_name": "high_speed_train", "aliases": []}, + # Google, Wikipedia, etc. prefer bullet train to bullettrain + "1f685": {"canonical_name": "bullet_train", "aliases": []}, + "1f688": {"canonical_name": "light_rail", "aliases": []}, + "1f682": {"canonical_name": "train", "aliases": ["steam_locomotive"]}, + # oncoming_train seems better than train2 + "1f686": {"canonical_name": "oncoming_train", "aliases": []}, + # saving metro for Symbols/108. The tunnel makes subway more appropriate + # anyway. + "1f687": {"canonical_name": "subway", "aliases": []}, + # all the glyphs of oncoming vehicles have names like oncoming_*. The + # alternate names are to parallel the alternates to Places/27. + "1f68a": { + "canonical_name": "oncoming_tram", + "aliases": ["oncoming_streetcar", "oncoming_trolley"], + }, + "1f689": {"canonical_name": "station", "aliases": []}, + "1f681": {"canonical_name": "helicopter", "aliases": []}, + "1f6e9": {"canonical_name": "small_airplane", "aliases": []}, + "2708": {"canonical_name": "airplane", "aliases": []}, + # take_off seems more useful than airplane_departure. departure also seems + # more useful than airplane_departure. Arguably departure should be the + # primary, since arrival is probably more useful than landing in Places/42, + # but going with this for now. + "1f6eb": {"canonical_name": "take_off", "aliases": ["departure", "airplane_departure"]}, + # parallel to Places/41 + "1f6ec": {"canonical_name": "landing", "aliases": ["arrival", "airplane_arrival"]}, + "1f680": {"canonical_name": "rocket", "aliases": []}, + "1f6f0": {"canonical_name": "satellite", "aliases": []}, + "1f4ba": {"canonical_name": "seat", "aliases": []}, + "1f6f6": {"canonical_name": "canoe", "aliases": []}, + "26f5": {"canonical_name": "boat", "aliases": ["sailboat"]}, + "1f6e5": {"canonical_name": "motor_boat", "aliases": []}, + "1f6a4": {"canonical_name": "speedboat", "aliases": []}, + # yacht and cruise seem like reasonable additions + "1f6f3": {"canonical_name": "passenger_ship", "aliases": ["yacht", "cruise"]}, + "26f4": {"canonical_name": "ferry", "aliases": []}, + "1f6a2": {"canonical_name": "ship", "aliases": []}, + "2693": {"canonical_name": "anchor", "aliases": []}, + # there already is a construction in Places/82, and work_in_progress seems + # like a useful thing to have. Construction_zone seems better than the + # Unicode construction_sign, and is there partly so this autocompletes for + # construction. + "1f6a7": {"canonical_name": "work_in_progress", "aliases": ["construction_zone"]}, + # alternates from https://emojipedia.org/fuel-pump/. Unicode is fuel_pump, + # not fuelpump + "26fd": {"canonical_name": "fuel_pump", "aliases": ["gas_pump", "petrol_pump"]}, + # not sure why iamcal removed the space + "1f68f": {"canonical_name": "bus_stop", "aliases": []}, + # https://emojipedia.org/vertical-traffic-light/ thinks this is the more + # common of the two traffic lights, so putting traffic_light on this one + "1f6a6": {"canonical_name": "traffic_light", "aliases": ["vertical_traffic_light"]}, + # see Places/57 + "1f6a5": {"canonical_name": "horizontal_traffic_light", "aliases": []}, + # road_trip from https://mashable.com/2015/10/23/ios-9-1-emoji-guide/ + "1f5fa": {"canonical_name": "map", "aliases": ["world_map", "road_trip"]}, + # rock_carving, statue, and tower seem more general and less culturally + # specific, for Places/60, 61, and 63. + "1f5ff": {"canonical_name": "rock_carving", "aliases": ["moyai"]}, + # new_york from https://emojipedia.org/statue-of-liberty/. see Places/60 + # for statue + "1f5fd": {"canonical_name": "statue", "aliases": ["new_york", "statue_of_liberty"]}, + "26f2": {"canonical_name": "fountain", "aliases": []}, + # see Places/60 + "1f5fc": {"canonical_name": "tower", "aliases": ["tokyo_tower"]}, + # choosing this as the castle since castles are a way bigger thing in + # europe than japan, and shiro is a pretty reasonable name for Places/65 + "1f3f0": {"canonical_name": "castle", "aliases": []}, + # see Places/64 + "1f3ef": {"canonical_name": "shiro", "aliases": []}, + "1f3df": {"canonical_name": "stadium", "aliases": []}, + "1f3a1": {"canonical_name": "ferris_wheel", "aliases": []}, + "1f3a2": {"canonical_name": "roller_coaster", "aliases": []}, + # merry_go_round seems like a good addition + "1f3a0": {"canonical_name": "carousel", "aliases": ["merry_go_round"]}, + # beach_umbrella seems more useful + "26f1": {"canonical_name": "beach_umbrella", "aliases": []}, + "1f3d6": {"canonical_name": "beach", "aliases": []}, + "1f3dd": {"canonical_name": "island", "aliases": []}, + "26f0": {"canonical_name": "mountain", "aliases": []}, + "1f3d4": {"canonical_name": "snowy_mountain", "aliases": []}, + # already lots of other mountains, otherwise would rename this like + # Places/60 + "1f5fb": {"canonical_name": "mount_fuji", "aliases": []}, + "1f30b": {"canonical_name": "volcano", "aliases": []}, + "1f3dc": {"canonical_name": "desert", "aliases": []}, + # campsite from https://emojipedia.org/camping/, I think Places/79 is a + # better camping + "1f3d5": {"canonical_name": "campsite", "aliases": []}, + "26fa": {"canonical_name": "tent", "aliases": ["camping"]}, + "1f6e4": {"canonical_name": "railway_track", "aliases": ["train_tracks"]}, + # road is used much more frequently at + # https://trends.google.com/trends/explore?q=road,motorway + "1f6e3": {"canonical_name": "road", "aliases": ["motorway"]}, + "1f3d7": {"canonical_name": "construction", "aliases": []}, + "1f3ed": {"canonical_name": "factory", "aliases": []}, + "1f3e0": {"canonical_name": "house", "aliases": []}, + # suburb seems more useful + "1f3e1": {"canonical_name": "suburb", "aliases": []}, + "1f3d8": {"canonical_name": "houses", "aliases": []}, + # condemned seemed like a good addition + "1f3da": {"canonical_name": "derelict_house", "aliases": ["condemned"]}, + "1f3e2": {"canonical_name": "office", "aliases": []}, + "1f3ec": {"canonical_name": "department_store", "aliases": []}, + "1f3e3": {"canonical_name": "japan_post", "aliases": []}, + "1f3e4": {"canonical_name": "post_office", "aliases": []}, + "1f3e5": {"canonical_name": "hospital", "aliases": []}, + "1f3e6": {"canonical_name": "bank", "aliases": []}, + "1f3e8": {"canonical_name": "hotel", "aliases": []}, + "1f3ea": {"canonical_name": "convenience_store", "aliases": []}, + "1f3eb": {"canonical_name": "school", "aliases": []}, + "1f3e9": {"canonical_name": "love_hotel", "aliases": []}, + "1f492": {"canonical_name": "wedding", "aliases": []}, + "1f3db": {"canonical_name": "classical_building", "aliases": []}, + "26ea": {"canonical_name": "church", "aliases": []}, + "1f54c": {"canonical_name": "mosque", "aliases": []}, + "1f54d": {"canonical_name": "synagogue", "aliases": []}, + "1f54b": {"canonical_name": "kaaba", "aliases": []}, + "26e9": {"canonical_name": "shinto_shrine", "aliases": []}, + "1f5fe": {"canonical_name": "japan", "aliases": []}, + # rice_scene seems like a strange name to have. gemoji alternate is + # moon_ceremony + "1f391": {"canonical_name": "moon_ceremony", "aliases": []}, + "1f3de": {"canonical_name": "national_park", "aliases": []}, + # ocean_sunrise to parallel Places/109 + "1f305": {"canonical_name": "sunrise", "aliases": ["ocean_sunrise"]}, + "1f304": {"canonical_name": "mountain_sunrise", "aliases": []}, + # shooting_star and wish seem like way better descriptions. gemoji/Unicode + # is shooting_star + "1f320": {"canonical_name": "shooting_star", "aliases": ["wish"]}, + "1f387": {"canonical_name": "sparkler", "aliases": []}, + "1f386": {"canonical_name": "fireworks", "aliases": []}, + "1f307": {"canonical_name": "city_sunrise", "aliases": []}, + "1f306": {"canonical_name": "sunset", "aliases": []}, + # city and skyline seem more useful than cityscape + "1f3d9": {"canonical_name": "city", "aliases": ["skyline"]}, + "1f303": {"canonical_name": "night", "aliases": []}, + # night_sky seems like a good addition + "1f30c": {"canonical_name": "milky_way", "aliases": ["night_sky"]}, + "1f309": {"canonical_name": "bridge", "aliases": []}, + "1f301": {"canonical_name": "foggy", "aliases": []}, + "231a": {"canonical_name": "watch", "aliases": []}, + # Unicode/gemoji is mobile_phone. The rest seem like good additions + "1f4f1": {"canonical_name": "mobile_phone", "aliases": ["smartphone", "iphone", "android"]}, + "1f4f2": {"canonical_name": "calling", "aliases": []}, + # gemoji has laptop, even though the Google emoji for this does not look + # like a laptop + "1f4bb": {"canonical_name": "computer", "aliases": ["laptop"]}, + "2328": {"canonical_name": "keyboard", "aliases": []}, + "1f5a5": {"canonical_name": "desktop_computer", "aliases": []}, + "1f5a8": {"canonical_name": "printer", "aliases": []}, + # gemoji/Unicode is computer_mouse + "1f5b1": {"canonical_name": "computer_mouse", "aliases": []}, + "1f5b2": {"canonical_name": "trackball", "aliases": []}, + # arcade seems like a reasonable addition + "1f579": {"canonical_name": "joystick", "aliases": ["arcade"]}, + # vise seems like a reasonable addition + "1f5dc": {"canonical_name": "compression", "aliases": ["vise"]}, + # gold record seems more useful, idea came from + # https://11points.com/11-emoji-different-meanings-think/ + "1f4bd": {"canonical_name": "gold_record", "aliases": ["minidisc"]}, + "1f4be": {"canonical_name": "floppy_disk", "aliases": []}, + "1f4bf": {"canonical_name": "cd", "aliases": []}, + "1f4c0": {"canonical_name": "dvd", "aliases": []}, + # videocassette from gemoji/Unicode + "1f4fc": {"canonical_name": "vhs", "aliases": ["videocassette"]}, + "1f4f7": {"canonical_name": "camera", "aliases": []}, + # both of these seem more useful than camera_with_flash + "1f4f8": {"canonical_name": "taking_a_picture", "aliases": ["say_cheese"]}, + # video_recorder seems like a reasonable addition + "1f4f9": {"canonical_name": "video_camera", "aliases": ["video_recorder"]}, + "1f3a5": {"canonical_name": "movie_camera", "aliases": []}, + # seems like the best emoji for movie + "1f4fd": {"canonical_name": "projector", "aliases": ["movie"]}, + "1f39e": {"canonical_name": "film", "aliases": []}, + # both of these seem more useful than telephone_receiver + "1f4de": {"canonical_name": "landline", "aliases": ["home_phone"]}, + "260e": {"canonical_name": "phone", "aliases": ["telephone"]}, + "1f4df": {"canonical_name": "pager", "aliases": []}, + "1f4e0": {"canonical_name": "fax", "aliases": []}, + "1f4fa": {"canonical_name": "tv", "aliases": ["television"]}, + "1f4fb": {"canonical_name": "radio", "aliases": []}, + "1f399": {"canonical_name": "studio_microphone", "aliases": []}, + # volume seems more useful + "1f39a": {"canonical_name": "volume", "aliases": ["level_slider"]}, + "1f39b": {"canonical_name": "control_knobs", "aliases": []}, + "23f1": {"canonical_name": "stopwatch", "aliases": []}, + "23f2": {"canonical_name": "timer", "aliases": []}, + "23f0": {"canonical_name": "alarm_clock", "aliases": []}, + "1f570": {"canonical_name": "mantelpiece_clock", "aliases": []}, + # times_up and time_ticking seem more useful than the hourglass names + "231b": {"canonical_name": "times_up", "aliases": ["hourglass_done"]}, + # seems like the better hourglass. Also see Objects/36 + "23f3": {"canonical_name": "time_ticking", "aliases": ["hourglass"]}, + "1f4e1": {"canonical_name": "satellite_antenna", "aliases": []}, + # seems like a reasonable addition + "1f50b": {"canonical_name": "battery", "aliases": ["full_battery"]}, + "1f50c": {"canonical_name": "electric_plug", "aliases": []}, + # light_bulb seems better and from Unicode/gemoji. idea seems like a good + # addition + "1f4a1": {"canonical_name": "light_bulb", "aliases": ["bulb", "idea"]}, + "1f526": {"canonical_name": "flashlight", "aliases": []}, + "1f56f": {"canonical_name": "candle", "aliases": []}, + # seems like a reasonable addition + "1f5d1": {"canonical_name": "wastebasket", "aliases": ["trash_can"]}, + # https://www.iemoji.com/view/emoji/1173/objects/oil-drum + "1f6e2": {"canonical_name": "oil_drum", "aliases": ["commodities"]}, + # losing money from https://emojipedia.org/money-with-wings/, + # easy_come_easy_go seems like a reasonable addition + "1f4b8": { + "canonical_name": "losing_money", + "aliases": ["easy_come_easy_go", "money_with_wings"], + }, + # I think the _bills, _banknotes etc versions of these are arguably more + # fun to use in chat, and certainly match the glyphs better + "1f4b5": {"canonical_name": "dollar_bills", "aliases": []}, + "1f4b4": {"canonical_name": "yen_banknotes", "aliases": []}, + "1f4b6": {"canonical_name": "euro_banknotes", "aliases": []}, + "1f4b7": {"canonical_name": "pound_notes", "aliases": []}, + "1f4b0": {"canonical_name": "money", "aliases": []}, + "1f4b3": {"canonical_name": "credit_card", "aliases": ["debit_card"]}, + "1f48e": {"canonical_name": "gem", "aliases": ["crystal"]}, + # justice seems more useful + "2696": {"canonical_name": "justice", "aliases": ["scales", "balance"]}, + # fixing, at_work, and working_on_it seem like useful concepts for + # workplace chat + "1f527": {"canonical_name": "fixing", "aliases": ["wrench"]}, + "1f528": {"canonical_name": "hammer", "aliases": ["maintenance", "handyman", "handywoman"]}, + "2692": {"canonical_name": "at_work", "aliases": ["hammer_and_pick"]}, + # something that might be useful for chat.zulip.org, even + "1f6e0": {"canonical_name": "working_on_it", "aliases": ["hammer_and_wrench", "tools"]}, + "26cf": {"canonical_name": "mine", "aliases": ["pick"]}, + # screw is somewhat inappropriate, but not openly so, so leaving it in + "1f529": {"canonical_name": "nut_and_bolt", "aliases": ["screw"]}, + "2699": {"canonical_name": "gear", "aliases": ["settings", "mechanical", "engineer"]}, + "26d3": {"canonical_name": "chains", "aliases": []}, + "1f52b": {"canonical_name": "gun", "aliases": []}, + "1f4a3": {"canonical_name": "bomb", "aliases": []}, + # betrayed from https://www.iemoji.com/view/emoji/786/objects/kitchen-knife + "1f52a": {"canonical_name": "knife", "aliases": ["hocho", "betrayed"]}, + # rated_for_violence from + # https://www.iemoji.com/view/emoji/1085/objects/dagger. hate (also + # suggested there) seems too strong, as does just "violence". + "1f5e1": {"canonical_name": "dagger", "aliases": ["rated_for_violence"]}, + "2694": {"canonical_name": "duel", "aliases": ["swords"]}, + "1f6e1": {"canonical_name": "shield", "aliases": []}, + "1f6ac": {"canonical_name": "smoking", "aliases": []}, + "26b0": {"canonical_name": "coffin", "aliases": ["burial", "grave"]}, + "26b1": {"canonical_name": "funeral_urn", "aliases": ["cremation"]}, + # amphora is too obscure, I think + "1f3fa": {"canonical_name": "vase", "aliases": ["amphora"]}, + "1f52e": {"canonical_name": "crystal_ball", "aliases": ["oracle", "future", "fortune_telling"]}, + "1f4ff": {"canonical_name": "prayer_beads", "aliases": []}, + "1f488": {"canonical_name": "barber", "aliases": ["striped_pole"]}, + # alchemy seems more useful and less obscure + "2697": {"canonical_name": "alchemy", "aliases": ["alembic"]}, + "1f52d": {"canonical_name": "telescope", "aliases": []}, + # science seems useful to have. scientist inspired by + # https://www.iemoji.com/view/emoji/787/objects/microscope + "1f52c": {"canonical_name": "science", "aliases": ["microscope", "scientist"]}, + "1f573": {"canonical_name": "hole", "aliases": []}, + "1f48a": {"canonical_name": "medicine", "aliases": ["pill"]}, + "1f489": {"canonical_name": "injection", "aliases": ["syringe"]}, + "1f321": {"canonical_name": "temperature", "aliases": ["thermometer", "warm"]}, + "1f6bd": {"canonical_name": "toilet", "aliases": []}, + "1f6b0": {"canonical_name": "potable_water", "aliases": ["tap_water", "drinking_water"]}, + "1f6bf": {"canonical_name": "shower", "aliases": []}, + "1f6c1": {"canonical_name": "bathtub", "aliases": []}, + "1f6c0": {"canonical_name": "bath", "aliases": []}, + # reception and services from + # https://www.iemoji.com/view/emoji/1169/objects/bellhop-bell + "1f6ce": {"canonical_name": "bellhop_bell", "aliases": ["reception", "services", "ding"]}, + "1f511": {"canonical_name": "key", "aliases": []}, + # encrypted from https://www.iemoji.com/view/emoji/1081/objects/old-key, + # secret from https://mashable.com/2015/10/23/ios-9-1-emoji-guide/ + "1f5dd": { + "canonical_name": "secret", + "aliases": ["dungeon", "old_key", "encrypted", "clue", "hint"], + }, + "1f6aa": {"canonical_name": "door", "aliases": []}, + "1f6cb": { + "canonical_name": "living_room", + "aliases": ["furniture", "couch_and_lamp", "lifestyles"], + }, + "1f6cf": {"canonical_name": "bed", "aliases": ["bedroom"]}, + # guestrooms from iemoji, would add hotel but taken by Places/94 + "1f6cc": {"canonical_name": "in_bed", "aliases": ["accommodations", "guestrooms"]}, + "1f5bc": {"canonical_name": "picture", "aliases": ["framed_picture"]}, + "1f6cd": {"canonical_name": "shopping_bags", "aliases": []}, + # https://trends.google.com/trends/explore?q=shopping%20cart,shopping%20trolley + "1f6d2": {"canonical_name": "shopping_cart", "aliases": ["shopping_trolley"]}, + "1f381": {"canonical_name": "gift", "aliases": ["present"]}, + # seemed like the best celebration + "1f388": {"canonical_name": "balloon", "aliases": ["celebration"]}, + # from gemoji/Unicode + "1f38f": {"canonical_name": "carp_streamer", "aliases": ["flags"]}, + "1f380": {"canonical_name": "ribbon", "aliases": ["decoration"]}, + "1f38a": {"canonical_name": "confetti", "aliases": ["party_ball"]}, + "1f389": {"canonical_name": "tada", "aliases": []}, + "1f38e": {"canonical_name": "dolls", "aliases": []}, + "1f3ee": {"canonical_name": "lantern", "aliases": ["izakaya_lantern"]}, + "1f390": {"canonical_name": "wind_chime", "aliases": []}, + "2709": {"canonical_name": "email", "aliases": ["envelope", "mail"]}, + # seems useful for chat? + "1f4e9": {"canonical_name": "mail_sent", "aliases": ["sealed"]}, + "1f4e8": {"canonical_name": "mail_received", "aliases": []}, + "1f4e7": {"canonical_name": "e-mail", "aliases": []}, + "1f48c": {"canonical_name": "love_letter", "aliases": []}, + "1f4e5": {"canonical_name": "inbox", "aliases": []}, + "1f4e4": {"canonical_name": "outbox", "aliases": []}, + "1f4e6": {"canonical_name": "package", "aliases": []}, + # price_tag from iemoji + "1f3f7": {"canonical_name": "label", "aliases": ["tag", "price_tag"]}, + "1f4ea": {"canonical_name": "closed_mailbox", "aliases": []}, + "1f4eb": {"canonical_name": "mailbox", "aliases": []}, + "1f4ec": {"canonical_name": "unread_mail", "aliases": []}, + "1f4ed": {"canonical_name": "inbox_zero", "aliases": ["empty_mailbox", "no_mail"]}, + "1f4ee": {"canonical_name": "mail_dropoff", "aliases": []}, + "1f4ef": {"canonical_name": "horn", "aliases": []}, + "1f4dc": {"canonical_name": "scroll", "aliases": []}, + # receipt seems more useful? + "1f4c3": {"canonical_name": "receipt", "aliases": []}, + "1f4c4": {"canonical_name": "document", "aliases": ["paper", "file", "page"]}, + "1f4d1": {"canonical_name": "place_holder", "aliases": []}, + "1f4ca": {"canonical_name": "bar_chart", "aliases": []}, + # seems like the best chart + "1f4c8": {"canonical_name": "chart", "aliases": ["upwards_trend", "growing", "increasing"]}, + "1f4c9": {"canonical_name": "downwards_trend", "aliases": ["shrinking", "decreasing"]}, + "1f5d2": {"canonical_name": "spiral_notepad", "aliases": []}, + # '1f5d3': {'canonical_name': 'X', 'aliases': ['spiral_calendar_pad']}, + # swapped the following two largely due to the emojione glyphs + "1f4c6": {"canonical_name": "date", "aliases": []}, + "1f4c5": {"canonical_name": "calendar", "aliases": []}, + "1f4c7": {"canonical_name": "rolodex", "aliases": ["card_index"]}, + "1f5c3": {"canonical_name": "archive", "aliases": []}, + "1f5f3": {"canonical_name": "ballot_box", "aliases": []}, + "1f5c4": {"canonical_name": "file_cabinet", "aliases": []}, + "1f4cb": {"canonical_name": "clipboard", "aliases": []}, + # don't need two file_folders, so made this organize + "1f4c1": {"canonical_name": "organize", "aliases": ["file_folder"]}, + "1f4c2": {"canonical_name": "folder", "aliases": []}, + "1f5c2": {"canonical_name": "sort", "aliases": []}, + "1f5de": {"canonical_name": "newspaper", "aliases": ["swat"]}, + "1f4f0": {"canonical_name": "headlines", "aliases": []}, + "1f4d3": {"canonical_name": "notebook", "aliases": ["composition_book"]}, + "1f4d4": {"canonical_name": "decorative_notebook", "aliases": []}, + "1f4d2": {"canonical_name": "ledger", "aliases": ["spiral_notebook"]}, + # the glyphs here are the same as Objects/147-149 (with a different color), + # for all but Google + "1f4d5": {"canonical_name": "red_book", "aliases": ["closed_book"]}, + "1f4d7": {"canonical_name": "green_book", "aliases": []}, + "1f4d8": {"canonical_name": "blue_book", "aliases": []}, + "1f4d9": {"canonical_name": "orange_book", "aliases": []}, + "1f4da": {"canonical_name": "books", "aliases": []}, + "1f4d6": {"canonical_name": "book", "aliases": ["open_book"]}, + "1f516": {"canonical_name": "bookmark", "aliases": []}, + "1f517": {"canonical_name": "link", "aliases": []}, + "1f4ce": {"canonical_name": "paperclip", "aliases": ["attachment"]}, + # office_supplies from https://mashable.com/2015/10/23/ios-9-1-emoji-guide/ + "1f587": {"canonical_name": "office_supplies", "aliases": ["paperclip_chain", "linked"]}, + "1f4d0": {"canonical_name": "carpenter_square", "aliases": ["triangular_ruler"]}, + "1f4cf": {"canonical_name": "ruler", "aliases": ["straightedge"]}, + "1f4cc": {"canonical_name": "push_pin", "aliases": ["thumb_tack"]}, + "1f4cd": {"canonical_name": "pin", "aliases": ["sewing_pin"]}, + "2702": {"canonical_name": "scissors", "aliases": []}, + "1f58a": {"canonical_name": "pen", "aliases": ["ballpoint_pen"]}, + "1f58b": {"canonical_name": "fountain_pen", "aliases": []}, + # three of the four emoji sets just have a rightwards-facing objects/162 + # '2712': {'canonical_name': 'X', 'aliases': ['black_nib']}, + "1f58c": {"canonical_name": "paintbrush", "aliases": []}, + "1f58d": {"canonical_name": "crayon", "aliases": []}, + "1f4dd": {"canonical_name": "memo", "aliases": ["note"]}, + "270f": {"canonical_name": "pencil", "aliases": []}, + "1f50d": {"canonical_name": "search", "aliases": ["find", "magnifying_glass"]}, + # '1f50e': {'canonical_name': 'X', 'aliases': ['mag_right']}, + # https://emojipedia.org/lock-with-ink-pen/ + "1f50f": { + "canonical_name": "privacy", + "aliases": ["key_signing", "digital_security", "protected"], + }, + "1f510": { + "canonical_name": "secure", + "aliases": ["lock_with_key", "safe", "commitment", "loyalty"], + }, + "1f512": {"canonical_name": "locked", "aliases": []}, + "1f513": {"canonical_name": "unlocked", "aliases": []}, + # seems the best glyph for love and love_you + "2764": {"canonical_name": "heart", "aliases": ["love", "love_you"]}, + "1f49b": {"canonical_name": "yellow_heart", "aliases": ["heart_of_gold"]}, + "1f49a": {"canonical_name": "green_heart", "aliases": ["envy"]}, + "1f499": {"canonical_name": "blue_heart", "aliases": []}, + "1f49c": {"canonical_name": "purple_heart", "aliases": ["bravery"]}, + "1f5a4": {"canonical_name": "black_heart", "aliases": []}, + "1f494": {"canonical_name": "broken_heart", "aliases": ["heartache"]}, + "2763": {"canonical_name": "heart_exclamation", "aliases": []}, + "1f495": {"canonical_name": "two_hearts", "aliases": []}, + "1f49e": {"canonical_name": "revolving_hearts", "aliases": []}, + "1f493": {"canonical_name": "heartbeat", "aliases": []}, + "1f497": {"canonical_name": "heart_pulse", "aliases": ["growing_heart"]}, + "1f496": {"canonical_name": "sparkling_heart", "aliases": []}, + "1f498": {"canonical_name": "cupid", "aliases": ["smitten", "heart_arrow"]}, + "1f49d": {"canonical_name": "gift_heart", "aliases": []}, + "1f49f": {"canonical_name": "heart_box", "aliases": []}, + "262e": {"canonical_name": "peace", "aliases": []}, + "271d": {"canonical_name": "cross", "aliases": ["christianity"]}, + "262a": {"canonical_name": "star_and_crescent", "aliases": ["islam"]}, + "1f549": {"canonical_name": "om", "aliases": ["hinduism"]}, + "2638": {"canonical_name": "wheel_of_dharma", "aliases": ["buddhism"]}, + "2721": {"canonical_name": "star_of_david", "aliases": ["judaism"]}, + # can't find any explanation of this at all. Is an alternate star of david? + # '1f52f': {'canonical_name': 'X', 'aliases': ['six_pointed_star']}, + "1f54e": {"canonical_name": "menorah", "aliases": []}, + "262f": {"canonical_name": "yin_yang", "aliases": []}, + "2626": {"canonical_name": "orthodox_cross", "aliases": []}, + "1f6d0": {"canonical_name": "place_of_worship", "aliases": []}, + "26ce": {"canonical_name": "ophiuchus", "aliases": []}, + "2648": {"canonical_name": "aries", "aliases": []}, + "2649": {"canonical_name": "taurus", "aliases": []}, + "264a": {"canonical_name": "gemini", "aliases": []}, + "264b": {"canonical_name": "cancer", "aliases": []}, + "264c": {"canonical_name": "leo", "aliases": []}, + "264d": {"canonical_name": "virgo", "aliases": []}, + "264e": {"canonical_name": "libra", "aliases": []}, + "264f": {"canonical_name": "scorpius", "aliases": []}, + "2650": {"canonical_name": "sagittarius", "aliases": []}, + "2651": {"canonical_name": "capricorn", "aliases": []}, + "2652": {"canonical_name": "aquarius", "aliases": []}, + "2653": {"canonical_name": "pisces", "aliases": []}, + "1f194": {"canonical_name": "id", "aliases": []}, + "269b": {"canonical_name": "atom", "aliases": ["physics"]}, + "2622": {"canonical_name": "radioactive", "aliases": ["nuclear"]}, + "2623": {"canonical_name": "biohazard", "aliases": []}, + "1f4f4": {"canonical_name": "phone_off", "aliases": []}, + "1f4f3": {"canonical_name": "vibration_mode", "aliases": []}, + # Japanese symbol. `canonical_name` taken from emojipedia.org. + "1f236": {"canonical_name": "japanese_not_free_of_charge_button", "aliases": ["u6709"]}, + "1f250": {"canonical_name": "japanese_bargain_button", "aliases": ["ideograph_advantage"]}, + "1f251": {"canonical_name": "japanese_acceptable_button", "aliases": ["accept"]}, + "1f21a": {"canonical_name": "japanese_free_of_charge_button", "aliases": ["u7121"]}, + "1f238": {"canonical_name": "japanese_application_button", "aliases": ["u7533"]}, + "1f23a": {"canonical_name": "japanese_open_for_business_button", "aliases": ["u55b6"]}, + "1f237": {"canonical_name": "japanese_monthly_amount_button", "aliases": ["u6708"]}, + "3299": {"canonical_name": "japanese_secret_button", "aliases": ["secret"]}, + "3297": {"canonical_name": "japanese_congratulations_button", "aliases": ["congratulations"]}, + "1f234": {"canonical_name": "japanese_passing_grade_button", "aliases": ["u5408"]}, + "1f235": {"canonical_name": "japanese_no_vacancy_button", "aliases": ["u6e80"]}, + "1f239": {"canonical_name": "japanese_discount_button", "aliases": ["u5272"]}, + "1f232": {"canonical_name": "japanese_prohibited_button", "aliases": ["u7981"]}, + # End of Japanese symbol. + "2734": {"canonical_name": "eight_pointed_star", "aliases": []}, + "1f19a": {"canonical_name": "vs", "aliases": []}, + "1f4ae": {"canonical_name": "white_flower", "aliases": []}, + "1f170": {"canonical_name": "a", "aliases": []}, + "1f171": {"canonical_name": "b", "aliases": []}, + "1f18e": {"canonical_name": "ab", "aliases": []}, + "1f191": {"canonical_name": "cl", "aliases": []}, + "1f17e": {"canonical_name": "o", "aliases": []}, + "1f198": {"canonical_name": "sos", "aliases": []}, + # Symbols/105 seems like a better x, and looks more like the other letters + "274c": {"canonical_name": "cross_mark", "aliases": ["incorrect", "wrong"]}, + "2b55": {"canonical_name": "circle", "aliases": []}, + "1f6d1": {"canonical_name": "stop_sign", "aliases": ["octagonal_sign"]}, + "26d4": {"canonical_name": "no_entry", "aliases": ["wrong_way"]}, + "1f4db": {"canonical_name": "name_badge", "aliases": []}, + "1f6ab": {"canonical_name": "prohibited", "aliases": ["not_allowed"]}, + "1f4af": {"canonical_name": "100", "aliases": ["hundred"]}, + "1f4a2": {"canonical_name": "anger", "aliases": ["bam", "pow"]}, + "2668": {"canonical_name": "hot_springs", "aliases": []}, + "1f6b7": {"canonical_name": "no_pedestrians", "aliases": []}, + "1f6af": {"canonical_name": "do_not_litter", "aliases": []}, + "1f6b3": {"canonical_name": "no_bicycles", "aliases": []}, + "1f6b1": {"canonical_name": "non-potable_water", "aliases": []}, + "1f51e": {"canonical_name": "underage", "aliases": ["nc17"]}, + "1f4f5": {"canonical_name": "no_phones", "aliases": []}, + "1f6ad": {"canonical_name": "no_smoking", "aliases": []}, + "2757": {"canonical_name": "exclamation", "aliases": []}, + "2755": {"canonical_name": "grey_exclamation", "aliases": []}, + "2753": {"canonical_name": "question", "aliases": []}, + "2754": {"canonical_name": "grey_question", "aliases": []}, + "203c": {"canonical_name": "bangbang", "aliases": ["double_exclamation"]}, + "2049": {"canonical_name": "interrobang", "aliases": []}, + "1f505": {"canonical_name": "low_brightness", "aliases": ["dim"]}, + "1f506": {"canonical_name": "brightness", "aliases": ["high_brightness"]}, + "303d": {"canonical_name": "part_alternation", "aliases": []}, + "26a0": {"canonical_name": "warning", "aliases": ["caution", "danger"]}, + "1f6b8": { + "canonical_name": "children_crossing", + "aliases": ["school_crossing", "drive_with_care"], + }, + "1f531": {"canonical_name": "trident", "aliases": []}, + "269c": {"canonical_name": "fleur_de_lis", "aliases": []}, + "1f530": {"canonical_name": "beginner", "aliases": []}, + "267b": {"canonical_name": "recycle", "aliases": []}, + # seems like the best check + "2705": {"canonical_name": "check", "aliases": ["all_good", "approved"]}, + # '1f22f': {'canonical_name': 'X', 'aliases': ['u6307']}, + # stock_market seemed more useful + "1f4b9": {"canonical_name": "stock_market", "aliases": []}, + "2747": {"canonical_name": "sparkle", "aliases": []}, + "2733": {"canonical_name": "eight_spoked_asterisk", "aliases": []}, + "274e": {"canonical_name": "x", "aliases": []}, + "1f310": {"canonical_name": "www", "aliases": ["globe"]}, + "1f4a0": {"canonical_name": "cute", "aliases": ["kawaii", "diamond_with_a_dot"]}, + "24c2": {"canonical_name": "metro", "aliases": ["m"]}, + "1f300": {"canonical_name": "cyclone", "aliases": ["hurricane", "typhoon"]}, + "1f4a4": {"canonical_name": "zzz", "aliases": []}, + "1f3e7": {"canonical_name": "atm", "aliases": []}, + "1f6be": {"canonical_name": "wc", "aliases": ["water_closet"]}, + "267f": {"canonical_name": "accessible", "aliases": ["wheelchair", "disabled"]}, + "1f17f": {"canonical_name": "parking", "aliases": ["p"]}, + # '1f233': {'canonical_name': 'X', 'aliases': ['u7a7a']}, + # '1f202': {'canonical_name': 'X', 'aliases': ['sa']}, + "1f6c2": {"canonical_name": "passport_control", "aliases": ["immigration"]}, + "1f6c3": {"canonical_name": "customs", "aliases": []}, + "1f6c4": {"canonical_name": "baggage_claim", "aliases": []}, + "1f6c5": {"canonical_name": "locker", "aliases": ["locked_bag"]}, + "1f6b9": {"canonical_name": "mens", "aliases": []}, + "1f6ba": {"canonical_name": "womens", "aliases": []}, + # seems more in line with the surrounding bathroom symbols + "1f6bc": {"canonical_name": "baby_change_station", "aliases": ["nursery"]}, + "1f6bb": {"canonical_name": "restroom", "aliases": []}, + "1f6ae": {"canonical_name": "put_litter_in_its_place", "aliases": []}, + "1f3a6": {"canonical_name": "cinema", "aliases": ["movie_theater"]}, + "1f4f6": {"canonical_name": "cell_reception", "aliases": ["signal_strength", "signal_bars"]}, + # '1f201': {'canonical_name': 'X', 'aliases': ['koko']}, + "1f523": {"canonical_name": "symbols", "aliases": []}, + "2139": {"canonical_name": "info", "aliases": []}, + "1f524": {"canonical_name": "abc", "aliases": []}, + "1f521": {"canonical_name": "abcd", "aliases": ["alphabet"]}, + "1f520": {"canonical_name": "capital_abcd", "aliases": ["capital_letters"]}, + "1f196": {"canonical_name": "ng", "aliases": []}, + # from Unicode/gemoji. Saving ok for People/111 + "1f197": {"canonical_name": "squared_ok", "aliases": []}, + # from Unicode, and to parallel Symbols/135. Saving up for Symbols/171 + "1f199": {"canonical_name": "squared_up", "aliases": []}, + "1f192": {"canonical_name": "cool", "aliases": []}, + "1f195": {"canonical_name": "new", "aliases": []}, + "1f193": {"canonical_name": "free", "aliases": []}, + "0030-20e3": {"canonical_name": "zero", "aliases": []}, + "0031-20e3": {"canonical_name": "one", "aliases": []}, + "0032-20e3": {"canonical_name": "two", "aliases": []}, + "0033-20e3": {"canonical_name": "three", "aliases": []}, + "0034-20e3": {"canonical_name": "four", "aliases": []}, + "0035-20e3": {"canonical_name": "five", "aliases": []}, + "0036-20e3": {"canonical_name": "six", "aliases": []}, + "0037-20e3": {"canonical_name": "seven", "aliases": []}, + "0038-20e3": {"canonical_name": "eight", "aliases": []}, + "0039-20e3": {"canonical_name": "nine", "aliases": []}, + "1f51f": {"canonical_name": "ten", "aliases": []}, + "1f522": {"canonical_name": "1234", "aliases": ["numbers"]}, + "0023-20e3": {"canonical_name": "hash", "aliases": []}, + "002a-20e3": {"canonical_name": "asterisk", "aliases": []}, + "25b6": {"canonical_name": "play", "aliases": []}, + "23f8": {"canonical_name": "pause", "aliases": []}, + "23ef": {"canonical_name": "play_pause", "aliases": []}, + # stop taken by People/118 + "23f9": {"canonical_name": "stop_button", "aliases": []}, + "23fa": {"canonical_name": "record", "aliases": []}, + "23ed": {"canonical_name": "next_track", "aliases": ["skip_forward"]}, + "23ee": {"canonical_name": "previous_track", "aliases": ["skip_back"]}, + "23e9": {"canonical_name": "fast_forward", "aliases": []}, + "23ea": {"canonical_name": "rewind", "aliases": ["fast_reverse"]}, + "23eb": {"canonical_name": "double_up", "aliases": ["fast_up"]}, + "23ec": {"canonical_name": "double_down", "aliases": ["fast_down"]}, + "25c0": {"canonical_name": "play_reverse", "aliases": []}, + "1f53c": {"canonical_name": "upvote", "aliases": ["up_button", "increase"]}, + "1f53d": {"canonical_name": "downvote", "aliases": ["down_button", "decrease"]}, + "27a1": {"canonical_name": "right", "aliases": ["east"]}, + "2b05": {"canonical_name": "left", "aliases": ["west"]}, + "2b06": {"canonical_name": "up", "aliases": ["north"]}, + "2b07": {"canonical_name": "down", "aliases": ["south"]}, + "2197": {"canonical_name": "upper_right", "aliases": ["north_east"]}, + "2198": {"canonical_name": "lower_right", "aliases": ["south_east"]}, + "2199": {"canonical_name": "lower_left", "aliases": ["south_west"]}, + "2196": {"canonical_name": "upper_left", "aliases": ["north_west"]}, + "2195": {"canonical_name": "up_down", "aliases": []}, + "2194": {"canonical_name": "left_right", "aliases": ["swap"]}, + "21aa": {"canonical_name": "forward", "aliases": ["right_hook"]}, + "21a9": {"canonical_name": "reply", "aliases": ["left_hook"]}, + "2934": {"canonical_name": "heading_up", "aliases": []}, + "2935": {"canonical_name": "heading_down", "aliases": []}, + "1f500": {"canonical_name": "shuffle", "aliases": []}, + "1f501": {"canonical_name": "repeat", "aliases": []}, + "1f502": {"canonical_name": "repeat_one", "aliases": []}, + "1f504": {"canonical_name": "counterclockwise", "aliases": ["return"]}, + "1f503": {"canonical_name": "clockwise", "aliases": []}, + "1f3b5": {"canonical_name": "music", "aliases": []}, + "1f3b6": {"canonical_name": "musical_notes", "aliases": []}, + "2795": {"canonical_name": "plus", "aliases": ["add"]}, + "2796": {"canonical_name": "minus", "aliases": ["subtract"]}, + "2797": {"canonical_name": "division", "aliases": ["divide"]}, + "2716": {"canonical_name": "multiplication", "aliases": ["multiply"]}, + "1f4b2": {"canonical_name": "dollars", "aliases": []}, + # There is no other exchange, so might as well generalize this + "1f4b1": {"canonical_name": "exchange", "aliases": []}, + "2122": {"canonical_name": "tm", "aliases": ["trademark"]}, + "3030": {"canonical_name": "wavy_dash", "aliases": []}, + "27b0": {"canonical_name": "loop", "aliases": []}, + # https://emojipedia.org/double-curly-loop/ + "27bf": {"canonical_name": "double_loop", "aliases": ["voicemail"]}, + "1f51a": {"canonical_name": "end", "aliases": []}, + "1f519": {"canonical_name": "back", "aliases": []}, + "1f51b": {"canonical_name": "on", "aliases": []}, + "1f51d": {"canonical_name": "top", "aliases": []}, + "1f51c": {"canonical_name": "soon", "aliases": []}, + "2714": {"canonical_name": "check_mark", "aliases": []}, + "2611": {"canonical_name": "checkbox", "aliases": []}, + "1f518": {"canonical_name": "radio_button", "aliases": []}, + "26aa": {"canonical_name": "white_circle", "aliases": []}, + "26ab": {"canonical_name": "black_circle", "aliases": []}, + "1f534": {"canonical_name": "red_circle", "aliases": []}, + "1f535": {"canonical_name": "blue_circle", "aliases": []}, + "1f53a": {"canonical_name": "red_triangle_up", "aliases": []}, + "1f53b": {"canonical_name": "red_triangle_down", "aliases": []}, + "1f538": {"canonical_name": "small_orange_diamond", "aliases": []}, + "1f539": {"canonical_name": "small_blue_diamond", "aliases": []}, + "1f536": {"canonical_name": "large_orange_diamond", "aliases": []}, + "1f537": {"canonical_name": "large_blue_diamond", "aliases": []}, + "1f533": {"canonical_name": "black_and_white_square", "aliases": []}, + "1f532": {"canonical_name": "white_and_black_square", "aliases": []}, + "25aa": {"canonical_name": "black_small_square", "aliases": []}, + "25ab": {"canonical_name": "white_small_square", "aliases": []}, + "25fe": {"canonical_name": "black_medium_small_square", "aliases": []}, + "25fd": {"canonical_name": "white_medium_small_square", "aliases": []}, + "25fc": {"canonical_name": "black_medium_square", "aliases": []}, + "25fb": {"canonical_name": "white_medium_square", "aliases": []}, + "2b1b": {"canonical_name": "black_large_square", "aliases": []}, + "2b1c": {"canonical_name": "white_large_square", "aliases": []}, + "1f7e8": {"canonical_name": "yellow_large_square", "aliases": []}, + "1f7e9": {"canonical_name": "green_large_square", "aliases": []}, + "1f508": {"canonical_name": "speaker", "aliases": []}, + "1f507": {"canonical_name": "mute", "aliases": ["no_sound"]}, + "1f509": {"canonical_name": "softer", "aliases": []}, + "1f50a": {"canonical_name": "louder", "aliases": ["sound"]}, + "1f514": {"canonical_name": "notifications", "aliases": ["bell"]}, + "1f515": {"canonical_name": "mute_notifications", "aliases": []}, + "1f4e3": {"canonical_name": "megaphone", "aliases": ["shout"]}, + "1f4e2": {"canonical_name": "loudspeaker", "aliases": ["bullhorn"]}, + "1f4ac": {"canonical_name": "umm", "aliases": ["speech_balloon"]}, + "1f5e8": {"canonical_name": "speech_bubble", "aliases": []}, + "1f4ad": {"canonical_name": "thought", "aliases": ["dream"]}, + "1f5ef": {"canonical_name": "anger_bubble", "aliases": []}, + "2660": {"canonical_name": "spades", "aliases": []}, + "2663": {"canonical_name": "clubs", "aliases": []}, + "2665": {"canonical_name": "hearts", "aliases": []}, + "2666": {"canonical_name": "diamonds", "aliases": []}, + "1f0cf": {"canonical_name": "joker", "aliases": []}, + "1f3b4": {"canonical_name": "playing_cards", "aliases": []}, + "1f004": {"canonical_name": "mahjong", "aliases": []}, + # The only use I can think of for so many clocks is to be able to use them + # to vote on times and such in emoji reactions. But a) the experience is + # not that great (the images are too small), b) there are issues with + # 24-hour time (used in many countries), like what is 00:30 or 01:00 + # called, c) it's hard to make the compose typeahead experience great, and + # d) we should have a dedicated time voting widget that takes care of + # time zone and locale issues, and uses a digital representation. + # '1f550': {'canonical_name': 'X', 'aliases': ['clock1']}, + # '1f551': {'canonical_name': 'X', 'aliases': ['clock2']}, + # '1f552': {'canonical_name': 'X', 'aliases': ['clock3']}, + # '1f553': {'canonical_name': 'X', 'aliases': ['clock4']}, + # '1f554': {'canonical_name': 'X', 'aliases': ['clock5']}, + # '1f555': {'canonical_name': 'X', 'aliases': ['clock6']}, + # '1f556': {'canonical_name': 'X', 'aliases': ['clock7']}, + # seems like the best choice for time + "1f557": {"canonical_name": "time", "aliases": ["clock"]}, + # '1f558': {'canonical_name': 'X', 'aliases': ['clock9']}, + # '1f559': {'canonical_name': 'X', 'aliases': ['clock10']}, + # '1f55a': {'canonical_name': 'X', 'aliases': ['clock11']}, + # '1f55b': {'canonical_name': 'X', 'aliases': ['clock12']}, + # '1f55c': {'canonical_name': 'X', 'aliases': ['clock130']}, + # '1f55d': {'canonical_name': 'X', 'aliases': ['clock230']}, + # '1f55e': {'canonical_name': 'X', 'aliases': ['clock330']}, + # '1f55f': {'canonical_name': 'X', 'aliases': ['clock430']}, + # '1f560': {'canonical_name': 'X', 'aliases': ['clock530']}, + # '1f561': {'canonical_name': 'X', 'aliases': ['clock630']}, + # '1f562': {'canonical_name': 'X', 'aliases': ['clock730']}, + # '1f563': {'canonical_name': 'X', 'aliases': ['clock830']}, + # '1f564': {'canonical_name': 'X', 'aliases': ['clock930']}, + # '1f565': {'canonical_name': 'X', 'aliases': ['clock1030']}, + # '1f566': {'canonical_name': 'X', 'aliases': ['clock1130']}, + # '1f567': {'canonical_name': 'X', 'aliases': ['clock1230']}, + "1f3f3": {"canonical_name": "white_flag", "aliases": ["surrender"]}, + "1f3f4": {"canonical_name": "black_flag", "aliases": []}, + "1f3c1": {"canonical_name": "checkered_flag", "aliases": ["race", "go", "start"]}, + "1f6a9": {"canonical_name": "triangular_flag", "aliases": []}, + # solidarity from iemoji + "1f38c": {"canonical_name": "crossed_flags", "aliases": ["solidarity"]}, +}