Fork me on GitHub

Hexo博客搭建食用指北

最近打算自己搭个blog,于是就看了很多有关的文章

比较有用的:https://ouuan.github.io/hexo博客搭建指北/

嗯嗯有些不够详细的我来说一说

updated on 2019.8.3 最近在修图片的锅,大部分图片已撤下,请过段时间再来看QAQ

域名

域名的申请

土豪请略过,我这里谈的是免费

首先打开freenom

网站打开可能会有点慢,先看看别的网页,耐心等等

重要!不要试图将语言切换为中文,至少在我的浏览器上中文会挂,网页都失去了功能

freenom

搜索你想要的域名

搜索域名

别问我为什么是这个域名

选择你想要的

选择域名

结算

结算

进入结算页面

结算页面

比方说你想保留kkksc03.ml

那么kkksc03.tk就设置成跳转到kkksc03.ml

DNS设置

先点1,把3 Months @FREE改成12 Months @FREE

不然你的域名有效期只有3个月

然后点你要保留的域名中的2(Use DNS)

点3(Use your own DNS)

选择你的DNS服务商:

建议:


连接域名和DNS


dnspod

在5处填f1g1ns1.dnspod.net

在6处填f1g1ns2.dnspod.net

然后打开dnspod

登录

DNSpod

点域名解析

dnspod

点添加域名

输入你的主域名(即域名的后半部分)

例:www.kkksc03.ml->kkksc03.ml

点确定

等它一下

导好之后

确认就可以

添加记录

添加一个www记录,一个@记录(这样保险)

然后记录值随便输一个***.***.***.***类型的就可以

保存


Cloudflare

5处填mimi.ns.cloudflare.com

6处填oswald.ns.cloudflare.com

Cloudflare的注册等会再说


回到freenom

点continue

进入账单

在左下角”Enter Your Email Address”的位置输入你的邮箱(部分邮箱用不了),点下面的蓝色按钮注册

我已经有账号了所以我点右上角的”Sign in”直接登录了

然后域名就申请好了

Hexo blog

注:这里只介绍next主题。

根目录下的_config.yml

好像只有一点东西可以设啊

作者

应该在第10行的位置

1
author: yourname

把yourname改成你的名字即可。

语言

应该在第11行的位置

1
language: zh-CN

这样页面语言就是中文了。

主题目录下的_config.yml

这部分基本上就是抄的了,我只是解释一下

选择4种主题中的一种

1
2
3
4
5
# Schemes
scheme: Muse
#scheme: Mist
#scheme: Pisces
#scheme: Gemini

把想要的那种前面的#去掉,不想要的加上即可。

改变网站图标

1
2
3
4
5
favicon:
small: /images/favicon-16x16-next.png
medium: /images/favicon-32x32-next.png
apple_touch_icon: /images/apple-touch-icon-next.png
safari_pinned_tab: /images/logo.svg

把你想要的图标放到\themes\next\source\images里,然后修改上面的文件名即可。

注:大小要符合

页脚设置

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
footer:
# Specify the date when the site was setup.
# If not defined, current year will be used.
#since: 2015

# Icon between year and copyright info.
icon:
# Icon name in fontawesome, see: https://fontawesome.com/v4.0/icons
# `heart` is recommended with animation in red (#ff0000).
name: battery-full
# If you want to animate the icon, set it to true.
animated: false
# Change the color of icon, using Hex Code.
color: "#808080"

# If not defined, will be used `author` from Hexo main config.
copyright:
# -------------------------------------------------------------
powered:
# Hexo link (Powered by Hexo).
enable: false
# Version info of Hexo after Hexo link (vX.X.X).
version: true

theme:
# Theme & scheme info link (Theme - NexT.scheme).
enable: true
# Version info of NexT after scheme info (vX.X.X).
version: true
# -------------------------------------------------------------
# Beian icp information for Chinese users. In China, every legal website should have a beian icp in website footer.
# http://www.miitbeian.gov.cn
beian:
enable: false
icp:

