Hexo 折腾手记

必须敢于正视,这才可望敢想、敢说、敢做、敢当。
——鲁迅

深度优化

关掉所有多余的信息显示

标题下方的访问量、阅读时间、发布时间什么的统统都去掉,妨碍阅读。本文字数还算有点用,但如果开启了显示阅读进度的小方块,也可以关掉。

行内代码块美化

默认的行内代码块黑不溜秋,着实不太美观。逛了好多网站,都不太满意。最后在思否(segmentfault)的基础上把字体颜色再加深了一点,边框加宽,加上圆角,字体换成 Fira Code,自我感觉还不错:My Preference

Updates:把浅粉色背景完全去掉了,看上去更清爽

跨行代码块美化

左边行号的大黑边太辣眼睛了,改改改。我最喜欢的代码块样式是 mkdocs-material 的,简洁大方。网上很火的 mac 样式我不太喜欢,上面的红绿灯实在难看,还占了本来可以写语言、文件名、路径等附加信息的地方。

代码高亮主题我选的是 atom-one-light,和整体风格比较搭,不过自带的也还不错的说。

Hello_World.cpp
1
2
3
4
5
6
// 祖传 Hello World
#include <iostream>
int main(){
std::cout<<"Hello World!"<<std::endl;
return 0;
}

站外链接美化

猫猫能有什么坏心眼呢

颜色改为蓝色

链接都是灰色的,不太醒目,颜色改为蓝色会更好看。

添加提示图标

对于站外链接,在右边添加一个提示图标。

换掉默认的分类页

默认的分类页不能自定义页面显示顺序,干脆关掉,自己新建一个目录页代替原有的分类页。

先用 hexo new page "page_name" 新建一个名为 page_name(当然你可以自己取名字,比如我要用来做目录,就取名为 contents)的文件夹,里面自动生成一个 index.md 文件。打开 index.md,在元信息中加入以下内容:

1
2
3
type: "contents"
comments: false # 关闭评论
sidebar: false # 关闭侧栏

接下来,在主题配置文件的 menu 一项中加入刚刚创建的 contents,格式仿照上面已有的内容:

1
2
3
4
5
6
7
8
9
10
menu:
#home: / || fa fa-home
#about: /about/ || fa fa-user
tags: /tags/ || fa fa-tags
#categories: /categories/ || fa fa-th
archives: /archives/ || fa fa-archive
#schedule: /schedule/ || fa fa-calendar
#sitemap: /sitemap.xml || fa fa-sitemap
#commonweal: /404/ || fa fa-heartbeat
contents: /contents/ || fa fa-th # 加到这里

注意 || 后面的部分是用来指定图标的,所有能用的图标参见 Fontawesome

如果还需改变这一页在 menu 中的名字,修改 /languages/zh-Hans.yml 的相关项即可。

问题记录

站内搜索提示编码错误

ReferenceGithub issue

Solution:改用 json 索引即可

  1. hexo-generator-search 插件

    1
    npm install hexo-generator-search --save
  2. 修改 hexo 配置文件如下:

    _config.yml
    1
    2
    3
    4
    search:
    path: search.json # 注意这里扩展名改为 .json
    field: post
    content: true