0%

Update hexo-theme-next to latest version(v7.8.0)

今年寒假在家的时候主力系统从Ubuntu转向了Manjaro,之后就没写过博客,一方面是因为在做毕设之类的,确实没什么产出,另一方面是hexo的环境在Ubuntu上,懒得配过来,这次趁着心血来潮重新配了一下。把hexo和next都更新了,因为next主题有比较大的更新,所以在此记一笔。

从Next v5.1.4更新到最新的 v7.8.0。从v5.1.x到最新版应该是有比较大的改动,因为官方github的readme里写了:

If you want to update from v5.1.x to the latest version, read this.

这次重新配置有了一些新的理解:

  1. hexo+next的目录结构
  2. hexo+next的配置结构
  3. 如何去customize

重新配置的步骤

  1. 安装hexo
  2. 下载hexo-theme-next
  3. 补充几个hexo的plugin
  4. 把之前博客的Source目录拷贝过来
  5. 配置hexo、next,hexo的配置基本可以迁移,但是因为我之前配置next的方法不是很规范,所以这次算是重新配置的

拷贝之前的Post的问题

这里有一个问题,直接拷贝之前的post,会改变文件的修改日期,会导致“修改于”的时间显示异常,解决这个问题就是让拷贝的时候保留原始的timestamp attribute

1
2
3
4
# using the -p or --preserve= option
$ cp -p oldfile newfile
# disable interaction mode (default cp will be alias as "cp -i" in bash/zsh)
$ \cp -p oldfile newfile

控制修改于这个时间显示的配置在hexo和next的配置文件里都有:

1
2
3
4
5
6
7
8
9
10
11
# hexo/_config.yml
## Use post's date for updated date unless set in front-matter
use_date_for_updated: true
# next/_config.yml
post_meta:
item_text: true
created_at: true
updated_at:
enable: true
another_day: true
categories: true

但是!当我解决完文件修改时间问题以后,我的“修改于”标签不显示了!我也不知道是什么BUG,明明设置里都开启了,尝试了hexo clean && hexo g,也没用。

太令人沮丧了,下次再看这个问题。

字体配置

我对博客的字体配置需求主要是让我能用上思源宋体,下面两个链接讨论了next字体配置,基本上结合二者看就能看明白,但是我还是详细再讲一遍,查漏补缺一下。

单独开了一篇,Next主题字体配置

调试方法

以前都是hexo clean && hexo g && hexo s然后看localhost:4000,后来发现hexo s的时候,对配置的改动会即时生效,最多刷新页面即可,这就方便很多了。

更重要的是学会运用Chrome的F12 Debug,在debug窗口的左上角有一个Select an element in the page to inspect it的按钮,用这个工具点击页面中的元素会返回元素的内容以及应用到的Styles。用这个工具一方面可以查到对应元素的CSS格式定义(你自己的以及别人博客里面看中的样式),可以方便debug,另一方面甚至可以直接修改对应的CSS文件,调试出自己想要的样式。

TODO

挖一下坑,这两天翻别人博客的时候看到有意思的东西以及想配置一下的功能:

  • 博客使用图片的问题,之前用的hexo-asset-image应该是不更新了,看看换一个现在流行的。
  • 尝试一下cdn?
  • 我的baidu sitemap似乎有问题。
  • 看一下评论系统。
  • telegram+?
  • 使用CI
  • github issue?

不得不赞美一下,next主题进步了好多!


欢迎关注我的其它发布渠道