Atom自动保存是失焦即存,非实时保存;需版本≥1.27且core.autosave启用,配置须为'core': 'autosave': true(两空格缩进),仅在切tab/应用/菜单等失焦时触发,不处理未命名、只读或权限受限文件。

Atom 的自动保存不是“改一个字符就存”,而是「失焦即存」——只要没切出编辑器,文件标题栏仍带 * 号,就还没写入磁盘。它不生成草稿、不保留历史、不处理未命名文件,只在你点击其他 tab、Alt+Tab 切应用、点菜单栏或状态栏时触发一次保存。
确认 Atom 版本和 autosave 开关是否真启用
低于 1.27 的 Atom 根本没有内置 core.autosave,设置页里压根不会出现 Autosave 开关。打开 Help → About 查版本,必须 ≥1.27。升级后重启,再按 Ctrl+,(Windows/Linux)或 Cmd+,(macOS)进设置,左侧选 Core,往下拉找 Autosave——它必须是亮起状态。如果灰色或看不到,大概率是残留了旧版 autosave 插件,要去 ~/.atom/packages/(macOS/Linux)或 %USERPROFILE%\.atom\packages\(Windows)里删掉整个 autosave 文件夹。
手动改 config.cson 的正确写法
图形界面开关可能被插件覆盖,直接改配置更稳。打开 Atom → Config → Open Config Folder,编辑 config.cson,在顶层对象里加这一行:
'core': 'autosave': true
注意:
- 必须用两个空格缩进,不能用 Tab
- 不能漏掉
'core':这一层 - 不能写成
autosave: true(漏层级)、{"core": {"autosave": true}}(CSON 不支持 JSON 语法)、'core': {'autosave': true}(单引号包键名非法) - 改完保存即可,无需重启,但生效与否仍以设置页
Core下的开关为准
为什么改了还是不保存?检查这三类触发失败场景
core.autosave 行为非常保守,不满足条件就静默跳过,不报错也不提示:
- 当前文件是
untitled(新建标签页后还没Ctrl+S),它直接跳过 - 文件路径是只读、FTP 挂载、或权限受限(比如 macOS 的 Full Disk Access 未授权 Atom)
- 你一直在当前 tab 打字,没点其他 tab、没切到终端/浏览器、没点菜单栏、没碰状态栏 —— 那就不会保存,
*号会一直挂着
关闭窗口前会强制触发一次保存,但这只是兜底动作,不能当日常依赖。
别把 build-on-save 和 core.autosave 搞混
core.autosave 只负责写文件,不触发任何构建任务。如果你开了它,但 Sass 没编译、JS 没转译,是因为缺了另外两样东西:
-
build-on-save:监听「保存事件」并启动构建流程 -
atom-build-sass或language-babel:实际执行编译逻辑
漏掉任意一个,都会出现「文件存了,但输出没更新」。另外注意:language-babel 要求右下角 language mode 显式设为 Babel ES6 JavaScript,否则 transpileOnSave: true 完全不响应。
真正容易被忽略的是:Atom 已于 2022 年底停止维护,所有基于它的“草稿”“快照”“历史记录”类功能(如 local-history)均已失效。现在能靠住的,只有 core.autosave 这个失焦即存的保守机制——它宁可不存,也不乱存。

















