sublime text默认无“保存全部”快捷键,ctrl+shift+s(windows/linux)或cmd+shift+s(macos)原生绑定为“另存为”;需手动在用户键位文件中添加{"keys": ["ctrl+shift+s"], "command": "save_all"}才能启用;另可启用"save_on_focus_lost": true实现窗口失焦时自动保存所有已命名可写文件。

Sublime Text 默认没有 Ctrl+Shift+S 保存全部
按 Ctrl+Shift+S(Windows/Linux)或 Cmd+Shift+S(macOS)默认触发的是“另存为”,不是“保存全部”。这不是快捷键失效,而是 Sublime 原生就把它绑定给了 save_as 命令。你一按弹出另存为对话框,说明它完全正常——只是干的不是你想让它干的事。
手动绑定 save_all 命令才能真正一键保存全部
Sublime 的“保存全部”功能对应命令是 save_all,必须显式绑定到快捷键才生效:
- 打开
Preferences → Key Bindings - 在右侧用户键位文件(
Packages/User/Default (Windows).sublime-keymap等)中添加一行:
[{"keys": ["ctrl+shift+s"], "command": "save_all"}]
注意:keys 是字符串数组,command 值必须拼写准确、全小写、无空格;Windows 和 macOS 用户需分别使用对应系统名的键位文件;保存后无需重启,立即可用。
save_on_focus_lost 是最轻量的防丢方案
如果你真想“不按快捷键也能保存”,原生唯一可靠机制是 save_on_focus_lost:
- 按
Ctrl+,打开设置,确保编辑的是右侧Preferences → Settings – User - 在 JSON 花括号内添加:
"save_on_focus_lost": true - 保存该文件(
Ctrl+S),立刻生效
它只在你整个 Sublime 窗口失去焦点(比如切到终端、浏览器)时,保存所有已修改、可写、已命名的文件。不会保存只读文件、未命名标签页,也不会报错或覆盖——这是设计行为,不是缺陷。
别碰 auto_save 这类字段
在用户设置里写 "auto_save": true、"auto_save_interval": 60 或 "auto_save_delay_in_seconds": 1 全无效:
- 这些键名不在 Sublime 官方源码中,解析器会静默忽略
- 某些插件(如 AutoSave)反而会误判为“原生已启用”,从而禁用自身逻辑
- JSON 语法错误(比如少逗号、引号没闭合)会导致整个用户设置加载失败,连
save_on_focus_lost都不生效
想实现“停笔几秒自动存”,必须装 AutoSave 插件,并且配置入口只能是 Preferences → Package Settings → AutoSave → Settings – User,不能塞进通用 Settings 文件里。











