标签外挂是 Hexo 独有的功能,并不是标准的 Markdown 格式。

以下的写法,只适用于 Butterfly 主题,用在其它主题上不会有效果,甚至可能会报错。使用前请留意

标签外挂虽然能为主题带来一些额外的功能和 UI 方面的强化,但是,标签外挂也有明显的限制,使用时请留意。

Note 提示框(Bootstrap Callout)

主题配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Note - Bootstrap 提示框
note:
# Note 标签样式值:
# - simple bs-callout 旧警告样式。默认。
# - modern bs-callout 新 (v2-v3) 警告样式。
# - flat 扁平提示框样式,带背景,如 Mozilla 或 StackOverflow。
# - disabled 禁用所有 Note 标签的 CSS 样式。
style: flat
# 是否显示图标
icons: true
# 边框半径
border_radius: 3
# 背景颜色偏移百分比 (modern: -12 | 12; flat: -18 | 6)。
# 也应用于标签变量。此选项可与禁用的 Note 标签一起使用。
light_bg_offset: 0

iconslight_bg_offset 只对方法一生效

Note 标签外挂有两种用法

1
2
3
{% note [class] [no-icon] [style] %}
内容 (support inline tags too.io).
{% endnote %}
名称用法
class【可选】标识,不同的标识有不同的配色
( default / primary / success / info / warning / danger )
no-icon【可选】不显示 icon
style【可选】可以覆盖配置中的 style
(simple/modern/flat/disabled)

style为:simple

1
2
3
{% note simple %}
默认 提示块标签
{% endnote %}

默认 提示块标签

1
2
3
{% note default simple %}
default 提示块标签
{% endnote %}

default 提示块标签

1
2
3
{% note primary simple %}
primary 提示块标签
{% endnote %}

primary 提示块标签

1
2
3
{% note info simple %}
info 提示块标签
{% endnote %}

info 提示块标签

1
2
3
{% note warning simple %}
warning 提示块标签
{% endnote %}

warning 提示块标签

1
2
3
{% note danger simple %}
danger 提示块标签
{% endnote %}

danger 提示块标签


style为:modern

1
2
3
{% note modern %}
默认 提示块标签
{% endnote %}

默认 提示块标签

1
2
3
{% note default modern %}
default 提示块标签
{% endnote %}

default 提示块标签

1
2
3
{% note primary modern %}
primary 提示块标签
{% endnote %}

primary 提示块标签

1
2
3
{% note success modern %}
success 提示块标签
{% endnote %}

success 提示块标签

1
2
3
{% note info modern %}
info 提示块标签
{% endnote %}

info 提示块标签

1
2
3
{% note warning modern %}
warning 提示块标签
{% endnote %}

warning 提示块标签


style为:flat

1
2
3
{% note flat %}
默认 提示块标签
{% endnote %}

默认 提示块标签

1
2
3
{% note default flat %}
default 提示块标签
{% endnote %}

default 提示块标签

1
2
3
{% note primary flat %}
primary 提示块标签
{% endnote %}

primary 提示块标签

1
2
3
{% note success flat %}
success 提示块标签
{% endnote %}

success 提示块标签

1
2
3
{% note info flat %}
info 提示块标签
{% endnote %}

info 提示块标签

1
2
3
{% note warning flat %}
warning 提示块标签
{% endnote %}

warning 提示块标签

1
2
3
{% note danger flat %}
danger 提示块标签
{% endnote %}

danger 提示块标签


style为:disabled

1
2
3
{% note disabled %}
默认 提示块标签
{% endnote %}

默认 提示块标签

1
2
3
{% note default disabled %}
default 提示块标签
{% endnote %}

default 提示块标签

1
2
3
{% note primary disabled %}
primary 提示块标签
{% endnote %}

primary 提示块标签

1
2
3
{% note success disabled %}
success 提示块标签
{% endnote %}

success 提示块标签

1
2
3
{% note info disabled %}
info 提示块标签
{% endnote %}

info 提示块标签

1
2
3
{% note warning disabled %}
warning 提示块标签
{% endnote %}

warning 提示块标签


style为:no-icon

1
2
3
{% note no-icon %}
默认 提示块标签
{% endnote %}

默认 提示块标签

1
2
3
{% note default no-icon %}
default 提示块标签
{% endnote %}

default 提示块标签

1
2
3
{% note primary no-icon %}
primary 提示块标签
{% endnote %}

primary 提示块标签

1
2
3
{% note success no-icon %}
success 提示块标签
{% endnote %}

success 提示块标签

1
2
3
{% note info no-icon %}
info 提示块标签
{% endnote %}

info 提示块标签

1
2
3
{% note warning no-icon %}
warning 提示块标签
{% endnote %}

warning 提示块标签

