文章

博客迁移到hugo

博客正式迁移到Hugo,并使用Emacs Org-mode + ox-hugo来写博客,顺便学习Emacs。

为什么选择hugo

  • Hugo生成文章的速度快

  • 使用Emacs Org-mode配合ox-hugo流程比较爽,并且Hugo天生支持org文件

因为我是从Hexo迁移到Hugo的,会有之前markdown文章格式出现一些兼容性问题,比如:

  1. hugo设置多个tag和category的语法和hexo不同,需要使用[]符号把单个或者多个字符串包起来。例如:tags:["Emacs", "Hugo"]

  1. Hugo中摘要标志中间不能有空格,例如下面的代码就会报错:

 <!-- more -->
 正确写法
 <!--more-->

如何使用ox-hugo

Hugo天生支持Org文件,但是没有markdown功能完善。所以这里使用ox-hugo将org文件转成 markdown文件。

  1. 安装好ox-hugo插件,可以参考hugo官网

  2. org文件导出markdown需要有对应的语法去配置markdown文章的头信息,我这里使用一个通用的模板org文件,每次使用拷贝就可以了,缺点就是每次需要手动的拷贝,并且改动一些基本信息。

如下所示:

 #+HUGO_BASE_DIR: ../
 #+HUGO_SECTION: ../content/post/
 ​
 #+HUGO_WEIGHT: auto
 #+HUGO_AUTO_SET_LASTMOD: t
 #+author:
 #+hugo_custom_front_matter: :author "liangbo"
 ​
 #+TITLE: 
 #+DATE: 
 #+HUGO_TAGS:
 #+HUGO_CATEGORIES: 
 #+HUGO_DRAFT: true
 ​
 // 摘要
 ​
 #+hugo: more
 ​
 ​
 // 正文
 ​
 ​
 * Footnotes
 * COMMENT Local Variables                          :ARCHIVE:
 # Local Variables:
 # org-hugo-auto-export-on-save: t
 # End:
 ​

接下来你就可以通过拷贝上面的模板,修改基本头信息后,写好摘要和正文。最后后面的一段代码,会自动把org文件转成markdown文件,并且导出到/content/post文件夹中。

如果没有自动生成,可以通过命令C-c C-e H h来手动生成。

现在你就可以试用你的Emacs来写博客了!!!

License:  CC BY 4.0