From c101610c46bc14586ee1a3319edd3448ac2aac05 Mon Sep 17 00:00:00 2001 From: Hampus Date: Tue, 25 Aug 2026 13:42:51 +0200 Subject: [PATCH] fix(markdown): render an escaped emoji shortcode as its raw glyph (#2004) --- packages/markdown_parser/rust/src/inline.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/markdown_parser/rust/src/inline.rs b/packages/markdown_parser/rust/src/inline.rs index 9aefc8d68..4dee04fdf 100644 --- a/packages/markdown_parser/rust/src/inline.rs +++ b/packages/markdown_parser/rust/src/inline.rs @@ -106,6 +106,16 @@ fn parse_inline_with_context( position += 2; continue; } + if next == b':' + && let Some(result) = links::parse_emoji_shortcode(parser, &text[position + 1..]) + && let Node::Emoji { + kind: EmojiKind::Standard { raw, .. }, + } = &result.node + { + accumulated.extend_from_slice(raw.as_bytes()); + position += 1 + result.advance; + continue; + } if is_escapable_character(next) || is_ordered_list_marker_dot_escape(text, position) || is_word_dot_escape(text, position)