排查sublime快捷键失效须先执行sublime.log_input(true)确认按键是否进入编辑器,再依次检查显卡驱动热键、桌面环境冲突、输入法劫持;若safe-mode下恢复则为插件或配置问题,否则属系统层拦截。

Ctrl+`打开控制台后执行 sublime.log_input(True) 没输出?说明按键根本没进编辑器
这是所有排查的起点,跳过它直接改配置等于白忙活。Linux 下常见拦截源有三类:
- NVIDIA 或 Intel 显卡驱动的热键设置(比如 Intel Graphics Command Center 默认启用
Ctrl+Alt+F1切 TTY) - 桌面环境快捷键冲突:GNOME 设置 → 键盘 → 快捷键里搜
Ctrl+Shift+P、Ctrl+Alt+T等组合是否被终端或概览占用 - 输入法劫持:Fcitx5 / IBus 默认常占
Ctrl+Space或Ctrl+Shift切换,切到英文输入法再试
验证方式:在终端运行 subl --safe-mode,如果此时快捷键恢复,说明问题出在插件或用户配置;若仍无输出,问题一定在系统层。
左侧 Default 和右侧 User 都搜不到 ctrl+/,但注释功能就是不生效?查插件自带的 Default.sublime-keymap
Sublime 的加载顺序是:Default.sublime-keymap → 插件目录下的 Default (Linux).sublime-keymap → User.sublime-keymap。后加载者静默覆盖前者的绑定,且不报错。
在无 root/sudo 权限的环境(云容器、VPS、隔离主机)中安装并配置 OpenClaw 浏览器工具的 headless Chrome。适用场景:...
- 打开
Preferences → Browse Packages,进Vintage、Emmet、Origami这些高危插件目录,直接打开其Default (Linux).sublime-keymap - 全局搜索
"keys": ["ctrl+/"],只要有一处匹配,你的User里写再多也无效 - 禁用插件方法:按
Ctrl+Shift+P输入Package Control: Disable Package,逐个关,不用猜
User.sublime-keymap 写了 {"keys": ["ctrl+alt+f"], "command": "reindent"} 却没反应?JSON 格式错一点就全废
这个文件是纯 JSON 数组,不是配置文件,也不是 JS 对象。语法错一个字符,整份配置就静默失效,右下角红字一闪而过,极易忽略。
- 必须用英文双引号:
"keys"不是keys,"command"不是command - 数组结尾不能多逗号:
["ctrl+alt+f"],是错的,["ctrl+alt+f"]才对 - 不支持
//或/* */注释;要临时禁用某条,删整行,或改成"command": "not_a_real_command" - 命令名大小写和拼写必须精确:
toggle_comment不是toggle_comments,reindent不是re_indent
Esc 键关不了命令面板或搜索框?别碰 User.sublime-keymap
Esc 的行为是 Sublime 内核硬编码的,完全不走任何 .sublime-keymap 流程。你在 User 里加 {"keys": ["escape"], "command": "hide_panel"} 不仅无效,还会破坏原生逻辑——比如按 Esc 后面板卡住不隐藏。
如果 Esc 失效,先确认是否启用了 Vintage 插件:进入 Preferences → Package Settings → Vintage → Settings,把 "exit_insert_mode_on_escape": false 设为 false;或者直接运行 subl --safe-mode 验证。Esc 的问题从来不在键位文件里,而在插件或键盘固件层。










