必须设"enable_ime": true,否则所有操作无效;它是ST4 build 4126+启用Windows IMM32接口的硬性前提,需在用户设置中添加并彻底退出subl.exe进程后重启。

Sublime Text 4(build 4126+)必须设 "enable_ime": true,否则所有后续操作都无效——它不是可选项,而是 Windows IME 通信链路的开关。
为什么 enable_ime 是硬性前提
ST4 build 4126 起才真正接入 Windows IMM32 接口,但默认关闭。不开 enable_ime,编辑器不向系统上报光标坐标、焦点状态、DPI 缩放因子——搜狗或微软拼音根本不知道你在哪打字,候选框自然乱飞。
- 打开
Preferences → Settings,在右侧用户设置 JSON 中添加:"enable_ime": true - 该行末尾必须加英文逗号(若后面还有其他配置)
- 保存后必须彻底退出:右键托盘图标选 Exit,或用任务管理器杀掉所有
subl.exe进程;仅关闭窗口或 Reload Settings 完全无效
hardware_acceleration 和高 DPI 兼容模式必须同时启用
GPU 渲染(OpenGL)叠加系统 DPI 缩放(如 125%),会导致 Sublime 报告的坐标被放大,而输入法仍按原始像素定位,结果候选框偏移几十像素,甚至跳到副屏。
- 在用户设置中添加:
"hardware_acceleration": "none"(注意是字符串"none",不是false) - 右键 Sublime 快捷方式 → 属性 → 兼容性 → 更改高 DPI 设置 → 勾选“替代高 DPI 缩放行为”,下拉选“应用程序”
- 删除已废弃项如
"gpu_window_buffer": true,它在新版本中无作用,还可能干扰渲染
别装 Package Control 里的原版 IMESupport
Package Control 搜索到的 IMESupport 是 ST3 时代的旧版,对 ST4 + Win10/11 + 高分屏完全失效:没做 DPI 补偿,不支持多屏光标跟踪,装了反而可能和新机制冲突。
- 卸载通过 Package Control 安装的旧版
IMESupport - 从 GitHub 下载魔改分支(如 zcodes/IMESupport),解压后重命名文件夹为
IMESupport - 按
Ctrl+Shift+P→ 输入Preferences: Browse Packages→ 回车打开插件目录 → 将整个IMESupport文件夹拖入(路径应为Packages/IMESupport/ime_support.py等文件存在) - 重启 Sublime,插件自动生效,无需额外配置
搜狗输入法必须关闭“高级文字服务”
搜狗新版默认启用“高级文字服务”,会绕过 Windows IMM32 接口,直接 hook 文本框——这和 Sublime 的轻量输入流严重不兼容,典型表现为:切中文后失焦、按空格乱码、候选框卡死。
- 右键搜狗状态栏图标 → 设置属性 → 高级 标签页
- 取消勾选:
使用高级文字服务(推荐)和允许在非标准编辑框中输入 - 勾选:
兼容模式(适用于老旧程序) - 临时验证可用微软拼音:右键其图标 → 键盘选项 → 开启
使用以前版本的微软拼音输入法
最容易被忽略的是「彻底退出 subl.exe 进程」和「hardware_acceleration 与高 DPI 兼容模式缺一不可」——这两步漏掉任意一个,哪怕其他全对,候选框依然会偏移。不是配置没生效,而是底层坐标映射从源头就断了。

















