必须逐扩展名设置系统级关联并单独配置Sublime语法绑定。Windows不支持通配符批量设置,默认应用需手动为.log、.env等每个扩展名指定sublime_text.exe真实路径;Sublime内还需为各扩展名执行“Set as Default”以生成用户语法配置,二者缺一不可。

不能靠单次操作“一键设置所有文本文件”,必须按扩展名逐个指定系统级关联,再配合 Sublime 内部语法绑定——这是两层独立逻辑,缺一不可。
Windows 系统级关联必须一个一个点开设置
系统默认应用设置不支持通配符(如 *.log)或批量勾选,所谓“一次性”只是指在「设置 → 默认应用 → 按文件类型指定默认应用」里集中操作,但每个扩展名仍需手动点击、选择 sublime_text.exe 路径。
- 务必确认选的是真实可执行文件,不是快捷方式(
.lnk),路径类似C:\Program Files\Sublime Text\sublime_text.exe - 路径含空格时,系统界面会自动加引号;若用注册表或脚本写入,必须手动包裹双引号,否则双击无响应
- 常见失败:点了“Sublime Text”图标却没生效——那只是系统缓存的显示名,实际没绑定到正确路径,得点开右侧图标重新选
- 企业环境若组策略禁用默认应用修改,这条路走不通,只能退回到加右键菜单(如注册表添加
shell\open\command)
Sublime 内部语法高亮要另配,和系统打开无关
即使 .env 文件双击能用 Sublime 打开,右下角仍可能显示 Plain Text——这不是系统问题,是 Sublime 没把该扩展名和语法包关联上。
- 最稳做法:打开一个
.env文件 → 点右下角Plain Text→ 选INI(或对应语法)→ 再点右下角,出现Set as Default for .env Files - 这会自动生成
Packages/User/INI.sublime-settings,内容含"extensions": ["env"],别手动往Preferences.sublime-settings里硬塞 - 想让多个扩展共用同一语法(如
.conf、.ini、.cfg都用 INI 高亮),就对每个扩展都执行一次上述流程,Sublime 会合并进同一个INI.sublime-settings - 查不准语法路径?打开已正确高亮的文件 →
Tools → Developer → Show Scope Name,看状态栏显示的source.ini,对应路径基本就是Packages/INI/INI.sublime-syntax
别信“全部文本文件一键关联”的误导方案
网上有些教程说“把 .txt 设为默认后,其他文本类型会自动跟随”,这是错的。Windows 不会根据 MIME 类型或内容推断关联,只认扩展名硬匹配。
-
.log、.env、.toml这些非标准扩展名,哪怕内容全是纯文本,也必须单独设置 - 注册表批量导入看似高效,但容易因
%1写成%V、路径漏引号、或误设HKEY_CURRENT_USER覆盖不全而失效 - 第三方工具如 OpenWith Manager 可简化界面操作,但底层仍是调用同一套 Windows API,不能跳过逐个确认环节
真正容易被忽略的点:系统关联和语法高亮是两条平行线,改了前者不等于后者自动生效,反过来也一样;而且 Sublime 的语法绑定只在用户配置里生效,不会写入系统注册表——所以重装系统或换电脑后,这两步都得重来。


















