Markdown中使用MathJax进行公式编辑
在next
主题中直接使用MathJax编辑公式会出故障,因为hexo自带的渲染
hexo-renderer-marked
与MathJax的渲染有矛盾,所以需要先卸载hexo-renderer-marked
,然后安装
hexo-renderer-pandoc
: 1
2npm uninstall hexo-renderer-marked --save
npm install hexo-renderer-pandoc --savehexo-renderer-pandoc
插件的使用需要安装pandoc,我安装的是2.13版本,因为版本过高也会报错。
另外,在使用Gitlab的Pages时,也需要在Linux环境中安装pandoc
,Ref: 1
2
3
4
5before_script:
- apt-get update -qq&&apt-get install -y -qq pandoc # 不行,因为版本太低
- wget https://github.com/jgm/pandoc/releases/download/2.13/pandoc-2.13-1-amd64.deb
- dpkg -i ./pandoc-2.13-1-amd64.deb
这样行间公式就没问题了,但行内公式仍旧会有毛病。 比如,凡是
\sum_{i=1}^n
这种句子,都需要写成sum_i^n
,不能再加括号{}
了,然后在后面说明i的取值范围。原因应该是下划线_
解析的时候的问题,需要转义??
有一种解决办法是公式中出现下划线_
的时候,都用\_
代替。
另外,同一个latex语句里面不能出现多个等号,否则就无法显示。
For example: \(\sum\_{i=0}^N\int_{a}^{b}g(t,i)\text{d}t\)
\[ \Delta F(A\rightarrow B)=\int _{0}^{1}{\frac {\partial F(\lambda )}{\partial \lambda }}d\lambda =-\int _{0}^{1}{\frac {k_{B}T}{Q}}{\frac {\partial Q}{\partial \lambda }}d\lambda =\int _{0}^{1}{\frac {k_{B}T}{Q}}\sum _{s}{\frac {1}{k_{B}T}}\exp[-U_{s}(\lambda )/k_{B}T]{\frac {\partial U_{s}(\lambda )}{\partial \lambda }}d\lambda =\int _{0}^{1}\left\langle {\frac {\partial U(\lambda )}{\partial \lambda }}\right\rangle _{\lambda }d\lambda =\int _{0}^{1}\left\langle U_{B}(\lambda )-U_{A}(\lambda )\right\rangle _{\lambda }d\lambda \]
注意: 需要在每一页中
front-matter部分加上mathjax: true
语句,方能使mathjax起作用。