必须装djaneiro或html (django templates)插件并手动设置语法为“django > html (django)”或“html (django templates)”,否则高亮永不生效;右下角显示html或plain text即未启用,{{ }}和{% %}呈纯灰;{% load static %}等标签恒为灰色是sublime正则解析的天然限制,非配置错误。

装 Djaneiro 或 HTML (Django Templates),然后手动把当前文件语法设为 Django > HTML (Django) 或 HTML (Django Templates)——不手动点,高亮永远不会出现。
怎么确认高亮没生效?
右下角显示的是 HTML 或 Plain Text,而不是带 Django 字样的选项。此时 {{ user }} 和 {% if %} 就是纯灰或错色,不是插件没装对,是 Sublime 根本没在用 Django 语法解析。
快捷键 Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(macOS),输入 Set Syntax: Django > HTML (Django) 回车,立刻重绘;如果列表里没有这个选项,说明插件没装成功,或者装了已停更的 SublimeDjango(它在 ST4 下基本不可用,还会破坏括号匹配)。
该装 Djaneiro 还是 HTML (Django Templates)?
Djaneiro 支持变量嵌套着色(比如 {{ user.name }} 中 name 单独变色)、补全片段(djview、djmodel),语法路径是 Packages/Djaneiro/HTML (Django).sublime-syntax;HTML (Django Templates) 更轻量,只做基础高亮,路径是 Packages/HTML/HTML (Django Templates).sublime-syntax,不带补全,对 {% load static %} 后的 {% static %} 默认不高亮。
- 纯高亮需求、怕冲突 → 选
HTML (Django Templates) - 要补全、变量细分、项目结构清晰 → 选
Djaneiro - 别碰
SublimeDjango:ST4 下兼容性差,装了可能让所有.html文件高亮错乱、Ctrl+Click失效
怎么让 templates/ 下的 .html 自动用 Django 语法?
全局绑定所有 .html 到 Django 语法会干掉原生 HTML 补全和 Emmet,静态页、前端组件、Markdown 导出页都会受影响。
更稳妥的做法是按路径规则:打开一个模板文件 → 设好语法 → 右键文件标签 → Set Syntax for File Extension → 选 templates/**/*.html(需 ST4.4+);如果版本不够,只能手动配 Settings – Syntax Specific,加这段 JSON:
{"extensions": ["html"], "syntax": "Packages/Djaneiro/HTML (Django).sublime-syntax"}
注意路径必须和你实际安装的插件一致:Djaneiro 的路径含 Djaneiro/,HTML (Django Templates) 是 HTML/HTML (Django Templates).sublime-syntax。
为什么 {% load static %} 和 {% url %} 还是灰色?
这不是配置问题,是 Sublime 语法系统的硬限制:.sublime-syntax 基于静态正则,无法解析 {% load %} 动态引入的标签库,所以 {% static %}、{% url %}、{% get_current_language %} 全部被当作普通 block 标签处理,颜色和 {% if %} 一样。
接受它就行——这些标签语义简单,不影响运行,只是视觉提示弱;想强行高亮就得改 .sublime-syntax 文件,但升级插件后会被覆盖,维护成本高,一般不值得。











