[Emoji] Missing simple :smile emoji
complete
Ai Austin
The emoji viewer is missing a commonly used simple :smile emoji. It offers other choices that are beyond what a simple smile communicates.
Log In
Gwyneth Llewelyn
Ai Austin, I believe that this just a tiny sliver of the top of the iceberg :)
Very likely, there are many, many more emoji shortcodes that are missing/weird/confusing.
And no wonder!
There is no standard for emoji shortcodes
i.e. :smile:
and so forth.The
official
, standard Unicode "short names" can be retrieved from this authoritative repository of the Unicode organisation: https://raw.githubusercontent.com/unicode-org/cldr/main/tools/cldr-code/src/main/resources/org/unicode/cldr/util/data/emoji/emoji-test.txtAs you can see, there are
no
super-short names such as :smile:
. Also, some of the emoji names are sort of obscure (legacy...). One might
be tempted to use the official short names and just replace the spaces with hyphens or underscores, i.e. :slightly_smiling_face:
for 🙂. But this quickly becomes unwieldy. One of my favourite emojis is 😸 :grinning_cat_with_smiling_eyes:
— but I most certainly don't want to type all of that, and that's not even one of the worst!Obviously, chat tools that include emojis had to deal with that, and so, they have 'invented' their own shortcodes. Good (and popular) examples are:
And a ready-to-parse JSON file for the Discord shortcodes: https://raw.githubusercontent.com/joypixels/emoji-toolkit/master/emoji.json
(Source: https://emojipedia.org/shortcodes)
Last but not least: the Emojipedia, via Emojibase, also has a table with the emoji short names as per the Unicode standard
and
all separate entries for all the other most popular variants. Clever! All the code to properly assemble your own personalised Emoji shortcode table is published on GitHub, and, allegedly, they pull all data from the other sources and combine them together in One Format To Rule Them All — for different languages! From there, I suppose that LL can easily generate their own XML file, also tailored to the viewer's language, I guess.Anyway, even though
most
applications using emojis will use one of those (GitHub's being popular on text-only applications — such as, well, GitHub — while chat-based apps tend to use Discord's set). You can appreciate that there are some common things but many different ones, such as :+1:
(GitHub) for :thumbsup:
(Discord). Sometimes, apps might be able to 'borrow' popular conventions on more than one platform.The one for Discord, as well as the Emojibase's own mega-list, is most interesting because it's more than a list. You can see that it uses groups, hints, tags, alternative names, and so forth, to make searching for a specific symbol easy. Possibly GitHub also has an equivalent format for easy download; feel free to search for it :grinning_cat_with_smiling_eyes: — uh, I mean: 😸
Now let's see how LL deals with it.
Disclaimer:
I'm not really familiar with the LL viewer code! This is just a quick & dirty overview of what I found out with a few searches!----
So... easy things first: the full definition of the so-called "emoji dictionary" is on a file bundled with the application,
emoji_characters.xml
. This is usually on a place where users ought not to tamper with. On macOS, it usually resides on /Applications/Second Life Viewer.app/Contents/Resources/skins/default/xui/en/emoji_characters.xml
.Linden Lab uses a small set of Python scripts to essentially load the Emojibase catalogue of emojis and convert them to their own XML-based format. This retrieves the official short names with underscores replacing spaces, but
also
incudes a few alternatives
. Thus, to get 😃, you can either use the Unicode official shortname :grinning_face_with_big_eyes:
or the much more convenient :smiley:
.I couldn't quite figure out if LL is including the Emojibase shortcodes
and
the ones from Discord/Slack/GitHub, in those cases where there is no conflict. For example, according to LL's own XML file, they have included :+1
:, :thumbsup:
, and :yes:
to represent 👍. Interestingly, the official
shortcode is thumbs up
, so, to follow the rules, LL should also
include :thumbs_up:
on their shortcode list (to be fair, only Discord supports all variants), but that doesn't seem to be the case; it's possible that LL can only process three variants per emoji, and thus picked the ones they liked best — I don't know. It also might be the case that the source files from Emojibase do not include all
shortcodes, or has a mistake, or... we can speculate :)The point is that there has been a good effort in trying to get the most popular shortcode abbreviations, with compromises here and there.
I forgot to mention an important aspect, which Linden Lab did
also
implement. As you can see from the official standard, Emojis are grouped together, mostly to facilitate an uniform way — across apps, across operating systems — to show them in different tabs or so, which will be common across all of them, no matter what the language. This is also directly supported on LL's XML file, and is reflected on the Emoji popup window. Interestingly, LL gets the list of groups from a different file, emoji_groups.xml
, which is not
language-specific, but generic for all
emojis, and which also assigns one emoji for each category. That file, on macOS, resides on /Applications/Second Life Viewer.app/Contents/Resources/app_settings/emoji_groups.xml
, where it is not supposed to be modified.Finally, to deal with emoji categories translated in different languages, LL has a further file — this one again part of the viewer skin — named
emoji_categories.xml
, which essentially lists the Groups on emoji_groups.xml
and provides a translation for them, according to the current viewer skin.----
Now... the fun bit.
Since two of the files are part of the
UI skin
(only the Groups are in a 'fixed', non-skinnable location; you change categories instead), one wonders... can't we change
that dictionary, to include, for instance, our own set of abbreviations?Alas, skinning the viewer without breaking the cryptographic seal put on the SL Viewer application is beyond my abilities; there might be a way of doing that
outside
the viewer's install
directory, and use the configuration directory (which is accessible and modifiable by end-users) instead. In fact, the code for loading the three Emoji-related XML files seem
to be able to account for loading them from non-standard locations... but I couldn't test it out myself. Perhaps there is something else I need to do, but I don't know what...This post was marked as
complete
Ai Austin
Great info, thanks.
Dan Linden
tracked
Dan Linden
Thank you for the report, Ai!
Issue tracked. We have no estimate when it may be implemented. Please see future updates here.
Ai Austin
The commonly used :thumbsup is apparently :+1. Again this is rather obscure. Thumbsup is used pretty much everywhere else. +1 is fine for an alias, but its not what people are likely to type. Maybe some simple aliases or repeats of the emojis with the commonly used names is needed?
Ai Austin
Thanks to feedback from others, it turns out if you select grin or a slightly_ something or other you may find what you want. One available emoji ought to have the simple label :smile please.