1
2
3
{% note danger no-icon %}
danger 提示块标签
{% endnote %}

danger 提示块标签

仅支持3.2.0以上版本支持

1
2
3
{% note [color] [icon] [style] %}
Any content (support inline tags too.io).
{% endnote %}
名称用法
color【可选】顔色
(default / blue / pink / red / purple / orange / green)
icon【可选】可配置自定义 icon (只支持 fontawesome 图标, 也可以配置 no-icon )
style【可选】可以覆盖配置中的 style
(simple/modern/flat/disabled)

style为:simple

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% note 'fab fa-cc-visa' simple %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note blue 'fas fa-bullhorn' simple %}
2021 年快到了....
{% endnote %}
{% note pink 'fas fa-car-crash' simple %}
小心开车 安全至上
{% endnote %}
{% note red 'fas fa-fan' simple%}
这是三片呢?还是四片?
{% endnote %}
{% note orange 'fas fa-battery-half' simple %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note purple 'far fa-hand-scissors' simple %}
剪刀石头布
{% endnote %}
{% note green 'fab fa-internet-explorer' simple %}
前端最讨厌的浏览器
{% endnote %}

你是刷 Visa 还是 UnionPay

2021 年快到了….

小心开车 安全至上

这是三片呢?还是四片?

你是刷 Visa 还是 UnionPay

剪刀石头布

前端最讨厌的浏览器


style为:modern

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% note 'fab fa-cc-visa' modern %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note blue 'fas fa-bullhorn' modern %}
2021 年快到了....
{% endnote %}
{% note pink 'fas fa-car-crash' modern %}
小心开车 安全至上
{% endnote %}
{% note red 'fas fa-fan' modern%}
这是三片呢?还是四片?
{% endnote %}
{% note orange 'fas fa-battery-half' modern %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note purple 'far fa-hand-scissors' modern %}
剪刀石头布
{% endnote %}
{% note green 'fab fa-internet-explorer' modern %}
前端最讨厌的浏览器
{% endnote %}

你是刷 Visa 还是 UnionPay

2021 年快到了….

小心开车 安全至上

这是三片呢?还是四片?

你是刷 Visa 还是 UnionPay

剪刀石头布

前端最讨厌的浏览器


style为:flat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% note 'fab fa-cc-visa' flat %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note blue 'fas fa-bullhorn' flat %}
2021 年快到了....
{% endnote %}
{% note pink 'fas fa-car-crash' flat %}
小心开车 安全至上
{% endnote %}
{% note red 'fas fa-fan' flat%}
这是三片呢?还是四片?
{% endnote %}
{% note orange 'fas fa-battery-half' flat %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note purple 'far fa-hand-scissors' flat %}
剪刀石头布
{% endnote %}
{% note green 'fab fa-internet-explorer' flat %}
前端最讨厌的浏览器
{% endnote %}

你是刷 Visa 还是 UnionPay

2021 年快到了….

小心开车 安全至上

这是三片呢?还是四片?

你是刷 Visa 还是 UnionPay

剪刀石头布

前端最讨厌的浏览器


style为:disabled

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% note 'fab fa-cc-visa' disabled %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note blue 'fas fa-bullhorn' disabled %}
2021 年快到了....
{% endnote %}
{% note pink 'fas fa-car-crash' disabled %}
小心开车 安全至上
{% endnote %}
{% note red 'fas fa-fan' disabled %}
这是三片呢?还是四片?
{% endnote %}
{% note orange 'fas fa-battery-half' disabled %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note purple 'far fa-hand-scissors' disabled %}
剪刀石头布
{% endnote %}
{% note green 'fab fa-internet-explorer' disabled %}
前端最讨厌的浏览器
{% endnote %}

你是刷 Visa 还是 UnionPay

2021 年快到了….

小心开车 安全至上

这是三片呢?还是四片?

你是刷 Visa 还是 UnionPay

剪刀石头布

前端最讨厌的浏览器


style为:no-icon

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% note no-icon %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note blue no-icon %}
2021 年快到了....
{% endnote %}
{% note pink no-icon %}
小心开车 安全至上
{% endnote %}
{% note red no-icon %}
这是三片呢?还是四片?
{% endnote %}
{% note orange no-icon %}
你是刷 Visa 还是 UnionPay
{% endnote %}
{% note purple no-icon %}
剪刀石头布
{% endnote %}
{% note green no-icon %}
前端最讨厌的浏览器
{% endnote %}

你是刷 Visa 还是 UnionPay

2021 年快到了….

小心开车 安全至上

这是三片呢?还是四片?

你是刷 Visa 还是 UnionPay

剪刀石头布

前端最讨厌的浏览器

一个图库集合,写法:

