开启 save_on_focus_lost 需三步:Ctrl+, 打开用户设置,在 {} 中添加 "save_on_focus_lost": true(注意逗号格式),保存即生效;它在窗口失焦时保存所有已修改文件,比 AutoSave 更轻量可靠。

save_on_focus_lost 是 Sublime Text 原生支持的最轻量、最可靠的自动保存方式——切换窗口时自动保存当前所有已修改文件,无需插件、不占资源、改完就走。
怎么开启 save_on_focus_lost?三步搞定
这不是隐藏功能,而是 Sublime 内置的 JSON 配置项,开箱即用:
- 按
Ctrl+,(逗号)或点击菜单 Preferences → Settings,打开设置面板 - 右侧是用户设置(User Settings),确保你在编辑它(左侧默认设置只读)
- 在花括号
{}内添加一行:"save_on_focus_lost": true
,注意逗号位置:如果这是最后一项,不能加逗号;前面已有其他配置,需补上逗号分隔 - 保存文件(
Ctrl+S),立即生效,不用重启
测试方法:打开一个未保存的 .txt 文件,输入文字,然后点一下浏览器或终端窗口——回到 Sublime 查看标签页,星号 * 消失,说明已保存。
save_on_focus_lost 和插件 AutoSave 有什么区别?
很多人装了 AutoSave 插件却发现行为“不对劲”,其实是混淆了触发逻辑:
-
save_on_focus_lost:只在 Sublime 窗口整体失去焦点时触发(比如你 Alt+Tab 切到 Chrome),且会保存所有已修改的标签页 -
AutoSave插件:可配置多种模式,比如"auto_save_on_idle": true(停顿 N 毫秒后保存)、"auto_save_on_interval": 60(每 60 秒保存一次),但默认不开启任何模式,必须手动配 - 冲突风险:如果同时启用
save_on_focus_lost和AutoSave的auto_save_on_focus_lost,可能重复保存,尤其对大文件或网络挂载盘会有卡顿感
建议:日常开发优先用原生 save_on_focus_lost;只有需要「编辑中无感保存」(如写 Markdown 预览时怕断电丢内容)才额外装插件并仅启用 auto_save_delay_milliseconds。
常见失效原因和排查点
设了 "save_on_focus_lost": true 却没反应?大概率是这几个细节出错:
- 误改了左侧的 Default Settings(只读),实际应改右侧 User Settings
- JSON 格式错误:多写了逗号、少引号、用了中文标点(如“:”代替 “:”),Sublime 不报错但会静默忽略整行
- 文件从未被保存过(即还叫
untitled),Sublime 默认不会自动创建文件保存——此时会弹出保存对话框,save_on_focus_lost不生效 - 开启了
"hot_exit": false且关闭前没手动保存,下次打开时恢复的是旧状态,容易误判为“没保存”
快速验证:新建文件 → 输入文字 → Ctrl+S 保存为 test.txt → 修改内容 → 切出窗口 → 回来看标签页是否已去星号。
进阶搭配:关机/退出前也自动保存
如果还想在关闭 Sublime 或关机前兜底,可以加一项:
"save_on_close": true
但它有前提:save_on_close 只对已保存过的文件生效;新文件仍会弹窗。配合 save_on_focus_lost 使用,能覆盖绝大多数意外中断场景。
真正容易被忽略的是:这个组合不解决「正在输入时断电」问题——它只响应「窗口失焦」和「程序关闭」两个明确事件。如果你真需要毫秒级防丢,得靠操作系统级备份或外部工具,Sublime 本身不是文档编辑器,别强求它做 IDE 才该做的事。










