doudou0o blog

沉淀知识 分享知识


  • Home

  • Archives

  • Tags

  • About

  • Search

Hexo 搭建博客

Posted on 2017-02-20 Views: 391

倒腾了很久 Jekyll 之后,还是决定投入到 Hexo 阵营中来。Hexo的 markdown 编译器以及优秀的各种模板还有一键部署都是相当赞的功能。由于我也是新手白菜,记录本篇搭建日志,以防遗忘和换些功能或模板设置。

github 部分略过

Hexo

什么是Hexo

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
Hexo 的文档还是比较简单明白的~
这里是Hexo中文文档(https://hexo.io/zh-cn/docs/)
这里是Hexo英文文档(https://hexo.io/docs/index.html)

安装 Hexo

首先安装前,确认已经成功安装了 Node.js 和 git

  • Node.js
  • Git

然后目录下执行(windows 也是一样)

1
2
$ npm install -g hexo-cli --save
$ npm install --save #(忘了这步也没事,就是安装些插件之类的)

建立博客

进入你要搭建博客的目录,执行以下命令,就能新建一些博客文件

1
2
$ cd <folder>
$ hexo init

新建完成后,指定文件夹的目录如下:

1
2
3
4
5
6
7
8
9
.
|
├── _config.yml #配置文件
├── package.json #应用程序的信息(其实我也不知道)
├── scaffolds #模版文件夹
├── source #资源文件夹
| ├── _drafts #草稿
| └── _posts #发布的文章
└── themes #主题

Hexo 命令

init

1
$ hexo init

新建一直网站,注意了,这里它会新建模板文件,新建一个HelloWorld.md,新建一个_config.yml。其他不变,所以轻易没备份这些内容钱不要敲这个命令

clean 、new 、 server

1
2
3
$ hexo clean        #清除缓存文件 (`db.json`) 和已生成的静态文件 (`public`)。
$ hexo new <file1> #新建一篇文章
$ hexo server #启动服务器

generate 、 deploy

1
2
$ hexo generate    #生成静态文件
$ hexo deploy #部署网站

在部署前,在 _config.yml 中将自己的deploy设置配置好
部署时发现 ERROR Deployer not found: git 则需要安装这个插件

1
npm install hexo-deployer-git --save

博客设置

找几个自己喜欢的主题,根据主题的设置来进行配置。
整个 Hexo 博客有两个 config 一个是 Hexo 的设置,另一个就是 主题下的 config
基本上每个主题会有一定配置教程,注意其中的路径问题。

博客写作

本地图片

首先将 Hexo _config.yml 配置中将这个打开 post_asset_folder:true
打开后,每次新建一篇文章会同时建立一个同名的文件夹,里面的资源可以直接访问
如果没有找到,那么可能是插件未安装,执行以下命令

1
npm install https://github.com/CodeFalling/hexo-asset-image --save

于是在markdown中可以直接引用改资源,如下

1
![本地图片](./a.jpg)

本地预览

一般情况下,直接修改,刷新页面就可以看见修改,不需要重启服务。
但是有时候,必须要重启服务,而且先 clean 再 server 才能生效。

其他遇到问题再写

其他
如果说mathjax遇到渲染问题,先查看是否下划线有问题,原来的解释器会将下划线转义掉。
处理办法:

npm uninstall hexo-renderer-marked —saved
npm install hexo-renderer-kramed —saved

另外还是mathjax遇到渲染问题,发现不支持大括号
处理办法:

找到../node_modules/kramed/lib/rules/inline.js文件

1
2
3
4
//escape: /^\\([\\`*{}\[\]()#$+\-.!_>])/,      第11行,将其修改为
escape: /^\\([`*\[\]()#$+\-.!_>])/,
//em: /^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/, 第20行,将其修改为
em: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,

它取消了该渲染引擎对\,{,}的转义

如果遇到Error: Validation Failed的gitment错误
则需要修改以下内容

1
2
3
layout/_third-party/comments/gitment.swig
将 id: window.location.pathname,
改为 id: '{{ page.title }}'

doudou0o WeChat Pay

WeChat Pay

doudou0o Alipay

Alipay

# Markdown
Hello World
Test Markdown
0 条评论
未登录用户
支持 Markdown 语法

来做第一个留言的人吧!

  • Table of Contents
  • Overview
doudou0o

doudou0o

Never forget what you are, for surely the world will not. Make it your strength. Then it can never be your weakness. Armor yourself in it, and it will never be used to hurt you.
15 posts
5 tags
  1. 1. github 部分略过
  2. 2. Hexo
    1. 2.1. 什么是Hexo
    2. 2.2. 安装 Hexo
    3. 2.3. 建立博客
    4. 2.4. Hexo 命令
      1. 2.4.1. init
      2. 2.4.2. clean 、new 、 server
      3. 2.4.3. generate 、 deploy
    5. 2.5. 博客设置
    6. 2.6. 博客写作
      1. 2.6.1. 本地图片
      2. 2.6.2. 本地预览
      3. 2.6.3. 其他遇到问题再写
© 2022 doudou0o
Powered by Hexo v3.9.0
|
Theme – NexT.Gemini v7.3.0