Skip to content
| Marketplace
Sign in
Visual Studio Code>Formatters>EmojiCodecNew to Visual Studio Code? Get it now.
EmojiCodec

EmojiCodec

Kyle Reddoch

|
4 installs
| (0) | Free
Bidirectional emoji encoding and conversion for VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

EmojiCodec

Bidirectional emoji encoding and conversion for VS Code.

EmojiCodec logo

All conversion happens on-device. The extension makes no network requests and is available for installation through the Visual Studio Marketplace.

Supported formats

Format Example
Emoji 😀
Hexadecimal 0x1F600
Unicode escapes \u{1F600}
HTML decimal entities 😀
HTML hexadecimal entities 😀
Markdown shortcodes :grinning_face:

Compound emoji are represented as a sequence of code points. Markdown conversions use readable Unicode slugs where available and a lossless :unicode_...: shortcode for variants or sequences without a unique slug.

Usage

  1. Select text containing emoji or a supported encoded form.
  2. Open the Command Palette and run EmojiCodec: Convert Selection...
  3. Choose the output format.

You can also run any format-specific command directly. Multiple selections are converted in one edit.

Bidirectional conversion

Every command first safely decodes recognized emoji representations and then converts the resulting emoji to the chosen target. This supports direct conversions such as:

  • :rocket: → 🚀
  • \u{1F469}\u{1F3FD}\u{200D}\u{1F4BB} → 👩🏽‍💻
  • 🇺🇸 → 0x1F1FA + 0x1F1F8

Only complete, valid emoji sequences are decoded. Ordinary values such as 0x41, A, and \u{41} are left unchanged.

Emoji coverage

The converter uses emoji-regex to recognize Unicode RGI emoji sequences and unicode-emoji-json for readable Markdown names. This covers flags, keycaps, variation selectors, skin tones, and zero-width-joiner sequences supported by the bundled Unicode data.

Security

  • No network requests, telemetry, webviews, shell commands, or dynamic code execution.
  • Input is treated only as text and validated before code points are decoded.
  • Invalid Unicode scalar values and non-emoji encoded values are preserved unchanged.
  • Conversion is limited to explicit editor selections.
  • Selection length is bounded by the configurable emojiCodec.maximumSelectionLength.

Development

npm install
npm run check
npm test
npm run build

Press F5 in VS Code to launch an Extension Development Host.

Publishing

See PUBLISHING.md for the one-time publisher setup, manual upload process, and automated release workflow.

npm run verify
npm run package
npm run publish:marketplace
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft