0%

Hexo博客支持Latex语法

前言

由于在学习以及后续的使用过程中,需要用到 LaTex的公式书写,但是hexo博客自身并不支持渲染 LaTex数学公式,因此需要进行配置。

相关博客

博客配置

  • 搭建使用 GitHub action
  • 使用hexo博客系统
  • 使用next主题

过程

由于此博文系统使用的是GitHub Action进行的自动更新管理,因此在后面配置中遇到了其他问题,后面介绍

Next 支持mathjaxkatex两种渲染方式,其中katex的速度更快,但是对于 Latex 的支持有一定的限制。所以除非你的博客数量实在是过于庞大,不然就可以直接使用mathjax

mathjax可以选用下面两种渲染引擎的中的任一一种

  • hexo-renderer-kramed(在查找中发现此引擎并不推荐,因此后续演示的时候使用下者)
  • hexo-render-pandoc

hexo-render-pandoc为例,由于博客系统最终会重新部署到Github Action中,因此不进行教授部署其他服务器的教程,如有需要,可以参考 博文

使用传统方法安装 pandoc

1
2
3
4
- name: Install Pandoc
run: |
# install pandoc
curl -s -L https://github.com/jgm/pandoc/releases/download/2.9.2/pandoc-2.9.2-linux-amd64.tar.gz | tar xvzf - -C $RUNNER_TOOL_CACHE/

安装完成之后将 pandoc加入路径中,并对博文进行部署:

1
2
3
4
5
6
7
8
9
- name: Hexo Generate
run: |
# add pandoc to PATH
export PATH="$PATH:$RUNNER_TOOL_CACHE/pandoc-2.9.2/bin"
rm -f .yarnclean
yarn --frozen-lockfile --ignore-engines --ignore-optional --non-interactive --silent --ignore-scripts --production=false
rm -rf ./public
yarn run hexo clean
yarn run hexo generate

之后我们需要对Next的主题配置进行修改:

编辑_config.yml

找到 math一行

将其修改为如下内容:

1
2
3
4
5
6
7
8
9
10
11
math:
# Default (true) will load mathjax / katex script on demand.
# That is it only render those page which has `mathjax: true` in Front-matter.
# If you set it to false, it will load mathjax / katex srcipt EVERY PAGE.
per_page: true

# hexo-renderer-pandoc (or hexo-renderer-kramed) required for full MathJax support.
mathjax:
enable: true
# See: https://mhchem.github.io/MathJax-mhchem/
mhchem: false

请注意: per_page 是对每一个界面都尝试进行公式渲染,但是这样对于博文过多的博客网站来说是一种极大的时间以及应用开销,因此选项请默认保持 true,在对于需要公式渲染的界面中的title加入:mathjax: true即可

mhchem则是用来展示化学公式的渲染工具(我一个计算机学子应该用不到化学公式吧阿巴阿巴

至此,配置完成

-------------我也是有底线的哦如需更多,欢迎打赏-------------