尝试使用 Hexo,边摸索边记录。在 Ubuntu 16.04 里面,需要先安装 Git 和 Node.js 环境。 安装完 Hexo 后,开始进行摸索,比如增加数学公式的支持,还有定制等方面的工作,这些工作将留给下一篇博文,Hexo Blog 网站初步定制。
准备工作
本文假设本地操作系统为 Ubuntu 16.04 版本,工作目录为 /2T/smb/git
。此外,已经注册了 GitHub 户头,这里假设用户名为 maxchendt
. 开通博客需要先开启 maxchendt.github.io
站点,安装 Hexo 需要本地系统有 Git 和 Node.js, Git 的安装比较简单,Node.js 需要参考其网站的说明。
开通博客站点
登录 GitHub,在主页右下角点击 New repository , 新建的 repository 名字必须是 用户名.github.io
,例如本文的 maxchendt.github.io
。创建时选择 ‘Initialize this repository with a README’,以便浏览 github maxchendt.github.io 时能看到说明 (即 README.md 文件的内容,以后进一步修改充实)。此时浏览 https://maxchendt.github.io 将出现 404,因为还没有内容。
安装 Git
使用 Ubuntu 的安装软件包命令
sudo apt install git
ooNoIndent00跟随 https://pages.github.com 的提示,我先让 https://maxchendt.github.io 活起来
ooNoIndent00此时需要用如下命令设置 GitHub 户头用户名以及使用的 email
然后推送
ooNoIndent00浏览器就可以浏览 https://maxchendt.github.io/ 网站了。页面显示结果为 “建设中…”(无双引号)。此时浏览 github maxchendt.github.io, 便能看到刚上传的 index.html
文件。
安装 Node.js
参见 https://github.com/nodesource/distributions#deb ,安装命令为
ooNoIndent00将安装 Node.js 的 4.x 序列, 也就是 https://nodejs.org/en/ 推荐给大多数用户的 v4.5.0 LTS (Recommended For Most Users).
Hexo 安装与使用
我是从 https://hexo.io/zh-cn/docs/ 开始的:“Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。” 想要快速地学会 Hexo 让她动起来,建议直接上 https://github.com/hexojs/hexo 速成。
安装 Hexo
有了Git 和 Node.js,现在可以安装 Hexo 了。
sudo npm install -g hexo-cli
ooNoIndent00就这么简单,没有什么高难度的东西。
启用 Hexo
使用 Hexo 来创建博客,先初始化网站架构 (本地)
ooNoIndent00Hexo 在当前目录创建子目录 hexo
(往下称为 /hexo-dir
, 指代 /2T/smb/git/hexo
目录),里面是基本的网站架构,包含了大量的文件和子目录(主题,配置文件和模块等,参见 https://hexo.io/zh-cn/docs/setup.html )。实际上,一个网站已经成型了:要浏览的话,使用如下命令
hexo server -p 4400
ooNoIndent00浏览 http://localhost:4400/ 就看到了!这里我使用端口 4400 (-p 4400
),因为端口 4000 被其他程序占用。
准备开博啦
参考 https://hexo.io/zh-cn/docs/configuration.html 进行配置。我只修改了 /hexo-dir/_config.yml
里面很少的配置 (title author url permalink
等, 其中的 language: default
临时解决不设置language
导致缺省语言错误)
# Site
title: 灯塔 · 随记随想
author: CHEN Deng-Ta
language: default
# URL
url: https://maxchendt.github.io/
permalink: Blog/:year:month:day:title.html
好了,我们开始创建第一份博文:
hexo new instHexo
ooNoIndent00Hexo 将在 /hexo-dir/source/_posts
目录下创建 instHexo.md
文件 (Markdown 轻量级标记语言),然后可以使用 Remarkable 进行编辑,有关该软件,稍后再进行介绍。当然,如果您迫不及待,可以先看下这个不到三分钟的视频:https://youtu.be/UpjAIcXti9s 。本地查看博客的效果
hexo g; hexo s -p 4400
ooNoIndent00浏览 http://localhost:4400/ , 是的,不小的成就!修改满意就可以发布了。发布博客,不建议使用 hexo deploy -g
方式,该方式有如下麻烦
- 需要先安装模块,
npm install hexo-deployer-git --save
- 需要在 GitHub 先导入 ssh key, 参考 Add SSH key
- 让我不能忍受的,会把我的 maxchendt.github.io 清空,包括原始创立的 README.md 文件。而且,每次更新时,不是差分更新,而是先清空,再上传全部(也许是我不懂得设置)。
因此,我决定采用 git 方式,采用如下 deploy.sh
脚本
ooNoIndent00该脚本使用方法如下
./deploy.sh "change only one md"
ooNoIndent00其中参数 “change only one md” 将显示在 GitHub 的 commits 中。该参数给出每次 commit 的简要描述,内容根据当时的情况修改。浏览 https://maxchendt.github.io , 第一份博文成功!
提醒:如果您想使用该脚本,下载 deploy.sh 后 (chmod +x deploy.sh
),只需要修改其中的 hexo_dir
为您本地的 /hexo-dir
, 以及 ghID
为您的 GitHub 的用户名即可。
初识 Markdown
写博客使用的是 Markdown 这种轻量级的标记语言, 相对与 html 来说,轻量级标记语言如 Markdown 是对人友好的标记语言,即使第一次接触,也可以毫无障碍地理解其中的内容。
- Markdown Example 给出了简单的对比例子
- 这个 Remarkable demo live 也建议参考一下
- 我在这个网站练习了一下,十分钟学习Markdown
编辑器
我推荐使用的 Markdown 文件编辑器是 Remarkable , 尽管当前还没有 Search & Replace 功能,参见 Remarkable issues/46 , 开发者已经优先考虑了,应该很快就会有。感兴趣的话,您可以参与开发,项目在 github Remarkable。
有必要提醒的是, github remarkable 项目中的是 parser,不是编辑器。
提醒
这里报告几点编写本文的心得
- 距离就是美,记得 标记
# >
等之后,要有空格
- 代码块的结尾标记
```
之后不能有空格,否则 Hexo 生成后,该位置之后的显示会出现异常 (marked 渲染),比如代码块没有编号等。如果采用 pandoc 渲染器,则该行被解释成普通文本,而不是代码块的结束
更新历史
2016-10-08 19:01 NexT 主题下部分段落不缩进
2016-09-06 22:14 完稿、重新发布
2016-09-02 20:56 初稿