Open hairmare opened 2 years ago
Thanks for the report, @hairmane!
Similar to the :doctor:
emoji, I think this is an issue with us mixing GitHub's shortnames for older emojis with the ones from emoji-datasource for newer ones, so that we end up with odd cases like :woman_biking:
vs :bicyclist:
or the similar case with :man_doctor:
vs :healthcare_worker:
. Detecting all of those cases automatically would probably be tricky, and I'd be a bit worried about complicating our emoji data by adding more and more "custom" aliases that match the older names.
What if instead of tackling this by adding more aliases, we instead looked at improving the emoji picker by making it a bit smarter and easier to use? The Unicode consortium has a list of keywords that match each emoji (link), and if we were to use those in the emoji picker, we could handle a lot more cases like this since "bicycle", "cycling", and "bike" would all return all 3 "x biking" emojis. They'd still get added to the post as whatever they are right now, but that wouldn't matter too much as long as they showed up in search results correctly.
Thoughts?
Also, CCing @esethna since making the emoji picker easier to use seems like something you'd be interested in discussing. There might also be some UX things we'd need to confirm like how to order results that only match by keyword and if we should make the keywords translatable since that might be a bit tricky given how emoji data is currently set up.
I ran into this as well and initially assumed that Mattermost had dropped the gender-neutral variants because the autocomplete only showed the gendered options as completions of what I had typed. Happy to see this is already being looked into!
The Unicode consortium has a list of keywords that match each emoji (link), and if we were to use those in the emoji picker, we could handle a lot more cases like this
That page shows the same "facepalming" word for the gendered and neutral variants, not "face_palm" as Mattermost requires. Could just take that page as a drop-in replacement, without yet doing the work of adding support for aliases, and that already improves the situation
Summary
Hi it's me again. Gender neutral emoji guy :pleading_face:
We have support for the full range of emojis from #17328 and :health_worker: was added as
:doctor:
in #20318. This was an override to the rule being only to allow standard names going forward.As much as this is about exclusivity, it is also about i18n. Most users that don't use an EN locale will still search for emojis in English. For instance, my fellow German speaking colleagues would never consider searching for a person riding a bike with the
c
char.Steps to reproduce
I recently stumbled over searching for
bik
because i wanted :bicyclist:Expected behavior
When searching for emojis, the interface should always include the non gendered variant if the search is narrowed down to less than the "..." cut--off and a there are matching
man
/woman
pairs in the results.For the example given above, this would add :mountain_bicyclist: :bicyclist: to the results. This issue wants to find a more complete solution to the problem
Observed behavior (that appears unintentional)
bik
is an expected search term for :bike: people and it results in the similar results to what was found withdoctor
in #20318:no gender neutral equivalents :disappointed: we have to use
bic
as a search termPossible fixes
Apart from getting additional exemptions and implementing
:biking
: and:mountain_biking:
i'd like to propose doing this the "data-science" way:emojis.json
and find cases that violate the condition described in expected behaviorYou can have a look at #20578 for how to implement this (thanks to @Haliax for
:doctor:
btw). Kennet's pull requst also links a related webapp PR that shows how doing this needs two PRs.Going forward, I'd bet on the Unicode consortium taking care of this as part of their work. Adding a CI check that ensures
emojis.json
is considerable might be overkill, but could be an interesting side-quest towards solving this issue. It's not up to me to decide if that should be a requirement of this issue tho.I'm not sure if I'll find any time to work on this soon :sweat_smile: That's why i tried to write it up in
good-first-issue
style, feel free to tag it as such if you agree :smiley: