在Hugo中引入MathJax支持数学公式
使 HTML 页面支持数学公式的常用方法是引入 MathJax 渲染,本文讲解 Hugo 引入 MathJax 脚本的具体操作步骤。
1. MathJax 简介
MathJax 是基于 JavaScript 开发的开源数学公式渲染引擎,支持LaTeX、MathML 及 AsciiMath 等形式的数学公式,兼容目前绝大多数主流浏览器。
2. 使用 Mmark
Hugo 支持 Blackfriday 和 Mmark 两种 Markdown 后端,默认使用 Blackfriday。为便于进行 MathJax 渲染,应在 MD 文件 Front Matter 中插入一行:
markup: mmark
切换到Mmark即可在MD文件中添加公式,数学公式开头及结尾需添加两个美元符号。例如 $$f(x)=ax+b$$
,显示效果如下:
$$f(x)=ax+b$$
3. Hugo 主题配置
在Hugo主题的 <body>
部分添加一行:
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-MML-AM_SVG"></script>
以上就是 Hugo 引入 MathJax 渲染的基本步骤,值得注意的是,在 Markdown 中被下划线 “_
” 包围的文字表示 “强调” 的意思,而 LaTeX (MathJax) 使用下划线来创建一个下标。下划线的这种 “双重标准” 会导致一些意料外的情况发生。为避免这一冲突,可以在数学表达式代码的每个下划线都添加转义符号,即 “\_
"。