sublime text 通过保存多个 .sublime-project 文件并使用 project → switch project 切换来实现多项目管理,每个项目拥有独立的文件夹、设置、折叠状态和侧边栏视图。

Sublime Text 里怎么真正打开多个项目?
Sublime Text 本身不支持“多项目标签页”式切换,所谓“同时打开多个项目”,实际是靠 Project → Save Project As… 保存多个 .sublime-project 文件,再通过 Project → Switch Project(快捷键 Ctrl+Alt+P / Cmd+Alt+P)快速跳转。这不是窗口堆叠,而是项目上下文切换——每个项目有独立的文件夹、设置、折叠状态和侧边栏视图。
为什么 Switch Project 找不到刚保存的项目?
常见原因有三个:
-
.sublime-project文件必须放在非临时路径下(比如不要存在/tmp或桌面临时文件夹),Sublime 默认只扫描用户主目录下的Packages/User/和已打开过的项目路径 - 项目文件里
"folders"字段路径写错了,或用了相对路径但 Sublime 启动时不在该目录下——一律用绝对路径,例如:"folders": [{ "path": "/Users/you/workspace/my-api" }] - 没重启 Sublime:
Switch Project列表只在启动时加载一次,保存新项目后需关闭再重开,或执行Project → Refresh Folders(部分版本支持)
如何让不同项目记住各自的 settings 和插件行为?
项目级配置不是靠全局设置,而是写进 .sublime-project 文件的 "settings" 和 "build_systems" 字段。例如:
{
"folders": [
{ "path": "/Users/you/frontend" }
],
"settings": {
"tab_size": 2,
"translate_tabs_to_spaces": true,
"font_size": 13
},
"build_systems": [
{
"name": "npm run dev",
"cmd": ["npm", "run", "dev"],
"working_dir": "$project_path"
}
]
}
注意:"settings" 会覆盖用户/语法级设置,但不会影响其他项目;插件如 SideBarEnhancements 或 GitGutter 通常也尊重项目路径,自动按当前 project root 初始化。
用命令行快速切换项目太麻烦?试试这个小技巧
Sublime 支持从终端直接打开指定项目:subl --project /path/to/project.sublime-project。你可以把常用项目做成 shell alias:
alias sp-api='subl --project ~/workspace/api/sublime-project' alias sp-web='subl --project ~/workspace/web/sublime-project'
这样终端敲 sp-api 就能秒开对应项目,且自动聚焦到该项目窗口(如果已运行)。比反复点菜单快得多——但注意:如果 Sublime 已在运行且没启用 Continue where you left off(在 Preferences → Settings 中确认 "hot_exit": true),新命令可能打开新实例,导致项目状态丢失。
真正容易被忽略的是:项目切换不会重载插件,也不会刷新未保存的缓冲区。比如你在 A 项目中编辑了未保存的 config.js,切到 B 项目后再切回,内容还在,但 B 项目的语法高亮规则、快捷键绑定等已生效——这种“混合状态”常被误认为 Bug,其实是设计如此。