icon© 2019 与用户名之间的图标。(图中 1

图标名称为 Font Awesome 上的图标名称。

powered.enable:为 true 则会显示 “由 Hexo 强力驱动”。(图中 2

powered.version:为 true 则会显示 Hexo 的版本。(图中 3

powered.enable:为 true 则会显示“主题 – NexT.XX”。(图中 4

powered.version:为 true 则会显示主题的版本。(图中 5

搬运Markdown好累啊

“关于”&“标签”

1
2
3
4
5
6
7
8
9
menu:
home: / || home
about: /about/ || user
tags: /tags/ || tags
#categories: /categories/ || th
archives: /archives/ || archive
#schedule: /schedule/ || calendar
#sitemap: /sitemap.xml || sitemap
#commonweal: /404/ || heartbeat

将需要的项目取消注释即可在侧边栏显示。

如果需要使用“关于”页面,输入命令 hexo new page "about"

然后在 \source\about\index.md 中就可以编辑“关于”页面了。

可以修改 \source\about\index.md 中的 title 项来显示“关于”而非“about”

如果需要使用“标签”功能,需要在博文中添加选项 tags

如果有多个标签,每行一个,以 - 开头:

1
2
3
4
tags:
- 标签1
- 标签2
- 标签3

如果需要使用“标签”页面,输入命令 hexo new page "tags"

然后向 source\tags\index.md 中添加一行:

1
type: "tags"

站内搜索

输入命令 npm install hexo-generator-searchdb --save 安装所需的库。

在根目录下的 _config.yml 的结尾加入:

1
2
3
4
5
search:
path: search.xml
field: post
format: html
limit: 10000

然后在 \themes\next\_config.yml 中,打开 local_search

1
2
local_search:
enable: true

社♂交网站

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Social Links.
# Usage: `Key: permalink || icon`
# Key is the link label showing to end users.
# Value before `||` delimeter is the target permalink.
# Value after `||` delimeter is the name of FontAwesome icon. If icon (with or without delimeter) is not specified, globe icon will be loaded.
social:
GitHub: https://github.com/yltx || github
洛谷: https://www.luogu.org/space/show?uid=39863 || code
Codeforces: https://www.codeforces.com/profile/yltx || code
b站: https://space.bilibili.com/11067182 || tv

social_icons:
enable: true
icons_only: false
transition: false

social 下每行一个,格式为:名称: 地址 || 图标

其中,“图标”为 Font Awesome 图标名称,但有些图标是不可用的,而且图标也不全,使用的时候要尝试一下图标是否可用。

1
2
social_icons:
enable: false

这样设置可以只显示名称不显示图标。

友情链接(或其它链接)

1
2
3
4
5
6
7
# Blog rolls
links_icon: globe
links_title: 友链
# links_layout: block
links_layout: inline
links:
引领天下: https://www.yltx.cf

links_icon:显示在标题前的图标。

links_title:标题。

links_layoutblock 一行一个,inline 一行多个。

links:要显示的链接以及名称。

头像

1
2
3
4
5
6
7
8
9
10
11
12
# Sidebar Avatar
avatar:
# in theme directory(source/images): /images/avatar.gif
# in site directory(source/uploads): /uploads/avatar.gif
# You can also use other linking images.
url: /images/avatar.jpg
# If true, the avatar would be dispalyed in circle.
rounded: true
# The value of opacity should be choose from 0 to 1 to set the opacity of the avatar.
opacity: 1
# If true, the avatar would be rotated with the cursor.
rotated: false

url:头像地址,留空则不显示头像。

rounded:圆/方头像。

opacity:不透明度。

rotated:随光标旋转。

回到顶部按钮/阅读百分比

1
2
3
4
5
# Back to top in sidebar (only for Pisces | Gemini).
b2t: true

# Scroll percent label in b2t button.
scrollpercent: true

博客首页不显示全文

在博文里可以用 <!-- more --> 来标识在首页显示到哪为止。

可以在 \themes\next\_config.yml 里设置到一定字数自动不显示全文:

1
2
3
4
5
6
7
8
9
# Automatically Excerpt. Not recommend.
# Please use <!-- more --> in the post to control excerpt accurately.
auto_excerpt:
enable: true
length: 150

# Read more button
# If true, the read more button would be displayed in excerpt section
read_more_btn: true

length:不显示全文的字数上限。

read_more_btn

代码块复制按钮

1
2
3
4
5
6
7
8
9
codeblock:
# Manual define the border radius in codeblock
# Leave it empty for the default 1
border_radius:
# Add copy button on codeblock
copy_button:
enable: true
# Show text copy result
show_result: true

enable:启用复制按钮。

show_result

$\LaTeX$

1
2
3
4
5
6
7
8
9
10
11
# Math Equations Render Support
math:
enable: true

# Default(true) will load mathjax/katex script on demand
# That is it only render those page who has 'mathjax: true' in Front Matter.
# If you set it to false, it will load mathjax/katex srcipt EVERY PAGE.
per_page: false

engine: mathjax
#engine: katex

enable:启用$\LaTeX$。

per_page:为 true 则只有博文中有 mathjax: true 才会启用$\LaTeX$,否则每篇博客都会启用$\LaTeX$。

engine:推荐使用 mathjax

hexo 博客的 mathjaxMarkdown 有一些冲突,将在后文专门讲解如何解决冲突。

评论功能

由于 gitment 的服务器有一些问题,推荐使用 gitalk

1
2
3
4
5
6
7
gitalk:
enable: true
github_id: yourname
repo: yourname.github.io
client_id:
client_secret:
admin_user: yourname

这里需要在 GitHub 新建一个 OAuth App,“Homepage URL”和“Authorization callback URL”填你的域名(如果没有申请域名的话就填 yourname.github.io):

需要注意的是,地址要严格和博客访问地址一样,httphttps不能混,有无 www 也不能混。

然后将 Client IDClient Secret 填入 \themes\next\_config.yml 中。

访客记录

1
2
busuanzi_count:
enable: true

书签

书签的功能是关闭页面/手动点击书签按钮时,保存这篇博客看到的位置,下次点进这篇博客时继续从这个位置开始。

安装插件:

1
git clone https://github.com/theme-next/theme-next-bookmark.git source/lib/bookmark

更改 \themes\next\_config.yml

1
2
3
4
5
6
7
8
9
# Bookmark Support
# Dependencies: https://github.com/theme-next/theme-next-bookmark
bookmark:
enable: true
# if auto
# - save the reading position when closing the page
# - or clicking the bookmark-icon
# if manual, only save it by clicking the bookmark-icon
save: manual

convas背景

安装插件:进入/next文件夹,输入

1
git clone https://github.com/theme-next/theme-next-canvas-nest source/lib/canvas-nest

然后修改主题配置:

1
2
3
4
5
6
7
8
9
# Canvas-nest
# Dependencies: https://github.com/theme-next/theme-next-canvas-nest
canvas_nest:
enable: true
onmobile: true # display on mobile or not
color: '0,0,255' # RGB values, use ',' to separate
opacity: 0.5 # the opacity of line: 0~1
zIndex: -1 # z-index property of the background
count: 99 # the number of lines

RGB选项可以自己配置线条颜色。

其他配置

博客背景

打开 \themes\next\source\css\_custom\custom.styl,输入:

1
2
3
4
body {
background-image:url(/images/background.jpg);
background-size: cover;
}

把背景图片重命名为 background.jpg,放入 \themes\source\images(当然也可以更改background-image:url())。

background-size: cover; 表示宽度缩放至页面大小。

1
2
3
4
5
6
body {
background-image:url(/images/background.jpg);
background-repeat: no-repeat;
background-attachment:fixed;
background-size: cover;
}

如果修改成这样的话背景图片就不会滚动。

如果不想让博客内容挡住背景,可以设置博客内容的透明度,在 \themes\next\source\css\_custom\custom.styl 中加入下面的代码即可:

1
2
3
.main-inner {
opacity: 0.8;
}

README.md

如果想在 https://github.com/yourname/yourname.github.io 让别人看到你的博客的简介,就需要写一个 README.md 放在根目录下的 source 文件夹内。

然而,只是这样的话, README.md 会被渲染成 html,所以需要更改根目录下 _config.yml 的设置:

1
skip_render: README.md

自定义404页面

首先写一个 \source\404.html

至于怎么写html……关于这个问题,我想到了一种美妙的解法,可惜这里地方太小写不下作者最近打算抽空写个专门介绍404.html的博文呢……

事实上可以新建一篇博客,用 Markdown 写一个 404 页面,然后 hexo g\public 里找到博客的页面,把相关部分直接复制过来。

可以参考一下我的:

1
2
3
4
5
6
7
8
9
10
11
12
<body background="https://raw.githubusercontent.com/yltx/yltx.github.io/master/images/background.jpg" font-family: "楷体">
<style>body {font-family: 楷体;}</style>
<div style="text-align: center;">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<p style="font-size: 50px;color: gold"><strong>您可能访问了错误的网址</strong><br/><strong>404,that page cannot be found.</strong><br/><img src="https://i.loli.net/2019/03/03/5c7b8d8caeefe.gif"></p>
<p style="font-size: 30px;color:silver"><a href="https://www.yltx.cf"><button type="button" class="btn btn-info">回到博客主页</button></a>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<a href="javascript:history.go(-1);"><button type="button" class="btn btn-info">返回上一页</button></a></p>
<!-- <p <a href="https://www.yltx.cf"><strong>回到博客主页</strong></a>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<a href="javascript:history.go(-1);"><strong>返回上一页</strong></a></p> -->
<!-- <p style="text-align: center;"></p> -->
</div>
</body>

发布效果:https://yltx.cf/404

然后,如果直接这样发布,html 会被渲染,就跟一个自定义页面(hexo new page)一样了。

所以要修改根目录下的 _config.yml,在 skip_render: 后添加 404.html,如果有多项用 - 隔开:

1
2
3
skip_render:
- README.md
- 404.html

发布完成后,访问一个错误的网址,比如 你的域名/qaq 就可以查看效果了。

折叠效果

原文

效果见下面附录部分

博文自定义排序

打开 \node_modules\hexo-generator-index\lib\generator.js

用以下内容覆盖原内容↓

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
var pagination = require('hexo-pagination');

module.exports = function(locals) {
var config = this.config;
var posts = locals.posts.sort(config.index_generator.order_by);

posts.data = posts.data.sort(function(a, b) {
if(a.top && b.top) {
if(a.top == b.top) return b.date - a.date;
else return b.top - a.top;
}
else if(a.top && !b.top) {
return -1;
}
else if(!a.top && b.top) {
return 1;
}
else return b.date - a.date;
});

var paginationDir = config.pagination_dir || 'page';

return pagination('', posts, {
perPage: config.index_generator.per_page,
layout: ['index', 'archive'],
format: paginationDir + '/%d/',
data: {
__index: true
}
});
};

之后在博文设置中加入 top: x 即可,会以 top 为第一关键字,时间为第二关键字排序。若 top 为空则视作 -INF 。


原文


连接github

配置github仓库

首先你要有一个github账号……

然后登录

新建一个repo:

输入名字,保存:

注意:yourname要换成你的githubID。

比方说我的就是yltx.github.io

然后点2就可以了。

上传

在本地输入:

1
ssh-keygen

让你输东西就空着,按回车就行(应该要三次吧)

输入命令:

1
cat ~/.ssh/id_rsa.pub

复制窗口中出现的一堆乱码一样的东西

然后回到github,点头像打开Settings

点击左侧的SSH and GPG keys

我的已经有一个了不用管

New SSH Keys,新建一个,标题随便,把刚才复制的一堆东西粘贴进去,然后点”Add SSH key”就行了。

然后在本地输入命令

1
ssh -T git@github.com

若出现Hi yourname! You've successfully authenticated, but GitHub does not provide shell access就表示SSH配置成功了

输入命令

1
npm install hexo-deployer-git --save

就可以安装deployer。

打开根目录(在本地创建的那个文件夹)下的_config.yml,在最后输入:

1
2
3
4
deploy:
type: git
repository: https://github.com/yourname.github.io.git
branch: master

当然yourname要改成你的Github ID了。

输入命令:

1
2
3
hexo cl
hexo g
hexo d

这一步可能要输入密码(出现一个弹框)

以后可以用简化的命令:

1
2
hexo cl
hexo g -d

等几分钟,打开yourname.github.io应该就可以看到你的博客了。

那么恭喜你,你上传好了。

连接域名和github

先在hexo根目录的source子目录下新建文件CNAME重要!没有.txt之类的后缀名!

然后打开,输入你的域名(注意,如果使用gitalk,在此处输入的域名必须与App中的一样)

例:

CNAME:

1
yltx.cf

App:

1
https://yltx.cf

千万不能随便加www!要加要一起加!

dnspod

在本地打开cmd(命令提示符),输入命令:

1
ping yourname.github.io

yourname要换成你自己的githubID。

会出来一个IP地址:

我红笔圈出来的部分

然后打开dnspod中你之前添加的域名

把这个IP填到之前dnspod我们瞎填111.111.111.111的地方,保存


Cloudflare

打开Cloudflare官网

有的登录,没的注册

登录好了之后:

点右上角的Add Site,输入你的域名

添加好之后

接下来肯定是点Next啦

咳咳咳选哪个套餐就看你有多少钱啦

我选的是FREE

点Confirm Plan

再点一次Confirm

不要问我为什么换了域名,因为Cloudflare要求要存在的域名,而我并没有真的申请kkksc03.ml

然后点continue应该就可以了


在本地输入命令:

1
hexo d

过几分钟域名应该就可以用了。

开启https

如果不开启的话,访问 https://你的域名 就会显示警告,访问 http://你的域名 就会显示不安全。

当然如果因为某种原因访问 https://你的域名 已经不会显示警告而且浏览器左上角有绿锁了,就不需要再进行额外的设置了。

其实很简单,浏览器打开https://github.com/yourname/yourname.github.io/settings,找到这里:

(我已经开过了)

勾选Enforce HTTPS即可。

停用域名

单纯停用只需删去 CNAME 文件即可,然后记得更改相关设置(在各种地方引用的博客链接、OAuth App 地址……)。

Q&A

Q1

Q:“Enforce HTTPS”前面是灰色的,无法打勾

A:

  1. 删掉“Save”前面的域名,点击“Save”。

  2. 重新输入域名,点击“Save”。

  3. 重新发布博客(hexo d)。

  4. 等待几分钟~几小时,再访问你的博客应该就OK了。

Q2

Q:gitalk用不了

A:检查App和CNAME域名是否相同(上文说过)

特殊的:如果开启了https则URL一定要填https。

Q3

Q:停用域名不成功,即:在电脑上访问博客还是自动跳转到原有域名

A:

  1. 按F12

  2. 点Network

  3. 勾选Disable Cache

  4. 按Ctrl+F5强制刷新

  5. 取消勾选

方法来源

Q4

Q:代码块出锅,没有高亮,还没办法复制

A:检查根目录下的_config.yml,将highlight一段改成下面即可:

点击展开/收起
1
2
3
4
5
highlight:
enable: true
line_number: true
auto_detect: true
tab_replace:

附录

常用命令

1
hexo cl

删除编译文件夹public,方便重新编译

1
hexo g

编译。

1
hexo d

上传。

1
hexo g -d

编译后上传。

1
hexo new page "xxx"

新建一个以“xxx”为名的页面,md文件直接存放在\source文件夹下。

1
hexo n "xxx"

新建一篇以“xxx”为名的博文,md文件存放在\source\_posts文件夹下。

原始的next主题的_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
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
# ---------------------------------------------------------------
# Theme Core Configuration Settings
# ---------------------------------------------------------------

# If false, merge configs from `_data/next.yml` into default configuration (rewrite).
# If true, will fully override default configuration by options from `_data/next.yml` (override). Only for NexT settings.
# And if true, all config from default NexT `_config.yml` must be copied into `next.yml`. Use if you know what you are doing.
# Useful if you want to comment some options from NexT `_config.yml` by `next.yml` without editing default config.
override: false

# Allow to cache content generation. Introduced in NexT v6.0.0.
cache:
enable: true

# Redefine custom file paths. Introduced in NexT v6.0.2.
# If commented, will be used default custom file paths.

# For example, you want to put your custom styles file
# outside theme directory in root `source/_data`, set
# `styles: source/_data/styles.styl`
#custom_file_path:
# Default paths: layout/_custom/*
#head: source/_data/head.swig
#header: source/_data/header.swig
#sidebar: source/_data/sidebar.swig

# Default path: source/css/_variables/custom.styl
#variables: source/_data/variables.styl
# Default path: source/css/_mixins/custom.styl
#mixins: source/_data/mixins.styl
# Default path: source/css/_custom/custom.styl
#styles: source/_data/styles.styl


# ---------------------------------------------------------------
# Site Information Settings
# ---------------------------------------------------------------

# To get or check favicons visit: https://realfavicongenerator.net
# Put your favicons into `hexo-site/source/` (recommend) or `hexo-site/themes/next/source/images/` directory.

# Default NexT favicons placed in `hexo-site/themes/next/source/images/` directory.
# And if you want to place your icons in `hexo-site/source/` root directory, you must remove `/images` prefix from pathes.

# For example, you put your favicons into `hexo-site/source/images` directory.
# Then need to rename & redefine them on any other names, otherwise icons from Next will rewrite your custom icons in Hexo.
favicon:
small: /images/favicon-16x16-next.png
medium: /images/favicon-32x32-next.png
apple_touch_icon: /images/apple-touch-icon-next.png
safari_pinned_tab: /images/logo.svg
#android_manifest: /images/manifest.json
#ms_browserconfig: /images/browserconfig.xml

# Set rss to false to disable feed link.
# Leave rss as empty to use site's feed link, and install hexo-generator-feed: `npm install hexo-generator-feed --save`.
# Set rss to specific value if you have burned your feed already.
rss:

footer:
# Specify the date when the site was setup.
# If not defined, current year will be used.
#since: 2015

# Icon between year and copyright info.
icon:
# Icon name in fontawesome, see: https://fontawesome.com/v4.7.0/icons/
# `heart` is recommended with animation in red (#ff0000).
name: user
# If you want to animate the icon, set it to true.
animated: false
# Change the color of icon, using Hex Code.
color: "#808080"

# If not defined, `author` from Hexo main config will be used.
copyright:
# -------------------------------------------------------------
powered:
# Hexo link (Powered by Hexo).
enable: true
# Version info of Hexo after Hexo link (vX.X.X).
version: true

theme:
# Theme & scheme info link (Theme - NexT.scheme).
enable: true
# Version info of NexT after scheme info (vX.X.X).
version: true
# -------------------------------------------------------------
# Beian icp information for Chinese users. In China, every legal website should have a beian icp in website footer.
# http://www.miitbeian.gov.cn
beian:
enable: false
icp:

# -------------------------------------------------------------
# Any custom text can be defined here.
#custom_text: Hosted by <a href="https://pages.coding.me" class="theme-link" rel="noopener" target="_blank">Coding Pages</a>

# Creative Commons 4.0 International License.
# https://creativecommons.org/share-your-work/licensing-types-examples
# Available values: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | zero
creative_commons:
license: by-nc-sa
sidebar: false
post: false


# ---------------------------------------------------------------
# SEO Settings
# ---------------------------------------------------------------

# Canonical, set a canonical link tag in your hexo, you could use it for your SEO of blog.
# See: https://support.google.com/webmasters/answer/139066
# Tips: Before you open this tag, remember set up your URL in hexo _config.yml (e.g. url: http://yourdomain.com)
canonical: true

# Change headers hierarchy on site-subtitle (will be main site description) and on all post/pages titles for better SEO-optimization.
seo: false

# If true, will add site-subtitle to index page, added in main hexo config.
# subtitle: Subtitle
index_with_subtitle: false

# Automatically add external URL with BASE64 encrypt & decrypt.
exturl: false


# ---------------------------------------------------------------
# Menu Settings
# ---------------------------------------------------------------

# When running the site in a subdirectory (e.g. domain.tld/blog), remove the leading slash from link value (/archives -> archives).
# Usage: `Key: /link/ || icon`
# Key is the name of menu item. If translate for this menu will find in languages - this translate will be loaded; if not - Key name will be used. Key is case-senstive.
# Value before `||` delimeter is the target link.
# Value after `||` delimeter is the name of FontAwesome icon. If icon (with or without delimeter) is not specified, question icon will be loaded.
# External url should start with http:// or https://
menu:
home: / || home
#about: /about/ || user
#tags: /tags/ || tags
#categories: /categories/ || th
archives: /archives/ || archive
#schedule: /schedule/ || calendar
#sitemap: /sitemap.xml || sitemap
#commonweal: /404/ || heartbeat

# Enable/Disable menu icons / item badges.
menu_settings:
icons: true
badges: false


# ---------------------------------------------------------------
# Scheme Settings
# ---------------------------------------------------------------

# Schemes
scheme: Muse
#scheme: Mist
#scheme: Pisces
#scheme: Gemini


# ---------------------------------------------------------------
# Sidebar Settings
# ---------------------------------------------------------------

# Posts / Categories / Tags in sidebar.
site_state: true

# Social Links
# Usage: `Key: permalink || icon`
# Key is the link label showing to end users.
# Value before `||` delimeter is the target permalink.
# Value after `||` delimeter is the name of FontAwesome icon. If icon (with or without delimeter) is not specified, globe icon will be loaded.
#social:
#GitHub: https://github.com/yourname || github
#E-Mail: mailto:[email protected] || envelope
#Weibo: https://weibo.com/yourname || weibo
#Google: https://plus.google.com/yourname || google
#Twitter: https://twitter.com/yourname || twitter
#FB Page: https://www.facebook.com/yourname || facebook
#VK Group: https://vk.com/yourname || vk
#StackOverflow: https://stackoverflow.com/yourname || stack-overflow
#YouTube: https://youtube.com/yourname || youtube
#Instagram: https://instagram.com/yourname || instagram
#Skype: skype:yourname?call|chat || skype

social_icons:
enable: true
icons_only: false
transition: false

# Follow me on GitHub banner in right-top corner.
# Usage: `permalink || title`
# Value before `||` delimeter is the target permalink.
# Value after `||` delimeter is the title and aria-label name.
#github_banner: https://github.com/yourname || Follow me on GitHub

# Blog rolls
links_icon: link
links_title: Links
links_layout: block
#links_layout: inline
#links:
#Title: http://example.com

# Sidebar Avatar
avatar:
# in theme directory(source/images): /images/avatar.gif
# in site directory(source/uploads): /uploads/avatar.gif
# You can also use other linking images.
url: #/images/avatar.gif
# If true, the avatar would be dispalyed in circle.
rounded: false
# The value of opacity should be choose from 0 to 1 to set the opacity of the avatar.
opacity: 1
# If true, the avatar would be rotated with the cursor.
rotated: false

# Table Of Contents in the Sidebar
toc:
enable: true
# Automatically add list number to toc.
number: true
# If true, all words will placed on next lines if header width longer then sidebar width.
wrap: false
# Maximum heading depth of generated toc. You can set it in one post through `toc_max_depth` var.
max_depth: 6

sidebar:
# Sidebar Position, available values: left | right (only for Pisces | Gemini).
position: left
#position: right

# Manual define the sidebar width.
# If commented, will be default for:
# Muse | Mist: 320
# Pisces | Gemini: 240
#width: 300

# Sidebar Display, available values (only for Muse | Mist):
# - post expand on posts automatically. Default.
# - always expand for all pages automatically
# - hide expand only when click on the sidebar toggle icon.
# - remove Totally remove sidebar including sidebar toggle.
display: post
#display: always
#display: hide
#display: remove

# Sidebar offset from top menubar in pixels (only for Pisces | Gemini).
offset: 12
# Back to top in sidebar.
b2t: false
# Scroll percent label in b2t button.
scrollpercent: false
# Enable sidebar on narrow view (only for Muse | Mist).
onmobile: false


# ---------------------------------------------------------------
# Post Settings
# ---------------------------------------------------------------

# Automatically scroll page to section which is under <!-- more --> mark.
scroll_to_more: true

# Automatically saving scroll position on each post/page in cookies.
save_scroll: false

# Automatically excerpt description in homepage as preamble text.
excerpt_description: true

# Automatically Excerpt. Not recommend.
# Use <!-- more --> in the post to control excerpt accurately.
auto_excerpt:
enable: false
length: 150

# Read more button
# If true, the read more button would be displayed in excerpt section.
read_more_btn: true

# Post meta display settings
post_meta:
item_text: true
created_at: true
updated_at:
enabled: true
# If true, show updated date label only if `updated date` different from `created date` (post edited in another day than was created).
# And if post will edited in same day as created, edited time will show in popup title under created time label.
# If false show anyway, but if post edited in same day, show only edited time.
another_day: true
categories: true

# Post wordcount display settings
# Dependencies: https://github.com/theme-next/hexo-symbols-count-time
symbols_count_time:
separated_meta: true
item_text_post: true
item_text_total: false
awl: 4
wpm: 275

codeblock:
# Manual define the border radius in codeblock
# Leave it empty for the default 1
border_radius:
# Add copy button on codeblock
copy_button:
enable: false
# Show text copy result
show_result: false

# Wechat Subscriber
#wechat_subscriber:
#enabled: true
#qcode: /path/to/your/wechatqcode e.g. /uploads/wechat-qcode.jpg
#description: e.g. subscribe to my blog by scanning my public wechat account

# Reward
# If true, reward would be displayed in every article by default.
# And you can show or hide one article specially through add page variable `reward: true/false`.
reward:
enable: false
#comment: Donate comment here
#wechatpay: /images/wechatpay.jpg
#alipay: /images/alipay.jpg
#bitcoin: /images/bitcoin.jpg

# Related popular posts
# Dependencies: https://github.com/tea3/hexo-related-popular-posts
related_posts:
enable: false
title: # custom header, leave empty to use the default one
display_in_home: false
params:
maxCount: 5
#PPMixingRate: 0.0
#isDate: false
#isImage: false
#isExcerpt: false

# Post edit
# Dependencies: https://github.com/hexojs/hexo-deployer-git
post_edit:
enable: false
url: https://github.com/user-name/repo-name/tree/branch-name/subdirectory-name # Link for view source.
#url: https://github.com/user-name/repo-name/edit/branch-name/subdirectory-name # Link for fork & edit.


# ---------------------------------------------------------------
# Misc Theme Settings
# ---------------------------------------------------------------

# Disable Baidu tranformation on mobile devices.
disable_baidu_tranformation: false

# Reduce padding / margin indents on devices with narrow width.
mobile_layout_economy: false

# Android Chrome header panel color ($brand-bg / $headband-bg => $black-deep).
android_chrome_color: "#222"

# Custom Logo
# Do not support Scheme Mist currently.
# Options:
# enabled: If true, will enable custom logo
# image: Images's url, replace it with specific image
custom_logo:
enabled: false
image:

# Code Highlight theme
# Available values: normal | night | night eighties | night blue | night bright
# https://github.com/chriskempson/tomorrow-theme
highlight_theme: normal

# Enable "cheers" for archive page.
cheers_enabled: true


# ---------------------------------------------------------------
# Font Settings
# - Find fonts on Google Fonts (https://www.google.com/fonts)
# - All fonts set here will have the following styles:
# light, light italic, normal, normal italic, bold, bold italic
# - Be aware that setting too much fonts will cause site running slowly
# - Introduced in 5.0.1
# ---------------------------------------------------------------
# CAUTION! Safari Version 10.1.2 bug: https://github.com/iissnan/hexo-theme-next/issues/1844
# To avoid space between header and sidebar in Pisces / Gemini themes recommended to use Web Safe fonts for `global` (and `logo`):
# Arial | Tahoma | Helvetica | Times New Roman | Courier New | Verdana | Georgia | Palatino | Garamond | Comic Sans MS | Trebuchet MS
# ---------------------------------------------------------------
font:
enable: false

# Uri of fonts host. E.g. //fonts.googleapis.com (Default).
host:

# Font options:
# `external: true` will load this font family from `host` above.
# `family: Times New Roman`. Without any quotes.
# `size: xx`. Use `px` as unit.

# Global font settings used for all elements in <body>.
global:
external: true
family: Lato
size:

# Font settings for Headlines (H1, H2, H3, H4, H5, H6).
# Fallback to `global` font settings.
headings:
external: true
family:
size:

# Font settings for posts.
# Fallback to `global` font settings.
posts:
external: true
family:

# Font settings for Logo.
# Fallback to `global` font settings.
logo:
external: true
family:
size:

# Font settings for <code> and code blocks.
codes:
external: true
family:
size:


# ---------------------------------------------------------------
# Third Party Services Settings
# ---------------------------------------------------------------

# Math Equations Render Support
math:
enable: false

# Default(true) will load mathjax/katex script on demand
# That is it only render those page who has `mathjax: true` in Front Matter.
# If you set it to false, it will load mathjax/katex srcipt EVERY PAGE.
per_page: true

engine: mathjax
#engine: katex

# hexo-rendering-pandoc (or hexo-renderer-kramed) needed to full MathJax support.
mathjax:
# Use 2.7.1 as default, jsdelivr as default CDN, works everywhere even in China
cdn: //cdn.jsdelivr.net/npm/[email protected]/MathJax.js?config=TeX-AMS-MML_HTMLorMML
# For direct link to MathJax.js with CloudFlare CDN (cdnjs.cloudflare.com)
#cdn: //cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML

# See: https://mhchem.github.io/MathJax-mhchem/
#mhchem: //cdn.jsdelivr.net/npm/[email protected]
#mhchem: //cdnjs.cloudflare.com/ajax/libs/mathjax-mhchem/3.3.0

# hexo-renderer-markdown-it-plus (or hexo-renderer-markdown-it with markdown-it-katex plugin) needed to full Katex support.
katex:
# Use 0.7.1 as default, jsdelivr as default CDN, works everywhere even in China
cdn: //cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css
# CDNJS, provided by cloudflare, maybe the best CDN, but not works in China
#cdn: //cdnjs.cloudflare.com/ajax/libs/KaTeX/0.7.1/katex.min.css

copy_tex:
# See: https://github.com/KaTeX/KaTeX/tree/master/contrib/copy-tex
enable: false
copy_tex_js: //cdn.jsdelivr.net/npm/[email protected]/dist/contrib/copy-tex.min.js
copy_tex_css: //cdn.jsdelivr.net/npm/[email protected]/dist/contrib/copy-tex.min.css

# PDF Support
# Dependencies: https://github.com/theme-next/theme-next-pdf
pdf:
enable: false

# Default(true) will load PDFObject/PDF.js script on demand
# That is it only render those page who has `pdf: true` in Front Matter.
# If you set it to false, it will load PDFObject/PDF.js srcipt EVERY PAGE.
per_page: true

height: 500px

pdfobject:
# Use 2.1.1 as default, jsdelivr as default CDN, works everywhere even in China
cdn: //cdn.jsdelivr.net/npm/[email protected]/pdfobject.min.js
# CDNJS, provided by cloudflare, maybe the best CDN, but not works in China
#cdn: //cdnjs.cloudflare.com/ajax/libs/pdfobject/2.1.1/pdfobject.min.js

# Han Support
# Dependencies: https://github.com/theme-next/theme-next-han
han: false

# Pangu Support
# Dependencies: https://github.com/theme-next/theme-next-pangu
# For more information: https://github.com/vinta/pangu.js
pangu: false

# Swiftype Search API Key
#swiftype_key:

# Baidu Analytics ID
#baidu_analytics:

# Growingio Analytics ID
# Copyright 2015-2018 GrowingIO, Inc. More info available at https://www.growingio.com
#growingio_analytics: #your projectId

# Disqus
disqus:
enable: false
shortname:
count: true
lazyload: false

# Changyan
changyan:
enable: false
appid:
appkey:

# Valine
# You can get your appid and appkey from https://leancloud.cn
# More info available at https://valine.js.org
valine:
enable: false # When enable is set to be true, leancloud_visitors is recommended to be closed for the re-initialization problem within different leancloud adk version.
appid: # your leancloud application appid
appkey: # your leancloud application appkey
notify: false # mail notifier, See: https://github.com/xCss/Valine/wiki
verify: false # Verification code
placeholder: Just go go # comment box placeholder
avatar: mm # gravatar style
guest_info: nick,mail,link # custom comment header
pageSize: 10 # pagination size
visitor: false # leancloud-counter-security is not supported for now. When visitor is set to be true, appid and appkey are recommended to be the same as leancloud_visitors' for counter compatibility. Article reading statistic https://valine.js.org/visitor.html
comment_count: true # if false, comment count will only be displayed in post page, not in home page

# Support for LiveRe comments system.
# You can get your uid from https://livere.com/insight/myCode (General web site)
#livere_uid: your uid

# Gitment
# Introduction: https://github.com/imsun/gitment
gitment:
enable: false
mint: true # RECOMMEND, A mint on Gitment, to support count, language and proxy_gateway
count: true # Show comments count in post meta area
lazy: false # Comments lazy loading with a button
cleanly: false # Hide 'Powered by ...' on footer, and more
language: # Force language, or auto switch by theme
github_user: # MUST HAVE, Your Github Username
github_repo: # MUST HAVE, The name of the repo you use to store Gitment comments
client_id: # MUST HAVE, Github client id for the Gitment
client_secret: # EITHER this or proxy_gateway, Github access secret token for the Gitment
proxy_gateway: # Address of api proxy, See: https://github.com/aimingoo/intersect
redirect_protocol: # Protocol of redirect_uri with force_redirect_protocol when mint enabled

# Gitalk
# Demo: https://gitalk.github.io
# Reference: https://asdfv1929.github.io/2018/01/20/gitalk/, https://liujunzhou.cn/2018/8/10/gitalk-error/#more
gitalk:
enable: false
github_id: # Github repo owner
repo: # Repository name to store issues.
client_id: # Github Application Client ID
client_secret: # Github Application Client Secret
admin_user: # GitHub repo owner and collaborators, only these guys can initialize github issues
distraction_free_mode: true # Facebook-like distraction free mode

# Baidu Share
# Available values:
# button | slide
# Warning: Baidu Share does not support https.
#baidushare:
## type: button

# AddThis Share, See: https://www.addthis.com
# Go to https://www.addthis.com/dashboard to customize your tools
#add_this_id:

# NeedMoreShare2
# Dependencies: https://github.com/theme-next/theme-next-needmoreshare2
# See: https://github.com/revir/need-more-share2, https://github.com/DzmVasileusky/needShareButton
# iconStyle: default | box
# boxForm: horizontal | vertical
# position: top / middle / bottom + Left / Center / Right
# networks:
# Weibo,Wechat,Douban,QQZone,Twitter,Linkedin,Mailto,Reddit,Delicious,StumbleUpon,Pinterest,Facebook,GooglePlus,
# Slashdot,Technorati,Posterous,Tumblr,GoogleBookmarks,Newsvine,Evernote,Friendfeed,Vkontakte,Odnoklassniki,Mailru
needmoreshare2:
enable: false
postbottom:
enable: false
options:
iconStyle: box
boxForm: horizontal
position: bottomCenter
networks: Weibo,Wechat,Douban,QQZone,Twitter,Facebook
float:
enable: false
options:
iconStyle: box
boxForm: horizontal
position: middleRight
networks: Weibo,Wechat,Douban,QQZone,Twitter,Facebook

# Google Webmaster tools verification setting
# See: https://www.google.com/webmasters
#google_site_verification:

# Google Analytics
#google_analytics:

# Bing Webmaster tools verification setting
# See: https://www.bing.com/webmaster
#bing_site_verification:

# Yandex Webmaster tools verification setting
# See: https://webmaster.yandex.ru
#yandex_site_verification:

# Baidu Webmaster tools verification setting
# See: https://ziyuan.baidu.com/site
#baidu_site_verification:

# CNZZ count
#cnzz_siteid:

# Application Insights
# See: https://azure.microsoft.com/en-us/services/application-insights
#application_insights:

# Post widgets & FB/VK comments settings.
# ---------------------------------------------------------------
# Facebook SDK Support.
# https://github.com/iissnan/hexo-theme-next/pull/410
facebook_sdk:
enable: false
app_id: #<app_id>
fb_admin: #<user_id>
like_button: #true
webmaster: #true

# Facebook comments plugin
# This plugin depends on Facebook SDK.
# If facebook_sdk.enable is false, Facebook comments plugin is unavailable.
facebook_comments_plugin:
enable: false
num_of_posts: 10 # min posts num is 1
width: 100% # default width is 550px
scheme: light # default scheme is light (light or dark)

# VKontakte API Support
# To get your AppID visit https://vk.com/editapp?act=create
vkontakte_api:
enable: false
app_id: #<app_id>
like: true
comments: true
num_of_posts: 10

# Star rating support to each article.
# To get your ID visit https://widgetpack.com
rating:
enable: false
id: #<app_id>
color: fc6423
# ---------------------------------------------------------------

# Show number of visitors to each article.
# You can visit https://leancloud.cn get AppID and AppKey.
leancloud_visitors:
enable: false
app_id: #<app_id>
app_key: #<app_key>
# Dependencies: https://github.com/theme-next/hexo-leancloud-counter-security
# If you don't care about security in leancloud counter and just want to use it directly
# (without hexo-leancloud-counter-security plugin), set `security` to `false`.
security: true
betterPerformance: false

# Another tool to show number of visitors to each article.
# Visit https://console.firebase.google.com/u/0/ to get apiKey and projectId.
# Visit https://firebase.google.com/docs/firestore/ to get more information about firestore.
firestore:
enable: false
collection: articles #required, a string collection name to access firestore database
apiKey: #required
projectId: #required
bluebird: false #enable this if you want to include bluebird 3.5.1(core version) Promise polyfill

# Show Views/Visitors of the website/page with busuanzi.
# Get more information on http://ibruce.info/2015/04/04/busuanzi
busuanzi_count:
enable: false
total_visitors: true
total_visitors_icon: user
total_views: true
total_views_icon: eye
post_views: true
post_views_icon: eye

# Tencent analytics ID
#tencent_analytics:

# Tencent MTA ID
#tencent_mta:

# Enable baidu push so that the blog will push the url to baidu automatically which is very helpful for SEO.
baidu_push: false

# Google Calendar
# Share your recent schedule to others via calendar page.
# API Documentation: https://developers.google.com/google-apps/calendar/v3/reference/events/list
# Enabled APIs and services
# api_key: https://console.developers.google.com
# Create & manage a public Google calendar: https://support.google.com/calendar/answer/37083
calendar:
enable: false
calendar_id: <required> # Your Google account E-Mail
api_key: <required>
orderBy: startTime
offsetMax: 24 # Time Range
offsetMin: 4 # Time Range
showDeleted: false
singleEvents: true
maxResults: 250

# Algolia Search
# See: https://github.com/theme-next/hexo-theme-next/blob/master/docs/ALGOLIA-SEARCH.md
# Dependencies: https://github.com/theme-next/theme-next-algolia-instant-search
algolia_search:
enable: false
hits:
per_page: 10
labels:
input_placeholder: Search for Posts
hits_empty: "We didn't find any results for the search: ${query}"
hits_stats: "${hits} results found in ${time} ms"

# Local search
# Dependencies: https://github.com/theme-next/hexo-generator-searchdb
local_search:
enable: false
# if auto, trigger search by changing input
# if manual, trigger search by pressing enter key or search button
trigger: auto
# show top n results per article, show all results by setting to -1
top_n_per_article: 1
# unescape html strings to the readable one
unescape: false

# Bookmark Support
# Dependencies: https://github.com/theme-next/theme-next-bookmark
bookmark:
enable: false
# if auto
# - save the reading position when closing the page
# - or clicking the bookmark-icon
# if manual, only save it by clicking the bookmark-icon
save: auto


# ---------------------------------------------------------------
# Tags Settings
# ---------------------------------------------------------------

# See: https://theme-next.org/docs/tag-plugins/
# Note tag (bs-callout)
note:
# Note tag style values:
# - simple bs-callout old alert style. Default.
# - modern bs-callout new (v2-v3) alert style.
# - flat flat callout style with background, like on Mozilla or StackOverflow.
# - disabled disable all CSS styles import of note tag.
style: simple
icons: false
border_radius: 3
# Offset lighter of background in % for modern and flat styles (modern: -12 | 12; flat: -18 | 6).
# Offset also applied to label tag variables. This option can work with disabled note tag.
light_bg_offset: 0

# Label tag
label: true

# Tabs tag
tabs:
enable: true
transition:
tabs: false
labels: true
border_radius: 0

# Reading progress bar
# Dependencies: https://github.com/theme-next/theme-next-reading-progress
reading_progress:
enable: false
color: "#37c6c0"
height: 2px


#! ---------------------------------------------------------------
#! DO NOT EDIT THE FOLLOWING SETTINGS
#! UNLESS YOU KNOW WHAT YOU ARE DOING
#! ---------------------------------------------------------------

# Use velocity to animate everything.
motion:
enable: true
async: false
transition:
# Transition variants:
# fadeIn | fadeOut | flipXIn | flipXOut | flipYIn | flipYOut | flipBounceXIn | flipBounceXOut | flipBounceYIn | flipBounceYOut
# swoopIn | swoopOut | whirlIn | whirlOut | shrinkIn | shrinkOut | expandIn | expandOut
# bounceIn | bounceOut | bounceUpIn | bounceUpOut | bounceDownIn | bounceDownOut | bounceLeftIn | bounceLeftOut | bounceRightIn | bounceRightOut
# slideUpIn | slideUpOut | slideDownIn | slideDownOut | slideLeftIn | slideLeftOut | slideRightIn | slideRightOut
# slideUpBigIn | slideUpBigOut | slideDownBigIn | slideDownBigOut | slideLeftBigIn | slideLeftBigOut | slideRightBigIn | slideRightBigOut
# perspectiveUpIn | perspectiveUpOut | perspectiveDownIn | perspectiveDownOut | perspectiveLeftIn | perspectiveLeftOut | perspectiveRightIn | perspectiveRightOut
post_block: fadeIn
post_header: slideDownIn
post_body: slideDownIn
coll_header: slideLeftIn
# Only for Pisces | Gemini.
sidebar: slideUpIn

# Fancybox. There is support for old version 2 and new version 3.
# Choose only any one variant, do not need to install both.
# To install 2.x: https://github.com/theme-next/theme-next-fancybox
# To install 3.x: https://github.com/theme-next/theme-next-fancybox3
fancybox: false

# Added switch option for separated repo in 6.0.0.
# Dependencies: https://github.com/theme-next/theme-next-fastclick
fastclick: false

# Added switch option for separated repo in 6.0.0.
# Dependencies: https://github.com/theme-next/theme-next-jquery-lazyload
lazyload: false

# Progress bar in the top during page loading.
# Dependencies: https://github.com/theme-next/theme-next-pace
pace: false
# Themes list:
# pace-theme-big-counter | pace-theme-bounce | pace-theme-barber-shop | pace-theme-center-atom
# pace-theme-center-circle | pace-theme-center-radar | pace-theme-center-simple | pace-theme-corner-indicator
# pace-theme-fill-left | pace-theme-flash | pace-theme-loading-bar | pace-theme-mac-osx | pace-theme-minimal
# For example
# pace_theme: pace-theme-center-simple
pace_theme: pace-theme-minimal

# Canvas-nest
# Dependencies: https://github.com/theme-next/theme-next-canvas-nest
canvas_nest:
enable: false
onmobile: true # display on mobile or not
color: '0,0,255' # RGB values, use ',' to separate
opacity: 0.5 # the opacity of line: 0~1
zIndex: -1 # z-index property of the background
count: 99 # the number of lines

# JavaScript 3D library.
# Dependencies: https://github.com/theme-next/theme-next-three
# three_waves
three_waves: false
# canvas_lines
canvas_lines: false
# canvas_sphere
canvas_sphere: false

# Canvas-ribbon
# Dependencies: https://github.com/theme-next/theme-next-canvas-ribbon
# size: The width of the ribbon.
# alpha: The transparency of the ribbon.
# zIndex: The display level of the ribbon.
canvas_ribbon:
enable: false
size: 300
alpha: 0.6
zIndex: -1

# Script Vendors.
# Set a CDN address for the vendor you want to customize.
# For example
# jquery: https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js
# Be aware that you should use the same version as internal ones to avoid potential problems.
# Please use the https protocol of CDN files when you enable https on your site.
vendors:
# Internal path prefix. Please do not edit it.
_internal: lib

# Internal version: 2.1.3
# Example:
# jquery: //cdn.jsdelivr.net/npm/[email protected]/dist/jquery.min.js
# jquery: //cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js
jquery:

# Internal version: 2.1.5
# See: https://fancyapps.com/fancybox
# Example:
# fancybox: //cdn.jsdelivr.net/gh/fancyapps/[email protected]/dist/jquery.fancybox.min.js
# fancybox: //cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.6/jquery.fancybox.min.js
# fancybox_css: //cdn.jsdelivr.net/gh/fancyapps/[email protected]/dist/jquery.fancybox.min.css
# fancybox_css: //cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.6/jquery.fancybox.min.css
fancybox:
fancybox_css:

# Internal version: 1.0.6
# See: https://github.com/ftlabs/fastclick
# Example:
# fastclick: //cdn.jsdelivr.net/npm/[email protected]/lib/fastclick.min.js
# fastclick: //cdnjs.cloudflare.com/ajax/libs/fastclick/1.0.6/fastclick.min.js
fastclick:

# Internal version: 1.9.7
# See: https://github.com/tuupola/jquery_lazyload
# Example:
# lazyload: //cdn.jsdelivr.net/npm/[email protected]/jquery.lazyload.min.js
# lazyload: //cdnjs.cloudflare.com/ajax/libs/jquery_lazyload/1.9.7/jquery.lazyload.min.js
lazyload:

# Internal version: 1.2.1
# See: http://VelocityJS.org
# Example:
# velocity: //cdn.jsdelivr.net/npm/[email protected]/velocity.min.js
# velocity: //cdnjs.cloudflare.com/ajax/libs/velocity/1.2.1/velocity.min.js
# velocity_ui: //cdn.jsdelivr.net/npm/[email protected]/velocity.ui.min.js
# velocity_ui: //cdnjs.cloudflare.com/ajax/libs/velocity/1.2.1/velocity.ui.min.js
velocity:
velocity_ui:

# Internal version: 0.7.9
# See: https://faisalman.github.io/ua-parser-js
# Example:
# ua_parser: //cdn.jsdelivr.net/npm/[email protected]/src/ua-parser.min.js
# ua_parser: //cdnjs.cloudflare.com/ajax/libs/UAParser.js/0.7.9/ua-parser.min.js
ua_parser:

# Internal version: 4.6.2
# See: https://fontawesome.com
# Example:
# fontawesome: //cdn.jsdelivr.net/npm/[email protected]/css/font-awesome.min.css
# fontawesome: //cdnjs.cloudflare.com/ajax/libs/font-awesome/4.6.2/css/font-awesome.min.css
fontawesome:

# Internal version: 2.4.1
# See: https://www.algolia.com
# Example:
# algolia_instant_js: //cdn.jsdelivr.net/npm/[email protected]/dist/instantsearch.js
# algolia_instant_css: //cdn.jsdelivr.net/npm/[email protected]/dist/instantsearch.min.css
algolia_instant_js:
algolia_instant_css:

# Internal version: 1.0.2
# See: https://github.com/HubSpot/pace
# Example:
# pace: //cdn.jsdelivr.net/npm/[email protected]/pace.min.js
# pace: //cdnjs.cloudflare.com/ajax/libs/pace/1.0.2/pace.min.js
# pace_css: //cdn.jsdelivr.net/npm/[email protected]/themes/blue/pace-theme-minimal.css
# pace_css: //cdnjs.cloudflare.com/ajax/libs/pace/1.0.2/themes/blue/pace-theme-minimal.min.css
pace:
pace_css:

# Internal version: 1.0.0
# See: https://github.com/theme-next/theme-next-canvas-nest
# Example:
# canvas_nest: //cdn.jsdelivr.net/gh/theme-next/[email protected]/canvas-nest.min.js
# canvas_nest_nomobile: //cdn.jsdelivr.net/gh/theme-next/[email protected]/canvas-nest-nomobile.min.js
canvas_nest:
canvas_nest_nomobile:

# Internal version: 1.0.0
# See: https://github.com/theme-next/theme-next-three
# Example:
# three: //cdn.jsdelivr.net/gh/theme-next/[email protected]/three.min.js
# three_waves: //cdn.jsdelivr.net/gh/theme-next/[email protected]/three-waves.min.js
# canvas_lines: //cdn.jsdelivr.net/gh/theme-next/[email protected]/canvas_lines.min.js
# canvas_sphere: //cdn.jsdelivr.net/gh/theme-next/[email protected]/canvas_sphere.min.js
three:
three_waves:
canvas_lines:
canvas_sphere:

# Internal version: 1.0.0
# See: https://github.com/zproo/canvas-ribbon
# Example:
# canvas_ribbon: //cdn.jsdelivr.net/gh/theme-next/[email protected]/canvas-ribbon.js
canvas_ribbon:

# Internal version: 3.3.0
# See: https://github.com/ethantw/Han
# Example:
# han: //cdn.jsdelivr.net/npm/[email protected]/dist/han.min.css
# han: //cdnjs.cloudflare.com/ajax/libs/Han/3.3.0/han.min.css
han:

# Internal version: 3.3.0
# See: https://github.com/vinta/pangu.js
# Example:
# pangu: //cdn.jsdelivr.net/npm/[email protected]/dist/browser/pangu.min.js
# pangu: //cdnjs.cloudflare.com/ajax/libs/pangu/3.3.0/pangu.min.js
pangu:

# Internal version: 1.0.0
# See: https://github.com/revir/need-more-share2
# Example:
# needmoreshare2_js: //cdn.jsdelivr.net/gh/theme-next/[email protected]/needsharebutton.min.js
# needmoreshare2_css: //cdn.jsdelivr.net/gh/theme-next/[email protected]/needsharebutton.min.css
needmoreshare2_js:
needmoreshare2_css:

# Internal version: 1.0.0
# See: https://github.com/theme-next/theme-next-bookmark
# Example:
# bookmark: //cdn.jsdelivr.net/gh/theme-next/[email protected]/bookmark.min.js
bookmark:

# Internal version: 1.1
# See: https://github.com/theme-next/theme-next-reading-progress
# Example:
# reading_progress: //cdn.jsdelivr.net/gh/theme-next/[email protected]/reading_progress.min.js
reading_progress:

# leancloud-storage
# See: https://www.npmjs.com/package/leancloud-storage
# Example:
# leancloud: //cdn.jsdelivr.net/npm/[email protected]/dist/av-min.js
leancloud:

# valine
# See: https://github.com/xCss/Valine
# Example:
# valine: //cdn.jsdelivr.net/npm/[email protected]/dist/Valine.min.js
# valine: //cdnjs.cloudflare.com/ajax/libs/valine/1.3.4/Valine.min.js
valine:

# gitalk
# See: https://github.com/gitalk/gitalk
# Example:
# gitalk_js: //cdn.jsdelivr.net/npm/[email protected]/dist/gitalk.min.js
# gitalk_css: //cdn.jsdelivr.net/npm/[email protected]/dist/gitalk.css
gitalk_js:
gitalk_css:

# js-md5
# See: https://github.com/emn178/js-md5
# Example:
# md5: //cdn.jsdelivr.net/npm/[email protected]/src/md5.min.js
md5:

# Assets
css: css
js: js
images: images