1
2
3
4
5
<div class="gallery-group-main">
{% galleryGroup name description link img-url %}
{% galleryGroup name description link img-url %}
{% galleryGroup name description link img-url %}
</div>
参数解释
name图库名字
description图库描述
link连接到对应相册的地址
img-url图库封面的地址

示例

1
2
3
4
5
6
<div class="gallery-group-main">
{% galleryGroup '壁纸' '收藏的一些壁纸' '/Gallery/wallpaper' https://i.loli.net/2019/11/10/T7Mu8Aod3egmC4Q.png %}
{% galleryGroup '漫威' '关于漫威的图片' '/Gallery/marvel' https://i.loli.net/2019/12/25/8t97aVlp4hgyBGu.jpg %}
{% galleryGroup 'OH MY GIRL' '关于OH MY GIRL的图片' '/Gallery/ohmygirl' https://i.loli.net/2019/12/25/hOqbQ3BIwa6KWpo.jpg %}
</div>

区别于旧版的 Gallery 相册,新的 Gallery 相册会自动根据图片长度进行排版,书写也更加方便,与 markdown 格式一样。可根据需要插入到相应的 md。

写法:

1
2
3
{% gallery [button] %}
markdown 图片格式
{% endgallery %}
参数解释
button【可选】点击按钮加载更多图片,填写 true/false。默认为 false。

示例

1
2
3
4
5
6
7
8
9
10
{% gallery %}
![](https://i.loli.net/2019/12/25/Fze9jchtnyJXMHN.jpg)
![](https://i.loli.net/2019/12/25/ryLVePaqkYm4TEK.jpg)
![](https://i.loli.net/2019/12/25/gEy5Zc1Ai6VuO4N.jpg)
![](https://i.loli.net/2019/12/25/d6QHbytlSYO4FBG.jpg)
![](https://i.loli.net/2019/12/25/6nepIJ1xTgufatZ.jpg)
![](https://i.loli.net/2019/12/25/E7Jvr4eIPwUNmzq.jpg)
![](https://i.loli.net/2019/12/25/mh19anwBSWIkGlH.jpg)
![](https://i.loli.net/2019/12/25/2tu9JC8ewpBFagv.jpg)
{% endgallery %}

写法:

1
2
{% gallery url,[link],[button] %}
{% endgallery %}
参数解释
url【必须】 识别词
link【必须】远程的 json 链接
button【可选】点击按钮加载更多图片,填写 true/false。默认为 false。

远程链接 Json 的例子:

有三个参数,url是必须存在的,alttitle 可有可无。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[
{
"url": "https://cdn.jsdelivr.net/gh/jerryc127/CDN/img/IMG_0556.jpg",
"alt": "IMG_0556.jpg",
"title": "这是title"
},
{
"url": "https://cdn.jsdelivr.net/gh/jerryc127/CDN/img/IMG_0472.jpg",
"alt": "IMG_0472.jpg"
},
{
"url": "https://cdn.jsdelivr.net/gh/jerryc127/CDN/img/IMG_0453.jpg",
"alt": ""
},
{
"url": "https://cdn.jsdelivr.net/gh/jerryc127/CDN/img/IMG_0931.jpg",
"alt": ""
}
]

示例:

1
2
3
4
5
6
7
8
9
{% gallery url,https://xxxx.com/sss.json %}
{% endgallery %}

{% gallery url,https://xxxx.com/sss.json,true,220,10 %}
{% endgallery %}

{% gallery url,https://xxxx.com/sss.json,true,,10 %}
{% endgallery %}

Tag-hide标签隐藏

2.2.0 以上提供

请注意,tag-hide 内的标签外挂 content 内都不建议有 h1 - h6 等标题。因为 Toc 会把隐藏内容标题也显示出来,而且当滚动屏幕时,如果隐藏内容没有显示出来,会导致 Toc 的滚动出现异常。

如果你想把一些文字、内容隐藏起来,并提供按钮让用户点击显示。可以使用这个标签外挂。

inline

inline

inline 在文本里面添加按钮隐藏内容,只限文字

( content 不能包含英文逗号,可用)

1
{% hideInline content,display,bg,color %}
参数解释
content文本内容
display【可选】按钮显示的文字
bg【可选】按钮的背景颜色
color【可选】按钮文字的颜色

示例

1
2
3
哪个英文字母最酷? {% hideInline 因为西装裤(C装酷),查看答案,#FF7242,#fff %}

门里站着一个人? {% hideInline 闪 %}

哪个英文字母最酷? 因为西装裤(C装酷)

门里站着一个人?

block

Block

block独立的 block 隐藏内容,可以隐藏很多内容,包括图片,代码块等等

( display 不能包含英文逗号,可用)

1
2
3
{% hideBlock display,bg,color %}
content
{% endhideBlock %}
参数解释
content文本内容
display【可选】按钮显示的文字
bg【可选】按钮的背景颜色
color【可选】按钮文字的颜色

示例

1
2
3
4
查看答案
{% hideBlock 查看答案 %}
傻子,怎么可能有答案
{% endhideBlock %}

查看答案

傻子,怎么可能有答案

Toggle

Toggle

2.3.0 以上支持

如果你需要展示的内容太多,可以把它隐藏在收缩框里,需要时再把它展开。

( display 不能包含英文逗号,可用)

1
2
3
{% hideToggle display,bg,color %}
content
{% endhideToggle %}
参数解释
display显示的文字
bg【可选】背景颜色
color【可选】文字的颜色

例子

1
2
3
4
5
6
7
8
9
10
{% hideToggle Butterfly安装方法 %}
在你的博客根目录里

git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly

如果想要安装比较新的 dev 分支,可以

git clone -b dev https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly

{% endhideToggle %}
Butterfly安装方法

在你的博客根目录里

git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly

如果想要安装比较新的 dev 分支,可以

git clone -b dev https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly

Mermaid图标绘制

使用 mermaid 标签可以绘制 Flowchart(流程图)、Sequence diagram(时序图 )、Class Diagram(类别图)、State Diagram(状态图)、Gantt(甘特图)和 Pie Chart(圆形图),具体可以查看mermaid 文档

更改主题配置文件:

1
2
3
4
5
6
7
8
9
10
# Mermaid
# https://github.com/mermaid-js/mermaid
mermaid:
enable: false
# Write Mermaid diagrams using code blocks
code_write: false
# built-in themes: default / forest / dark / neutral
theme:
light: default
dark: dark

写法

1
2
3
{% mermaid %}
内容
{% endmermaid %}

示例饼图

1
2
3
4
5
6
7
8
{% mermaid %}
pie
title 产品X的关键要素
"钙" : 42.96
"钾" : 50.05
"镁" : 10.01
"铁" : 5
{% endmermaid %}

示例思维导图:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{% mermaid %}
mindmap
root((mindmap))
Origins
Long history
::icon(fa fa-book)
Popularisation
British popular psychology author Tony Buzan
Research
On effectiveness<br/>and features
On Automatic creation
Uses
Creative techniques
Strategic planning
Argument mapping
Tools
Pen and paper
Mermaid
{% endmermaid %}

Tabs栏目

使用方法:

1
2
3
4
5
6
7
8
9
10
{% tabs Unique name, [index] %}

<!-- tab [Tab caption] [@icon] -->

Any content (support inline tags too).

<!-- endtab -->

{% endtabs %}

参数解释
Unique nametabs 区块标签的唯一名称,不包含逗号。将用于每个选项卡的 #id 前缀,并附加其索引号。若名称中有空格,生成 #id 时会将空格替换为短横线。仅对当前文章/页面的 URL 必须唯一!
[index]【可选】活动选项卡的索引号。如果未指定,将选择第一个选项卡(1)。如果索引为 -1,则不会选择任何选项卡,类似于折叠内容。可选参数。
[Tab caption]当前选项卡的标题。如果未指定标题,将使用唯一名称和选项卡索引后缀作为选项卡标题。如果未指定标题,但指定了图标,标题将为空。
[@icon]【可选】FontAwesome 图标名称(全名,如 ‘fas fa-font’)。可以有或没有空格;例如 ‘Tab caption @icon’ 与 ‘Tab caption@icon’ 类似。

示例 1 - 预设选择第一个【默认】

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% tabs test1 %}

<!-- tab -->

**This is Tab 1.**

<!-- endtab -->

<!-- tab -->

**This is Tab 2.**

<!-- endtab -->

<!-- tab -->

**This is Tab 3.**

<!-- endtab -->

{% endtabs %}

This is Tab 1.

This is Tab 2.

This is Tab 3.

示例 2 - 预设选择第3个tabs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% tabs test2, 3 %}

<!-- tab -->

**This is Tab 1.**

<!-- endtab -->

<!-- tab -->

**This is Tab 2.**

<!-- endtab -->

<!-- tab -->

**This is Tab 3.**

<!-- endtab -->

{% endtabs %}

This is Tab 1.

This is Tab 2.

This is Tab 3.

示例 3 - 没有预设值

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% tabs test3, -1 %}

<!-- tab -->

**This is Tab 1.**

<!-- endtab -->

<!-- tab -->

**This is Tab 2.**

<!-- endtab -->

<!-- tab -->

**This is Tab 3.**

<!-- endtab -->

{% endtabs %}

This is Tab 1.

This is Tab 2.

This is Tab 3.

示例 4 - 自定义 Tab 名 + 只有 icon + icon 和 Tab 名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% tabs test4 %}

<!-- tab 第一个Tab -->

**tab 名字为第一个 Tab**

<!-- endtab -->

<!-- tab @fab fa-apple-pay -->

**只有图标 没有 Tab 名字**

<!-- endtab -->

<!-- tab 炸弹@fas fa-bomb -->

**名字+icon**

<!-- endtab -->

{% endtabs %}

tab 名字为第一个 Tab

只有图标 没有 Tab 名字

名字+icon

Button按钮

使用方法:

1
{% btn [url],[text],[icon],[color] [style] [layout] [position] [size] %}

参数:

参数解释
url【必须】链接地址
text【必须】按钮文字
icon【可选】图标
color【可选】按钮背景顔色(默认 style 时)按钮字体和边框顔色(outline 时) 配置: default/blue/pink/red/purple/orange/green
style【可选】按钮样式 默认实心 配置: outline/留空
layout【可选】按钮佈局 默认为 line 配置: block/留空
position【可选】按钮位置 前提是设置了 layout 为 block 默认为左边 配置: center/right/留空
size【可选】按钮大小 配置: larger/留空

示例:

1
2
3
4
5
点击按钮进入我的网站 {% btn 'https://blog.3ms.run/',Butterfly %}
点击按钮进入我的网站 {% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right %}
点击按钮进入我的网站 {% btn 'https://blog.3ms.run/',Butterfly,,outline %}
点击按钮进入我的网站 {% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline %}
点击按钮进入我的网站 {% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,larger %}

点击按钮进入我的网站 Butterfly
点击按钮进入我的网站 Butterfly
点击按钮进入我的网站 Butterfly
点击按钮进入我的网站 Butterfly
点击按钮进入我的网站 Butterfly

按钮对齐位置

1
2
3
4
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,block %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,block center larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,block right outline larger %}

Butterfly Butterfly Butterfly

自定义按钮颜色

实心按钮

1
2
3
4
5
6
7
8
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,blue larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,pink larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,red larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,purple larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,orange larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,green larger %}

Butterfly Butterfly Butterfly Butterfly Butterfly Butterfly Butterfly

空心按钮

1
2
3
4
5
6
7
8
9
10
<div class="btn-center">
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline blue larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline pink larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline red larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline purple larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline orange larger %}
{% btn 'https://blog.3ms.run/',Butterfly,far fa-hand-point-right,outline green larger %}
</div>

InlineImg图像以内联元素显示

Butterfly主题中的图片都是默认以块级元素显示,如果你想以内联元素显示,可以使用这个标签外挂。

1
{% inlineImg [src] [height] %}

参数:

参数解释
src图片链接
height【可选】图片高度限制

示例

1
2
3
4
5
6
你看她长得漂亮不

![](https://i.loli.net/2021/03/19/2P6ivUGsdaEXSFI.png)

我觉得很漂亮 {% inlineImg https://i.loli.net/2021/03/19/5M4jUB3ynq7ePgw.png 150px %}

你看她长得漂亮不

我觉得很漂亮

Label 高亮所需的文字

由于 hexo 的渲染限制, 在段落开头使用 label 标签外挂会出现一些问题。例如:连续开头使用 label 标签外挂的段落无法换行

建议 不要 在段落开头使用 label 标签外挂

用法:

1
{% label text color %}
参数解释
text文字
color【可选】背景颜色,默认为 default default/blue/pink/red/purple/orange/green

示例:

1
2
臣亮言:{% label 先帝 %}创业未半,而{% label 中道崩殂 blue %}。今天下三分,{% label 益州疲敝 pink %},此诚{% label 危急存亡之秋 red %}也!然侍衞之臣,不懈于内;{% label 忠志之士 purple %},忘身于外者,盖追先帝之殊遇,欲报之于陛下也。诚宜开张圣听,以光先帝遗德,恢弘志士之气;不宜妄自菲薄,引喻失义,以塞忠谏之路也。
宫中、府中,俱为一体;陟罚臧否,不宜异同。若有{% label 作奸 orange %}、{% label 犯科 green %},及为忠善者,宜付有司,论其刑赏,以昭陛下平明之治;不宜偏私,使内外异法也。

臣亮言:先帝创业未半,而中道崩殂。今天下三分,益州疲敝,此诚危急存亡之秋也!然侍衞之臣,不懈于内;忠志之士,忘身于外者,盖追先帝之殊遇,欲报之于陛下也。诚宜开张圣听,以光先帝遗德,恢弘志士之气;不宜妄自菲薄,引喻失义,以塞忠谏之路也。
宫中、府中,俱为一体;陟罚臧否,不宜异同。若有作奸犯科,及为忠善者,宜付有司,论其刑赏,以昭陛下平明之治;不宜偏私,使内外异法也。

Timeline 时间线

使用方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
{% timeline title,color %}

<!-- timeline title -->

xxxxx

<!-- endtimeline -->
<!-- timeline title -->

xxxxx

<!-- endtimeline -->

{% endtimeline %}
参数解释
title标题/时间线
colortimeline 颜色 default(留空) / blue / pink / red / purple / orange / green

示例:

1
2
3
4
5
6
7
8
9
{% timeline 2022 %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-02

这是测试页面

1
2
3
4
5
6
7
8
9
10
{% timeline 2022,blue %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-02

这是测试页面

1
2
3
4
5
6
7
8
9
10
{% timeline 2022,pink %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-02

这是测试页面

1
2
3
4
5
6
7
8
9
10
{% timeline 2022,red %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-02

这是测试页面

1
2
3
4
5
6
7
8
9
10
{% timeline 2022,purple %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-02

这是测试页面

1
2
3
4
5
6
7
8
9
10
{% timeline 2022,orange %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-03

这是测试页面

01-02

这是测试页面

1
2
3
4
5
6
7
8
9
10
{% timeline 2022,green %}

<!-- timeline 01-02 -->

这是测试页面

<!-- endtimeline -->

{% endtimeline %}

2022

01-02

这是测试页面

可在任何界面插入类似友情链接列表效果

内容格式与友情链接界面一样,支持 yml 格式

1
2
3
{% flink %}
xxxxxx
{% endflink %}

示例

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
{% flink %}
- class_name: 友情链接
class_desc: 那些人,那些事
link_list:
- name: JerryC
link: https://blog.3ms.run/
avatar: https://jerryc.me/img/avatar.png
descr: 今日事,今日毕
- name: Hexo
link: https://hexo.io/zh-tw/
avatar: https://d33wubrfki0l68.cloudfront.net/6657ba50e702d84afb32fe846bed54fba1a77add/827ae/logo.svg
descr: 快速、简单且强大的网志框架

- class_name: 网站
class_desc: 值得推荐的网站
link_list:
- name: Youtube
link: https://www.youtube.com/
avatar: https://i.loli.net/2020/05/14/9ZkGg8v3azHJfM1.png
descr: 视频网站
- name: Weibo
link: https://www.weibo.com/
avatar: https://i.loli.net/2020/05/14/TLJBum386vcnI1P.png
descr: 中国最大社交分享平台
- name: Twitter
link: https://twitter.com/
avatar: https://i.loli.net/2020/05/14/5VyHPQqR6LWF39a.png
descr: 社交分享平台
{% endflink %}

ABCJS 乐谱

在页面上渲染乐谱

修改主题配置文件:

1
2
3
4
5
6
# abcjs (乐谱渲染)
# See https://github.com/paulrosen/abcjs
# ---------------
abcjs:
enable: true
per_page: true
参数解释
enable是否启用 ABCJS
per_page是否每页都加载 ABCJS, 如果设爲 false, 在你使用 ABCJS 时,你需要在使用 ABCJS 的页面 Front-matter 添加 abcjs: true

写法:

1
2
3
{% score %}
乐谱代码
{% endscore %}

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{% score %}
X:1
T:alternate heads
M:C
L:1/8
U:n=!style=normal!
K:C treble style=rhythm
"Am" BBBB B2 B>B | "Dm" B2 B/B/B "C" B4 |"Am" B2 nGnB B2 nGnA | "Dm" nDB/B/ nDB/B/ "C" nCB/B/ nCB/B/ |B8| B0 B0 B0 B0 |]
%%text This translates to:
[M:C][K:style=normal]
[A,EAce][A,EAce][A,EAce][A,EAce] [A,EAce]2 [A,EAce]>[A,EAce] |[DAdf]2 [DAdf]/[DAdf]/[DAdf] [CEGce]4 |[A,EAce]2 GA [A,EAce] GA |D[DAdf]/[DAdf]/ D[DAdf]/[DAdf]/ C [CEGce]/[CEGce]/ C[CEGce]/[CEGce]/ |[CEGce]8 | [CEGce]2 [CEGce]2 [CEGce]2 [CEGce]2 |]
GAB2 !style=harmonic![gb]4|GAB2 [K: style=harmonic]gbgb|
[K: style=x]
C/A,/ C/C/E C/zz2|
w:Rock-y did-nt like that
{% endscore %}

Series 系列文章

在页面上显示系列文章

修改配置文件:

1
2
3
4
5
series:
enable: true
orderBy: 'title' # Order by title or date
order: 1 # Sort of order. 1, asc for ascending; -1, desc for descending
number: true
参数解释
enable是否启用 series
orderBy排序方式,默认为 title, 可选 title / date
order排序方式,默认为 1, 可选 1 (升序) / -1(降序)
number显示序列号

写法

1
2
{% series %}
{% series [series name] %}

在文章的 front-matter 上添加参数 series,并给与一个标识

使用此标签外挂,会把相同标识的文章以列表的形式展示

如果不写 series 标识,则默认为你使用此标签外挂所在的文章的 series 标识

示例:

1
{% series test1 %}
  1. Hexo Butterfly 主题标签外挂
  2. 国内外免费公共 DoT/DoH 加密 DNS 服务器地址大全

Chartjs 图表

另一种方式添加图表

修改配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# chartjs
# 参见 https://www.chartjs.org/docs/latest/
chartjs:
enable: false
# 除非你了解它们的工作原理,否则不要修改。
# 默认设置仅在未指定 MD 语法时使用。
# 图表的字体颜色
fontColor:
light: "rgba(0, 0, 0, 0.8)"
dark: "rgba(255, 255, 255, 0.8)"
# 图表的边框颜色
borderColor:
light: "rgba(0, 0, 0, 0.1)"
dark: "rgba(255, 255, 255, 0.2)"
# 雷达图和极区图的刻度标签背景颜色
scale_ticks_backdropColor:
light: "transparent"
dark: "transparent"
参数解释
enable是否启用 chartjs
fontColor图表的字体颜色
borderColor图表的边框颜色
scale_ticks_backdropColor雷达和极区图表的刻度标签的背景颜色

写法

1
2
3
4
5
6
{% chartjs [width, abreast, chartId] %}
<!-- chart -->
<!-- endchart -->
<!-- desc -->
<!-- enddesc -->
{% endchartjs %}
参数解释
width【可选】图表宽度
abreast【可选】是否并排显示,当你写了 <!-- desc -->, 使用并排模式,图标和描述将并排显示。 abreast 为 true 时,需要配置 width 的值
chartId【可选】图表 ID

示例:

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
{% chartjs 70 %}

<!-- chart -->
{
"type": "line",
"data": {
"labels": ["January", "February", "March", "April", "May", "June", "July"],
"datasets": [{
"label": "My First dataset",
"backgroundColor": "rgb(255, 99, 132)",
"borderColor": "rgb(255, 99, 132)",
"data": [0, 10, 5, 2, 20, 30, 45]
}]
},
"options": {
"responsive": true,
"title": {
"display": true,
"text": "Chart.js Line Chart"
}
}
}
<!-- endchart -->

{% endchartjs %}

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{% chartjs %}

<!-- chart -->
{
"type": "radar",
"data": {
"labels": [
"Eating",
"Drinking",
"Sleeping",
"Designing",
"Coding",
"Cycling",
"Running"
],
"datasets": [
{
"label": "My First Dataset",
"data": [65, 59, 90, 81, 56, 55, 40],
"fill": true,
"backgroundColor": "rgba(255, 99, 132, 0.2)",
"borderColor": "rgb(255, 99, 132)",
"pointBackgroundColor": "rgb(255, 99, 132)",
"pointBorderColor": "#fff",
"pointHoverBackgroundColor": "#fff",
"pointHoverBorderColor": "rgb(255, 99, 132)"
},
{
"label": "My Second Dataset",
"data": [28, 48, 40, 19, 96, 27, 100],
"fill": true,
"backgroundColor": "rgba(54, 162, 235, 0.2)",
"borderColor": "rgb(54, 162, 235)",
"pointBackgroundColor": "rgb(54, 162, 235)",
"pointBorderColor": "#fff",
"pointHoverBackgroundColor": "#fff",
"pointHoverBorderColor": "rgb(54, 162, 235)"
}
]
},
"options": {
"elements": {
"line": {
"borderWidth": 3
}
}
}
}
<!-- endchart -->
{% endchartjs %}

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
{% chartjs 40,true %}
<!-- chart -->
{
"type": "pie",
"data": {
"labels": [
"编程",
"音乐",
"阅读",
"游戏",
"健身",
"旅游"
],
"datasets": [
{
"label": "喜爱指数",
"data": [
30,
24,
19,
14,
9,
4
],
"backgroundColor": {
"dark-mode": [
"rgba(255, 99, 132, 0.5)",
"rgba(54, 162, 235, 0.5)",
"rgba(255, 206, 86, 0.5)",
"rgba(75, 192, 192, 0.5)",
"rgba(153, 102, 255, 0.5)",
"rgba(255, 159, 64, 0.5)"
],
"light-mode": [
"rgba(255, 99, 132, 0.2)",
"rgba(54, 162, 235, 0.2)",
"rgba(255, 206, 86, 0.2)",
"rgba(75, 192, 192, 0.2)",
"rgba(153, 102, 255, 0.2)",
"rgba(255, 159, 64, 0.2)"
]
},
"borderColor": {
"dark-mode": [
"rgba(255, 99, 132, 1)",
"rgba(54, 162, 235, 1)",
"rgba(255, 206, 86, 1)",
"rgba(75, 192, 192, 1)",
"rgba(153, 102, 255, 1)",
"rgba(255, 159, 64, 1)"
],
"light-mode": [
"rgba(255, 99, 132, 1)",
"rgba(54, 162, 235, 1)",
"rgba(255, 206, 86, 1)",
"rgba(75, 192, 192, 1)",
"rgba(153, 102, 255, 1)",
"rgba(255, 159, 64, 1)"
]
}
}
]
},
"options": {
"plugins": {
"legend": {
"labels": {
"color": {
"dark-mode": "rgba(255, 255, 255, 0.8)",
"light-mode": "rgba(0, 0, 0, 0.8)"
}
}
}
}
}
}
<!-- endchart -->
<!-- desc -->
除了**计算机编程**外,我想不出还有其他让我感兴趣的工作。
我可以无中生有地创造出**精美的范式**和**结构**,
在此过程中也解决了无数的小谜团。
<span style="font-size:0.8em;color: var(--sep-secondtext);">I can't think of any other job other than **computer programming** that interests me.
I can create **beautiful paradigms** and **structures** out of nothing,
Countless small mysteries are also solved in the process.</span>
<!-- enddesc -->
{% endchartjs %}

除了计算机编程外,我想不出还有其他让我感兴趣的工作。
我可以无中生有地创造出精美的范式结构
在此过程中也解决了无数的小谜团。
I can’t think of any other job other than computer programming that interests me.
I can create beautiful paradigms and structures out of nothing,
Countless small mysteries are also solved in the process.

网址卡片外置标签(魔改后)

使用方法

1
{% link [title],[desc],[url] %}
参数解释
title【必须】链接标题
desc【必须】描述副标题
[url【必须】链接地址

示例:

1
{% link '3MS 's Blog',Daliyuer,https://blog.3ms.run%}

语雀同款链接卡片(魔改后)

使用方法

1
2
3
4
5
6
7
8
9
10
11
<!-- 使用html是为了高亮代码,不必在意 -->
<!-- 参数如下: -->
{% yqlink 链接,标题,图标,介绍 %}
<!-- 示例如下: -->
{% yqlink https://blog.3ms.run,ZeroLatency,https://blog.3ms.run/favicon.ico,进一寸有进一寸的欢喜。 %}
<!-- 你也可以什么都不填,将会全部使用默认值,如下: -->
{% yqlink %}
<!-- 你也可以省略部分内容,如下: -->
{% yqlink https://blog.3ms.run %}
<!-- 位置在后面的参数不填的话可以直接省略,但是如果中间的不想填必须留空,如下: -->
{% yqlink https://blog.3ms.run,,,进一寸有进一寸的欢喜。 %}
参数描述默认值
链接如果连接中包含http则新标签打开,否则本标签页打开
标题网站的标题点击直达链接
图标网站favicon链接
介绍网站的description

示例:

1
{% yqlink https://blog.3ms.run,Daliyuer,,进一寸有进一寸的欢喜。 %}

打赏卡片标签(魔改)

使用方法

1
2
3
4
5
6
7
8
9
10
11
12
<!-- 使用html是为了高亮代码,不必在意 -->
<!-- 参数如下: -->
{% reward 名字,金额,时间,渠道,头像,链接,是否友链好友 %}
<!-- 示例如下: -->
{% reward ZeroLatency,66.66,2023-01-01,qq,990320751,https://blog.3ms.run,1 %}
<!-- 你也可以什么都不填,将会全部使用默认值,如下: -->
{% reward %}
<!-- 你也可以省略部分内容,如下: -->
{% reward ZeroLatency,88.88,2023-01-01,zfb %}
<!-- 位置在后面的参数不填的话可以直接省略,但是如果中间的不想填必须留空,如下: -->
<!-- 昵称和时间不填,以及渠道后面的全部省略 -->
{% reward ,66.66,,qq %}

参数

参数描述默认值
名字这还需要描述?匿名
金额这也不需要描述吧0.00
时间直接填就行,不填则不显示
渠道打赏渠道。可填:qqwxzfb,其他渠道留空即可
头像图片链接,可以直接填QQ号获取QQ头像
链接打赏者的网站链接,设置之后卡片会变成a标签,可点击
是否友链1表示是,0或者不填表示不是

完整示例

1
{% reward ZeroLatency,66.66,2023-01-01,qq,990320751,https://blog.3ms.run/,1 %}
友链

ZeroLatency

66.66 2023-01-01

转载自:Butterfly 文檔(四) 標簽外挂 | Butterfly