Hexo食用指南

Hexo食用指南

记录本Blog的新生和维护。

本地环境

本地环境的配置基于运行MacOS 13的Apple Silicon设备。

Node.js

MacOS 13上由于权限管理和rootless机制的存在,直接下载安装器进行Node.js的安装极易在后续产生EACCES路径权限问题,参见官方文档。应使用nvm进行安装。

安装Node版本管理器 (NVM)

1
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash

用NVM安装对应版本:

1
2
3
nvm install 18
nvm use 18
node -v

Git

需通过Homebrew等工具安装,如果已有Homebrew可运行brew install git安装。

但Homebrew的安装器需要访问外网且无法使用大部分代理。故用国内脚本安装:

1
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

选择国内源后按系统提示安装即可。git --version验证安装成功。

npm源

更换npm源为国内源。安装nrm:

1
npm install -g nrm

查看可用源:

1
nrm ls

切换腾讯源:

1
nrm use tencent

Hexo配置

安装

安装Hexo:

1
npm install -g hexo-cli

创建存放Hexo的文件夹,并在该目录下执行:

1
hexo init

Git配置

安装git插件:

1
npm install hexo-deployer-git --save

_config.yml文件中修改:

1
2
3
4
5
6
7
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: git
repo: <repository url> #git@github.com:Byter-s/Byter-s.github.io.git
branch: [branch]
message: [message]

本地生成SSH公钥并查看:

1
2
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub

Github仓库->Settings->Deploy keys,添加公钥并勾选Allow write access

随后hexo d即可部署。

Theme - Icarus

文章加密

安装hexo-blog-encrypt插件:

1
npm install hexo-blog-encrypt

_config.yml文件中添加:

1
2
3
4
5
6
7
8
9
10
# Security
encrypt: # hexo-blog-encrypt
silent: true
abstract: Here's something encrypted, enter password to continue reading.
message: Hey, password is required here.
tags:
- {name: encryptAsTips, password: pwd}
theme: up
wrong_pass_message: Oops, invalid password. Check and try again.
wrong_hash_message: Oops, these decrypted content cannot be verified, but you can still have a look.

其中name一栏填写tag名称,带该tag的文章均会被加密。

文章隐藏

安装插件hexo-hide-posts

1
npm install hexo-hide-posts --save

然后在需要隐藏的文章的front-matter中添加:

1
hidden: true

即可隐藏该文章,仅可使用链接访问。也可自定义关键词,在_config.yml文件中添加:

1
2
3
4
5
6
7
8
9
10
# hexo-hide-posts
hide_posts:
enable: true
# Change the filter name to fit your need
filter: hidden
# Generators which you want to expose all posts (include hidden ones) to.
# Common generators: index, tag, category, archive, sitemap, feed, etc.
public_generators: []
# Add "noindex" meta tag to prevent hidden posts from being indexed by search engines
noindex: true

标准化参数

文章缩略图

封面缩略图比例21:9,标准分辨率2100×900。背景颜色做如下区分:

  • 绿(Tech分类):HEX#41C25D, RGB(65,194,93)
  • 蓝(Thoughts分类):HEX#4482C1,RGB(68,130,193)
  • 红(Whatever分类):HEX#D45151, RGB(212,81,81)
  • 黄(Tech/Code分类):HEX#FFB759, RGB(255,183,89)
  • 青(Academic分类):HEX#1E4B4F, RGB(30,75,79)

具体配色样式

封面图制作工具:bgimage

图标库阿里巴巴矢量图标库 SVG仓库

艺术字生成FIGlet,比如figlet -f larry3d byter.me

Author

Byter

Posted on

2023-08-01

Updated on

2024-08-11

Licensed under