Hexo——相关问题汇总

本文记录Hexo使用过程中可能遇到的问题


Hexo生成的html文件是空的

  • 表现为部署到云端后,显示为空白页面

问题起因

  • 由于node版本问题导致的,可能是node版本太新了

  • 重新安装node为旧版本即可,本文使用的暂时是node 12版本

  • 安装命令(注意:直接使用brew install node@12可能无法安装成功,会出现找不到指定版本的错误,12版本太老了,过期了):

    1
    2
    3
    brew install nvm ## 安装nvm后按照提示将相应启动脚本配置到~/.zshrc中
    nvm install 12.14.0
    nvm use 12.14.0
  • nvm use 只是临时切换 node 版本,只适用于当前 terminal,如果打开新的 terminal,node 可能还是之前的旧版本。如果想要永久切换的话,可使用如下命令(实际上,本地切换到12.14.0后重启terminal也是该版本,未发现其他问题):

    1
    nvm alias default 12.14.0

符号有问题导致编译错误

  • 问题现象:编译 .md 文档时出现错误 Unhandled rejection Nunjucks Error: [Line xx, Column xx] expected variable end

  • 问题起因:Nunjucks 模板引擎可能会将 LaTeX 表达式中的某些符号(如 {, }, _, \ 等)误认为是模板语法的一部分,从而导致解析错误

  • 修复方式:

    • 方式一:不要写容易冲突的字符,一般来说常见的是 这两个,可以在中间加上空格(这不会改变latex内容),切换为 { {} }

    • 方式二:使用

      1
      	

      $$
      rgt_{i \cdot }(\boldsymbol{v}) = \mathbb{E}_{v \sim F}\left[\max_{{v’}_{i \cdot } \in V_{i \cdot }} u_{i \cdot }(v_{i \cdot }; ({v’}_{i \cdot }, \boldsymbol{v}_{-i \cdot })) - u_{i \cdot }(v_{i \cdot }; \boldsymbol{v})\right].
      $$

      ```

      • 注:这种方式下,错误会消失,但是latex公式无法被渲染
  • 注:在使用 jinja2 模板代码时,常常会出现问题,建议统一使用类似 {% set a=10 %} 的方式解决