将hexo文章头转为hugo格式
文章目录
【注意】最后更新于 June 7, 2020,文中内容可能已过时,请谨慎使用。
由于hexo
的语言限制,在博客文章数量达到一定的数量后,生成静态内容的速度比较的缓慢,最近打算转到hugo
的框架上,hugo
使用的是golang
编写的,号称是世界上最快的静态页面生成器
但是由于 golang
语言的一些语法及特性,在一些变量的表现上跟hexo
有所不同,markdown
文件虽然可以复用,但是文章内容的front matter
,即文章头定义的那些标签会有所不同,首先是时间的格式会不同
go
默认的格式是xxxx-xx-xxTxx-xx-xx+08:00
[+08:00
代表的是时区.还有就是tags,categories
等标签的定义,在go
里定义多个要用数组,长度不确定需要使用切片,切片的形式为 []type{}
,所以在hugo
中定义多个tags
跟hexo
会有不同]
hexo中
[tags: ]
- hexo
- blog
hugo 中
[tags: [hexo,blog]]
为了解决markdown
文件的复用问题,我们使用golang
写一个脚本,将hexo
文章的头标签更改为hugo
需要的格式
思路:
1. 获取目录下的所有markdown
类型的文件
[ 2. 读取内容,并查找tags,categories
标签]
3. 进行替换
4. 将替换的内容重新写进文件
项目地址: hexo2hugo
说明:
[ 当前只实现了对 tags,categories
单标签单属性的替换,如有其他需求可以自行克隆增加]
待优化项(功能):
-
命令行参数获取,通过参数里的路径获取文件列表并更改
-
增加其他更多的标签
-
增加对于标签多属性的支持
-
将修改后的文件生成到一个单独的文件夹而不是覆盖原文件