Custom Emoji feature requests

A couple of requests:

  • The ability to rename custom emojis
  • A separate class for built-in emojis and custom emojis. I have several custom emojis that are bigger than the normal emoji size and are non-squared dimensions. If I remove the height and width limitations via CSS so that the custom emojis display correctly, the built-in emojis become very large. It would be nice to be able to style custom and built-in separately.
3 Likes

Hmm, if they deviate from the Emoji standards, they are no longer Emoji. So this is an odd request. “Change Emoji so they aren’t like Emoji!”

Renaming seems reasonable though.

So adding a class to distinguish custom from default is out… then could we have a section where we can load custom GIFs that our board commonly uses? like facebook’s GIF keyboard?

Well, when you say it like that… it does sound easier. Not sure though, @zogstrip would need to comment.

2 Likes

In theory you can use the ReplyGIF to accomplish this goal.

If you didn’t want to utilize the GIFs from ReplyGIF the plugin already supports you changing it to use a different URL.

You would have to support the API that ReplyGIF already offers though, including the response structure.

So at a minimum you would have to have endpoints for


###example.com/replies
Provides a json array of strings

example: ["category", “category2”, “category3”]


###example.com/tags
Provides a json array of strings

example: ["tag", “tag2”, “tag3”]


###example.com/gifs
Provides a json array of images and their details

example:

[
  { file => "example.com/i/filename1", tags => "comma separated list of tags", caption => "caption of image1" },
  { file => "example.com/i/filename2", tags => "comma separated list of tags", caption => "caption of image2" }
]

###example.com/i/filename
Returns the image for filename


###example.com/thumbnail/filename
Returns the thumbnail for filename


###example.com/gifs?reply=category
Returns a list of images and their details (see above) in a given category


###example.com/gifs?tag-operator=and&tag=tags
Returns a list of images and their details (see above) that have each tag provided (comma separated)


###example.com/gifs?reply=category&tag-operator=and&tag=tags
Returns a list of images and their details (see above) that are in a specific category and have each tag provided (comma separated)


Granted, you could set it up so /replies, /tags return a single item, and thus the querystring parts become moot. So the only thing you’d have to do is ensure the /gifs endpoint returns all of the GIFs you want to support.

3 Likes

IN :arrow_down:

4 Likes

Awesome! Thank you so much!

I would also appreciate the ability to rename custom emojis. (Right now, they’d need to be re-uploaded to be renamed)

Just another note — for context, I was renaming some custom emojis because I didn’t realise they had the same names as default emojis and they were overriding them. (E.g. :bear:) So I wanted to add a prefix for all the custom emoji names. I re-uploaded them to change the name to include the prefixes.

For the emojis whose previous names are not the same as any default emojis, all instances where people have used the emoji now just have the :emoji_name:.

It would be helpful if the feature of renaming emojis also updated the names of wherever the emoji has previously been used.

Apologies for bumping an old thread. Couple of things I’ve noticed while playing around with uploading custom emoji recently:

The ‘drag and drop’ functionality seems broken (Ubuntu, Brave Browser) - it opens the image in a new tab rather than uploading. This seems to be the same for both SVG and PNG. Last time I used this functionality a few years ago (same OS, same browser) it worked correctly.

Also, the file browser that is created when you click the Choose Files button is ‘customised’ presumably so it only shows suitable file types. By default it will only show PNGs, but custom emoji also work with SVG and JPG icons too. Seems like a fairly small fix but I couldn’t work out where in the Discourse codebase that file browser customisation is made.

2 Likes