Sublime多显示器窗口位置必须手动计算绝对坐标,x/y以主显示器左上角为原点,副屏位置需按分辨率偏移换算;必须用--new-instance启动才生效,且每个窗口需单独配置Window.sublime-settings。

Sublime 多显示器窗口位置必须手动算绝对坐标
Sublime 不识别操作系统多显示器布局,Window.sublime-settings 里的 x 和 y 永远以主显示器(系统设置中标号为「1」的屏)左上角为原点。副屏上的窗口位置不是“相对副屏左上角”,而是要换算成主屏坐标系下的像素值。
比如主屏宽 2560px,副屏紧贴右侧、宽 1920px,你想让窗口左上角落在副屏正中央(即副屏 x=960),那实际填的 x 是:2560 + 960 - (窗口宽度 / 2)。y 同理,按主屏顶部往下算。
- 必须用
--new-instance启动参数才能让配置生效,否则多个实例会共用同一份Window.sublime-settings - 每个窗口需单独配置,不存在“继承”或“自动适配”
- 改完配置后要重启 Sublime 才能生效,热重载不支持窗口位置刷新
分屏 ≠ 多窗口,别开独立窗口做并排编辑
Sublime 的“左右并排”本质是单窗口内划分 Groups,不是开两个独立窗口。开多个窗口会导致项目状态丢失、标签页不联动、快捷键上下文断裂——尤其是 Ctrl+P、Ctrl+Tab、Ctrl+S 都只作用于当前窗口,无法跨窗协同。
- 真正高效的并排是用
Ctrl+Alt+2(Win/Linux)或Cmd+Alt+2(macOS)触发Columns: 2布局 - 想把文件拖进右栏,必须先按
Ctrl+2激活右栏(状态栏显示Group: 1),再拖到顶部边缘等蓝色实线插入线出现才松手 - 拖成功后,原左栏的同名标签页不会自动关闭,得手动关掉,否则两个视图编辑的是不同
buffer,改一个不更新另一个
同一文件双栏联动编辑,必须用 New View into File
直接拖文件标签、双击打开、甚至 Clone File,都只是复制 buffer 副本,滚动、光标、折叠、编辑全部不联动。只有 New View into File 创建的视图才共享底层 buffer。
- 先确保文件已在左栏打开,右键该标签 →
New View into File - 新标签页默认在当前 Group,按
Ctrl+2切到右栏,再把新标签页拖进去 - 此时两边编辑实时同步,
Ctrl+G跳行、Ctrl+Shift+K折叠、甚至光标位置都各自独立但内容一致 -
Sync Scroll只是滚动条位置同步,不是真联动,别指望它解决定义/调用对照问题
快捷键失效时,优先排查输入法和插件劫持
Ctrl+Alt+2 没反应,90% 不是 Sublime 崩了,而是被拦截了。Sublime 的分屏命令 set_layout 是原生实现,不依赖插件——但装了 Origami 或 SideBarEnhancements 后,这些插件会重绑定快捷键,导致原生命令静默失败。
- 切英文输入法再试一次(中文输入法下
Ctrl+Alt+2常被转成字符输入) - 临时禁用插件:
Preferences → Package Control → Disable Package,重点关Origami - 验证方式:打开命令面板
Ctrl+Shift+P,输入Set Layout,选Columns: 2—— 如果这时能分屏,就确认是快捷键冲突 - 别点
View → Groups菜单,那是旧版弃用项,点了没反应
真正的麻烦不在设置本身,而在每次切换显示器排列或调整分辨率后,所有手动算出的 x/y 值都要重新算一遍——Sublime 从不读取系统 DPI 或缩放比例,也不缓存屏幕拓扑,它只认你填进去的那组数字。

















