It looks like Redactor has a plugin called “Clips” that allows you to:
Create a dropdown of frequently used "snippets" of code, text, icons,
emoji, you name it.
Pixel and Tonic made it into a plugin for Craft too.
I haven’t tried either but it looks like it should do the trick. I just tried the Craft plugin and it worked out pretty good. It doesn't have a preview of the emoji like Slack’s emoji menu though.
The plugin has settings where you can define the clips and the following HTML with each clip. Pretty straightforward.
After installing it I edited one of the .json config files in craft/config/redactor/
directory by adding
"plugins": ["clips"]
It then gives you a button on the tool bar called Clips. Make sure your Rich Text field is set to use the config that you added this plugin to.
Clicking that button gives you the following list. Clicking on a clip will insert the corresponding HTML
Not as polished as Slack’s emoji menu. Might be a way to edit the plugin to get it to do that though.