PixPin_2026-03-29_19-34-28

错误**Nunjucks Error: expected variable end**发生是因为 Hexo 使用的模板引擎(Nunjucks)试图解析 LaTeX / 数学方程作为代码变量。

起因

md代码片段

1
... \dfrac{\left(1-k\right)\,{y}^{2}}{{r}^{2}} ...

你有双卷括号 {{` 和 `}}( 例如, 在{{r}^{2}} 中)。Nunjucks 使用 {{ }} 来评估变量。遇到 {{r} 时,它以为你在输出变量,但因为大括号内的语法与标准 JavaScript/Nunjuck 不符,它会抛出致命的预期变量结束错误。

解决方案

只要在公式里所有出现连续两个大括号 {{` 或 `}} 的地方,中间加一个空格,变成 { {} } 即可。LaTeX 在数学模式下是完全忽略空格的,所以公式长相不会变,但 Hexo 就不会把它当成变量报错了。