侧边栏文件夹顺序唯一由.sublime-project中folders数组顺序决定;拖拽仅在已保存项目且环境支持时生效,否则无效;手动编辑该数组是最稳定持久的方式。

侧边栏文件夹顺序不能靠拖拽或设置开关实时调整,必须通过项目配置文件控制——这是最稳定、唯一能持久生效的方式。
为什么右键拖拽有时有效,有时无效?
Sublime Text 4.4158+ 支持直接拖拽顶级文件夹重排顺序,松手后会自动更新 .sublime-project 中的 folders 数组。但这个功能有明确前提:
- 必须已保存为项目(即存在
.sublime-project文件),否则拖拽不写入任何配置 - 不能在“单文件打开”模式下操作——侧边栏压根没项目上下文,拖拽无目标
- 如果项目配置里
folders是空数组或被设为null,拖拽行为会被忽略 - Windows 和 Linux 下部分显卡驱动或远程桌面环境可能拦截拖拽事件,表现为“看起来能拖,但松手不生效”
手动编辑 .sublime-project 是最可靠的方法
哪怕你刚拖拽成功,也建议打开项目文件确认顺序是否真的落盘。因为 Sublime 的自动重写偶尔会出错(尤其含中文路径或特殊字符时)。
- 菜单选择
Project → Edit Project打开 JSON 配置 - 确保
folders是一个数组,每个元素是带path键的对象 - 把想置顶的文件夹对象移到数组最前面,例如:
{
"folders": [
{ "path": "/Users/you/work/core" },
{ "path": "/Users/you/work/docs" },
{ "path": "/Users/you/work/tests" }
]
}
保存后侧边栏立刻按此顺序显示——无需重启,也不依赖当前是否展开子目录。
sort_folders_first 不影响文件夹之间的顺序
很多人误以为开启 "sort_folders_first": true 能让“文件夹 A”永远排在“文件夹 B”上面,其实它只控制 同一层级内文件夹和文件的相对位置:
- 启用后,该文件夹内部的子文件夹会排在文件前面(比如
src/下的components/显示在index.js上方) - 但它完全不干预多个顶级文件夹之间的排列顺序——那个顺序只由
folders数组顺序决定 - 如果你同时设置了
"sort_files_by": "name",它只对文件名起效,对文件夹名无效
ST3 用户注意:没有 sort_files_by,别白改设置
Sublime Text 3 的用户设置里写 "sort_files_by": "name" 是完全无效的——解析器直接跳过这行,不会报错,也不会排序。你看到的“没变化”,不是配置没生效,而是 Sublime 根本不认识这个键。
- ST3 唯一可行的排序手段是安装
SideBarEnhancements插件,然后右键 →Sort By → Name (A-Z) - 但注意:这种排序是临时的,关掉项目再打开就回到原始顺序(即
folders数组顺序 + 文件系统返回顺序) - 若你长期用 ST3 又需要稳定顺序,唯一办法仍是手动维护
.sublime-project文件,并避免依赖任何“排序设置”
真正容易被忽略的是:项目文件里的路径必须是**真实可访问的绝对路径或相对于项目文件的相对路径**。写错一个斜杠、多一个空格、或用了符号链接而没确认目标存在,都会导致整个文件夹不显示——它不会报错,只是静默消失。











