今天在迁移博客项目的时候,发现原来在 hugo 中能够使用的 Emoji 和 tasks 功能都不能正常使用了,查询了一下缘由,主要是由于 hexo 默认的解析器是 hexo-renderer-marked
,这个默认的渲染器是不支持 emoji 功能的,可是支持 tasks,可是这个渲染器是不支持扩展的,因此若是但愿同时使用这两个功能的话,就须要换一个渲染器。html
这里推荐的是 hexo-renderer-markdown-it
渲染器,支持扩展,采用的是 markdown-it
的内核来解析 markdown 的文本。git
npm un hexo-renderer-marked -S npm i hexo-renderer-markdown-it -S
这样就替换完成了,而后再安装须要的插件:github
npm i markdown-it-emoji markdown-it-task-lists -S
shell
而后再增长相关配置:npm
markdown: render: html: true # 在 markdown 文本中支持 html tag 标签 xhtmlOut: false # 须要 xtml 文档,使用 <br /> 替代 <br> breaks: true # 用 <br> 开始新的一行 linkify: true # 自动将 多是连接的内容转换成连接 typographer: true # 印刷标识转换 plugins: - markdown-it-abbr - markdown-it-footnote - markdown-it-ins - markdown-it-sub - markdown-it-sup - markdown-it-emoji - markdown-it-task-lists anchors: level: 2 collisionSuffix: '' permalink: false, permalinkClass: 'header-anchor' permalinkSymbol: '' case: 0 separator: ''
typographer 解释:segmentfault
将 (c) (C) (r) (R) (tm) (TM) (p) (P) +-
这些标识转换成 (c) (C) (r) (R) (tm) (TM) (p) (P) +- 。markdown
一些经常使用的插件,好比上标和下标,能够在插件里加上 markdown-it-sub
和 markdown-it-sup
,能够直接用 19^th^
19^th^ 还有 H~2~O
表示 H~2~O 。hexo
还有脚本、定义列表等功能,具体的见 https://markdown-it.github.io/ 。spa
由于 markdown-it 是支持扩展的,因此怎么找对应的扩展,也是很是重要的功能,好比 tasks 的支持,能够到 https://www.npmjs.com/ 里进行搜索,关键字是 keywords:markdown-it-plugin
或者直接打开连接 https://www.npmjs.com/search?q=keywords:markdown-it-plugin 。插件
就能够按照对应的功能去找寻找插件了。
文章首发于:https://www.zucchiniy.cn