博客中不支持Latex是万万不行滴,而Hexo默认的渲染引擎是marked,但是marked不支持mathjax,所以需要更换Hexo的渲染引擎为hexo-renderer-kramed,主要步骤如下:
打开/node_modules/hexo-renderer-kramed/lib/renderer.js 将:
// Change inline math rule function formatText(text) { // Fit kramed's rule: $$ + \1 + $$ return text.replace(/`\$(.*?)\$`/g, '$$$$$1$$$$'); }修改为:
// Change inline math rule function formatText(text) { return text; }卸载hexo-math
npm uninstall hexo-math --save安装hexo-renderer-mathjax
npm install hexo-renderer-mathjax --save打开/node_modules/hexo-renderer-mathjax/mathjax.html 将最后一行的<script>改为:
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML"></script>因为LaTeX与markdown语法有语义冲突,所以 hexo 默认的转义规则会将一些字符进行转义,所以我们需要对默认的规则进行修改. 打开/node_modules\kramed\lib\rules\inline.js 更改后为:
escape: /^\\([`*\[\]()#$+\-.!_>])/, em: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,打开主题目录下的config.yml文件(注意这里是所使用主题的yml文件,不是hexo的yml文件) 加入下面这句:
mathjax: true并且写博客的时候需要开启Latex就需要加上头开启Mathjax: 例如:
title: Python向信号中添加不同强度dB的噪声 date: 2019-10-23 14:05:37 tags: [噪声, ECG] categories: [Python] mathjax: true👉 原博文,我仅仅是记录一下