From 55926734f3a6d5ed9697066eafbe21817de267d0 Mon Sep 17 00:00:00 2001 From: xxnuo <54252779+xxnuo@users.noreply.github.com> Date: Thu, 1 Jan 2026 17:18:48 +0800 Subject: [PATCH] fix: emoji placeholder --- src/core/engine.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/core/engine.ts b/src/core/engine.ts index 67b3200..a0ce1d8 100644 --- a/src/core/engine.ts +++ b/src/core/engine.ts @@ -296,7 +296,7 @@ export class TranslationEngine { const emojiRegex = /(\p{RI}\p{RI}|\p{Emoji_Presentation}|\p{Extended_Pictographic})/gu; const replacements: Array<{ original: string; placeholder: string }> = []; const cleanText = text.replace(emojiRegex, (match) => { - const placeholder = ``; + const placeholder = `[EE${replacements.length}]`; replacements.push({ original: match, placeholder }); return placeholder; }); @@ -305,8 +305,10 @@ export class TranslationEngine { private _restoreEmojis(text: string, replacements: Array<{ original: string; placeholder: string }>): string { let result = text; - for (const { original, placeholder } of replacements) { - result = result.split(placeholder).join(original); + for (let i = 0; i < replacements.length; i++) { + const { original } = replacements[i]; + const pattern = new RegExp(`\\[EE${i}\\]`, 'gi'); + result = result.replace(pattern, original); } return result; }