Markdown中使用MathJax进行公式编辑

next主题中直接使用MathJax编辑公式会出故障,因为hexo自带的渲染 hexo-renderer-marked 与MathJax的渲染有矛盾,所以需要先卸载hexo-renderer-marked,然后安装 hexo-renderer-pandoc

1
2
npm uninstall hexo-renderer-marked --save
npm install hexo-renderer-pandoc --save
hexo-renderer-pandoc插件的使用需要安装pandoc,我安装的是2.13版本,因为版本过高也会报错。 另外,在使用Gitlab的Pages时,也需要在Linux环境中安装pandocRef
1
2
3
4
5
before_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起作用。