双击文件仍用记事本或VS Code打开,是因操作系统未将sublime_text.exe(Windows)或Sublime Text.app(macOS)注册为默认程序;Windows需在“按文件类型指定默认应用”中手动绑定真实路径并加英文双引号,或用assoc/ftype命令;macOS必须运行subl --install并重启Finder;语法高亮需在Sublime内右下角手动设置。

双击文件仍用记事本或 VS Code 打开,不是 Sublime 没配好,是操作系统根本没把 sublime_text.exe(Windows)或 Sublime Text.app(macOS)注册为该后缀的默认程序。Sublime 自身设置对“谁来打开它”完全无效。
Windows:必须进「按文件类型指定默认应用」手动确认
系统界面里点过“始终使用”,不代表注册表真写入了。常见假成功现象:右侧图标显示 Sublime,但点开后路径却是 sublime_text.exe.lnk(快捷方式),或路径中少引号、反斜杠没转义。
- 进「设置 → 应用 → 默认应用 → 按文件类型指定默认应用」
- 挨个点开
.py、.log、.env等条目,右侧图标必须点开 → 手动浏览并选中真实的sublime_text.exe - 路径含空格时,必须是带英文双引号的绝对路径,例如:
"C:\Program Files\Sublime Text\sublime_text.exe" - 若列表里找不到目标扩展名,说明系统尚未注册该类型,需用
assoc+ftype补全(见下一条)
Windows:用 assoc 和 ftype 命令批量关联更可靠
图形界面容易漏项,且企业环境常被组策略锁死;命令行方式可逆、不依赖 GUI,适合批量处理 .conf、.yml、.toml 等冷门后缀。
- 以管理员身份运行 CMD
- 执行:
assoc .log=SublimeText.LogFile - 再执行:
ftype SublimeText.LogFile="C:\Program Files\Sublime Text\sublime_text.exe" "%1" -
"%1"不能省,否则双击无响应;路径中的空格和反斜杠必须原样保留 - 重复执行多组
assoc/ftype即可覆盖多个后缀,无需重启
macOS:subl --install 是唯一可靠注册方式
右键「显示简介」→「全部更改」经常失效,尤其 Homebrew 安装的 Sublime。根本原因是 Launch Services 数据库未更新,仅靠 GUI 操作无法写入。
- 先确保终端能调用
subl:若提示command not found,运行sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl - 运行:
subl --install—— 这会真正注册到 Launch Services - 立即执行:
killall Finder,否则「全部更改」不会持久化 - 之后再右键任一
.env或.conf文件 →「显示简介」→「打开方式」选 Sublime →「全部更改」才真正生效
语法高亮不对?那是 Sublime 内部映射问题,和系统打开无关
双击能启动 Sublime,但右下角显示 Plain Text,说明系统关联已成功,只是 Sublime 没把扩展名和语法对上。这不是 Windows/macOS 的锅,得在编辑器内操作。
- 打开一个
.pyw文件 → 右下角点击Plain Text→ 选Python - 再点右下角 → 选
Open all with current extension as… → Python - 想让
.log用纯文本而非日志插件高亮?先设为Plain Text,再执行同上步骤 - 别改全局
Preferences.sublime-settings,要改就去Preferences → Settings – Syntax Specific对应语法的配置页加"extensions": ["log"]
最容易被忽略的是:系统级关联和语法级映射是两层独立机制,缺一不可。前者决定“谁来打开”,后者决定“打开后怎么显示”。很多人卡在第二步,却反复折腾注册表或 Launch Services。


















