在 Sublime Text 中为 .vue 文件启用 Vue 语法高亮,需安装 Vue Syntax Highlight 插件并重启;若无效,手动执行 View → Syntax → Open all with current extension as… → Vue,确保 .vue 扩展名正确绑定到 Vue 语法。
.vue 文件自动使用 Vue 语法高亮?Sublime Text 默认不识别 .vue,打开后是纯文本。关键不是“安装插件”,而是确保文件扩展名和语法定义正确绑定。常见错误是装了 Vue Syntax Highlight 插件却没手动触发语法切换,或绑定路径写错。
Vue Syntax Highlight 或 VueJS
.vue 关联).vue 文件 → 菜单 View → Syntax → Open all with current extension as… → Vue
Preferences → Settings – Syntax Specific 中生成 vue.sublime-settings,但实际生效靠的是 Package Control 注册的 vue.tmLanguage 文件路径sublime-syntax 文件怎么写才能支持自定义扩展名?如果你要支持公司内部的 .cfgx 配置文件,不能只靠插件,得自己写语法定义。Sublime 5+ 推荐用 .sublime-syntax(YAML 格式),比旧版 .tmLanguage 更易维护。
Packages/User/ 或独立包目录下,命名如 cfgx.sublime-syntax
name、file_extensions、scope 和 contexts
file_extensions 是数组,写成 - cfgx,不要带点(即不是 .cfgx)Ctrl+Shift+P → Set Syntax: CFGX 手动切换,确认高亮是否生效;只有成功后,新文件才会自动关联name: CFGX
file_extensions:
- cfgx
scope: source.cfgx
contexts:
main:
- match: '^\s*#.*$'
scope: comment.line.number-sign.cfgx
- match: '^(\w+):'
scope: entity.name.function.cfgx
file_ext
ensions 却没生效?最常被忽略的是缓存和作用域冲突。Sublime 启动时会扫描所有 Packages/ 下的语法文件并缓存映射关系,修改后不重启或不重载不会刷新。
.sublime-syntax 后,必须执行 Ctrl+Shift+P → “Satisfy Dependencies” 或直接重启 Sublime- cfgx),Sublime 只加载第一个匹配的,顺序取决于包名字母序Ctrl+Alt+Shift+P(状态栏左下角)查看当前文件真实语法作用域,应显示类似 source.cfgx;若还是 text.plain,说明绑定失败Packages/User/Cfgx.sublime-syntax 和 cfgx.sublime-syntax 是不同的.log 文件按时间戳高亮,而不是默认纯文本?这是典型“已有扩展名,但想覆盖默认行为”的场景。.log 默认被 Sublime 绑定到 Plain Text,你写的语法必须显式抢占它。
file_extensions 写 - log 即可,无需删除原绑定Packages/User/(最高优先级),或改包名为 A_log_highlighter 让它排在 Default 包前面.log 自动切换(比如首行含 [2025-),Sublime 不支持条件自动切换,只能靠外部脚本或插件(如 ApplySyntax)实现Packages/Default/Plain Text.tmLanguage —— 升级 Sublime 会覆盖它