右下角显示 Plain Text 或 PHP,说明 Sublime 未识别 .blade.php 为 Blade 文件,因其原生不支持该扩展名,需通过“Open all with current extension as… → HTML (Laravel Blade)”绑定,或在 Preferences.sublime-settings 中添加 "extensions": ["blade.php"] 实现自动高亮。

右下角显示 Plain Text 或 PHP,说明根本没识别成 Blade
这不是插件没装对,是 Sublime 压根没把 .blade.php 当作 Blade 文件处理。它原生不支持这个扩展名,所以 fallback 到最宽松的 Plain Text 或按 .php 后缀误判为纯 PHP 语法——高亮、括号匹配、变量跳转全失效。
验证方法:打开任意 test.blade.php,看右下角显示什么。如果是 Plain Text 或 PHP,就先别折腾主题或插件设置。
- 点击右下角语言名 → 搜索并选择
HTML (Laravel Blade)(注意不是单独的Blade) - 输入
@if($user)和{{ $user->name }},观察是否立刻变色 - 若生效,说明语法定义已加载;若仍灰白,继续下一步
extensions 绑定写错位置或格式,自动高亮永远不触发
手动选一次只对当前文件生效。要让所有 .blade.php 文件一打开就用正确语法,必须绑定扩展名。但很多人写错位置:不是在全局 Preferences.sublime-settings,而是误写进 Settings – Syntax Specific(这是针对单个语法的配置,不是扩展名映射)。
- 正确做法:打开一个
.blade.php文件 → 点右下角语言名 →Open all with current extension as…→ 再选HTML (Laravel Blade) - 该操作会自动往
Packages/User/Preferences.sublime-settings写入:"extensions": ["blade.php"] - 如需同时支持旧式
.blade文件,补成:"extensions": ["blade.php", "blade"] - 别手写
syntax路径(如Packages/Laravel Blade Highlighter/blade.tmLanguage),极易拼错或路径失效
Laravel Blade Highlighter 和 Blade Snippets 一起装,高亮反而崩
这两个插件干的事完全不同:Laravel Blade Highlighter 负责语法解析和高亮(定义 keyword.control.blade、meta.interpolation.blade 等作用域);Blade Snippets 只提供 @foreach 补全,但默认会开启自己的高亮规则,直接覆盖前者。
立即学习“PHP免费学习笔记(深入)”;
- 只装
Laravel Blade Highlighter就够用——它自带完整.sublime-syntax,支持@props、@once等 Laravel 13+ 新语法 - 如需补全,再装
Blade Snippets,但必须关掉它的高亮:进入Preferences → Package Settings → Blade Snippets → Settings – User,加一行:"disable_syntax_highlighting": true - 别碰
Laravel 5 Snippets——2026 年还在用这玩意,@scope、@render全不识别
主题没定义 blade 作用域,{{ }} 变灰不是插件问题
Laravel Blade Highlighter 依赖 Sublime 的 scope 机制,比如 @if 是 keyword.control.blade,{{ }} 是 meta.interpolation.blade。如果当前主题(如 Material Theme)没声明这些 scope 的颜色,就会退成默认灰。
- 临时验证:切换到默认主题
Preferences → Color Scheme → Default → Monokai,看高亮是否恢复 - 长期解决:找到主题的
.tmTheme文件(路径见Preferences → Browse Packages),搜索keyword.control.blade,加一条规则:<dict><key>name</key><string>Blade Control Keyword</string><key>scope</key><string>keyword.control.blade</string><key>settings</key><dict><key>foreground</key><string>#f92672</string></dict></dict> - 同理补上
meta.interpolation.blade、comment.line.double-dash.blade等常用 scope



















