hexo渲染mathjax公式解决方案

今天写论文翻译,里面有大量数学公式,用latex写的,然后生成博客发现渲染失败,Hexo内的数学公式问题终于引起了我的注意……
于是,百度Hexo下latex数学公式显示不出来,结果出来第一个打开看太烦了,然后打开第二个,很整洁,于是我就照着做了,结果接连报错,不过我这么聪明肯定很快解决咯,那篇终究是没有大错的,应该是博主太马虎了……下面我就重新理一理思路,以后有问题解决起来也很方便。Go!

现在的问题是,渲染数学公式,有的可以,有的不可以,,这应该是大家都出现的问题,至于什么原因,大家看刚刚那篇。
我只讲方法……
首先,卸载当前渲染引擎,装个别的——

$ npm uninstall hexo-renderer-marked --save
$ npm install hexo-renderer-kramed --save

然后到根目录的node_modules\kramed\lib\rules\inline.js中,第11行左右,进行替换——

// escape: /^\\([\\`*{}\[\]()#$+\-.!_>])/,
escape: /^\\([`*\[\]()#$+\-.!_>])/,

同时,第20行左右的em变量也要做相应的修改——

// em: /^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,
em: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,

接下来,到terminal,$ hexo clean,然后$ hexo generate,好了完成,收工回家!

注意主题里的配置文件要记得把mathjax使能
像这样——

# MathJax Support
mathjax:
enable: true

好了,这下可以收工回家了!