必须设"enable_ime": true(st4 build 4126+才有效),否则sublime不向windows上报光标坐标、焦点和dpi信息,导致中文输入法候选框偏移、回车无响应;还需禁用hardware_acceleration、启用高dpi兼容模式、安装魔改版imesupport插件并关闭搜狗高级文字服务,且每次修改后必须彻底退出subl.exe进程。

Sublime Text 4(build 4126+)必须设 enable_ime: true
不加这行,Windows 下中文输入法根本无法定位光标——候选框会飞到屏幕角落、回车没反应、按空格直接插入空格而非确认上屏。这不是插件问题,是 Sublime 自身没向系统上报焦点和坐标信息。实操时直接打开 Preferences → Settings,在右侧用户设置 JSON 中添加:
{
"enable_ime": true
}
注意:该字段值必须是布尔 true(不是字符串),且若后面还有其他配置项,这一行末尾要加英文逗号。
禁用硬件加速 + 高 DPI 兼容模式必须同时启用
只关 hardware_acceleration 或只设高 DPI 模式,都会导致输入框偏移。GPU 渲染放大坐标,而输入法仍按原始像素计算位置,结果就是候选框悬在代码上方 50px 外。实操要点:
- 在用户设置中加入:
"hardware_acceleration": "none"(注意是字符串"none",不是false) - 右键 Sublime 快捷方式 → 属性 → 兼容性 → 更改高 DPI 设置 → 勾选“替代高 DPI 缩放行为”,下拉选“应用程序”
- 删掉过时配置如
"gpu_window_buffer": true,它在 ST4 中已废弃,反而干扰渲染
别装 Package Control 里的 IMESupport,要魔改版
Package Control 上的原版 IMESupport 是 ST3 时代写的,对 ST4 + Win10/11 + 高分屏完全失效:没 DPI 补偿、不支持多屏光标跟踪、还可能和 enable_ime 新机制冲突。正确做法:
- 卸载已通过 Package Control 安装的旧版
IMESupport - 从 GitHub 下载社区魔改分支(如
zcodes/IMESupport),解压后重命名为IMESupport - 按
Ctrl+Shift+P→ 输入Preferences: Browse Packages→ 回车,把整个文件夹拖进打开的目录(路径应为Packages/IMESupport/ime_support.py存在) - 彻底退出 Sublime(任务管理器杀掉所有
subl.exe),再重启
搜狗输入法需关闭“高级文字服务”
Win10/11 默认开启的“高级文字服务”(Advanced Text Service)会劫持 IMM32 接口,绕过 Sublime 的光标上报逻辑,导致中文输入卡死或乱码。必须手动关闭:
- 右键搜狗输入法状态栏图标 → 设置属性 → 高级 → 取消勾选“启用高级文字服务”
- 重启搜狗(右键图标 → 退出,再点击托盘图标重新启动)
- 若用微软拼音,无需额外操作;但若用 QQ 输入法,同样需在设置中关闭类似选项
所有配置生效的前提是:每次修改设置后都必须彻底退出 subl.exe 进程,仅关闭窗口或 Reload Settings 不起作用。这点最容易被忽略,也是多数人反复折腾却失败的根源。











