From e49b3e1558c8805f71c37babeb8177f58d8149d2 Mon Sep 17 00:00:00 2001 From: amzxyz Date: Wed, 21 Jan 2026 16:56:10 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=A6=96=E9=80=89=E8=8B=B1=E6=96=87?= =?UTF-8?q?=E4=B8=8D=E5=9B=9E=E9=80=80=E5=A3=B0=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lua/super_processor.lua | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lua/super_processor.lua b/lua/super_processor.lua index e30d613..4037e85 100644 --- a/lua/super_processor.lua +++ b/lua/super_processor.lua @@ -563,8 +563,16 @@ local function handle_number_logic(key, env, ctx) if wanxiang.is_function_mode_active then is_func_mode = wanxiang.is_function_mode_active(ctx) end + local is_first_cand_has_eng = false + local cand = ctx:get_selected_candidate() + if cand then + if cand.text:match("[a-zA-Z]") then + is_first_cand_has_eng = true + end + end + -- 如果是反查模式 OR 功能模式,状态设为 idle (不回退) - if input:find(env.lookup_key, 1, true) or is_func_mode then + if input:find(env.lookup_key, 1, true) or is_func_mode or is_first_cand_has_eng then env.tone_state = "idle" -- 这里不 return,因为数字键可能还有“正则拦截”或“候选选词”的任务 else