Sublime Text新建文件默认语法为Plain Text,但受插件或历史行为影响可能异常;需在用户设置中配置default_syntax字段指定完整路径(如Packages/JavaScript/JavaScript.sublime-syntax)方可生效。

新建文件默认语法为什么不是纯文本
Sublime Text 启动后新建的 Untitled 文件,默认语法是 Plain Text,但很多用户发现它实际显示为 Text(旧版命名),或偶尔自动变成 Markdown、Python 等——这通常是因为插件(如 ApplySyntax)或历史打开行为干扰了初始状态。真正可控的“新建即指定语法”必须靠手动配置。
通过 Preferences → Settings 修改 default_syntax
Sublime 不提供图形化下拉菜单设置新建文件语法,必须编辑用户配置。关键字段是 default_syntax,它只在用户设置(User Settings)中生效,且值必须是完整语法文件路径(以 Packages/ 开头)。
操作步骤:
- 菜单栏打开 Preferences → Settings,右侧(User)面板中添加一行:
-
"default_syntax": "Packages/JavaScript/JavaScript.sublime-syntax"(换成你需要的语言,比如Python、Markdown) - 保存后,所有新
Untitled文件都会按此语法高亮(但不会自动加扩展名) - 注意:路径大小写敏感;
.sublime-syntax是 Sublime 3+ 格式,旧版.tmLanguage不再被识别
如何查到某个语言的确切语法路径
不能凭印象写 Packages/Python/Python.tmLanguage —— 这在 Sublime 4 中已失效。正确方法是:
- 先用快捷键
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)调出命令面板 - 输入并选择
Set Syntax: JavaScript(或其他语言) - 再执行
Tools → Developer → Show Scope Name,顶部状态栏会显示类似source.js - 根据 scope 反查路径:打开
Packages/目录(可通过Preferences → Browse Packages…进入),找对应文件夹下的*.sublime-syntax文件 - 常见路径示例:
Packages/Python/Python.sublime-syntax、Packages/Markdown/Markdown.sublime-syntax
default_syntax 生效但文件仍无扩展名怎么办
这个设置只影响语法高亮和作用域,不控制文件保存时的默认扩展名。如果希望新建文件带 .py 或 .md 后缀,得借助插件(如 File Header 或自定义 build system),或者用快捷键 Ctrl+N 新建后立刻按 Ctrl+Shift+P → Set Syntax: Python,再手动保存并补扩展名。
容易忽略的一点:default_syntax 对已存在的未命名文件无效——只对全新 Untitled 生效;如果之前改过某 Untitled 的语法,它会记住那次选择,覆盖全局设置。










