曾好几次尝试在 Hexo 中使用 hexo-math
、hexo-renderer-markdown-it-plus
等包以支持 LaTeX 皆不成功,要么不行要么错乱。刚刚了解到如果使用 NexT
主题的话则不需要手工安装任何包。本文是一篇备忘录。
hexo: 7.0.0
hexo-theme-next: 7.8.0
一、配置 NexT 主题
修改 themes/next/_config.yml
,将 mathjax
启用,即:
1 | mathjax: |
设置为:
1 | mathjax: |
来个完整点的代码视图:
1 | # Math Formulas Render Support |
对于我个人来说没必要将 pre_page
设为 false
使得每页都加载不必要的 script。
二、配置 Post
给需要数学公式的 Post 的 front-matter 添加 mathjax 配置 mathjax: true
。
比如本文的是:
1 | --- |
三、测试
1. 贝叶斯公式:独立
1 | $$ P(A | B) = \frac{P(B | A) \cdot P(A)}{P(B)} $$ |
$$ P(A | B) = \frac{P(B | A) \cdot P(A)}{P(B)} $$
2. 贝叶斯公式:行内
1 | 这是文本行中的 $ P(A | B) = \frac{P(B | A) \cdot P(A)}{P(B)} $,也是可以的。 |
这是文本行中的 $ P(A | B) = \frac{P(B | A) \cdot P(A)}{P(B)} $,也是可以的。
3. 高斯函数:独立
1 | $$ f(x) = \exp(-γx^2) $$ |
$$ f(x) = \exp(-γx^2) $$
4. 高斯函数:行内
1 | 这是文本行中的 $ f(x) = \exp(-γx^2) $,也是可以的。 |
这是文本行中的 $ f(x) = \exp(-γx^2) $,也是可以的。
5. 欧拉公式:独立
1 | $$ e^{i \theta} = \cos(\theta) + i \sin(\theta) $$ |
$$ e^{i \theta} = \cos(\theta) + i \sin(\theta) $$
6. 欧拉公式:行内
1 | 这是文本行中的 $ e^{i \theta} = \cos(\theta) + i \sin(\theta) $,也是可以的。 |
这是文本行中的 $ e^{i \theta} = \cos(\theta) + i \sin(\theta) $,也是可以的。
7. 一元二次方程的解:独立
1 | $$ \Delta = b^2 - 4ac $$ |
$$ \Delta = b^2 - 4ac $$
$$ x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2a} $$
多了一行?
8. 一元二次方程的解:行内
1 | 这是文本行中的 $ x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2a} $,也是可以的。 |
这是文本行中的 $ x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2a} $,也是可以的。
参考资料
很多是过期了的。
Hexo-NexT 文档:配置MathJax
Hexo博客支持数学公式
hexo渲染Latex公式(最简单方法)_仅参考
结合MathType和MathJax在Hexo博客中插入数学公式