为了在博文中嵌入数学公式,所以将MathJax和Hexo整合在一起了
这里不使用任何Hexo插件,仅仅是将MathJax的script标签加入到页面最后,这样子在页面dom加载完毕后执行MathJax将相关的表达式转换成数学公式。
按照官方的脚本安装教程,将下下列标签加入至页面底部
1 | <script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-MML-AM_CHTML' async></script> |
这里会有两个问题,第一,可能对 $$
不支持,这时可以在页面中添加如下脚本
1 | <script type="text/x-mathjax-config"> |
第二,Hexo中转换Markdown的库 marked.js
可能会对 MathJax 产生影响,此时需要对 marked.js
的源码进行修改,找到 ./node_modules/marked/lib/
文件夹下的代码文件,找到类似于如下的代码
1 | escape: /^\\([\\`*{}\[\]()# +\-.!_>])/, |
改成这样
1 | escape: /^\\([`*\[\]()# +\-.!_>])/, |
这一步是在原基础上取消了对 \\
, \{
, \}
的转义(escape)
以下为测试代码
1 | $$ |
$$
H = -\sum\limits_{i=1}^{k}p_i\log_2(p_i)
$$
1 | $G = 1 - \sum\limits_k (p_k)^2$ |
$G = 1 - \sum\limits_k (p_k)^2$