Emoji shortcodes

Type a colon-wrapped name like :rocket: in any text you write and it is replaced with the matching
emoji 🚀 when the content is shown. This is the same :name: convention used by GitHub and Discord, so
shortcodes you already know work here too.

How to use it

Write the shortcode inline with your text:

  • :smile: becomes 😄
  • :rocket: becomes 🚀
  • :tada: becomes 🎉
  • :fire: becomes 🔥
  • :+1: becomes 👍 and :-1: becomes 👎
  • :smiling_imp: becomes 😈 and :imp: becomes 👿

A shortcode that is not a real name is left exactly as you typed it, so :not_an_emoji: stays as plain
text. Names are case-insensitive.

Where it works

Shortcodes are expanded everywhere your prose is rendered:

  • Posts, comments, and post and comment titles
  • Project and gist titles and descriptions
  • News articles
  • Direct messages
  • Live content as it appears (new comments, chat replies, message bubbles)

Both the server-rendered pages and the live, in-browser updates use the same shortcode list, so what
you see while typing matches what everyone else sees after the page reloads.

The full set

The list is the complete standard emoji set, the same one GitHub and Discord draw from: several thousand
names covering faces, hands, hearts, objects, food, flags, and symbols. If a name exists in that
standard set, it works here.

If you prefer to pick from a visual grid instead of remembering names, use the emoji picker button in
the composer; it inserts the actual emoji directly.

Code stays untouched

Shortcodes inside code spans and fenced code blocks are never expanded, so technical text such as
a:rocket:b written as code keeps its colons. This keeps snippets and configuration examples exact.