想在Stellar主题中使用katex书写公式,就需要更改渲染器,使用如下代码卸载博客中原生的渲染器hexo-renderer-marked,下载新渲染器hexo-renderer-markdown-it以及katex支持@traptitech/markdown-it-katex

1
2
3
npm un hexo-renderer-marked --save  
npm i hexo-renderer-markdown-it --save
npm i @traptitech/markdown-it-katex --save

但是更改渲染器后会出现headerlink无法渲染出来的问题,此时需要安装一个包markdown-it-anchor用于headerlink的渲染。

1
npm install markdown-it-anchor --save

下载完成后在_config.yml中添加如下设置代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
markdown:
preset: 'default'
render:
html: true
xhtmlOut: true
breaks: true
langPrefix: 'language-'
linkify: true
typographer: true
quotes: '“”‘’'
plugins:
- 'markdown-it-footnote' # 角标
- 'markdown-it-ins' # 下划线
- 'markdown-it-mark' # 高亮
- 'markdown-it-sub' # 分子式
- 'markdown-it-sup' # 上角标
- plugin:
name: '@traptitech/markdown-it-katex'
options: # see https://katex.org/docs/options.html
blockClass: "math-block"
strict: false
throwOnError: false
errorColor: "#cc0000"
- markdown-it-anchor
anchors:
level: 2
collisionSuffix: ''
permalink: true
permalinkClass: 'headerlink'
permalinkBefore: true
permalinkSymbol: ''

在主题配置文件_config.stellar.yml中添加如下代码:

1
2
3
4
5
6
7
plugins:
katex:
enable: true
min_css: <link rel="stylesheet" href="https://gcore.jsdelivr.net/npm/katex@0.16.4/dist/katex.min.css" integrity="sha384-vKruj+a13U8yHIkAyGgK1J3ArTLzrFGBbBc0tDp4ad/EyewESeXE/Iv67Aj8gKZ0" crossorigin="anonymous">
min_js: <script defer src="https://gcore.jsdelivr.net/npm/katex@0.16.4/dist/katex.min.js" integrity="sha384-PwRUT/YqbnEjkZO0zZxNqcxACrXe+j766U2amXcgMg5457rve2Y7I6ZJSm2A0mS4" crossorigin="anonymous"></script>
auto_render_min_js: <script defer src="https://gcore.jsdelivr.net/npm/katex@0.16.4/dist/contrib/auto-render.min.js" integrity="sha384-+VBxd3r6XgURycqtZ117nYw44OOcIax56Z4dCRWbxyPt0Koah1uHoK0o4+/RRE05" crossorigin="anonymous"onload="renderMathInElement(document.body);"></script>

此时公式与headerlink便能够正常显示了。


本站由 @anonymity 使用 Stellar 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。