Sublime Text团队插件统一需同步Packages/User/下Package Control.sublime-settings及各插件配置文件,并配合README说明与同步脚本;环境变量依赖启动时继承的PATH,修改后须重启编辑器。

Sublime Text 本身不支持像 VSCode 那样通过 extensions.json 声明“推荐插件”并自动提示安装——团队统一插件列表必须靠人工同步配置文件 + 显式约定,否则每个成员装什么、怎么配,完全不可控。
只同步 Packages/User/Package Control.sublime-settings
这是唯一能可靠还原“装了哪些插件”的文件。它里面有个 installed_packages 字段,内容类似:
{
"bootstrapped": true,
"installed_packages": [
"SublimeLinter",
"SublimeLinter-contrib-golangcilint",
"GoImports",
"EditorConfig",
"GitGutter"
]
}实操建议:
- 所有成员都把这个文件提交进 Git 仓库(放在
.sublime/或项目根目录下,加进.gitignore的除外) - 新成员克隆后,手动复制该文件到自己机器的
Packages/User/目录下,重启 Sublime,Package Control 就会自动拉取列表里的插件 - 不要直接同步整个
Packages/文件夹——含缓存、二进制、版本不兼容风险,极易导致ImportError: No module named 'package_control'
插件配置也得一并管住:用 Packages/User/ 下的 JSON 文件
光装上插件没用,比如 GoImports 必须配 command 和 env 才能调用 goimports;SublimeLinter 要读 .golangci.yml 才知道启用哪些规则。这些设置全在 Packages/User/ 下的对应文件里:
-
GoImports.sublime-settings→ 控制是否format_on_save、command路径、env变量 -
SublimeLinter.sublime-settings→ 全局开关、超时、默认 linter -
EditorConfig.sublime-settings→ 是否启用、是否忽略.editorconfig失效警告
关键点:
- 这些文件必须和
Package Control.sublime-settings一起进 Git,且所有成员禁用本地修改(或用 Git hook 拒绝 commit 修改) - 路径变量如
GOPATH、GO111MODULE不要硬写死,改用${HOME}或留空让系统环境生效 - 若某插件设置依赖本地工具(如
golangci-lint),需在 README 里明确写清安装命令:go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
别指望自动弹窗提醒:用 README + 同步脚本兜底
VSCode 有“推荐扩展”弹窗,Sublime 没有。团队新人打开项目,不会收到任何提示——他甚至不知道该装啥。
实操建议:
- 在项目
README.md顶部加一段说明,例如:
## Sublime Text 团队开发配置 - 必装插件列表见 `.sublime/Package Control.sublime-settings` - 配置文件已全部放入 `Packages/User/`,请按[同步指南](#sync)操作 - 缺少 `golangci-lint`?运行:<code>go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest</code>
- 提供一个极简同步脚本(如
setup-sublime.sh),只做三件事:备份原User/、软链接到 Git 管理的目录、重启 Sublime - Windows 用户注意:
mklink /J需管理员权限;macOS/Linux 的ln -s路径空格要转义,否则 Sublime 静默加载失败,连报错都没有
最常被忽略的一点:插件行为严重依赖系统 PATH 和环境变量,而 Sublime 的 PATH 是启动时继承的——不是你终端里那个 PATH。改完 ~/.zshrc 后没重开 Sublime,goimports 就永远找不到。这点比配置文件同步更难排查。

















