搭建个人博客
采用Hexo+Next搭建个人博客,并通过Github Pages部署。
官方手册
配置环境
安装Node.js,使用
npm -v
查看版本安装Git,使用
git --version
查看版本修改npm源
# 获取npm源
npm get registry
# 修改为淘宝源
npm config set registry http://registry.npm.taobao.org/
# 重置
# npm config set registry https://registry.npmjs.org/
- 安装Hexo
npm install -g hexo-cli
部署网站
- 初始化文件夹
hexo init <folder>
cd <folder>
npm install
- 至此网站已经初步搭建完成,通过如下命令本地查看。
# generate and start
hexo g && hexo s
# open http://localhost:4000
-
- 首先申请一个Github账号,并上传SSH Key,可百度或参考教程。
- 新建仓库,名为username.github.io。
- 安装插件
npm install hexo-deployer-git --save
- 修改配置文件
_config.yml
deploy: type: git repo: <repository url> # https://bitbucket.org/JohnSmith/johnsmith.bitbucket.io branch: [branch] message: [message]
- 部署网站
hexo clean && hexo g && hexo d
修改配置
- 修改基本信息
# blog/_config.yml
title: entropy2333
subtitle: ''
description: ''
keywords:
author: entropy2333
language: zh-CN
timezone: ''
修改主题
- 下载主题
git clone https://github.com/theme-next/hexo-theme-next.git themes/next
- 修改配置文件
# blog/_config.yml theme: next
关闭广告
# blog/themes/next/_config.yaml
powered: false
修改菜单栏
- 添加菜单
# blog/themes/next/_config.yaml menu: home: / || fa fa-home about: /about/ || fa fa-user tags: /tags/ || fa fa-tags #categories: /categories/ || fa fa-th archives: /archives/ || fa fa-archive #schedule: /schedule/ || fa fa-calendar #sitemap: /sitemap.xml || fa fa-sitemap #commonweal: /404/ || fa fa-heartbeat
- 生成文件
# 生成的文件位于hexo/source下 hexo new page "about"
修改Next风格
# blog/themes/next/_config.yaml #scheme: Muse #scheme: Mist scheme: Pisces #scheme: Gemini
修改头像
# blog/themes/next/_config.yaml avatar: # Replace the default image and set the url here. # url: #/images/avatar.gif url: /images/myavatar.jpg # If true, the avatar will be dispalyed in circle. rounded: false # If true, the avatar will be rotated with the cursor. rotated: false
添加RSS订阅,需要安装插件
npm install hexo-generator-feed --save
# blog/_config.yaml 添加如下内容
feed:
enable: true
type: atom
path: atom.xml
order_by: -date
icon: icon.png
autodiscovery: true
# blog/themes/next/_config.yaml
social:
RSS: /atom.xml || fa fa-rss
- 修改代码块样式
# blog/_config.yaml
highlight:
enable: false
line_number: true
auto_detect: false
tab_replace: ''
wrap: true
hljs: false
prismjs:
enable: true
preprocess: true
line_number: false
line_threshold: 0
tab_replace: ''
# blog/themes/next/_config.yaml
codeblock:
# Code Highlight theme
# All available themes: https://theme-next.js.org/highlight/
theme:
enable: false
light: atom-one-light
dark: atom-one-dark
prism:
enable: true
light: prism-one-dark
dark: prism-one-dark
# Add copy button on codeblock
copy_button:
enable: true
show_result: true
# Available values: default | flat | mac
style: flat
- 更换公式的渲染引擎为pandoc
- 添加Gitalk评论系统
- 修改
hexo new
时的文件模版- 文件在
scaffolds
目录下,默认有post
、draft
和page
- 配置为
blog/_config.yaml
中的default_layout
字段,默认为post
- 修改后的示例如下
- 文件在
---
title: {{ title }}
date: {{ date }}
tags:
category:
- Paper
---
Abstract
<!--more-->
## Overview
links of paper pdf & code
## Background
## Method
## Experiment
:hexoPostRenderEscape-->
- 表格模块
{% tabs renderer %}
<!-- tab pandoc + MathJax -->
pandoc + MathJax
<!-- endtab -->
<!-- tab markdown-it -->
markdown-it
<!-- endtab -->
{% endtabs %}
pandoc + MathJax
markdown-it
总结
个性化设置基本都是基于修改配置文件,修改完用hexo clean; hexo g; hexo s
本地查看是否生效。