sublime需手动绑定.wxml/.wxss语法并配置js custom注入小程序全局变量才能实现高亮与补全:装sublime-wxml插件后须右下角选wxml绑定,wxss复用css语法,js中需在js custom设置globals并添加// @ts-check注释激活page()等补全。

Sublime 本身不识别 .wxml 和 .wxss,装完插件也不高亮,大概率是语法没绑定;Page() 报错、补全空白,不是插件没装,而是 JS 环境没注入小程序全局变量。
WXML 文件始终白底黑字?先装插件再手动绑定语法
Sublime 默认把 .wxml 当纯文本,装了 sublime-wxml(GitHub 仓库名必须含该字符串,作者 zjz777 或 hizzgdev)也无效——因为没触发语法识别。关键一步是绑定:
- 打开任意
pages/index/index.wxml,右下角点击当前语法名(显示“Plain Text”或空) - 选 Open all with current extension as… → WXML
- 想永久生效:菜单
Preferences → Settings – Syntax Specific,右侧 JSON 加一行:{"extensions": ["wxml"]}
别用“Set as HTML”凑合——{{ }}、<wxs></wxs> 标签不会高亮,且可能干扰 emmet 行为。
WXSS 高亮直接复用 CSS 语法,别找专用包
.wxss 是 CSS 超集,没有独立语法必要。所谓“WXSS Syntax”插件大多已失效或与原生 CSS 支持冲突。
- 右键任一
index.wxss→ Open all with current extension as… → CSS - 或进
Preferences → Settings – Syntax Specific,填:{"syntax":"Packages/CSS/CSS.sublime-syntax"}
这样能保留 color preview、括号匹配、属性提示;view::after 这类 WXSS 特有伪元素不报错但也不高亮,属正常——校验 rpx 或 lint 应交给微信开发者工具或 VSCode + minapp 插件。
JS 里 Page() 报黄线、无补全?用 JS Custom 注入全局变量
Sublime 自带 JS 支持完全不认识 Page()、Component()、getApp(),这不是警告,是环境缺失。
- 装
JS Custom插件(Package Control 搜即可) - 菜单
Preferences → Package Settings → JS Custom → Settings - 在用户设置里加:
"scopes": {"source.js": {"globals": ["Page", "Component", "App", "getApp", "wx"]}} - 另存为
.js文件后,顶部加注释// @ts-check或// @jsx React(任一即可)激活补全
不加注释,JS Custom 的全局变量声明不会生效;补全仍为空,不是插件问题,是没触发类型检查上下文。
自动补全靠 Sublime-wxap,别用老旧 snippet
2016 年的 Sublime-snippet 已停止维护,w 开头触发、无作用域控制,容易和 Emmet 或其他 snippet 冲突。
- 装
Sublime-wxap(Package Control 搜,认准 GitHub 仓库名含Sublime-wxap) - 安装后需额外配置补全触发字符:菜单
Preferences → Settings – User,加:"auto_complete_triggers": [{"characters": " - WXML 中输入
<vi> 就能补全 <code><view></view>,JS 中输入Page后按Tab可展开模板
补全功能依赖语法绑定和 JS Custom 全局变量双重就位;少一个环节,Page({}) 就只是个普通函数名,不会带参数提示。
最易被忽略的是:所有配置都依赖文件已保存且后缀正确——未保存的临时文件、重命名但未改后缀(如 index.html 改成 index.wxml 却没点“Save As”),Sublime 都不会应用 syntax specific 设置。











