Tag 使用说明
Tag 主要是用来补充文件目录的。
一篇文章只能放在一个目录里面,但是它讨论的东西往往不止一个方向。比如一篇 GORM 的笔记,放在 Go 或者后端目录都说得通;加上 Go、后端开发、数据库 之后,大概在讲什么就很清楚了。
所以不用把 Tag 想得太复杂——挑出文章真正关心的几个方向即可。
推荐怎么写
一篇文章推荐使用 1—3 个 Tag,一般两个或者三个就差不多了。
可以大概从下面几个角度来选:
- 使用了什么语言、引擎或者 API。
- 文章主要属于哪个方向。
- 具体在讲什么概念或者机制。
比如:
| 文章 | 推荐 Tag |
|---|---|
| GORM | Go、后端开发、数据库 |
| Rust Ownership | Rust、内存管理 |
| 红黑树 | 数据结构与算法、树与图 |
| C++ 中的锁 | C++、并发编程、同步机制 |
| Vulkan Pipeline | Vulkan、实时渲染、渲染管线 |
| Toon Shader | Unreal Engine、实时渲染、Shader 与材质 |
| RAG | 机器学习、大语言模型 |
| 工厂模式 | 软件工程、设计模式、面向对象 |
| 魔卡少女樱 | ACG、随笔 |
当然,这只是一种推荐写法,并不是强制要求每篇文章都凑齐三个角度。
两个 Tag 已经可以说清楚,就没必要为了数量再塞一个;文章确实只涉及一个明确方向,也可以只写一个。
在 Frontmatter 中添加 Tag
在 Markdown 文件最前面的 Frontmatter 中添加 tags 即可:
---
title: GORM
date: 2025-08-15
tags:
- Go
- 后端开发
- 数据库
---如果文章没有其他元数据,也可以只写 Tag:
---
tags:
- ACG
- 随笔
---tags 需要写成 YAML 数组。只有一个 Tag 时也保持数组写法:
tags:
- 绘画不要写成单个字符串:
tags: 绘画如果暂时不想添加 Tag,直接省略 tags 就可以,不需要留下一个空字段。
选择 Tag 时可以注意什么
- 尽量选择能概括文章主线的词,不用把正文里提到的所有关键词都写进去。
- Tag 最好能够复用。如果一个词大概率只会出现在一篇文章里,通常放在标题中就够了。
- 尽量沿用已经存在的写法,比如统一写
Go,不要同时出现Go、go和golang。 基础、其他、技术、笔记这类词很难说明内容,通常没有必要使用。- 文件目录是什么,不代表必须添加同名 Tag。Tag 能补充目录没有表达出来的信息才比较有意义。
- 找不到合适的现有 Tag 时可以直接新增,不需要先维护额外的配置或者页面。
简单来说,够用、好懂、方便和其他文章产生联系就可以了。
Tag 页面是怎么来的
作者只需要维护 Frontmatter 中的 tags。
站点构建时会自动收集文章中使用过的 Tag,并为每个 Tag 生成一个聚合页面。点击文章上的 Tag,就可以看到所有使用了这个 Tag 的笔记。
所以新增 Tag 时不用自己创建页面,也不用关心对应的 URL;下一次部署时系统会统一处理。
目前已有的 Tag
下面只是目前已经整理出来的一批 Tag,写新文章时可以优先参考,但并不是只能使用这些。
语言、引擎和 API
C++、C#、Go、Python、Rust、SQL、Unity、Unreal Engine、Vulkan、OpenGL、ChikaEngine
主要方向
数学、数据结构与算法、机器学习、大语言模型、游戏引擎、游戏玩法、计算机图形学、实时渲染、并发编程、软件工程、后端开发、计算机底层、绘画、ACG、随笔
概念和机制
信号处理、字符串算法、树与图、AI Agent、内存管理、资源管理、类型系统、模板与泛型、函数式编程、面向对象、错误处理、反射、同步机制、异步与调度、设计模式、软件架构、编译与工具链、测试、性能分析、数据库、网络协议、分布式系统、渲染管线、Shader 与材质、几何与光照、光线追踪、GPU 编程、输入与控制