sublime text安装需分步确认核心环节:windows必须勾选add to explorer context menu、add to path和create a desktop shortcut;linux用apt安装后须手动创建软链接和desktop文件;package control安装失败多因系统时间偏差或安全软件拦截;chineselocalization失效常因被ignored_packages误屏蔽;build system需统一斜杠方向并声明encoding。

Sublime Text 没有真正意义上的“一键式”安装——所谓“一键”,往往掩盖了关键配置缺失导致后续无法用 subl 命令、右键菜单失效、插件装不上、中文不显示等实际问题。必须分步确认核心环节是否落地,否则装完等于没装。
Windows 安装时必须勾选的三项选项
双击 sublime_text_build_xxxx_x64_setup.exe 后,在 “Select Components” 页面,以下三项不勾选,后续几乎必然卡住:
-
Add to explorer context menu:不勾,右键任意文件 → “Open with Sublime Text” 就不会出现 -
Add to PATH:不勾,命令行输入subl会报错'subl' is not recognized as an internal or external command -
Create a desktop shortcut:虽非强制,但跳过意味着每次都要去开始菜单翻找,新手极易放弃
路径建议保留默认 C:\Program Files\Sublime Text;若改到 D 盘,务必避开中文和空格,否则 Build System 中的 $file 变量展开后路径含空格,g++ 或 javac 会解析失败。
Linux(Ubuntu/Debian)用 APT 安装后要补的两件事
执行 sudo apt install sublime-text 后,软件能启动,但终端输 subl 仍可能报错“command not found”,且桌面快捷方式不生效——这是因为官方源包默认不创建软链接和 desktop 文件:
- 手动建软链接:
sudo ln -s /opt/sublime_text/sublime_text /usr/bin/subl(路径以实际解压位置为准) - 复制 desktop 文件:
sudo cp /opt/sublime_text/sublime_text.desktop /usr/share/applications/
注意:如果用的是 .tar.bz2 手动解压方式,这两步是必做项;APT 安装虽省略了下载步骤,但软链接和 desktop 文件仍需手动补全,否则与“图形界面+命令行”双模使用场景脱节。
Package Control 安装失败的常见原因
按 Ctrl + ` 打开控制台,粘贴官网 Python 脚本后无反应,或提示 urllib.error.URLError,通常不是网络问题,而是:
- 系统时间严重偏差(误差 >3 分钟),TLS 握手失败,
https://packagecontrol.io/拒绝连接 - 杀毒软件或防火墙拦截了 Python 的 urllib 请求(尤其国内某些安全软件会静默拦截)
- Sublime Text 启动时被其他进程占用端口或锁文件,导致插件管理器初始化失败
验证方式:在控制台输入 import urllib.request; urllib.request.urlopen('https://httpbin.org/get').read(),能返回 JSON 即说明网络通;若失败,优先校准系统时间,再临时关闭安全软件重试。
ChineseLocalization 插件装了但界面仍是英文
安装插件后未生效,大概率是被 ignored_packages 列表误屏蔽。打开用户设置 Preferences → Settings – User,检查是否有类似这样的内容:
[
"ChineseLocalization",
"Vintage"
]
这是错误写法——ignored_packages 是“黑名单”,不是“白名单”。正确做法是确保该字段中 **不包含** "ChineseLocalization",例如:
{
"ignored_packages": ["Vintage", "Markdown Preview"]
}
如果整个字段为空或根本没定义,也默认不屏蔽;只有明确列进去,才会禁用。改完保存,重启 Sublime Text 即可生效。
最常被忽略的其实是 Build System 中的路径斜杠方向和编码声明:shell_cmd 里混用 \ 和 / 在 Windows 上可能侥幸运行,但跨平台协作时会出错;encoding 缺失则中文注释编译时报乱码——这些细节不显眼,却直接决定你写完代码能不能跑起来。











