sublime text 配置备份必须手动复制 packages 目录中 user 文件夹、插件子目录和 .tmtheme 配色文件;路径因系统/版本/便携版而异,需通过 preferences → browse packages… 验证;迁移后需检查路径、package control 列表及配色生效状态。

Sublime Text 没有“一键导出配置”按钮,所有个性化内容必须手动复制对应目录——这是唯一可靠、可逆、不丢插件状态的方式。
怎么找对 Packages 目录?路径因系统和版本而异
你装的插件、改的快捷键、设的主题,全在 Packages 文件夹里,但它不是安装目录,而是 Sublime 运行时读取用户数据的位置。找错地方,备份就白忙。
- Windows:
%APPDATA%\Sublime Text\Packages - macOS:
~/Library/Application Support/Sublime Text/Packages - Linux:
~/.config/sublime-text/Packages - 便携版:直接看程序同级的
Data\Packages(注意大小写,是Data不是data)
验证是否找对:菜单 → Preferences → Browse Packages…,弹出的窗口路径必须和上面一致。如果指向 %APPDATA% 或 Application Support 外的其他位置,说明你可能在用便携版却按常规版路径去翻,或者被符号链接绕晕了。
备份什么?只拷这三类东西就覆盖 95% 场景
别整个 Packages 文件夹全选复制——里面混着缓存、临时生成的文件夹(比如 PackageResourceViewer 自动生成的),它们不参与配置,还可能干扰恢复。
-
User 文件夹:必须整份拷。它含
Preferences.sublime-settings、Key Bindings.sublime-keymap、Package Control.sublime-settings,还有各插件的xxx.sublime-settings(如EmmyLua.sublime-settings) -
插件文件夹:只复制
Packages下非User的子目录,比如GitGutter、SideBarEnhancements。这些是解压后的源码,能直接加载 -
配色方案文件(.tmTheme):不是设置里的 JSON,而是 XML 文件。从状态栏右下角执行
UI: Show Scope Name后看路径,例如Packages/Dracula/Dracula.tmTheme,按路径找到并复制该文件
不用管 Installed Packages 目录下的 .sublime-package 文件——那是 Package Control 的下载缓存,删了重启会重装;但它的存在不代表插件当前启用,不能作为备份依据。
迁移后插件不显示?常见失效原因和验证动作
把文件拷过去重启,发现插件没加载、主题没出现、快捷键失灵——大概率不是备份错了,而是没触发刷新或路径卡住。
- 重启后立刻执行
Preferences → Browse Packages…,确认路径是否仍指向你刚粘贴的目录(尤其便携版,若误放成常规版路径,Sublime 会悄悄回退到默认位置) - 按
Ctrl+Shift+P输入Package Control: List Packages,看列表是否完整。如果空白,说明Package Control插件本身没加载,检查Packages/Package Control文件夹是否存在且未损坏 - 打开一个代码文件,把光标停在函数名上,再按
Ctrl+Shift+P执行UI: Show Scope Name,看状态栏右下角是否显示你预期的配色路径,比如Packages/User/MyTheme.tmTheme。如果还是Monokai.tmTheme,说明主题没生效,回头检查 .tmTheme 是否放进了User或子目录,并确认Preferences → Settings – User里"color_scheme"值是否指向它
特别注意:某些插件(如 SublimeCodeIntel)的索引数据库在 ~/.codeintel/,不在 Packages 内,要单独备份;而 AutoSave 插件若用了 auto_save_hook 调用 shell 命令,迁移到 Windows 后得把 cp 改成 copy,否则钩子静默失败。
同步配置比备份更难:软链接和 Git 都得防冲突
想让两台电脑自动保持一致?可以,但风险比本地备份高得多。
- 用 Dropbox / iCloud 软链接
User文件夹时,不同系统换行符、路径分隔符(/vs\)、权限模型都可能让某个插件配置解析失败,尤其是含中文路径或空格时 - 用 Git 管理
User,记得在.gitignore里排除*cache*、*log、.sublime-project(项目级配置易冲突)等文件,否则多人协作或跨设备提交容易互相覆盖 - 千万别同时在两台设备上改同一个
Preferences.sublime-settings并同步——JSON 格式没合并逻辑,一次覆盖就丢配置
真正省心的迁移,其实是把整个 Packages(或便携版的 Data)当黑盒打包带走。所谓“同步”,只是把复杂问题推迟到下次出问题时再处理而已。









