Sublime怎么设自存 Sublime怎么开启失去焦点保存【省心】

8次阅读

save_on_focus_lost是sublime text唯一稳定原生自动保存方案,仅在窗口失焦时触发;save_on_modified已彻底失效,autosave插件支持空闲自动保存,二者不可混用。

Sublime怎么设自存 Sublime怎么开启失去焦点保存【省心】

直接改设置就能用:save_on_focus_lost 是唯一稳定原生方案

sublime text 没有「编辑即存」或「定时自动保存」的原生功能,save_on_focus_lost 是官方唯一支持、无需插件、开箱即用的自动保存机制。它只在你点击其他窗口(比如浏览器、终端、文件管理器)时触发保存,不干扰编辑节奏,也不刷磁盘。

  • 打开 Preferences → Settings,确保你在编辑右侧「User Settings」
  • 在花括号 {} 内添加一行:"save_on_focus_lost": true
  • 保存文件(Ctrl+S),立即生效,不用重启
  • 测试:改一行文字 → 点击桌面 → 回到 Sublime → 查看文件是否已落盘(可右键用系统查看器确认修改时间)

别碰 save_on_modified:它根本不会生效

网上有些旧教程说加 "save_on_modified": true 就能实现“改完就存”,这是错的。Sublime 自 4100 版本起已彻底忽略该配置项,既不报错,也不执行——日志里查不到痕迹,行为完全静默失效。

  • 它不是被“弃用”,而是从未被官方实现过
  • 强行写入会导致 json 格式错误(比如漏逗号),反而让整个用户设置失效
  • 如果你同时启用了 LSP 插件(如 LSP-pyright、LSP-typescript),它们内部可能有独立的 auto-save 逻辑,但和 Sublime 设置无关;若诊断延迟,应在 LSP 插件自己的设置里关掉:"auto_save": false

需要「停顿就存」?必须装插件:AutoSave 是当前最可靠选择

写笔记、调试配置、或担心断电丢内容?仅靠失焦保存不够,得靠插件监听「空闲状态」。目前 AutoSave 插件维护活跃、无内存泄漏、兼容 ST4,是唯一推荐方案。

  • 先确认已装 Package Control(没装就按 Ctrl+Shift+P → 输入 Install Package Control
  • Ctrl+Shift+P → 输入 Package Control: Install Package → 搜 AutoSave 并安装
  • 进入 Preferences → Package Settings → AutoSave → Settings,在右侧填:
  • {   "auto_save_on_idle": true,   "auto_save_delay_milliseconds": 1500 }
  • auto_save_delay_milliseconds 建议 ≥1000;设成 100 或 0 不生效,设太小(如 300)易与 LSP 或语法检查冲突,造成高频写盘

两个自动保存机制别混用:会重复保存甚至卡顿

有人图省事,既开了原生 save_on_focus_lost,又在 AutoSave 插件里启用 auto_save_on_focus_lost。结果是:切出窗口瞬间触发两次保存,小文件还好,大文件(比如 >5MB 的日志或数据文件)可能卡住 ui 或产生临时锁。

  • 二者目标一致(失焦保存),但底层事件不同:原生走窗口级焦点事件,插件走视图级 deactivate 事件
  • 如果用了 AutoSave,请务必关掉原生设置 —— 把用户设置里的 "save_on_focus_lost": true 这行删掉
  • 插件配置中也别同时开 auto_save_on_idleauto_save_on_focus_lost,选一个即可;日常推荐前者,更可控

Sublime 的自动保存本质是「防丢稿」,不是「替代 Ctrl+S」。真正要注意的,是别把「以为设置了就万事大吉」当真——尤其多人协作改同一份配置文件时,失焦保存可能在你没意识到时就把未验证的改动推了出去。

text=ZqhQzanResources