应使用原生 set_layout 而非 origami 实现分屏,因其在 sublime text 4.4+ 中更稳定、容错高、跨平台一致;origami 的 create_pane 因依赖旧 api 易失效,且动态重排不可预测。

别用 Origami 做基础分屏——它在 Sublime Text 4.4+ 中已不可靠,原生 set_layout 更稳、更可控,且不冲突。
Origami 的 create_pane 命令为什么经常失效
Sublime Text 自 Build 4123 起彻底重构布局系统,create_pane 仍依赖旧版 API,参数稍有偏差(比如 direction 写成 "Right" 而非小写 "right")就会导致 cells 坐标计算错误,整个 layout 崩溃成空白或错位窗格。而原生 set_layout 的 cols/rows/cells 三元组含义清晰、容错高,Windows/macOS/Linux 行为一致。
-
direction参数只接受"right"、"down"、"left"、"above"四种小写字符串,大小写错误直接静默失败 - 嵌套分屏时,Origami 会尝试动态重排已有
cells,但新版 Sublime 不再保证该行为可预测 - 如果你看到命令面板里能搜到
origami_create_pane却没反应,大概率是插件与当前 build 版本不兼容,不是配置问题
想用快捷键自定义上下双屏?直接改 set_layout,别碰 Origami
Origami 安装后默认无任何快捷键,所有绑定都得手动加;而原生 set_layout 可一步到位,且参数语义明确。例如实现等高上下双屏:
[ { "keys": ["ctrl+alt+shift+down"], "command": "set_layout", "args": { "cols": [0.0, 1.0], "rows": [0.0, 0.5, 1.0], "cells": [[0, 0, 1, 1], [0, 1, 1, 2]] } } ]
-
rows数组长度决定行数:[0.0, 0.5, 1.0]= 两行;[0.0, 0.33, 0.66, 1.0]= 三行 -
cells每项是[left, top, right, bottom],索引从 0 开始,顺序不能错;[[0, 0, 1, 1], [0, 1, 1, 2]]表示第一行和第二行各一个窗格 - 保存后按快捷键,窗口立刻切为上下布局,无需重启或重载插件
文件移不进目标窗格?焦点不在 Group,和 Origami 无关
拖文件失败、右键菜单灰色、Move to Group 失效——90% 是因为当前焦点没切到目标 Group。Sublime 所有操作(包括打开、保存、搜索)都作用于当前焦点 Group,和视觉位置无关。
- 状态栏左下角显示
Group: 0表示焦点在第一个窗格,Group: 1才是第二个;没显示说明焦点丢失,需点击任意标签页激活 - 按
Ctrl+2(Windows/Linux)或Cmd+2(macOS)强制切换焦点,比鼠标点更可靠 - 右键文件标签 →
Move to Group→2(编号从 0 开始),比拖拽容错率高得多
需要嵌套布局(如右栏再上下分)?用原生 set_layout 写死 cells,别信 Origami 的动态缩放
Origami 的 zoom_pane 或 resize_pane 在复杂嵌套下极易失准:它试图“保持比例”却忽略当前 rows 和 cols 的归一化约束,结果常是窗格挤压或留白。真正可控的方式是手写完整 set_layout 参数:
{ "cols": [0.0, 0.6, 1.0], "rows": [0.0, 0.5, 1.0], "cells": [[0, 0, 1, 1], [1, 0, 2, 1], [1, 1, 2, 2]] }
- 这表示:左栏占 60%,右栏占 40%;右栏内部再上下等分
-
cells第二项[1, 0, 2, 1]对应右上窗格,第三项[1, 1, 2, 2]对应右下窗格 - 这种布局一旦设定,就完全脱离插件干扰,不会因拖拽窗格边缘而意外重排
复杂嵌套的关键不是“能不能动态调整”,而是“坐标是否可复现”——手写 cells 是唯一能确保下次打开同一布局的方式。











