安装Node.js并配置Node.js环境
成功界面如下:
安装git并配置git环境
注册Github并新建项目
首页
新建仓库页
参考其他博客的时候,很多博客中都提到
项目名必须是
github账户名.github.io
但经本人测试其实项目名称可以任意选取,如本人的仓库名就是blog
,而非destinywang.github.io
设置
进入项目的setting
选项卡中
下拉到Github Pages
,此时该项目已经被部署,可以通过提供的外网链接去访问。
安装Hexo
Hexo是个快捷,简介且高效的博客框架
让上百个页面在几秒内完成渲染
Hexo支持Github Flavored Markdown的所有功能
在合适的位置创建文件夹
以上操作需要在空文件夹中进行
1 | npm install hexo -g # 安装Hexo |
Hexo init
npm install
此命令用于安装所需要的组件
hexo g
首次体验Hexo
hexo s
此命令会在本地开启Hexo的服务器
可以在发布到github之前先在本地进行调试
然后再浏览器中输入localhost:4000/blog/
如果出现如下界面就成功了
将Hexo和Github page联系起来
设置本地git
如果是第一次使用git的话需要设置name
和email
1 | $ ssh-keygen -t rsa -C "your email" # 生成秘钥,路径在~/.ssh下,windows用户的路径为C:\Users\Administrator\.ssh |
登录github,进行设置
- 进入用户的setting页面
- 在
SSH and GPG keys
选项卡中添加一个ssh key,并将id_rsa.pub
(公钥)的内容复制上去
配置Deployment
为了保证Hexo能够正确的通过Git进行add
、commit
、pull
、push
等操作
需要将本地及远程的git仓库信息进行配置
当前站点文件夹的状态:
修改_config.yml
文件,将deployment
部分相关的内容进行替换
- type: 部署类型
- repository: 远程仓库路径,即github中的仓库路径
- branch: 分支名
新建一篇博客
在终端中执行命令hexo new post 博客名
会在source/_posts
路径下生成对应的博客文件test.md
安装hexo-deployer-git
扩展文件
1 | $ npm install hexo-deployer-git --save |
编辑文章
1 | $ vim source/_posts/test.md |
打开test.md
文件,按照正常的Markdown文件编辑即可
部署
1 | $ hexo d -g |
至此,博客已经部署成功,可以去http://用户名.github.io
查看。
安装Next
1 | $ git clone https://github.com/iissnan/hexo-theme-next themes/next |
下载到站点文件夹路径下的themes/next
启用Next主体
在站点目录中,打开配置文件_config.yml
,修改theme: next
1 | pwd |
主题设定
在next主题目录下的_config.yml
,修改scheme: Pisces
1 | $ pwd |
语言设定
Hexo提供了多种语言支持,包括简体中文zh-Hans
在站点根目录下修改配置文件_config.yml
中的language
为zh-Hans
1 | pwd |
修改菜单栏
在主题目录下修改配置文件_config.yml
中的menu
1 | $ pwd |
设置菜单项图标
对应字段是menu_icons
同样在主题目录下的_config.yml
中修改
格式为item name: icon name
,其中item name
与所配置的菜单名字对应,icon name
是Font Awesome
图标的名字。而 enable
可用于控制是否显示图标,你可以设置成 false
来去掉图标。
1 | $ pwd |
设置侧栏位置
修改主题目录下sidebar
的position
值
1 | $ pwd |
设置头像
在站点根目录下载配置文件中新增avatar,值设置为头像的链接地址。地址可以是网络地址,也可以是本地地址(放置在source/images/
目录下)
设置文章代码主题
在主题目录下修改配置文件_config.yml
,字段highlight_theme
,默认值为nomal
。可以设置为night
1 | $ pwd |
添加分类
在站点路径下新建页面categories
1 | $ pwd |
1 | # 在主题的 _config.yml 中取消注释: |
在要分类的文章中加入 category 属性:
添加标签页面
标签是对博客分类的方式
比如一个系列的博客都是将神经网络
,那么就可以给每篇博客加上神经网络
的tag
1 | $ pwd |
后面只需要在博客的开头中添加tags: [A, B, C]
即可
成功后,标签
部分的导航栏为
Aboute Me
1 | $ pwd |
成功后效果如下所示:
添加github导航条
然后将代码复制到themes/next/layout/_layout.swig
1 | $ pwd |
成功后的效果如下:
修改内容区域宽度
默认情况
Next 对内容的宽度的设定如下:
- 700px,当屏幕宽度 < 1600px
- 900px,当屏幕宽度 >= 1600px
- 移动设备下,宽度自适应
非Pisces Scheme
主题修改
1 | $ vim source/css_variables/custom.styl |
修改内容:
1 | // 修改成你期望的宽度 |
Pisces Scheme
主题修改
1 | $ vim themes\next\source\css\_schemes\Picses\_layout.styl |
修改内容:
1 | .header {width: 1150px;} |
设置首页不显示全文(只显示预览)
打开主题路径下的_config.yml
1 | $ vim themes/next/_config.yml |
修改auto_excerpt
1 | # Automatically Excerpt. Not recommand. |
将enable
属性改为true
修改code
代码块自定义样式
1 | $ vim themes/next/source/css/_custom/custom.styl |
取消文章目录
对标题的自动编号
nexT对 markdown
语法的标题
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
会默认进行标号分配,这样有可能会打乱文章原有标题
取消方式:
修改主题配置文件
1 | $ vim theme/next/_config |
将 number
设为 false
结束
至此,博客基本设置OK
但还有很多地方可以继续挖掘
后续会持续更新