hexo使用hexo-math插件支持MathJax

MathJax是使用LaTeX方式输入数学公式的好工具。Hexo虽然可以直接使用mathjax,但是存在一些不方便之处。使用hexo-math这个插件可以大大方便使用。
使用Hexo 3.2.0,主题NexT 5.0.1,hexo-math 3.0.0安装方式如下

在hexo安装目录下执行

1
npm install hexo-math --save

然后编辑站点根目录下的_config.yml,添加

1
2
3
4
5
6
math:
engine: 'mathjax' # or 'katex'
mathjax:
src: custom_mathjax_source
config:
# MathJax config

之后进入theme的目录,编辑主题的_config.yml,找到mathjax字段。NexT 5.0.1中默认mathjax是禁用,需要改成

1
2
mathjax:
enable: true

最后hexo g,就可以部署或者运行server查看效果了。


几个测试例子
使用$的一行代码:

1
Simple inline $a = b + c$.

Simple inline $a=b+c$.

使用$$的多行代码:

1
2
3
4
$$\frac{\partial u}{\partial t}
= h^2 \left( \frac{\partial^2 u}{\partial x^2} +
\frac{\partial^2 u}{\partial y^2} +
\frac{\partial^2 u}{\partial z^2}\right)$$

$$\frac{\partial u}{\partial t}= h^2 \left( \frac{\partial^2 u}{\partial x^2} +\frac{\partial^2 u}{\partial y^2} +\frac{\partial^2 u}{\partial z^2}\right)$$

使用Tag的块貌似不能用!!!

1
2
这儿讲了一些细节:首先是不能直接用\\来当换行符,需要用\newline
另外编辑公式的时候,不要使用* {% math %} 双大括号 等容易发生冲突的符号
1
2
3
4
5
6
7
8
$$
\left[
\begin{array}{cc|c}
1&2&3\newline
4&5&6
\end{array}
\right]
$$

$$
\left[
\begin{array}{cc|c}
1&2&3\newline
4&5&6
\end{array}
\right]
$$