关于Hexo如何生成,测试,上传博客,博客内的基本语法,以及Butterfly主题如何更改配置文件。

Hexo语法

生成

hexo g

通过配置文件,sources文件夹(包含博客以及其他页面文件)生成public文件夹。

测试

hexo s

将public文件夹以本地为服务器,生成博客内容,网址为http://localhost:4000/

上传

hexo d

将public文件夹上传至Github,利用Github做服务器,生成博客内容。

清空缓存

hexo clean

清空 public 文件夹,清空缓存,适用于修改配置文件后,生成 public 文件夹前。(调用此命令后,应将 MyBlog 文件夹中的 CNAME 和 readme.md 放入 public 文件夹中)

Hexo + Markdown + Mathjax + Butterfly 博客内语法

Hexo前缀(Front-matter)

在博客前,需要添加Front-matter以确定该博客的基本属性。

title: Template
//博客标题
date: 2099-01-01 00:00:00
//博客创建时间,缺省为.md创建时间,如果该时间晚于当前时间,则为定时发布(可在主题config的future中调整)
updated: 2099-01-01 00:00:00
//博客更新时间,缺省为.md更新时间
tags: [Chinese,Hexo]
//博客标签(Chinese,Hexo两个标签并列)
categories: [A,B]
//博客分类(A,B两个分类嵌套,B是子分类)
description: About Hexo.
//博客简介,显示在首页或归档中,博客外
cover: http://xx/1.jpg
//博客封面
comments: true/false
//开启评论功能,默认为true

Markdown+Mathjax基本语法

博客基本语法即Markdown+Mathjax语法。

关于Markdown与Mathjax的冲突

为了进一步解决冲突问题,详见Mathjax的配置方法

冲突1

有些特殊符号在Markdown与Mathjax中存在表达冲突的问题,如星号(*)在Markdown中可以表示斜体或加粗,在Mathjax中可以表示乘法。

为了解决冲突,可以在Mathjax中使用Markdown中的转义符(\)。

例如:

$a \* b$

将会输出为:

$a * b$

这种解决方法会导致Latex的语法发生变化,需要注意。

冲突2

为了输出大括号,不能在Mathjax中使用:

$\{ A \}$

而应使用:

$\lbrace A \rbrace$

效果如下:

$\lbrace A \rbrace$

Butterfly主题自创语法

该语法仅适用于Butterfly主题,在其他主题下可能会出现错误。

提示标签

语法:

{% note modern %}
none
{% endnote %}

{% note default modern %}
default
{% endnote %}

{% note primary modern %}
primary
{% endnote %}

{% note success modern %}
success
{% endnote %}

{% note info modern %}
info
{% endnote %}

{% note warning modern %}
warning
{% endnote %}

{% note danger modern %}
danger
{% endnote %}

效果:

none

default

primary

success

info

warning

danger

选择标签

语法:

{% tabs tabname %}
<!-- tab name1 -->
**This is Tab 1.**
<!-- endtab -->

<!-- tab name2 -->
**This is Tab 2.**
<!-- endtab -->

<!-- tab name3 -->
**This is Tab 3.**
<!-- endtab -->
{% endtabs %}

效果:

This is Tab 1.

This is Tab 2.

This is Tab 3.

更多用法

更多更详细的用法见Butterfly的标签外挂

配置文件

新建页

在导览菜单中修改,使得右上角出现选项(详细操作)。

在source/pagename中添加页文件,基本语法与博客文件相同(详细操作)。

可以加入个人介绍页,简历页等等。

网站信息

详细操作

顶部图

详细操作

可直接通过主题配置文件中的 disable_top_img: true/false 来控制顶部图的启用与关闭。

文章置顶

你可以直接在文章的front-matter区域里添加sticky: 1属性来把这篇文章置顶。数值越大,置顶的优先级越大。

详细操作

可在其中加入备案信息。

更多功能

Butterfly支持评论,图库,在线聊天,分享,搜索系统,网站验证,站点分析统计,广告,美化特效,CDN等等更多功能。

详见:Butterfly 安装文档(四) 主题配置-2

Butterfly支持音乐,豆瓣电影,说说,自定义代码配色,自定义侧边栏,图片压缩等等更多功能。

详见:Butterfly 安装文档(六) 进阶教程

How to change domain name?

  1. Change URL in OAuth app for updating comments.
  2. Add/Change CNAME file in repository homepage for domain name resolution.
  3. Change URL in local file MyBlog/_config.yml for copyright notice and everything.
  4. Change custom domain in GitHub Pages.