环境
现象
口述插入完成后,经常要立刻打字改 ASR 错字,但输入法状态没有回到口述前:
- 插完不能马上用中文改错,敲下去是英文/直出字母。
- 再按一下切换键(小狼毫默认 Shift 切中英),任务栏/状态却跳到「英文输入法」。
- 再按一下才回到中文输入法,这时才能正常改字。
- 不是每次都发生,所以更烦:成功时无感,失败时改一个错字要先跟输入法搏斗。
这和 #1032 的「插入后方向键卡」经常叠在一起,但这里明确是 中/英输入法状态没还原,不是单纯卡顿。
本机日志
每次插入都会激活 OpenLess TSF,再 RestoreSavedProfile 回小狼毫:
restore decision=RestoreSavedProfile
saved_profile=... clsid={6573078D-...} profile={CE7B668C-...} # 小狼毫
openless_was_activated=true activation_failed=false
active_profile=... clsid={6B9F3F4F-...} profile={9B5F5E04-...} # 仍是 OpenLess IME
restore succeeded (attempt 0)
restore verification: OpenLess is no longer the active profile (attempt 0)
多数时候 verification 说已经离开 OpenLess IME,但用户侧中/英状态仍是错的。说明当前只检查「profile GUID 不是 OpenLess」,没有恢复 Rime 的中文/ASCII 模式,也没有恢复 IME 开/关、转换模式。
间歇失败有硬证据:
restore verification: OpenLess is still the active profile (attempt 0) — 至少 15+ 次
session began while OpenLess IME was already the active profile — previous session likely failed to restore — 52 次
即上一次没还干净,下一次又在 OpenLess IME 上开录。OpenLess IME 本身是直出拉丁字符的 TSF,体感就是「变成英文输入法」。小狼毫再用 Shift 切一次,会再叠一层中英状态,所以要按两下才回到能打中文。
复现(间歇)
- 系统默认小狼毫,中文模式。
- 在 Cursor / ChatGPT 输入框 RightAlt 口述,等文本插入。
- 立刻打中文改错字。
- 偶发:字母直出 / 无法上屏中文;按一次 Shift 变成英文输入法,再按一次才回中文。
请求
- 插入结束后必须把 输入法 profile + 开/关 + 中英/转换模式 全部还原到会话开始时,而不是只切回 Weasel GUID。
- 对小狼毫:不要把 Rime 留在 ASCII/英文模式;不要把 OpenLess IME 留在前台。
- restore 失败要重试到 verification 通过;不要在 OpenLess IME 仍 active 时开始下一轮。
- 日志里同时打出 restore 前后的 profile、conversion mode、IME open,方便对上「偶发」。
期望
环境
windowsInsertionMode=tsf,windowsShowOpenlessInKeyboardList=true,streamingInsert=truelang=0x0804clsid={6573078D-A793-4CD9-A6E6-0FFB01F35262}profile={CE7B668C-8260-4496-AEE0-5305D3FB8E0E}clsid={6B9F3F4F-5EE7-42D6-9C61-9F80B03A5D7D}profile={9B5F5E04-23F6-47DA-9A26-D221F6C3F02E}zh-Hans-CN+ 小狼毫(没有单独的英文键盘条目)现象
口述插入完成后,经常要立刻打字改 ASR 错字,但输入法状态没有回到口述前:
这和 #1032 的「插入后方向键卡」经常叠在一起,但这里明确是 中/英输入法状态没还原,不是单纯卡顿。
本机日志
每次插入都会激活 OpenLess TSF,再
RestoreSavedProfile回小狼毫:多数时候 verification 说已经离开 OpenLess IME,但用户侧中/英状态仍是错的。说明当前只检查「profile GUID 不是 OpenLess」,没有恢复 Rime 的中文/ASCII 模式,也没有恢复 IME 开/关、转换模式。
间歇失败有硬证据:
restore verification: OpenLess is still the active profile (attempt 0)— 至少 15+ 次session began while OpenLess IME was already the active profile — previous session likely failed to restore— 52 次即上一次没还干净,下一次又在 OpenLess IME 上开录。OpenLess IME 本身是直出拉丁字符的 TSF,体感就是「变成英文输入法」。小狼毫再用 Shift 切一次,会再叠一层中英状态,所以要按两下才回到能打中文。
复现(间歇)
请求
期望
OpenLess is still the active profile和previous session likely failed to restore不再成对出现