今天站长想要用博客写一些关于数学上的一些东西,就不可避免地需要用到一些数学公式。
这就涉及到一些渲染方面的问题(?)

比如说像这样:
渲染失败的数学公式
好家伙这还让不让我写了,怎么和预期的结果不符啊。
一搜才发现,原来是Hexo 的自带的 Markdown 引擎并不支持 LaTeX 公式。
或者说,自带md引擎并不包含公式渲染相关支持?

这下终于找到问题根源了,接下来就是着手去解决这个问题。

新增math解释引擎

既然原先没有,我们可以去试着手动去添加一个math解释引擎进去以实现数学公式渲染的需求
本人使用的是butterfly主题,配置文件中内置了和math相关的配置项:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# --------------------------------------
# Math
# --------------------------------------

# About the per_page
# if you set it to true, it will load mathjax/katex script in each page
# if you set it to false, it will load mathjax/katex script according to your setting (add the 'mathjax: true' or 'katex: true' in page's front-matter)
math:
# Choose: mathjax, katex
# Leave it empty if you don't need math
use:
per_page: true
hide_scrollbar: false

mathjax:
# Enable the contextual menu
enableMenu: true
# Choose: all / ams / none, This controls whether equations are numbered and how
tags: none

katex:
# Enable the copy KaTeX formula
copy_tex: false

安装命令
mathjax:npm install hexo-filter-mathjax --save
katex:npm install hexo-katex --save
当然我用的butterfly主题不需要执行这俩安装命令,直接改配置文件直接就能应用上就是了。其他的主题就不一定了,取决于具体的实现方式(哈哈)

那么理论上只需要修改配置项增加math渲染引擎相关支持库就可以解决了……吗?
还不够,虽然我们现在解决了数学公式的渲染问题,网页中可以正常显示公式了。但如果还需要解决复杂公式与md的语法冲突问题以及一些奇奇怪怪的解释问题的话依然需要更换Markdown引擎以避免冲突。
因为Hexo默认的hexo-renderer-marked既不支持数学公式渲染,又会主动破坏公式语法
(反正我还没遇到这情况,我嫌麻烦就先不换了。等到啥时候默认解释器出问题了再换也不迟)——2025-05-27

更换默认 markdown 渲染引擎

Hexo自带的markdown渲染引擎是hexo-renderer-marked。
如果要更换md渲染器,只需要先卸载掉原来的,然后再安装新的即可。就这么简单,不需要额外的任何配置(仅2022-06-03及以后的hexo版本,更早的还是要搓配置文件)
卸载默认渲染器:npm uninstall hexo-renderer-marked --save

然后找个你想要的引擎装上就完事了。
我不知道如果同时存在两个及以上的md渲染引擎会发生什么,反正是为了不出问题最好别这样做就是了

有些markdown解释引擎是同时具备math解释能力的,而不自带math解释能力的md解释引擎才需要安装单独的math解释模块


参考:
https://blog.luzy.top/posts/2968289947/
https://jachinzhang1.github.io/2025/02/05/hexo%E6%B8%B2%E6%9F%93%E6%95%B0%E5%AD%A6%E5%85%AC%E5%BC%8F%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86%B3/
https://blog.csdn.net/qq_44846324/article/details/114582328
https://blog.barku.re/2024/04/20/%E5%BD%BB%E5%BA%95%E8%A7%A3%E5%86%B3-Hexo-%E7%9A%84%E6%95%B0%E5%AD%A6%E5%85%AC%E5%BC%8F%E6%B8%B2%E6%9F%93%E9%97%AE%E9%A2%98/
https://zhuanlan.zhihu.com/p/35988761
https://blog.csdn.net/qq_36667170/article/details/105846999