搜狗/qq拼音默认劫持ctrl+alt+m、ctrl+/等快捷键,导致sublime中markdown预览、注释等功能失效;验证方法为开启sublime.log_input(true)后无控制台输出即确认被拦截,须在输入法设置中清空对应快捷键并重启sublime。

搜狗/QQ拼音默认劫持 Ctrl+Alt+M、Ctrl+/ 等组合
这些快捷键在 Sublime 里本该触发 Markdown 预览、注释等命令,但搜狗、QQ 拼音默认把它们设为「切换输入法」或「中英文模式」的快捷方式——按键根本没进 Sublime,直接被输入法吞掉了。
验证方法:按 Ctrl+` 打开控制台,输入 sublime.log_input(True),再按 Ctrl+Alt+M。如果控制台**无任何输出**,就是输入法拦截了。
- Windows 用户:右键搜狗状态栏图标 → 设置属性 → 快捷键 → 找到「切换输入法」或「中英文切换」,清空或改用
Shift - QQ 拼音用户:设置 → 热键 → 输入法切换 → 取消勾选「使用快捷键切换输入法」
- 微软拼音更干净:系统自带,无默认冲突,可临时切过去测试
macOS 输入源设置里藏着全局快捷键
macOS 的「输入源」快捷键是系统级的,优先级高于 Sublime,Cmd+Space、Cmd+Shift+P、Cmd+. 都可能被它吃掉,哪怕你当前用的是英文输入法。
检查路径:「系统设置 → 键盘 → 快捷键 → 输入源」,重点看这三项:
- 「选择上一个输入法」:默认常为
Cmd+Space或Cmd+Shift+Space,建议禁用或改成Cmd+Alt+Space - 「选择下一个输入法」:同上,避免和 Sublime 的命令面板冲突
- 「在菜单栏中显示输入法菜单」:关掉它有时能减少拦截概率(尤其外接键盘场景)
别在 Key Bindings 里硬覆盖被拦截的键
如果你在 Preferences → Key Bindings – User 里写了 {"keys": ["ctrl+alt+m"], "command": "markdown_preview"},但依然没反应——大概率是白写。因为按键压根没传进来,Sublime 根本不执行绑定逻辑。
真正有效的做法只有两个方向:
- 先解决输入法拦截(上面两步),让按键能进编辑器
- 再确认绑定是否被插件覆盖:按
Ctrl+Shift+P输入Preferences: Key Bindings,左右对比 Default 和 User 文件,搜索ctrl+alt+m,看谁最后定义了它 - 注意 JSON 语法:必须用英文双引号,数组末尾不能多逗号,不支持
//注释
Linux 下 fcitx5 的高级绑定要手动清空
fcitx5 默认启用一堆全局热键,比如 Ctrl+Shift+B(切换输入法)、Ctrl+Space(中英文切换),它们会无差别劫持所有应用。
操作路径:
- 右键任务栏 fcitx5 图标 → 「配置」→ 「全局配置」→ 「触发器」
- 找到对应快捷键条目,点击右侧「清除」按钮(不是禁用,是清空键位)
- 执行
fcitx5-remote -r或重启 fcitx5 进程,使配置生效 - 别依赖 GUI 界面里的「启用/禁用」开关,它只控制功能开关,不释放快捷键
最易忽略的一点:输入法快捷键修改后,必须退出并重开 Sublime,而不是仅 reload 设置——因为输入法状态是进程级的,Sublime 启动时会读取当前输入法的注册热键表,缓存一次就固定了。











