图书馆借了本《Go语言编程入门与实战技巧》,粗略百度了一下,说是本烂书,但是意外发现Go有个项目Hugo,是用来制作静态博客的。尝试了一下,发现相较于hexo在生成静态页面速度快了超多,遂决定迁移博客。

优点和缺点

首先说说Hugo的优点,那就是速度超级快,如果hexo是O(n)的化,那么Hugo就是O(1),速度绝对让人叹服。其次就是配置简单,hexo配置插件使用nmp实在是繁琐,有时还会有Bug,而Hugo就没有这些困扰。
再来说说缺点,就是没有一键部署功能,还得自己输入一串命令部署。

迁移成本

从Hexo–>Hugo,迁移需要一定的成本。

  1. 摘要符号<!--more-->中的–和more之间不能用空格,hexo可以
  2. urlname–>url
  3. 标签和分类需要用[]括起来
  4. Hugo使用的Markdown处理器Blackfriday在前一段和列表的开头之间需要一个空行,详见

本站主题

本站使用maupassant-hugo主题,在基础上做了修改,如下:

  • 缩小首页宽度
  • 修改小标题颜色红色->深灰色(#555)
  • 添加了一些icon,虽然风格不统一略丑
  • 缩小首页摘要与标题间距
  • 分类模块模仿归档的风格展示
  • 删除「See Also」
  • 删除「没有标签」

评论插件

因为本主题支持utterances和Disqus评论支持,所以打算使用utterances,操作比较简单,不赘述。
唯一想说的就是,Hugo的可编程性非常强大,我看了一下gitment的例子,可以控制单独文章是否开启评论,于是模仿着试了一下,发现成功了,下面说一下方法。
我们要更改主题中关于评论的HTML代码部分,譬如本主题放在layouts/partials/comments.html。里面的代码头部有if语句判断,只需要加上.Params.A就行,比如(这里A=pl)

{{ if and .IsPage (ne .Params.comment false)  .Params.pl }}

接着在Markdown文件头部写上pl:true说明允许评论,不写默认不允许