{
  "schemaVersion": "1.0",
  "entity": "BlogPosting",
  "title": "Beyond GFM: Highlight, Subscript, Superscript & Emoji in Markdown",
  "description": "Learn the non-standard highlight, subscript, superscript, and emoji shortcode syntax some Markdown renderers support, and why they need a plugin to work.",
  "author": "vd",
  "datePublished": "2026-07-15T00:00:00.000Z",
  "dateModified": "2026-07-15T00:00:00.000Z",
  "tags": [
    "Markdown",
    "Tutorial"
  ],
  "aeoDirectAnswers": [
    {
      "question": "How Do I Highlight Text in Markdown?",
      "answer": "Wrap text in double equals signs (==) to mark it as highlighted, similar to how a highlighter pen would mark printed text. On a renderer that supports this extension, it displays with a highlight background: This syntax comes from various Markdown flavors (like the one used by Obsidian and some remark plugins), not from CommonMark or GFM. Without plugin support, ==text== renders as literal equals signs."
    },
    {
      "question": "How Do I Write Subscript and Superscript?",
      "answer": "Wrap text in single tildes (~) for subscript, or single carets (^) for superscript. On a supporting renderer, this displays with the wrapped text shifted below or above the baseline: A single tilde (~sub~) is subscript, while GFM strikethrough uses double tildes (~~text~~). Mixing these up is an easy mistake since the markers look similar at a glance."
    },
    {
      "question": "How Do I Write Emoji Shortcodes?",
      "answer": "An emoji shortcode wraps a name in colons, like :tada: or :rocket:. Platforms that support shortcodes convert them into the matching emoji character. On GitHub and similar platforms, this renders as: Great work team! 🎉 🚀"
    },
    {
      "question": "Why Do These Extensions Need Plugins?",
      "answer": "CommonMark and GFM both define fixed, versioned specifications. Anything outside those specs, including all four features in this article, is implemented independently by whichever tool renders your Markdown: a static site generator's remark/rehype plugin chain, an editor like Obsidian, or a platform like GitHub. That means the exact same source file can render differently depending on where it's viewed. ---"
    },
    {
      "question": "Will these render correctly on GitHub?",
      "answer": "Partially. GitHub supports emoji shortcodes in issues, pull requests, and README files, but does not support the highlight, subscript, or superscript syntax shown here."
    },
    {
      "question": "What happens if my renderer doesn't support one of these?",
      "answer": "The raw syntax characters print literally. ==text== shows as ==text==, ~sub~ shows as ~sub~, and so on, since there's no fallback behavior defined for unsupported extensions."
    },
    {
      "question": "Is there a standard emoji list I should stick to?",
      "answer": "Not universally. Different platforms maintain their own shortcode lists (GitHub's set differs slightly from Slack's or Discord's), so a shortcode that works on one platform may not exist on another. ---"
    },
    {
      "question": "What to Read Next",
      "answer": "Markdown Emphasis Guide: Bold, Italic, and Strikethrough — Review GFM's official strikethrough syntax alongside this article's non-standard extensions. Using Raw HTML Inside Markdown — See the fallback option (`, , `) for when your renderer doesn't support these shortcuts."
    }
  ],
  "semanticFactualBody": "This series has covered CommonMark's core syntax and GitHub-Flavored Markdown's most common extensions, like tables and task lists. Beyond those two standards, a handful of other syntax extensions have become common enough to expect on many platforms, even though none of them are officially part of GFM. This guide covers highlight, subscript, superscript, and emoji shortcode syntax, and is upfront about the fact that all four depend on plugin support rather than being guaranteed to work everywhere. --- How Do I Highlight Text in Markdown? Wrap text in double equals signs (==) to mark it as highlighted, similar to how a highlighter pen would mark printed text. On a renderer that supports this extension, it displays with a highlight background: This syntax comes from various Markdown flavors (like the one used by Obsidian and some remark plugins), not from CommonMark or GFM. Without plugin support, ==text== renders as literal equals signs. --- How Do I Write Subscript and Superscript? Wrap text in single tildes (~) for subscript, or single carets (^) for superscript. On a supporting renderer, this displays with the wrapped text shifted below or above the baseline: A single tilde (~sub~) is subscript, while GFM strikethrough uses double tildes (~~text~~). Mixing these up is an easy mistake since the markers look similar at a glance. --- How Do I Write Emoji Shortcodes? An emoji shortcode wraps a name in colons, like :tada: or :rocket:. Platforms that support shortcodes convert t"
}