Sublime启动窗口位置不固定需启用remember_window_position并确保正常退出;若仍失效,检查Auto Save Session.sublime_session是否更新及是否存在hidpi、分辨率变更或窗口管理工具干扰。

Sublime 启动时窗口位置不固定?检查 remember_window_position 是否启用
Sublime Text 默认不会记住窗口在屏幕上的精确坐标(比如左上角 X=120, Y=80),除非你显式开启该行为。关键配置项是 remember_window_position,它控制是否保存并恢复窗口大小和位置。
打开 Preferences → Settings,在右侧用户设置中确认存在:
{
"remember_window_position": true,
"remember_open_files": true,
"hot_exit": false
}
注意:remember_window_position 和 remember_open_files 是两个独立开关。只开后者,能恢复文件和标签页,但窗口会回到默认居中位置;两者都开,才可能还原上次的偏移量。
- 该设置仅对「正常退出」生效:必须用
Ctrl+Q(Windows/Linux)或Cmd+Q(macOS),而非仅关闭窗口 - 多显示器环境下,如果上次关闭时窗口在已断开的副屏上,重启后通常会自动“拉回”主屏可视区域,不会卡在不可见坐标
- 某些桌面环境(如 GNOME Wayland 或 macOS 的全屏模式)会拦截窗口位置控制,此时 Sublime 的记录可能被系统覆盖
为什么改了设置还是不记位置?看 Auto Save Session.sublime_session 文件是否写入成功
Sublime 把窗口坐标、大小、分屏状态等都打包存进会话文件 Auto Save Session.sublime_session。如果这个文件没更新,再正确的设置也无效。
验证方法:正常退出 Sublime 后,立刻检查该文件修改时间是否为当前时刻:
- Windows:
C:\Users\你的用户名\AppData\Roaming\Sublime Text 3\Local\Auto Save Session.sublime_session - macOS:
~/Library/Application Support/Sublime Text 3/Local/Auto Save Session.sublime_session - Linux:
~/.config/sublime-text-3/Local/Auto Save Session.sublime_session
如果文件时间没变,或大小长期为 0 字节,说明 Sublime 没成功写入——常见原因有:
- 目录权限不足(尤其 Linux/macOS 上用
sudo启动过 Sublime) - 杀进程或崩溃退出,跳过了会话保存流程
- 第三方插件(如
ProjectManager)接管了会话逻辑,屏蔽了原生行为
macOS 上窗口总弹到 Dock 附近?别用 Cmd+W 关闭窗口
macOS 对「应用退出」和「窗口关闭」区分严格。只按 Cmd+W 关闭所有窗口,Sublime 进程仍在后台运行,Auto Save Session.sublime_session 不会刷新,下次启动就是全新窗口。
必须执行真正退出操作:
- 菜单栏选
Sublime Text → Quit Sublime Text - 或按
Cmd+Q - 或右键 Dock 图标 →
Quit
否则即使 remember_window_position 为 true,也只会恢复一个空窗口,且位置随机。
真实场景中窗口坐标恢复失败的三个隐藏因素
即便设置正确、文件写入正常,窗口仍可能“跳位”,原因往往不在 Sublime 本身:
-
hidpi缩放切换:从 200% 缩放外接屏切回 100% 笔记本屏,Sublime 读取旧坐标后会做像素换算,导致位置偏移(例如显示在屏幕外) - 分辨率变更:会议投屏后断开,系统分辨率重置,原坐标超出新边界,窗口被系统强制重定位
- 窗口管理工具干扰:如 Rectangle(macOS)、PowerToys(Windows)等会劫持窗口位置 API,覆盖 Sublime 的恢复逻辑
这些情况无法靠配置修复,只能接受“近似恢复”——Sublime 会把窗口锚定在屏幕左上角可显示区域内,而不是死守原始坐标。











