Skip to content

Front Matter 入门

Front Matter(前置元数据)是放在笔记最顶部的 YAML 格式数据块,用于为笔记添加结构化的元数据信息。它是 Obsidian 属性系统的基础。

什么是 Front Matter?

Front Matter 使用三条横线 --- 包裹,位于笔记开头:

markdown
---
title: 我的笔记
tags: [学习, 编程]
created: 2024-01-15
---

# 笔记标题

笔记正文开始...

核心概念

Front Matter 中的数据不会在阅读模式下显示为正文,而是作为笔记的「属性」存在。你可以在属性面板、搜索、Dataview 查询中使用这些数据。

基本语法

键值对

yaml
---
key: value
title: 笔记标题
author: 张三
---

数据类型

yaml
---
# 字符串
title: 学习笔记

# 数字
priority: 1

# 布尔值
published: true

# 日期
date: 2024-01-15

# 列表(行内写法)
tags: [学习, 编程, Python]

# 列表(多行写法)
tags:
  - 学习
  - 编程
  - Python

# 嵌套对象
metadata:
  created: 2024-01-15
  modified: 2024-01-20
---

常用属性

Obsidian 内置属性

属性类型说明
tags列表笔记标签
aliases列表笔记别名
cssclasses列表CSS 类名
publish布尔是否发布
description字符串笔记描述

自定义属性示例

yaml
---
# 任务管理
status: 进行中
priority: 
due: 2024-03-01

# 项目关联
project: 项目A
area: 工作

# 文献管理
type: 读书笔记
author: 作者名
rating: 4

# 学习追踪
course: 课程名
progress: 60%
---

在 Obsidian 中查看和编辑

属性面板

  1. 在笔记顶部,点击属性区域
  2. Obsidian 显示可视化的属性编辑面板
  3. 可以直接添加、修改、删除属性

三种显示模式

在 设置 → 编辑器 → 属性视图 中选择:

模式说明
可视化表格形式,直观易用
源码显示原始 YAML 文本
自动笔记有属性时显示可视化,无属性时隐藏

标签与 Front Matter

两种标签写法

yaml
---
# Front Matter 中(推荐,便于管理)
tags: [学习, 编程]
---

正文中的 #标签 也可以使用

标签层级

yaml
---
tags:
  - 编程/Python
  - 编程/JavaScript
  - 学习/课程
---

嵌套标签

在 Front Matter 中使用嵌套标签,可以创建标签层级结构:

yaml
---
tags:
  - 项目/工作/年度报告
  - 项目/个人/健身计划
---

别名(Aliases)

别名允许你为笔记设置多个名称,在搜索和链接时都可以使用:

yaml
---
aliases: [JS, JavaScript笔记]
---

使用别名链接:

markdown
[[JS]]  <!-- 会链接到当前笔记 -->

实用模式

笔记模板

yaml
---
title: "{{title}}"
date: "{{date}}"
tags: []
status: 草稿
---

项目笔记

yaml
---
type: project
status: 进行中
start: 2024-01-01
deadline: 2024-03-31
owner: 张三
tags: [项目]
---

读书笔记

yaml
---
type: book-note
title: 书名
author: 作者
rating: 4
started: 2024-01-01
finished: 2024-01-15
tags: [读书]
---

周期性笔记

yaml
---
type: daily
date: 2024-01-15
mood: 😊
tags: [日记]
---

与搜索配合

按属性搜索

在搜索中使用 [属性名:值] 语法:

[status: 进行中]        <!-- 搜索 status 为"进行中"的笔记 -->
[priority: 高]          <!-- 搜索 priority 为"高"的笔记 -->
[tag: 编程]             <!-- 搜索有"编程"标签的笔记 -->

按属性筛选

[status: 进行中] [project: 项目A]

与 Dataview 配合

Front Matter 属性可以被 Dataview 查询使用:

dataview
TABLE status, priority, deadline
FROM "项目"
WHERE status = "进行中"
SORT deadline ASC
dataview
LIST
FROM #读书
WHERE rating >= 4
SORT finished DESC

常见问题

Front Matter 格式错误?

  • 确保 --- 各占一行
  • YAML 中冒号后必须有空格:key: valuekey:value
  • 多值列表使用 - 前缀或 [] 语法
  • 字符串含特殊字符时用引号包裹

属性面板不显示?

  1. 确认 Front Matter 位于笔记最开头
  2. 确认 YAML 语法正确
  3. 尝试切换编辑模式刷新

标签写在 Front Matter 和正文的区别?

  • Front Matter 中的标签:结构化、可查询、易于管理
  • 正文中的标签:直观、随写随标
  • 两者都会出现在标签面板中
  • 建议在 Front Matter 中管理主要标签

可以用 JSON 格式吗?

Obsidian 也支持 JSON 格式的 Front Matter,但 YAML 是主流:

json
{
  "title": "我的笔记",
  "tags": ["学习", "编程"]
}

相关资源

最后更新:2026年4月11日编辑此页反馈问题