Alex_McAvoy

想要成为渔夫的猎手

Hexo 的 LaTeX 渲染

【插件】

Hexo 的 markdown 渲染引擎是 hexo-renderer-marked,不支持 LaTeX 语法

要想使用 LaTeX,则需要更换渲染引擎,hexo-renderer-kramed 引擎是在默认的渲染引擎 hexo-renderer-marked 的基础上构建的渲染引擎,两者比较接近。

1
2
npm uninstall hexo-renderer-marked --save
npm install hexo-renderer-kramed --save

【语义冲突】

由于 LaTeX 与 Markdown 语法间存在语义冲突,我们需要对配置文件进行相应更改。

在博客根目录下,进入 node_modules\kramed\lib\rules\inline.js,将第 11 行的escape变量的值做如下修改:

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

同时对第 20 行进行相应修改:

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

【配置文件更改】

进入到 NexT 主题目录,打开 _config.yml 配置文件,寻找到 mathjax 一项,将 enable 修改为 true,具体如下:

1
2
3
4
mathjax:
enable: true
per_page: false
cdn: //cdn.bootcss.com/mathjax/2.7.1/latest.js?config=TeX-AMS-MML_HTMLorMML
感谢您对我的支持,让我继续努力分享有用的技术与知识点!