butterfly基本配置
安装Butterfly
Git安装(Gitee)
稳定版(Github)
在你的 Hexo 根目录里
1 | git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly |
测试版可能存在 bug,追求稳定的请安装稳定版
如果想要安装比较新的 dev 分支,可以
1 | git clone -b dev https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly |
::: tip
升级方法:在主题目录下,运行 ‘git pull’
:::
Git安装(Gitee)
稳定版【建议】
在你的 Hexo 根目录里
1 | git clone -b master https://gitee.com/immyw/hexo-theme-butterfly.git themes/butterfly |
测试版可能存在 bug,追求稳定的请安装稳定版
如果想要安装比较新的 dev 分支,可以
1 | git clone -b dev https://gitee.com/immyw/hexo-theme-butterfly.git themes/butterfly |
::: tip
升级方法:在主题目录下,运行 ‘git pull’
:::
安装必要插件
如果你沒有 pug 以及 stylus 的渲染器,請下載安裝:
1 | npm install hexo-renderer-pug hexo-renderer-stylus --save |
应用主题
打开hexo根目录下的config.js
,把主题改为butterfly
:
1 | theme: butterfly |
开始写作
创建新文章
在Hexo根目录下的soruce/_posts
创建一个Markdown文件。
FrontMatter
https://butterfly.js.org/posts/dc584b87/#Front-matterFrontMatter在官网中有很明确的解释。
Markdown
Markdown的功能被我们称为”排版”,您可以在Markdown官网查看编写方式(很简单的啦~别这么严肃。)
Hexo基本配置
Hexo _config.yml修改
Hexo根目录下的_config.yml小白可以将其理解为Wordpress的wp-admin(比喻也许不恰当)主题根目录的_config.yml 可以是为主题设置。
在Hexo根目录下的config.js,您可以修改昵称,站点名称,站点语言,邮箱,关键词等个人资料,或是增加教程说明必要修改config.js的插件。
标题与子标题
在Hexo根目录下的_config.yml内找到title:
与subtitle:
按照自己的喜好填写。
Title会让站点的右上角显示您填写的文本,而配置完Subtitle,您只有在浏览器标题处才能感受到它带来的改变,此时标题处显示的是:title - subtitle
。
关键词
在Hexo根目录下的_config.yml内找到keywords:
按喜好填写。每词用英文逗号分隔。
语言
在Hexo根目录下的_config.yml内找到language:
主题支持三种语言,为:
- default(en)
- zh-CN (简体中文)
- zh-TW (繁体中文)
一般我们更改为zh-CN
即可。
Butterfly基本配置
Butterfly _config.yml修改
重要建议
为了减少升级主题后带来的不便,请使用以下方法(本教程已全面使用,可以不做)。
在 hexo 的根目录创建一个文件 _config.butterfly.yml
,并把主题目录的 _config.yml
内容复制到 _config.butterfly.yml
去。**( 注意: 复制的是主题的 _config.yml ,而不是 hexo 的 _config.yml)**
::: tip 注意
不要把主题目录的 _config.yml
删掉。
以后只需要在 _config.butterfly.yml进行配置就行。
Hexo会自动合并主题中的_config.yml
和 _config.butterfly.yml
里的配置,如果存在同名配置,会使用_config.butterfly.yml
的配置,其优先度较高。
:::
导航栏
修改_config.butterfly.yml
:
1 | Home: / || fas fa-home |
内文字与网址可自由更改,如何创建页面,请看下一章中的:创建页面
代码高亮主题
Butterfly 支持6种代码高亮样式:
- darker
- pale night
- light
- ocean
- mac
- mac light
修改_config.butterfly.yml
1 | highlight_theme: light |
darker
pale night
light
ocean
mac
mac light
代码复制
这是一个网站内常用的功能,建议开启,否则访问者触控板的复制体验很差(至少我是这样的😂),开启这个功能后,代码框右上角会显示copy图标。
修改_config.butterfly.yml
1 | highlight_copy: true |
代码自动换行
默认情况下,Hexo 在编译的时候不会实现代码自动换行。如果您想使站点更美观,可以尝试。但是我们不建议您这么做,这样会让无法正常使用行号。
修改_config.butterfly.yml
1 | code_word_wrap: true |
使用highlight 渲染的用户需要在站点根目录下的_config.yml中将line_number改为false:
1 | highlight: |
使用prismjs 渲染的用户需要在站点根目录下的_config.yml中将line_number改为false:
1 | prismjs: |
代码高度限制
::: tip 支持版本
3.7.0 及以上支持
:::
可配置代码高度限制,超出的部分会隐藏,并显示展开按钮。
1 | highlight_height_limit: false # unit: px |
::: warning 注意
单位是 px,直接添加数字,如 200
实际限制高度为 highlight_height_limit + 30 px ,多增加 30px 限制,目的是避免代码高度只超出highlight_height_limit 一点时,出现展开按钮,展开没内容。
不适用于隐藏后的代码块( css 设置 display: none)
:::
侧边栏社交图标
Butterfly支持 font-awesome v6图标.
书写格式 图标名:url || 描述性文字
1 | social: |
您可以在侧边栏的作者信息内找到它带来的改动。
顶部图
::: tip
如果不要显示顶部图,可直接配置 disable_top_img: true
:::
配置中的值:
配置 | 解释 |
---|---|
index_img | 主页的 top_img |
default_top_img | 默认的 top_img,当页面的 top_img 没有配置时,会显示 default_top_img |
archive_img | 归档页面的 top_img |
tag_img | tag 子页面 的 默认 top_img |
tag_per_img | tag 子页面的 top_img,可配置每个 tag 的 top_img |
category_img | category 子页面 的 默认 top_img |
category_per_img | category 子页面的 top_img,可配置每个 category 的 top_img |
其它页面 (tags/categories/自建页面)和 文章页 的 top_img ,请到对应的 md 页面设置front-matter中的top_img。
文章meta显示
这个选项是用来显示文章的相关信息的。
修改 _config.butterfly.yml
:
1 | post_meta: |
当然,我们建议您使用both,若您想将博客的recent-posts修改为HEO旧样式,那么我们建议您修改为left。
文章封面
文章的markdown文档上,在Front-matter添加cover,并填上要显示的图片地址。
如果不配置cover,可以设置显示默认的cover.
如果不想在首页显示cover,可以设置为false
修改 _config.butterfly.yml
1 | cover: |
当配置多张图片时,会随机选择一张作为cover此时写法应为:
1 | default_cover: |
文章版权
修改 _config.butterfly.yml
1 | post_copyright: |
由于Hexo 4.1开始,默认对网址进行解码,以至于如果是中文网址,会被解码,可设置decode: true来显示中文网址。
如果有文章(例如:转载文章)不需要显示版权,可以在文章Front-matter单独设置
1 | copyright: false |
从3.0.0开始,支持对单独文章设置版权信息,可以在文章Front-matter单独设置
1 | copyright_author: xxxx |
文章打赏
在您每篇文章的结尾,可以添加打赏按钮。相关二维码可以自行配置。
对于没有提供二维码的,可配置一张软件的icon图片,然后在link上添加相应的打赏链接。用户点击图片就会跳转到链接去。
link可以不写,会默认为图片的链接。
修改 _config.butterfly.yml
1 | reward: |
相关文章
相关文章推荐的原理是根据文章tags的比重来推荐
修改 _config.butterfly.yml
1 | related_post: |
文章过期提醒
可设置是否显示文章过期提醒,以更新时间为基准。
1 | # Displays outdated notice for a post (文章过期提醒) |
文章编辑按钮
在文章标题旁边显示一个编辑按钮,点击会跳转到对应的链接去。
1 | # Post edit |
下一篇文章
文章分页按钮
可设置分页的逻辑,也可以关闭分页显示
1 | # post_pagination (分页) |
参数 | 解释 |
---|---|
post_pagination: false | 关闭分页按钮 |
post_pagination: 1 | 下一篇显示的是旧文章 |
post_pagination: 2 | 下一篇显示的是新文章 |
头像
修改 _config.butterfly.yml
1 | avatar: |
图片描述
可开启图片Figcaption描述文字显示
优先显示图片的 title 属性,然后是 alt 属性
修改_config.butterfly.yml
1 | photofigcaption: true |
复制相关配置
可配置网站是否可以复制、复制的内容是否添加版权信息
1 | # copyright: Add the copyright information after copied content (复制的内容后面加上版权信息) |
配置 | 解释 |
---|---|
enable | 是否开启网站复制权限 |
copyright | 复制的内容后面加上版权信息 |
enable | 是否开启复制版权信息添加 |
limit_count | 字数限制,当复制文字大于这个字数限制时,将在复制的内容后面加上版权信息 |
当然,我们强烈建议您打开此功能,虽然复制时的Copyright在复制代码时(所以我们在上几章强烈建议您开启copy按钮),此功能的开启给我们的代码复制增加了负担。
简繁转换(右下角按钮)
右下角会有简繁转换按钮。
修改 _config.butterfly.yml
1 | translate: |
夜间模式(右下角按钮)
右下角会有夜间模式按钮
修改 _config.butterfly.yml
1 | # dark mode |
侧边栏设置
侧边排版
可自行决定哪个项目需要显示,可决定位置,也可以设置不显示侧边栏。
修改_config.butterfly.yml
1 | aside: |
访问人数 busuanzi (UV 和 PV)
访问 busuanzi 的官方网站查看更多的介绍。
修改_config.butterfly.yml
1 | busuanzi: |
运行时间
修改_config.butterfly.yml
1 | runtimeshow: |
完。