Hexo 中使用 emoji 和 tasks

替换为 markdown-it

今天在迁移博客项目的时候,发现原来在 hugo 中可以使用的 Emoji 和 tasks 功能都不能正常使用了,查询了一下原因,主要是因为 hexo 默认的解析器是 hexo-renderer-marked ,这个默认的渲染器是不支持 emoji 功能的,但是支持 tasks,但是这个渲染器是不支持扩展的,所以如果希望同时使用这两个功能的话,就需要换一个渲染器。

这里推荐的是 hexo-renderer-markdown-it 渲染器,支持扩展,采用的是 markdown-it 的内核来解析 markdown 的文本。

npm un hexo-renderer-marked -S
npm i hexo-renderer-markdown-it -S

安装和配置 markdown-it

这样就替换完成了,然后再安装需要的插件:

npm i markdown-it-emoji markdown-it-task-lists -S

然后再增加相关配置:

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 解释:

(c) (C) (r) (R) (tm) (TM) (p) (P) +- 这些标识转换成 (c) (C) (r) (R) (tm) (TM) (p) (P) +- 。

一些常用的插件,比如上标和下标,可以在插件里加上 markdown-it-submarkdown-it-sup ,可以直接用 19^th^ 19^th^ 还有 H~2~O 表示 H~2~O 。

还有脚本、定义列表等功能,具体的见 https://markdown-it.github.io/

其它插件

因为 markdown-it 是支持扩展的,所以怎么找对应的扩展,也是非常重要的功能,比如 tasks 的支持,可以到 https://www.npmjs.com/ 里进行搜索,关键字是 keywords:markdown-it-plugin 或者直接打开链接 https://www.npmjs.com/search?q=keywords:markdown-it-plugin

就可以按照对应的功能去找寻找插件了。

原文地址:https://www.cnblogs.com/banshiliuli1990/p/12181430.html

时间: 2024-11-07 13:55:57

Hexo 中使用 emoji 和 tasks的相关文章

去除字符串中的emoji字符

对于使用utf8编码的mysql数据库来说,如果字符串中存在emoji小图像,是不能存进数据库中的,查了一下,原因大概是因为utf8编码可以存1-3个字节的字符,但是emoji是4个字节:解决方法可以把mysql的编码换成utf8mb4,需要相应版本的mysql:另外一种方法是把字符串中所有的emoji给去除掉,然后在存进数据库,具体的方法是: public static String filterEmoji(String source,String slipStr) { if(isNotBla

在MD中使用Emoji

mark语法中支持emoji表情 具体语法是:emoji: 比如我输入 :smile: 就会出现微笑??的表情 emoji表情会随着不同的MD编辑器有不同的显示效果,有的表情有些编辑器也是不支持的 emoji 表情和对应的md语法 在这个网站上可以点击表情可以直接复制,然后粘贴到自己的MD文件中去 贴几个常用的emoji blush smile laughing? smirk? sob joy? heart_eyes? :fire +1 -1 ?? ?? ?? ?? ?? ?? ?? ?? ??

Hexo中如何用Markdown插入本地图片

虽然在官方语法中,Markdown插入图片的格式是这样的: ![Alt text](/path/to/img.jpg) 然而,如果你用了Hexo框架,那你得小心了. 为什么要用Hexo,Octopress之类的框架呢?无非是为了让页面更加丰富多彩,以及让操作更加简便.这些用jeklly直接来做是十分繁琐,费时的. 好了,回归正题.首先,你不可能在网页里用绝对路径,这样怎么部署到服务器上呢?所以必定是相对路径.Markdown本来的语法中,只要img和md文件的相对路径是对的就行,然而Hexo不知

轻松处理PHP开发中微信emoji表情mysql存储的问题

背景 做微信开发的时候发现,微信支持emoji表情做昵称,结果考虑不周 Mysql表设计时,都是用UTF8字符集的.把带有emoji的昵称字段往里面insert一下就没了,整个字段变成了空字符串.有的根本插入是失败,原来是因为Mysql的utf8字符集是3字节的,而emoji是4字节,这样整个昵称就无法存储了. 这要怎么办呢? 第一种方案: 如果你已经有很多数据了就不要修改字符集了因为会造成乱码情况你可以干掉他或者表情替换成*** $result['nickname'] = preg_repla

在Hexo中渲染MathJax数学公式

最近学机器学习涉及很多的数学公式,公式如果用截图显示,会比较low而且不方便.因此需要对Hexo做些配置,支持公式渲染.同时文末整理了各种公式的书写心得,比如矩阵.大小括号.手动编号.上下角标和多行对其等,有兴趣的可以看看. 通过hexo-math插件安装MathJax 有个插件hexo-math,可以给Hexo博客添加MathJax公式支持,GitHub地址 https://github.com/hexojs/hexo-math 安装方法可其他hexo插件一样,在博客根目录执行npm inst

Hexo中添加本地图片

First 1 把主页配置文件_config.yml 里的post_asset_folder:这个选项设置为true 2 在你的hexo目录下执行这样一句话npm install hexo-asset-image --save,这是下载安装一个可以上传本地图片的插件,来自dalao:dalao的git 3 等待一小段时间后,再运行hexo n "xxxx"来生成md博文时,/source/_posts文件夹内除了xxxx.md文件还有一个同名的文件夹 4 最后在xxxx.md中想引入图

ios中使用emoji表情

在iOS UILabel,UITextView,UIAlertView等控件中都可以使用 使用方法如下 NSString *s = [NSString stringWithFormat:@"This is a smiley \ue415 %C face",0xE05A]; NSLog(@"11----%@",s); label.text=s; 以下是对应的表情编码,但是新版sdk中编码有所改变,具体请参考苹果官方文档对照着看http://opensource.app

vscode中启动浏览器的tasks.json

{    // See https://go.microsoft.com/fwlink/?LinkId=733558    // for the documentation about the tasks.json format    "version": "0.1.0",    "command": "firefox",    "windows": {        "command"

Java在mysql中存储emoji表情

mysql存储emoji表情要使用utf8mb4字符集,这是4字节存储,最低支持版本为5.5.3+,若不是,请升级到较新版本. 修改mysql配置文件 Window目录: mysql/my.ini Ubuntu16.04目录: /etc/mysql/conf.d/mysql.cnf  配置Client /etc/mysql/mysql.conf.d/mysql.cnf  配置Server 其他目录: 一般在etc/mysql/my.cnf 在mysql配置文件添加以下三部分内容: [client