sublime text 通过 --data 参数可指定独立 data 目录实现多配置共存,windows 执行 sublime_text.exe --data "d:\sublime-work",macos/linux 用 subl --data ~/path,路径须为绝对路径且含引号,首次启动自动创建完整结构,不同路径间配置、插件完全隔离。

Sublime Text 本身不支持多用户或多个独立配置实例同时运行,但可以通过手动指定 Data 目录路径,让不同安装(或同一台机器上的多个快捷方式)加载完全隔离的配置、插件和设置。这不是“多开”,而是“多配置共存”——本质是绕过默认路径,启动时强制使用另一个数据根目录。
如何用命令行参数指定独立的 Data 目录
Sublime Text 启动时支持 --data 参数,直接告诉它把 Packages、Installed Packages、Cache 全部放在你指定的位置,互不干扰。
- Windows 示例:打开 CMD,执行
sublime_text.exe --data "D:\Sublime-Work",它就会在D:\Sublime-Work下新建完整结构(含User、Packages等子目录) - macOS/Linux 示例:终端中运行
subl --data ~/Library/Application\ Support/Sublime\ Text\ 3-Dev(注意空格转义) - 路径必须是**绝对路径**,且 Sublime 会自动创建目录结构;若路径已存在且含旧配置,就直接复用
- 不能用相对路径,比如
--data ./mydata会被忽略,静默 fallback 到默认位置
--data 和默认 Data 目录冲突怎么避免
关键点在于:只要没显式传参,Sublime 就走默认路径;一旦用了 --data,它就彻底无视系统盘里的 %APPDATA%\Sublime Text 3 或 ~/.config/sublime-text-3。但容易踩的坑是快捷方式或脚本里漏写参数,导致你以为在用 A 配置,实际启动的是 B 配置。
- 检查快捷方式属性里的“目标”字段,确认末尾完整包含
--data "X:\xxx",引号不能丢(尤其路径含空格时) - 不要在已运行一个实例时再用相同
--data路径启动第二个窗口——Sublime 会聚焦已有窗口,不是新开进程 - 如果想真正多开(比如一个写 Python,一个写前端),每个快捷方式必须指向**不同**的
--data路径,否则插件/设置会互相覆盖
为什么不用符号链接或改注册表来实现
有人尝试把默认 Data 目录软链到别处,或修改 Windows 注册表重定向 AppData,这些方法要么失效(Sublime 4 对符号链接支持不稳定),要么影响全局环境(其他软件也读写 AppData)。而 --data 是官方明确支持的启动参数,不改系统、不依赖权限、不破坏原有安装。
- 官网文档明确列出
--data <path></path>为合法参数,且从 ST3 到 ST4 全版本兼容 - 不需要管理员权限,普通用户即可在任意可写路径创建新配置区
- 删除某个
--data目录即彻底清除该套配置,不留残留 - 注意:Package Control 会为每个
--data目录单独安装插件,不会跨配置共享
最常被忽略的是:你建了两个 --data 目录,但忘了给它们分别装 Package Control——结果一个有插件,另一个打开命令面板是空的。每次用新 --data 路径首次启动,都要手动执行一遍控制台安装脚本。











