前言
在处理特殊字符转义时导致 Hexo 渲染失败,便决定替换掉 Hexo 默认的hexo-renderer-marked
选择 Hexo 渲染引擎
在 Github 搜索 hexo-renderer
,我选择了 Star 数更多的功能更全的而且也还在持续更新的 hexo-renderer-markdown-it
安装 hexo-renderer-markdown-it
1 2 3 4 5 6 7 8
| // 进入 Hexo 项目根目录 cd <dir>
// 卸载默认渲染引擎 npm un hexo-renderer-marked --save
// 安装 hexo-renderer-markdown-it npm i hexo-renderer-markdown-it --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
| markdown: preset: 'default' render: html: true xhtmlOut: false langPrefix: 'language-' breaks: true linkify: true typographer: true quotes: '“”‘’' enable_rules: disable_rules: plugins: anchors: level: 2 collisionSuffix: '' permalink: false permalinkClass: 'header-anchor' permalinkSide: 'left' permalinkSymbol: '¶' case: 0 separator: '-'
|
保存好_config.yml
后,清除缓存并重新生成部署即替换完成
1 2 3 4 5
| # 清除缓存并重新生成 hexo clean && hexo g
# 部署 hexo d
|
安装插件
hexo-renderer-markdown-it
有大量可安装插件,按需安装即可
1 2 3 4 5 6 7 8 9 10 11 12
| npm install --save markdown-it-abbr npm install --save markdown-it-footnote npm install --save markdown-it-ins npm install --save markdown-it-sub npm install --save markdown-it-sup npm install --save markdown-it-anchor npm install --save markdown-it-deflist npm install --save markdown-it-mark npm install --save markdown-it-container npm install --save markdown-it-emoji npm install --save markdown-it-task-lists npm install --save markdown-it-attrs
|
修改配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13
| plugins: - markdown-it-abbr - markdown-it-footnote - markdown-it-ins - markdown-it-sub - markdown-it-sup - markdown-it-anchor - markdown-it-deflist - markdown-it-mark - markdown-it-container - markdown-it-emoji - markdown-it-task-lists - markdown-it-attrs
|
注意
由于markdown-it-attrs
插件的语法规则是{.class #identifier attr=value attr2="spaced value"}
,会解析{}
,若不希望解析{}
可修改该插件的配置文件,或直接禁用该插件。
1 2 3 4 5 6 7 8 9
|
const defaultOptions = { leftDelimiter: '{', rightDelimiter: '}', allowedAttributes: [] };
|
参考